blume 0.8.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/CHANGELOG.md +55 -1
  2. package/dist/cli/index.js +373 -28
  3. package/dist/cli/index.js.map +51 -50
  4. package/dist/types/core/config-input.d.ts +11 -0
  5. package/dist/types/core/data.d.ts +5 -0
  6. package/dist/types/core/i18n-ui.d.ts +50 -0
  7. package/dist/types/core/schema.d.ts +77 -1
  8. package/dist/types/seo/x-handle.d.ts +12 -0
  9. package/docs/advanced/api-reference.mdx +1 -1
  10. package/docs/advanced/changelog.mdx +1 -1
  11. package/docs/configuration/export.mdx +1 -1
  12. package/docs/configuration/seo.mdx +33 -3
  13. package/docs/content/components.mdx +1 -1
  14. package/docs/content/syntax.mdx +2 -2
  15. package/docs/index.mdx +1 -1
  16. package/docs/reference/cli.mdx +1 -1
  17. package/docs/reference/frontmatter.mdx +1 -1
  18. package/package.json +10 -2
  19. package/src/ai/mcp/tools.ts +1 -1
  20. package/src/astro/generate.ts +1 -0
  21. package/src/astro/templates.ts +51 -7
  22. package/src/cli/commands/build.ts +25 -8
  23. package/src/cli/internal-error.ts +9 -4
  24. package/src/cli/prepare.ts +3 -2
  25. package/src/components/Icon.astro +2 -1
  26. package/src/components/islands/ask-ai.tsx +30 -5
  27. package/src/components/layout/Breadcrumbs.astro +11 -2
  28. package/src/components/layout/NavTree.astro +2 -2
  29. package/src/components/layout/PageLayout.astro +40 -1
  30. package/src/components/layout/Pagination.astro +10 -4
  31. package/src/components/layout/ReferenceLayout.astro +12 -1
  32. package/src/components/layout/RootLayout.astro +75 -3
  33. package/src/components/layout/Search.astro +23 -5
  34. package/src/core/config-input.ts +11 -0
  35. package/src/core/data.ts +2 -0
  36. package/src/core/frontmatter.ts +7 -0
  37. package/src/core/i18n-ui.ts +9 -0
  38. package/src/core/i18n.ts +16 -8
  39. package/src/core/schema.ts +35 -0
  40. package/src/core/ui-packs/ar.ts +7 -0
  41. package/src/core/ui-packs/bg.ts +7 -0
  42. package/src/core/ui-packs/bn.ts +7 -0
  43. package/src/core/ui-packs/ca.ts +7 -0
  44. package/src/core/ui-packs/cs.ts +7 -0
  45. package/src/core/ui-packs/da.ts +7 -0
  46. package/src/core/ui-packs/de.ts +7 -0
  47. package/src/core/ui-packs/el.ts +7 -0
  48. package/src/core/ui-packs/es.ts +7 -0
  49. package/src/core/ui-packs/fa.ts +7 -0
  50. package/src/core/ui-packs/fi.ts +7 -0
  51. package/src/core/ui-packs/fr.ts +7 -0
  52. package/src/core/ui-packs/he.ts +7 -0
  53. package/src/core/ui-packs/hi.ts +7 -0
  54. package/src/core/ui-packs/hr.ts +7 -0
  55. package/src/core/ui-packs/hu.ts +7 -0
  56. package/src/core/ui-packs/id.ts +7 -0
  57. package/src/core/ui-packs/it.ts +7 -0
  58. package/src/core/ui-packs/ja.ts +7 -0
  59. package/src/core/ui-packs/ko.ts +7 -0
  60. package/src/core/ui-packs/nl.ts +7 -0
  61. package/src/core/ui-packs/no.ts +7 -0
  62. package/src/core/ui-packs/pl.ts +7 -0
  63. package/src/core/ui-packs/pt-br.ts +7 -0
  64. package/src/core/ui-packs/pt.ts +7 -0
  65. package/src/core/ui-packs/ro.ts +7 -0
  66. package/src/core/ui-packs/ru.ts +7 -0
  67. package/src/core/ui-packs/sk.ts +7 -0
  68. package/src/core/ui-packs/sr.ts +7 -0
  69. package/src/core/ui-packs/sv.ts +7 -0
  70. package/src/core/ui-packs/th.ts +7 -0
  71. package/src/core/ui-packs/tr.ts +7 -0
  72. package/src/core/ui-packs/uk.ts +7 -0
  73. package/src/core/ui-packs/vi.ts +7 -0
  74. package/src/core/ui-packs/zh-tw.ts +7 -0
  75. package/src/core/ui-packs/zh.ts +7 -0
  76. package/src/og/card.ts +4 -2
  77. package/src/og/dimensions.ts +12 -0
  78. package/src/openapi/render-mdx.ts +62 -1
  79. package/src/seo/jsonld.ts +7 -1
  80. package/src/seo/x-handle.ts +18 -0
package/dist/cli/index.js CHANGED
@@ -725,6 +725,7 @@ var withYamlEngine = (options) => ({
725
725
  }
726
726
  });
727
727
  var matter = Object.assign((input, options) => baseMatter(input, withYamlEngine(options)), baseMatter, {
728
+ read: (filepath, options) => baseMatter.read(filepath, withYamlEngine(options)),
728
729
  stringify: (file, data, options) => baseMatter.stringify(file, data, withYamlEngine(options))
729
730
  });
730
731
  var frontmatter_default = matter;
@@ -1481,6 +1482,10 @@ var ar = {
1481
1482
  title: "اسأل الذكاء الاصطناعي"
1482
1483
  },
1483
1484
  banner: { dismiss: "إغلاق الإعلان" },
1485
+ changelog: {
1486
+ description: "تحديثات المنتج وملاحظات الإصدارات.",
1487
+ title: "سجل التغييرات"
1488
+ },
1484
1489
  feedback: {
1485
1490
  no: "لا",
1486
1491
  question: "هل كانت هذه الصفحة مفيدة؟",
@@ -1488,13 +1493,16 @@ var ar = {
1488
1493
  yes: "نعم"
1489
1494
  },
1490
1495
  languageSwitcher: { label: "اللغة", untranslated: "غير مترجم" },
1496
+ nav: { breadcrumb: "مسار التنقل" },
1491
1497
  page: {
1492
1498
  lastUpdated: "آخر تحديث في",
1493
1499
  next: "التالي",
1500
+ pagination: "ترقيم الصفحات",
1494
1501
  previous: "السابق",
1495
1502
  skipToContent: "الانتقال إلى المحتوى"
1496
1503
  },
1497
1504
  search: {
1505
+ all: "الكل",
1498
1506
  button: "بحث",
1499
1507
  devOnly: "البحث متاح في إصدار الإنتاج.",
1500
1508
  label: "البحث في الوثائق",
@@ -1528,6 +1536,10 @@ var bg = {
1528
1536
  title: "Попитай ИИ"
1529
1537
  },
1530
1538
  banner: { dismiss: "Затваряне на съобщението" },
1539
+ changelog: {
1540
+ description: "Актуализации на продукта и бележки към изданията.",
1541
+ title: "Дневник на промените"
1542
+ },
1531
1543
  feedback: {
1532
1544
  no: "Не",
1533
1545
  question: "Беше ли полезна тази страница?",
@@ -1535,13 +1547,16 @@ var bg = {
1535
1547
  yes: "Да"
1536
1548
  },
1537
1549
  languageSwitcher: { label: "Език", untranslated: "Непреведено" },
1550
+ nav: { breadcrumb: "Навигационна пътека" },
1538
1551
  page: {
1539
1552
  lastUpdated: "Последна актуализация",
1540
1553
  next: "Напред",
1554
+ pagination: "Пагинация",
1541
1555
  previous: "Назад",
1542
1556
  skipToContent: "Към съдържанието"
1543
1557
  },
1544
1558
  search: {
1559
+ all: "Всички",
1545
1560
  button: "Търсене",
1546
1561
  devOnly: "Търсенето е достъпно в производствената компилация.",
1547
1562
  label: "Търсене в документацията",
@@ -1575,6 +1590,10 @@ var bn = {
1575
1590
  title: "AI-কে জিজ্ঞাসা করুন"
1576
1591
  },
1577
1592
  banner: { dismiss: "ঘোষণা বন্ধ করুন" },
1593
+ changelog: {
1594
+ description: "পণ্য আপডেট এবং রিলিজ নোট।",
1595
+ title: "পরিবর্তন লগ"
1596
+ },
1578
1597
  feedback: {
1579
1598
  no: "না",
1580
1599
  question: "এই পৃষ্ঠাটি কি সহায়ক ছিল?",
@@ -1582,13 +1601,16 @@ var bn = {
1582
1601
  yes: "হ্যাঁ"
1583
1602
  },
1584
1603
  languageSwitcher: { label: "ভাষা", untranslated: "অনূদিত নয়" },
1604
+ nav: { breadcrumb: "ব্রেডক্রাম্ব" },
1585
1605
  page: {
1586
1606
  lastUpdated: "সর্বশেষ আপডেট",
1587
1607
  next: "পরবর্তী",
1608
+ pagination: "পেজিনেশন",
1588
1609
  previous: "পূর্ববর্তী",
1589
1610
  skipToContent: "বিষয়বস্তুতে যান"
1590
1611
  },
1591
1612
  search: {
1613
+ all: "সব",
1592
1614
  button: "অনুসন্ধান",
1593
1615
  devOnly: "অনুসন্ধান প্রোডাকশন বিল্ডে উপলব্ধ।",
1594
1616
  label: "ডকুমেন্টেশন অনুসন্ধান করুন",
@@ -1622,6 +1644,10 @@ var ca = {
1622
1644
  title: "Pregunta a la IA"
1623
1645
  },
1624
1646
  banner: { dismiss: "Tanca l'anunci" },
1647
+ changelog: {
1648
+ description: "Actualitzacions del producte i notes de la versió.",
1649
+ title: "Registre de canvis"
1650
+ },
1625
1651
  feedback: {
1626
1652
  no: "No",
1627
1653
  question: "Aquesta pàgina t'ha estat útil?",
@@ -1629,13 +1655,16 @@ var ca = {
1629
1655
  yes: "Sí"
1630
1656
  },
1631
1657
  languageSwitcher: { label: "Idioma", untranslated: "Sense traduir" },
1658
+ nav: { breadcrumb: "Ruta de navegació" },
1632
1659
  page: {
1633
1660
  lastUpdated: "Última actualització el",
1634
1661
  next: "Següent",
1662
+ pagination: "Paginació",
1635
1663
  previous: "Anterior",
1636
1664
  skipToContent: "Vés al contingut"
1637
1665
  },
1638
1666
  search: {
1667
+ all: "Tots",
1639
1668
  button: "Cerca",
1640
1669
  devOnly: "La cerca està disponible a la compilació de producció.",
1641
1670
  label: "Cerca a la documentació",
@@ -1669,6 +1698,10 @@ var cs = {
1669
1698
  title: "Zeptat se AI"
1670
1699
  },
1671
1700
  banner: { dismiss: "Zavřít oznámení" },
1701
+ changelog: {
1702
+ description: "Novinky produktu a poznámky k vydání.",
1703
+ title: "Seznam změn"
1704
+ },
1672
1705
  feedback: {
1673
1706
  no: "Ne",
1674
1707
  question: "Byla tato stránka užitečná?",
@@ -1676,13 +1709,16 @@ var cs = {
1676
1709
  yes: "Ano"
1677
1710
  },
1678
1711
  languageSwitcher: { label: "Jazyk", untranslated: "Nepřeloženo" },
1712
+ nav: { breadcrumb: "Drobečková navigace" },
1679
1713
  page: {
1680
1714
  lastUpdated: "Naposledy aktualizováno",
1681
1715
  next: "Další",
1716
+ pagination: "Stránkování",
1682
1717
  previous: "Předchozí",
1683
1718
  skipToContent: "Přejít k obsahu"
1684
1719
  },
1685
1720
  search: {
1721
+ all: "Vše",
1686
1722
  button: "Hledat",
1687
1723
  devOnly: "Vyhledávání je dostupné v produkčním buildu.",
1688
1724
  label: "Prohledat dokumentaci",
@@ -1716,6 +1752,10 @@ var da = {
1716
1752
  title: "Spørg AI"
1717
1753
  },
1718
1754
  banner: { dismiss: "Luk meddelelsen" },
1755
+ changelog: {
1756
+ description: "Produktopdateringer og udgivelsesnoter.",
1757
+ title: "Ændringslog"
1758
+ },
1719
1759
  feedback: {
1720
1760
  no: "Nej",
1721
1761
  question: "Var denne side nyttig?",
@@ -1723,13 +1763,16 @@ var da = {
1723
1763
  yes: "Ja"
1724
1764
  },
1725
1765
  languageSwitcher: { label: "Sprog", untranslated: "Ikke oversat" },
1766
+ nav: { breadcrumb: "Brødkrummesti" },
1726
1767
  page: {
1727
1768
  lastUpdated: "Senest opdateret den",
1728
1769
  next: "Næste",
1770
+ pagination: "Paginering",
1729
1771
  previous: "Forrige",
1730
1772
  skipToContent: "Spring til indhold"
1731
1773
  },
1732
1774
  search: {
1775
+ all: "Alle",
1733
1776
  button: "Søg",
1734
1777
  devOnly: "Søgning er tilgængelig i produktionsbygningen.",
1735
1778
  label: "Søg i dokumentationen",
@@ -1763,6 +1806,10 @@ var de = {
1763
1806
  title: "KI fragen"
1764
1807
  },
1765
1808
  banner: { dismiss: "Ankündigung schließen" },
1809
+ changelog: {
1810
+ description: "Produkt-Updates und Versionshinweise.",
1811
+ title: "Änderungsprotokoll"
1812
+ },
1766
1813
  feedback: {
1767
1814
  no: "Nein",
1768
1815
  question: "War diese Seite hilfreich?",
@@ -1770,13 +1817,16 @@ var de = {
1770
1817
  yes: "Ja"
1771
1818
  },
1772
1819
  languageSwitcher: { label: "Sprache", untranslated: "Nicht übersetzt" },
1820
+ nav: { breadcrumb: "Brotkrümelnavigation" },
1773
1821
  page: {
1774
1822
  lastUpdated: "Zuletzt aktualisiert am",
1775
1823
  next: "Weiter",
1824
+ pagination: "Seitennummerierung",
1776
1825
  previous: "Zurück",
1777
1826
  skipToContent: "Zum Inhalt springen"
1778
1827
  },
1779
1828
  search: {
1829
+ all: "Alle",
1780
1830
  button: "Suchen",
1781
1831
  devOnly: "Die Suche ist im Produktions-Build verfügbar.",
1782
1832
  label: "Dokumentation durchsuchen",
@@ -1810,6 +1860,10 @@ var el = {
1810
1860
  title: "Ρωτήστε την AI"
1811
1861
  },
1812
1862
  banner: { dismiss: "Κλείσιμο ανακοίνωσης" },
1863
+ changelog: {
1864
+ description: "Ενημερώσεις προϊόντος και σημειώσεις έκδοσης.",
1865
+ title: "Ιστορικό αλλαγών"
1866
+ },
1813
1867
  feedback: {
1814
1868
  no: "Όχι",
1815
1869
  question: "Σας φάνηκε χρήσιμη αυτή η σελίδα;",
@@ -1817,13 +1871,16 @@ var el = {
1817
1871
  yes: "Ναι"
1818
1872
  },
1819
1873
  languageSwitcher: { label: "Γλώσσα", untranslated: "Δεν έχει μεταφραστεί" },
1874
+ nav: { breadcrumb: "Διαδρομή πλοήγησης" },
1820
1875
  page: {
1821
1876
  lastUpdated: "Τελευταία ενημέρωση",
1822
1877
  next: "Επόμενο",
1878
+ pagination: "Σελιδοποίηση",
1823
1879
  previous: "Προηγούμενο",
1824
1880
  skipToContent: "Μετάβαση στο περιεχόμενο"
1825
1881
  },
1826
1882
  search: {
1883
+ all: "Όλα",
1827
1884
  button: "Αναζήτηση",
1828
1885
  devOnly: "Η αναζήτηση είναι διαθέσιμη στην έκδοση παραγωγής.",
1829
1886
  label: "Αναζήτηση στην τεκμηρίωση",
@@ -1857,6 +1914,10 @@ var es = {
1857
1914
  title: "Preguntar a la IA"
1858
1915
  },
1859
1916
  banner: { dismiss: "Cerrar el anuncio" },
1917
+ changelog: {
1918
+ description: "Novedades del producto y notas de la versión.",
1919
+ title: "Registro de cambios"
1920
+ },
1860
1921
  feedback: {
1861
1922
  no: "No",
1862
1923
  question: "¿Te ha resultado útil esta página?",
@@ -1864,13 +1925,16 @@ var es = {
1864
1925
  yes: "Sí"
1865
1926
  },
1866
1927
  languageSwitcher: { label: "Idioma", untranslated: "Sin traducir" },
1928
+ nav: { breadcrumb: "Ruta de navegación" },
1867
1929
  page: {
1868
1930
  lastUpdated: "Última actualización el",
1869
1931
  next: "Siguiente",
1932
+ pagination: "Paginación",
1870
1933
  previous: "Anterior",
1871
1934
  skipToContent: "Saltar al contenido"
1872
1935
  },
1873
1936
  search: {
1937
+ all: "Todos",
1874
1938
  button: "Buscar",
1875
1939
  devOnly: "La búsqueda está disponible en la compilación de producción.",
1876
1940
  label: "Buscar en la documentación",
@@ -1904,6 +1968,10 @@ var fa = {
1904
1968
  title: "از هوش مصنوعی بپرسید"
1905
1969
  },
1906
1970
  banner: { dismiss: "بستن اطلاعیه" },
1971
+ changelog: {
1972
+ description: "به‌روزرسانی‌های محصول و یادداشت‌های انتشار.",
1973
+ title: "گزارش تغییرات"
1974
+ },
1907
1975
  feedback: {
1908
1976
  no: "خیر",
1909
1977
  question: "آیا این صفحه مفید بود؟",
@@ -1911,13 +1979,16 @@ var fa = {
1911
1979
  yes: "بله"
1912
1980
  },
1913
1981
  languageSwitcher: { label: "زبان", untranslated: "ترجمه‌نشده" },
1982
+ nav: { breadcrumb: "مسیر ناوبری" },
1914
1983
  page: {
1915
1984
  lastUpdated: "آخرین به‌روزرسانی",
1916
1985
  next: "بعدی",
1986
+ pagination: "صفحه‌بندی",
1917
1987
  previous: "قبلی",
1918
1988
  skipToContent: "پرش به محتوا"
1919
1989
  },
1920
1990
  search: {
1991
+ all: "همه",
1921
1992
  button: "جستجو",
1922
1993
  devOnly: "جستجو در نسخه تولید در دسترس است.",
1923
1994
  label: "جستجو در مستندات",
@@ -1951,6 +2022,10 @@ var fi = {
1951
2022
  title: "Kysy tekoälyltä"
1952
2023
  },
1953
2024
  banner: { dismiss: "Sulje ilmoitus" },
2025
+ changelog: {
2026
+ description: "Tuotepäivitykset ja julkaisutiedot.",
2027
+ title: "Muutosloki"
2028
+ },
1954
2029
  feedback: {
1955
2030
  no: "Ei",
1956
2031
  question: "Oliko tästä sivusta apua?",
@@ -1958,13 +2033,16 @@ var fi = {
1958
2033
  yes: "Kyllä"
1959
2034
  },
1960
2035
  languageSwitcher: { label: "Kieli", untranslated: "Ei käännetty" },
2036
+ nav: { breadcrumb: "Murupolku" },
1961
2037
  page: {
1962
2038
  lastUpdated: "Viimeksi päivitetty",
1963
2039
  next: "Seuraava",
2040
+ pagination: "Sivutus",
1964
2041
  previous: "Edellinen",
1965
2042
  skipToContent: "Siirry sisältöön"
1966
2043
  },
1967
2044
  search: {
2045
+ all: "Kaikki",
1968
2046
  button: "Hae",
1969
2047
  devOnly: "Haku on käytettävissä tuotantokäännöksessä.",
1970
2048
  label: "Hae dokumentaatiosta",
@@ -1998,6 +2076,10 @@ var fr = {
1998
2076
  title: "Demander à l'IA"
1999
2077
  },
2000
2078
  banner: { dismiss: "Fermer l'annonce" },
2079
+ changelog: {
2080
+ description: "Nouveautés du produit et notes de version.",
2081
+ title: "Journal des modifications"
2082
+ },
2001
2083
  feedback: {
2002
2084
  no: "Non",
2003
2085
  question: "Cette page vous a-t-elle été utile ?",
@@ -2005,13 +2087,16 @@ var fr = {
2005
2087
  yes: "Oui"
2006
2088
  },
2007
2089
  languageSwitcher: { label: "Langue", untranslated: "Non traduit" },
2090
+ nav: { breadcrumb: "Fil d'Ariane" },
2008
2091
  page: {
2009
2092
  lastUpdated: "Dernière mise à jour le",
2010
2093
  next: "Suivant",
2094
+ pagination: "Pagination",
2011
2095
  previous: "Précédent",
2012
2096
  skipToContent: "Aller au contenu"
2013
2097
  },
2014
2098
  search: {
2099
+ all: "Tous",
2015
2100
  button: "Rechercher",
2016
2101
  devOnly: "La recherche est disponible dans la version de production.",
2017
2102
  label: "Rechercher dans la doc",
@@ -2045,6 +2130,10 @@ var he = {
2045
2130
  title: "שאל את ה-AI"
2046
2131
  },
2047
2132
  banner: { dismiss: "סגירת ההודעה" },
2133
+ changelog: {
2134
+ description: "עדכוני מוצר והערות גרסה.",
2135
+ title: "יומן שינויים"
2136
+ },
2048
2137
  feedback: {
2049
2138
  no: "לא",
2050
2139
  question: "האם העמוד הזה היה מועיל?",
@@ -2052,13 +2141,16 @@ var he = {
2052
2141
  yes: "כן"
2053
2142
  },
2054
2143
  languageSwitcher: { label: "שפה", untranslated: "לא מתורגם" },
2144
+ nav: { breadcrumb: "פירורי לחם" },
2055
2145
  page: {
2056
2146
  lastUpdated: "עודכן לאחרונה",
2057
2147
  next: "הבא",
2148
+ pagination: "עימוד",
2058
2149
  previous: "הקודם",
2059
2150
  skipToContent: "דלג לתוכן"
2060
2151
  },
2061
2152
  search: {
2153
+ all: "הכל",
2062
2154
  button: "חיפוש",
2063
2155
  devOnly: "החיפוש זמין בבנייה לייצור.",
2064
2156
  label: "חפש בתיעוד",
@@ -2092,6 +2184,10 @@ var hi = {
2092
2184
  title: "AI से पूछें"
2093
2185
  },
2094
2186
  banner: { dismiss: "घोषणा बंद करें" },
2187
+ changelog: {
2188
+ description: "उत्पाद अपडेट और रिलीज़ नोट्स।",
2189
+ title: "परिवर्तन लॉग"
2190
+ },
2095
2191
  feedback: {
2096
2192
  no: "नहीं",
2097
2193
  question: "क्या यह पेज सहायक था?",
@@ -2099,13 +2195,16 @@ var hi = {
2099
2195
  yes: "हाँ"
2100
2196
  },
2101
2197
  languageSwitcher: { label: "भाषा", untranslated: "अनुवादित नहीं" },
2198
+ nav: { breadcrumb: "ब्रेडक्रम" },
2102
2199
  page: {
2103
2200
  lastUpdated: "अंतिम अपडेट",
2104
2201
  next: "अगला",
2202
+ pagination: "पृष्ठांकन",
2105
2203
  previous: "पिछला",
2106
2204
  skipToContent: "सामग्री पर जाएँ"
2107
2205
  },
2108
2206
  search: {
2207
+ all: "सभी",
2109
2208
  button: "खोजें",
2110
2209
  devOnly: "खोज प्रोडक्शन बिल्ड में उपलब्ध है।",
2111
2210
  label: "दस्तावेज़ खोजें",
@@ -2139,6 +2238,10 @@ var hr = {
2139
2238
  title: "Pitaj AI"
2140
2239
  },
2141
2240
  banner: { dismiss: "Zatvori obavijest" },
2241
+ changelog: {
2242
+ description: "Ažuriranja proizvoda i napomene o izdanjima.",
2243
+ title: "Popis promjena"
2244
+ },
2142
2245
  feedback: {
2143
2246
  no: "Ne",
2144
2247
  question: "Je li vam ova stranica bila korisna?",
@@ -2146,13 +2249,16 @@ var hr = {
2146
2249
  yes: "Da"
2147
2250
  },
2148
2251
  languageSwitcher: { label: "Jezik", untranslated: "Nije prevedeno" },
2252
+ nav: { breadcrumb: "Navigacijski put" },
2149
2253
  page: {
2150
2254
  lastUpdated: "Posljednje ažuriranje",
2151
2255
  next: "Sljedeće",
2256
+ pagination: "Straničenje",
2152
2257
  previous: "Prethodno",
2153
2258
  skipToContent: "Prijeđi na sadržaj"
2154
2259
  },
2155
2260
  search: {
2261
+ all: "Sve",
2156
2262
  button: "Pretraži",
2157
2263
  devOnly: "Pretraživanje je dostupno u produkcijskoj verziji.",
2158
2264
  label: "Pretraži dokumentaciju",
@@ -2186,6 +2292,10 @@ var hu = {
2186
2292
  title: "Kérdezd az AI-t"
2187
2293
  },
2188
2294
  banner: { dismiss: "Közlemény bezárása" },
2295
+ changelog: {
2296
+ description: "Termékfrissítések és kiadási megjegyzések.",
2297
+ title: "Változásnapló"
2298
+ },
2189
2299
  feedback: {
2190
2300
  no: "Nem",
2191
2301
  question: "Hasznos volt ez az oldal?",
@@ -2193,13 +2303,16 @@ var hu = {
2193
2303
  yes: "Igen"
2194
2304
  },
2195
2305
  languageSwitcher: { label: "Nyelv", untranslated: "Nincs lefordítva" },
2306
+ nav: { breadcrumb: "Morzsamenü" },
2196
2307
  page: {
2197
2308
  lastUpdated: "Utoljára frissítve",
2198
2309
  next: "Következő",
2310
+ pagination: "Lapozás",
2199
2311
  previous: "Előző",
2200
2312
  skipToContent: "Ugrás a tartalomra"
2201
2313
  },
2202
2314
  search: {
2315
+ all: "Összes",
2203
2316
  button: "Keresés",
2204
2317
  devOnly: "A keresés az éles buildben érhető el.",
2205
2318
  label: "Keresés a dokumentációban",
@@ -2233,6 +2346,10 @@ var id = {
2233
2346
  title: "Tanya AI"
2234
2347
  },
2235
2348
  banner: { dismiss: "Tutup pengumuman" },
2349
+ changelog: {
2350
+ description: "Pembaruan produk dan catatan rilis.",
2351
+ title: "Log perubahan"
2352
+ },
2236
2353
  feedback: {
2237
2354
  no: "Tidak",
2238
2355
  question: "Apakah halaman ini membantu?",
@@ -2240,13 +2357,16 @@ var id = {
2240
2357
  yes: "Ya"
2241
2358
  },
2242
2359
  languageSwitcher: { label: "Bahasa", untranslated: "Belum diterjemahkan" },
2360
+ nav: { breadcrumb: "Remah roti" },
2243
2361
  page: {
2244
2362
  lastUpdated: "Terakhir diperbarui",
2245
2363
  next: "Berikutnya",
2364
+ pagination: "Penomoran halaman",
2246
2365
  previous: "Sebelumnya",
2247
2366
  skipToContent: "Lewati ke konten"
2248
2367
  },
2249
2368
  search: {
2369
+ all: "Semua",
2250
2370
  button: "Cari",
2251
2371
  devOnly: "Pencarian tersedia di build produksi.",
2252
2372
  label: "Cari dokumentasi",
@@ -2280,6 +2400,10 @@ var it = {
2280
2400
  title: "Chiedi all'IA"
2281
2401
  },
2282
2402
  banner: { dismiss: "Chiudi l'annuncio" },
2403
+ changelog: {
2404
+ description: "Aggiornamenti del prodotto e note di rilascio.",
2405
+ title: "Registro delle modifiche"
2406
+ },
2283
2407
  feedback: {
2284
2408
  no: "No",
2285
2409
  question: "Questa pagina ti è stata utile?",
@@ -2287,13 +2411,16 @@ var it = {
2287
2411
  yes: "Sì"
2288
2412
  },
2289
2413
  languageSwitcher: { label: "Lingua", untranslated: "Non tradotto" },
2414
+ nav: { breadcrumb: "Percorso di navigazione" },
2290
2415
  page: {
2291
2416
  lastUpdated: "Ultimo aggiornamento il",
2292
2417
  next: "Successivo",
2418
+ pagination: "Paginazione",
2293
2419
  previous: "Precedente",
2294
2420
  skipToContent: "Vai al contenuto"
2295
2421
  },
2296
2422
  search: {
2423
+ all: "Tutti",
2297
2424
  button: "Cerca",
2298
2425
  devOnly: "La ricerca è disponibile nella build di produzione.",
2299
2426
  label: "Cerca nella documentazione",
@@ -2327,6 +2454,10 @@ var ja = {
2327
2454
  title: "AI に質問"
2328
2455
  },
2329
2456
  banner: { dismiss: "お知らせを閉じる" },
2457
+ changelog: {
2458
+ description: "製品のアップデートとリリースノート。",
2459
+ title: "変更履歴"
2460
+ },
2330
2461
  feedback: {
2331
2462
  no: "いいえ",
2332
2463
  question: "このページは役に立ちましたか?",
@@ -2334,13 +2465,16 @@ var ja = {
2334
2465
  yes: "はい"
2335
2466
  },
2336
2467
  languageSwitcher: { label: "言語", untranslated: "未翻訳" },
2468
+ nav: { breadcrumb: "パンくずリスト" },
2337
2469
  page: {
2338
2470
  lastUpdated: "最終更新",
2339
2471
  next: "次へ",
2472
+ pagination: "ページネーション",
2340
2473
  previous: "前へ",
2341
2474
  skipToContent: "コンテンツにスキップ"
2342
2475
  },
2343
2476
  search: {
2477
+ all: "すべて",
2344
2478
  button: "検索",
2345
2479
  devOnly: "検索は本番ビルドで利用できます。",
2346
2480
  label: "ドキュメントを検索",
@@ -2374,6 +2508,10 @@ var ko = {
2374
2508
  title: "AI에게 질문"
2375
2509
  },
2376
2510
  banner: { dismiss: "공지 닫기" },
2511
+ changelog: {
2512
+ description: "제품 업데이트 및 릴리스 노트.",
2513
+ title: "변경 로그"
2514
+ },
2377
2515
  feedback: {
2378
2516
  no: "아니요",
2379
2517
  question: "이 페이지가 도움이 되었나요?",
@@ -2381,13 +2519,16 @@ var ko = {
2381
2519
  yes: "예"
2382
2520
  },
2383
2521
  languageSwitcher: { label: "언어", untranslated: "번역되지 않음" },
2522
+ nav: { breadcrumb: "탐색 경로" },
2384
2523
  page: {
2385
2524
  lastUpdated: "마지막 업데이트",
2386
2525
  next: "다음",
2526
+ pagination: "페이지네이션",
2387
2527
  previous: "이전",
2388
2528
  skipToContent: "본문으로 건너뛰기"
2389
2529
  },
2390
2530
  search: {
2531
+ all: "전체",
2391
2532
  button: "검색",
2392
2533
  devOnly: "검색은 프로덕션 빌드에서 사용할 수 있습니다.",
2393
2534
  label: "문서 검색",
@@ -2421,6 +2562,10 @@ var nl = {
2421
2562
  title: "AI vragen"
2422
2563
  },
2423
2564
  banner: { dismiss: "Aankondiging sluiten" },
2565
+ changelog: {
2566
+ description: "Productupdates en releaseopmerkingen.",
2567
+ title: "Wijzigingslogboek"
2568
+ },
2424
2569
  feedback: {
2425
2570
  no: "Nee",
2426
2571
  question: "Was deze pagina nuttig?",
@@ -2428,13 +2573,16 @@ var nl = {
2428
2573
  yes: "Ja"
2429
2574
  },
2430
2575
  languageSwitcher: { label: "Taal", untranslated: "Niet vertaald" },
2576
+ nav: { breadcrumb: "Kruimelpad" },
2431
2577
  page: {
2432
2578
  lastUpdated: "Laatst bijgewerkt op",
2433
2579
  next: "Volgende",
2580
+ pagination: "Paginering",
2434
2581
  previous: "Vorige",
2435
2582
  skipToContent: "Naar inhoud springen"
2436
2583
  },
2437
2584
  search: {
2585
+ all: "Alle",
2438
2586
  button: "Zoeken",
2439
2587
  devOnly: "Zoeken is beschikbaar in de productiebuild.",
2440
2588
  label: "Documentatie doorzoeken",
@@ -2468,6 +2616,10 @@ var no = {
2468
2616
  title: "Spør AI"
2469
2617
  },
2470
2618
  banner: { dismiss: "Lukk kunngjøringen" },
2619
+ changelog: {
2620
+ description: "Produktoppdateringer og utgivelsesnotater.",
2621
+ title: "Endringslogg"
2622
+ },
2471
2623
  feedback: {
2472
2624
  no: "Nei",
2473
2625
  question: "Var denne siden nyttig?",
@@ -2475,13 +2627,16 @@ var no = {
2475
2627
  yes: "Ja"
2476
2628
  },
2477
2629
  languageSwitcher: { label: "Språk", untranslated: "Ikke oversatt" },
2630
+ nav: { breadcrumb: "Brødsmulesti" },
2478
2631
  page: {
2479
2632
  lastUpdated: "Sist oppdatert",
2480
2633
  next: "Neste",
2634
+ pagination: "Paginering",
2481
2635
  previous: "Forrige",
2482
2636
  skipToContent: "Hopp til innhold"
2483
2637
  },
2484
2638
  search: {
2639
+ all: "Alle",
2485
2640
  button: "Søk",
2486
2641
  devOnly: "Søk er tilgjengelig i produksjonsbygget.",
2487
2642
  label: "Søk i dokumentasjonen",
@@ -2515,6 +2670,10 @@ var pl = {
2515
2670
  title: "Zapytaj AI"
2516
2671
  },
2517
2672
  banner: { dismiss: "Zamknij ogłoszenie" },
2673
+ changelog: {
2674
+ description: "Aktualizacje produktu i informacje o wydaniach.",
2675
+ title: "Dziennik zmian"
2676
+ },
2518
2677
  feedback: {
2519
2678
  no: "Nie",
2520
2679
  question: "Czy ta strona była pomocna?",
@@ -2522,13 +2681,16 @@ var pl = {
2522
2681
  yes: "Tak"
2523
2682
  },
2524
2683
  languageSwitcher: { label: "Język", untranslated: "Nieprzetłumaczone" },
2684
+ nav: { breadcrumb: "Ścieżka nawigacyjna" },
2525
2685
  page: {
2526
2686
  lastUpdated: "Ostatnia aktualizacja",
2527
2687
  next: "Następny",
2688
+ pagination: "Paginacja",
2528
2689
  previous: "Poprzedni",
2529
2690
  skipToContent: "Przejdź do treści"
2530
2691
  },
2531
2692
  search: {
2693
+ all: "Wszystkie",
2532
2694
  button: "Szukaj",
2533
2695
  devOnly: "Wyszukiwanie jest dostępne w kompilacji produkcyjnej.",
2534
2696
  label: "Przeszukaj dokumentację",
@@ -2562,6 +2724,10 @@ var ptBR = {
2562
2724
  title: "Perguntar à IA"
2563
2725
  },
2564
2726
  banner: { dismiss: "Fechar o anúncio" },
2727
+ changelog: {
2728
+ description: "Atualizações do produto e notas de lançamento.",
2729
+ title: "Registro de alterações"
2730
+ },
2565
2731
  feedback: {
2566
2732
  no: "Não",
2567
2733
  question: "Esta página foi útil?",
@@ -2569,13 +2735,16 @@ var ptBR = {
2569
2735
  yes: "Sim"
2570
2736
  },
2571
2737
  languageSwitcher: { label: "Idioma", untranslated: "Não traduzido" },
2738
+ nav: { breadcrumb: "Trilha de navegação" },
2572
2739
  page: {
2573
2740
  lastUpdated: "Última atualização em",
2574
2741
  next: "Próximo",
2742
+ pagination: "Paginação",
2575
2743
  previous: "Anterior",
2576
2744
  skipToContent: "Pular para o conteúdo"
2577
2745
  },
2578
2746
  search: {
2747
+ all: "Todos",
2579
2748
  button: "Pesquisar",
2580
2749
  devOnly: "A busca está disponível na build de produção.",
2581
2750
  label: "Pesquisar na documentação",
@@ -2609,6 +2778,10 @@ var pt = {
2609
2778
  title: "Perguntar à IA"
2610
2779
  },
2611
2780
  banner: { dismiss: "Fechar o anúncio" },
2781
+ changelog: {
2782
+ description: "Atualizações do produto e notas de lançamento.",
2783
+ title: "Registo de alterações"
2784
+ },
2612
2785
  feedback: {
2613
2786
  no: "Não",
2614
2787
  question: "Esta página foi útil?",
@@ -2616,13 +2789,16 @@ var pt = {
2616
2789
  yes: "Sim"
2617
2790
  },
2618
2791
  languageSwitcher: { label: "Idioma", untranslated: "Não traduzido" },
2792
+ nav: { breadcrumb: "Caminho de navegação" },
2619
2793
  page: {
2620
2794
  lastUpdated: "Última atualização a",
2621
2795
  next: "Seguinte",
2796
+ pagination: "Paginação",
2622
2797
  previous: "Anterior",
2623
2798
  skipToContent: "Saltar para o conteúdo"
2624
2799
  },
2625
2800
  search: {
2801
+ all: "Todos",
2626
2802
  button: "Pesquisar",
2627
2803
  devOnly: "A pesquisa está disponível na compilação de produção.",
2628
2804
  label: "Pesquisar na documentação",
@@ -2656,6 +2832,10 @@ var ro = {
2656
2832
  title: "Întreabă AI"
2657
2833
  },
2658
2834
  banner: { dismiss: "Închide anunțul" },
2835
+ changelog: {
2836
+ description: "Actualizări ale produsului și note de lansare.",
2837
+ title: "Jurnal de modificări"
2838
+ },
2659
2839
  feedback: {
2660
2840
  no: "Nu",
2661
2841
  question: "Ți-a fost utilă această pagină?",
@@ -2663,13 +2843,16 @@ var ro = {
2663
2843
  yes: "Da"
2664
2844
  },
2665
2845
  languageSwitcher: { label: "Limbă", untranslated: "Netradus" },
2846
+ nav: { breadcrumb: "Cale de navigare" },
2666
2847
  page: {
2667
2848
  lastUpdated: "Ultima actualizare",
2668
2849
  next: "Următorul",
2850
+ pagination: "Paginare",
2669
2851
  previous: "Anteriorul",
2670
2852
  skipToContent: "Sari la conținut"
2671
2853
  },
2672
2854
  search: {
2855
+ all: "Toate",
2673
2856
  button: "Caută",
2674
2857
  devOnly: "Căutarea este disponibilă în versiunea de producție.",
2675
2858
  label: "Caută în documentație",
@@ -2703,6 +2886,10 @@ var ru = {
2703
2886
  title: "Спросить ИИ"
2704
2887
  },
2705
2888
  banner: { dismiss: "Закрыть объявление" },
2889
+ changelog: {
2890
+ description: "Обновления продукта и примечания к выпускам.",
2891
+ title: "Журнал изменений"
2892
+ },
2706
2893
  feedback: {
2707
2894
  no: "Нет",
2708
2895
  question: "Эта страница была полезной?",
@@ -2710,13 +2897,16 @@ var ru = {
2710
2897
  yes: "Да"
2711
2898
  },
2712
2899
  languageSwitcher: { label: "Язык", untranslated: "Не переведено" },
2900
+ nav: { breadcrumb: "Навигационная цепочка" },
2713
2901
  page: {
2714
2902
  lastUpdated: "Последнее обновление",
2715
2903
  next: "Далее",
2904
+ pagination: "Пагинация",
2716
2905
  previous: "Назад",
2717
2906
  skipToContent: "Перейти к содержимому"
2718
2907
  },
2719
2908
  search: {
2909
+ all: "Все",
2720
2910
  button: "Поиск",
2721
2911
  devOnly: "Поиск доступен в production-сборке.",
2722
2912
  label: "Поиск по документации",
@@ -2750,6 +2940,10 @@ var sk = {
2750
2940
  title: "Opýtať sa AI"
2751
2941
  },
2752
2942
  banner: { dismiss: "Zavrieť oznámenie" },
2943
+ changelog: {
2944
+ description: "Novinky produktu a poznámky k vydaniu.",
2945
+ title: "Zoznam zmien"
2946
+ },
2753
2947
  feedback: {
2754
2948
  no: "Nie",
2755
2949
  question: "Bola táto stránka užitočná?",
@@ -2757,13 +2951,16 @@ var sk = {
2757
2951
  yes: "Áno"
2758
2952
  },
2759
2953
  languageSwitcher: { label: "Jazyk", untranslated: "Nepreložené" },
2954
+ nav: { breadcrumb: "Omrvinková navigácia" },
2760
2955
  page: {
2761
2956
  lastUpdated: "Naposledy aktualizované",
2762
2957
  next: "Ďalej",
2958
+ pagination: "Stránkovanie",
2763
2959
  previous: "Predchádzajúce",
2764
2960
  skipToContent: "Prejsť na obsah"
2765
2961
  },
2766
2962
  search: {
2963
+ all: "Všetko",
2767
2964
  button: "Hľadať",
2768
2965
  devOnly: "Vyhľadávanie je dostupné v produkčnom builde.",
2769
2966
  label: "Prehľadať dokumentáciu",
@@ -2797,6 +2994,10 @@ var sr = {
2797
2994
  title: "Питајте AI"
2798
2995
  },
2799
2996
  banner: { dismiss: "Затвори обавештење" },
2997
+ changelog: {
2998
+ description: "Ажурирања производа и белешке о издањима.",
2999
+ title: "Дневник измена"
3000
+ },
2800
3001
  feedback: {
2801
3002
  no: "Не",
2802
3003
  question: "Да ли вам је ова страница помогла?",
@@ -2804,13 +3005,16 @@ var sr = {
2804
3005
  yes: "Да"
2805
3006
  },
2806
3007
  languageSwitcher: { label: "Језик", untranslated: "Није преведено" },
3008
+ nav: { breadcrumb: "Путања навигације" },
2807
3009
  page: {
2808
3010
  lastUpdated: "Последње ажурирање",
2809
3011
  next: "Следеће",
3012
+ pagination: "Пагинација",
2810
3013
  previous: "Претходно",
2811
3014
  skipToContent: "Пређи на садржај"
2812
3015
  },
2813
3016
  search: {
3017
+ all: "Све",
2814
3018
  button: "Претражи",
2815
3019
  devOnly: "Претрага је доступна у продукцијској верзији.",
2816
3020
  label: "Претражи документацију",
@@ -2844,6 +3048,10 @@ var sv = {
2844
3048
  title: "Fråga AI"
2845
3049
  },
2846
3050
  banner: { dismiss: "Stäng meddelandet" },
3051
+ changelog: {
3052
+ description: "Produktuppdateringar och versionsinformation.",
3053
+ title: "Ändringslogg"
3054
+ },
2847
3055
  feedback: {
2848
3056
  no: "Nej",
2849
3057
  question: "Var den här sidan till hjälp?",
@@ -2851,13 +3059,16 @@ var sv = {
2851
3059
  yes: "Ja"
2852
3060
  },
2853
3061
  languageSwitcher: { label: "Språk", untranslated: "Inte översatt" },
3062
+ nav: { breadcrumb: "Brödsmulor" },
2854
3063
  page: {
2855
3064
  lastUpdated: "Senast uppdaterad",
2856
3065
  next: "Nästa",
3066
+ pagination: "Paginering",
2857
3067
  previous: "Föregående",
2858
3068
  skipToContent: "Hoppa till innehåll"
2859
3069
  },
2860
3070
  search: {
3071
+ all: "Alla",
2861
3072
  button: "Sök",
2862
3073
  devOnly: "Sökning är tillgänglig i produktionsbygget.",
2863
3074
  label: "Sök i dokumentationen",
@@ -2891,6 +3102,10 @@ var th = {
2891
3102
  title: "ถาม AI"
2892
3103
  },
2893
3104
  banner: { dismiss: "ปิดประกาศ" },
3105
+ changelog: {
3106
+ description: "อัปเดตผลิตภัณฑ์และบันทึกประจำรุ่น",
3107
+ title: "บันทึกการเปลี่ยนแปลง"
3108
+ },
2894
3109
  feedback: {
2895
3110
  no: "ไม่",
2896
3111
  question: "หน้านี้มีประโยชน์หรือไม่?",
@@ -2898,13 +3113,16 @@ var th = {
2898
3113
  yes: "ใช่"
2899
3114
  },
2900
3115
  languageSwitcher: { label: "ภาษา", untranslated: "ยังไม่ได้แปล" },
3116
+ nav: { breadcrumb: "เส้นทางนำทาง" },
2901
3117
  page: {
2902
3118
  lastUpdated: "อัปเดตล่าสุดเมื่อ",
2903
3119
  next: "ถัดไป",
3120
+ pagination: "การแบ่งหน้า",
2904
3121
  previous: "ก่อนหน้า",
2905
3122
  skipToContent: "ข้ามไปยังเนื้อหา"
2906
3123
  },
2907
3124
  search: {
3125
+ all: "ทั้งหมด",
2908
3126
  button: "ค้นหา",
2909
3127
  devOnly: "การค้นหาพร้อมใช้งานในบิลด์โปรดักชัน",
2910
3128
  label: "ค้นหาเอกสาร",
@@ -2938,6 +3156,10 @@ var tr = {
2938
3156
  title: "Yapay zekâya sor"
2939
3157
  },
2940
3158
  banner: { dismiss: "Duyuruyu kapat" },
3159
+ changelog: {
3160
+ description: "Ürün güncellemeleri ve sürüm notları.",
3161
+ title: "Değişiklik günlüğü"
3162
+ },
2941
3163
  feedback: {
2942
3164
  no: "Hayır",
2943
3165
  question: "Bu sayfa yardımcı oldu mu?",
@@ -2945,13 +3167,16 @@ var tr = {
2945
3167
  yes: "Evet"
2946
3168
  },
2947
3169
  languageSwitcher: { label: "Dil", untranslated: "Çevrilmemiş" },
3170
+ nav: { breadcrumb: "Gezinme yolu" },
2948
3171
  page: {
2949
3172
  lastUpdated: "Son güncelleme",
2950
3173
  next: "Sonraki",
3174
+ pagination: "Sayfalama",
2951
3175
  previous: "Önceki",
2952
3176
  skipToContent: "İçeriğe geç"
2953
3177
  },
2954
3178
  search: {
3179
+ all: "Tümü",
2955
3180
  button: "Ara",
2956
3181
  devOnly: "Arama, üretim derlemesinde kullanılabilir.",
2957
3182
  label: "Belgelerde ara",
@@ -2985,6 +3210,10 @@ var uk = {
2985
3210
  title: "Запитати ШІ"
2986
3211
  },
2987
3212
  banner: { dismiss: "Закрити оголошення" },
3213
+ changelog: {
3214
+ description: "Оновлення продукту та примітки до випусків.",
3215
+ title: "Журнал змін"
3216
+ },
2988
3217
  feedback: {
2989
3218
  no: "Ні",
2990
3219
  question: "Чи була ця сторінка корисною?",
@@ -2992,13 +3221,16 @@ var uk = {
2992
3221
  yes: "Так"
2993
3222
  },
2994
3223
  languageSwitcher: { label: "Мова", untranslated: "Не перекладено" },
3224
+ nav: { breadcrumb: "Навігаційний ланцюжок" },
2995
3225
  page: {
2996
3226
  lastUpdated: "Останнє оновлення",
2997
3227
  next: "Далі",
3228
+ pagination: "Пагінація",
2998
3229
  previous: "Назад",
2999
3230
  skipToContent: "Перейти до вмісту"
3000
3231
  },
3001
3232
  search: {
3233
+ all: "Усі",
3002
3234
  button: "Пошук",
3003
3235
  devOnly: "Пошук доступний у production-збірці.",
3004
3236
  label: "Пошук у документації",
@@ -3032,6 +3264,10 @@ var vi = {
3032
3264
  title: "Hỏi AI"
3033
3265
  },
3034
3266
  banner: { dismiss: "Đóng thông báo" },
3267
+ changelog: {
3268
+ description: "Cập nhật sản phẩm và ghi chú phát hành.",
3269
+ title: "Nhật ký thay đổi"
3270
+ },
3035
3271
  feedback: {
3036
3272
  no: "Không",
3037
3273
  question: "Trang này có hữu ích không?",
@@ -3039,13 +3275,16 @@ var vi = {
3039
3275
  yes: "Có"
3040
3276
  },
3041
3277
  languageSwitcher: { label: "Ngôn ngữ", untranslated: "Chưa dịch" },
3278
+ nav: { breadcrumb: "Đường dẫn điều hướng" },
3042
3279
  page: {
3043
3280
  lastUpdated: "Cập nhật lần cuối",
3044
3281
  next: "Tiếp theo",
3282
+ pagination: "Phân trang",
3045
3283
  previous: "Trước",
3046
3284
  skipToContent: "Chuyển đến nội dung"
3047
3285
  },
3048
3286
  search: {
3287
+ all: "Tất cả",
3049
3288
  button: "Tìm kiếm",
3050
3289
  devOnly: "Tìm kiếm có sẵn trong bản dựng production.",
3051
3290
  label: "Tìm kiếm tài liệu",
@@ -3079,6 +3318,10 @@ var zhTW = {
3079
3318
  title: "向 AI 提問"
3080
3319
  },
3081
3320
  banner: { dismiss: "關閉公告" },
3321
+ changelog: {
3322
+ description: "產品更新與版本說明。",
3323
+ title: "更新日誌"
3324
+ },
3082
3325
  feedback: {
3083
3326
  no: "沒有幫助",
3084
3327
  question: "這個頁面有幫助嗎?",
@@ -3086,13 +3329,16 @@ var zhTW = {
3086
3329
  yes: "有幫助"
3087
3330
  },
3088
3331
  languageSwitcher: { label: "語言", untranslated: "未翻譯" },
3332
+ nav: { breadcrumb: "麵包屑導覽" },
3089
3333
  page: {
3090
3334
  lastUpdated: "最後更新於",
3091
3335
  next: "下一頁",
3336
+ pagination: "分頁",
3092
3337
  previous: "上一頁",
3093
3338
  skipToContent: "跳至內容"
3094
3339
  },
3095
3340
  search: {
3341
+ all: "全部",
3096
3342
  button: "搜尋",
3097
3343
  devOnly: "搜尋在正式版組建中可用。",
3098
3344
  label: "搜尋文件",
@@ -3126,6 +3372,10 @@ var zh = {
3126
3372
  title: "向 AI 提问"
3127
3373
  },
3128
3374
  banner: { dismiss: "关闭公告" },
3375
+ changelog: {
3376
+ description: "产品更新与版本说明。",
3377
+ title: "更新日志"
3378
+ },
3129
3379
  feedback: {
3130
3380
  no: "没有帮助",
3131
3381
  question: "这个页面有帮助吗?",
@@ -3133,13 +3383,16 @@ var zh = {
3133
3383
  yes: "有帮助"
3134
3384
  },
3135
3385
  languageSwitcher: { label: "语言", untranslated: "未翻译" },
3386
+ nav: { breadcrumb: "面包屑导航" },
3136
3387
  page: {
3137
3388
  lastUpdated: "最后更新于",
3138
3389
  next: "下一页",
3390
+ pagination: "分页",
3139
3391
  previous: "上一页",
3140
3392
  skipToContent: "跳到内容"
3141
3393
  },
3142
3394
  search: {
3395
+ all: "全部",
3143
3396
  button: "搜索",
3144
3397
  devOnly: "搜索在生产构建中可用。",
3145
3398
  label: "搜索文档",
@@ -3206,10 +3459,10 @@ var localizeRoute = (logicalRoute, code, i18n) => {
3206
3459
  return logicalRoute === "/" ? prefix : `${prefix}${logicalRoute}`;
3207
3460
  };
3208
3461
  var detectLocale = (parts, i18n) => {
3209
- const [first] = parts;
3210
- const isNonDefault = i18n.locales.some((locale) => locale.code !== i18n.defaultLocale && locale.code === first);
3211
- if (first !== undefined && isNonDefault) {
3212
- return { locale: first, rest: parts.slice(1) };
3462
+ const first = parts[0]?.toLowerCase();
3463
+ const matched = i18n.locales.find((locale) => locale.code !== i18n.defaultLocale && locale.code.toLowerCase() === first);
3464
+ if (matched) {
3465
+ return { locale: matched.code, rest: parts.slice(1) };
3213
3466
  }
3214
3467
  return { locale: i18n.defaultLocale, rest: parts };
3215
3468
  };
@@ -3224,11 +3477,11 @@ var localePlacement = (rel, ext, i18n) => {
3224
3477
  if (i18n.parser === "dot") {
3225
3478
  const lastDot = base.lastIndexOf(".");
3226
3479
  if (lastDot > base.lastIndexOf("/")) {
3227
- const suffix = base.slice(lastDot + 1);
3228
- const matched = i18n.locales.some((locale2) => locale2.code === suffix);
3480
+ const suffix = base.slice(lastDot + 1).toLowerCase();
3481
+ const matched = i18n.locales.find((locale2) => locale2.code.toLowerCase() === suffix);
3229
3482
  if (matched) {
3230
3483
  return {
3231
- locales: [suffix],
3484
+ locales: [matched.code],
3232
3485
  navPath: `${base.slice(0, lastDot)}${ext}`
3233
3486
  };
3234
3487
  }
@@ -3885,7 +4138,7 @@ var MCP_TOOLS = [
3885
4138
  },
3886
4139
  {
3887
4140
  annotations: READ_ONLY,
3888
- description: "Fetch a single documentation page as its original Markdown source (frontmatter included). Pass a route from `search_docs` or `list_pages`, e.g. `/guides/install`.",
4141
+ description: "Fetch a single documentation page as agent-optimized Markdown (frontmatter included, components downleveled to plain Markdown). Pass a route from `search_docs` or `list_pages`, e.g. `/guides/install`.",
3889
4142
  name: "get_page",
3890
4143
  title: "Get page Markdown"
3891
4144
  },
@@ -4302,7 +4555,9 @@ var uiStringsObject = z.object({
4302
4555
  dismiss: z.string().default("Dismiss announcement")
4303
4556
  }).default({}),
4304
4557
  changelog: z.object({
4305
- showReleases: z.string().default("Show {version} releases")
4558
+ description: z.string().default("Product updates, new features, and fixes from every release."),
4559
+ showReleases: z.string().default("Show {version} releases"),
4560
+ title: z.string().default("Changelog")
4306
4561
  }).default({}),
4307
4562
  content: z.object({
4308
4563
  diagramError: z.string().default("Could not render this diagram.")
@@ -4319,6 +4574,7 @@ var uiStringsObject = z.object({
4319
4574
  }).default({}),
4320
4575
  nav: z.object({
4321
4576
  back: z.string().default("Back"),
4577
+ breadcrumb: z.string().default("Breadcrumb"),
4322
4578
  closeNavigation: z.string().default("Close navigation"),
4323
4579
  deprecated: z.string().default("deprecated"),
4324
4580
  featured: z.string().default("Featured"),
@@ -4337,10 +4593,12 @@ var uiStringsObject = z.object({
4337
4593
  page: z.object({
4338
4594
  lastUpdated: z.string().default("Last updated on"),
4339
4595
  next: z.string().default("Next"),
4596
+ pagination: z.string().default("Pagination"),
4340
4597
  previous: z.string().default("Previous"),
4341
4598
  skipToContent: z.string().default("Skip to content")
4342
4599
  }).default({}),
4343
4600
  search: z.object({
4601
+ all: z.string().default("All"),
4344
4602
  allLanguages: z.string().default("All languages"),
4345
4603
  askAi: z.string().default("Ask AI"),
4346
4604
  askAiHint: z.string().default("Get an instant answer from AI"),
@@ -4990,6 +5248,31 @@ var mdxSafe = (text) => {
4990
5248
  }
4991
5249
  return out + escapeProse(text.slice(cursor));
4992
5250
  };
5251
+ var META_DESCRIPTION_MAX = 160;
5252
+ var PARAGRAPH_BREAK = /\n\s*\n/u;
5253
+ var MARKDOWN_LINK = /\[(?<text>[^\]]*)\]\([^)]*\)/gu;
5254
+ var MARKDOWN_MARKS = /[*_`#>]/gu;
5255
+ var WHITESPACE2 = /\s+/gu;
5256
+ var TRAILING_WORD = /\s+\S*$/u;
5257
+ var plainProse = (markdown) => (markdown.trim().split(PARAGRAPH_BREAK).at(0) ?? "").replace(MARKDOWN_LINK, "$<text>").replace(MARKDOWN_MARKS, "").replace(WHITESPACE2, " ").trim();
5258
+ var clip = (text, max) => {
5259
+ if (max <= 0) {
5260
+ return "";
5261
+ }
5262
+ if (text.length <= max) {
5263
+ return text;
5264
+ }
5265
+ const head = text.slice(0, max - 1);
5266
+ const onWordBoundary = head.replace(TRAILING_WORD, "");
5267
+ return `${onWordBoundary.length >= max / 2 ? onWordBoundary : head}…`;
5268
+ };
5269
+ var apiName = (spec) => spec.title || spec.label;
5270
+ var operationDescription = (spec, operation) => {
5271
+ const endpoint = `${operation.method.toUpperCase()} ${operation.path}`;
5272
+ const suffix = `Reference for the ${endpoint} endpoint in the ${apiName(spec)} API.`;
5273
+ const prose = clip(plainProse(operation.description || operation.summary), META_DESCRIPTION_MAX - suffix.length - 1);
5274
+ return clip([prose, suffix].filter(Boolean).join(" "), META_DESCRIPTION_MAX);
5275
+ };
4993
5276
  var withDescription = (description, component) => description.trim() ? `${mdxSafe(description.trim())}
4994
5277
 
4995
5278
  ${component}` : component;
@@ -5002,6 +5285,7 @@ var operationMdx = (spec, operation) => {
5002
5285
  data: {
5003
5286
  ...operation.deprecated ? { deprecated: true } : {},
5004
5287
  search: { tags: [operation.tag, method] },
5288
+ seo: { description: operationDescription(spec, operation) },
5005
5289
  sidebar: { badge: method, label: operation.summary || operation.path },
5006
5290
  title,
5007
5291
  type: "openapi-operation"
@@ -5050,8 +5334,11 @@ var overviewMdx = (spec) => {
5050
5334
 
5051
5335
  `),
5052
5336
  data: {
5337
+ seo: {
5338
+ description: clip(plainProse(spec.description), META_DESCRIPTION_MAX) || `${apiName(spec)} API reference.`
5339
+ },
5053
5340
  sidebar: { label: "Overview" },
5054
- title: spec.title || spec.label
5341
+ title: apiName(spec)
5055
5342
  }
5056
5343
  };
5057
5344
  };
@@ -5616,6 +5903,15 @@ import { extname as extname5 } from "pathe";
5616
5903
  // src/core/schema.ts
5617
5904
  import { z as z2 } from "zod";
5618
5905
 
5906
+ // src/seo/x-handle.ts
5907
+ var normalizeXHandle = (value) => {
5908
+ if (typeof value !== "string") {
5909
+ return;
5910
+ }
5911
+ const handle = value.trim().replace(/^@+/u, "");
5912
+ return handle ? `@${handle}` : undefined;
5913
+ };
5914
+
5619
5915
  // src/theme/fonts.ts
5620
5916
  var FALLBACKS = {
5621
5917
  mono: ["ui-monospace", "SF Mono", "Menlo", "monospace"],
@@ -5773,12 +6069,14 @@ var sidebarMetaSchema = z2.strictObject({
5773
6069
  label: z2.string().optional(),
5774
6070
  order: z2.number().optional()
5775
6071
  });
6072
+ var xHandleSchema = z2.string().transform(normalizeXHandle).optional();
5776
6073
  var seoMetaSchema = z2.strictObject({
5777
6074
  canonical: z2.string().url().optional(),
5778
6075
  description: z2.string().optional(),
5779
6076
  image: z2.string().optional(),
5780
6077
  noindex: z2.boolean().default(false),
5781
- title: z2.string().optional()
6078
+ title: z2.string().optional(),
6079
+ x: z2.strictObject({ creator: xHandleSchema }).optional()
5782
6080
  });
5783
6081
  var searchMetaSchema = z2.strictObject({
5784
6082
  boost: z2.number().optional(),
@@ -6092,7 +6390,7 @@ var aiConfigSchema = z2.strictObject({
6092
6390
  openapi: z2.boolean().default(true)
6093
6391
  })
6094
6392
  ]).default(true).transform((value) => typeof value === "boolean" ? { enabled: value, openapi: true } : value),
6095
- markdownComponents: z2.record(z2.custom((value) => typeof value === "function", {
6393
+ markdownComponents: z2.record(z2.string(), z2.custom((value) => typeof value === "function", {
6096
6394
  message: "Expected a serializer function."
6097
6395
  })).default({})
6098
6396
  });
@@ -6183,6 +6481,10 @@ var redirectSchema = z2.strictObject({
6183
6481
  status: z2.union([z2.literal(301), z2.literal(302), z2.literal(307), z2.literal(308)]).default(301),
6184
6482
  to: z2.string()
6185
6483
  });
6484
+ var xConfigSchema = z2.strictObject({
6485
+ creator: xHandleSchema,
6486
+ handle: xHandleSchema
6487
+ });
6186
6488
  var ogConfigSchema = z2.strictObject({
6187
6489
  enabled: z2.boolean().optional()
6188
6490
  });
@@ -6212,7 +6514,8 @@ var seoConfigSchema = z2.strictObject({
6212
6514
  robots: z2.boolean().default(true),
6213
6515
  rss: rssConfigSchema.default({}),
6214
6516
  sitemap: z2.boolean().default(true),
6215
- structuredData: z2.boolean().default(true)
6517
+ structuredData: z2.boolean().default(true),
6518
+ x: xConfigSchema.default({})
6216
6519
  });
6217
6520
  var githubConfigSchema = z2.strictObject({
6218
6521
  branch: z2.string().default("main"),
@@ -6288,6 +6591,8 @@ var tocConfigSchema = z2.union([
6288
6591
  maxLevel: value.maxHeadingLevel ?? 3,
6289
6592
  minLevel: value.minHeadingLevel ?? 2
6290
6593
  };
6594
+ }).refine((value) => value.minLevel <= value.maxLevel, {
6595
+ message: "toc.minHeadingLevel must be less than or equal to toc.maxHeadingLevel."
6291
6596
  });
6292
6597
  var blumeConfigSchema = z2.strictObject({
6293
6598
  ai: aiConfigSchema.default({}),
@@ -7424,7 +7729,8 @@ var RENDER_EXTERNAL_DEPS = [
7424
7729
  var renderUserAliases = (aliases) => Object.entries(aliases ?? {}).toSorted(([a], [b]) => b.length - a.length).map(([find, replacement]) => `
7425
7730
  ${JSON.stringify(find)}: ${JSON.stringify(replacement)},`).join("");
7426
7731
  var astroOutDir = (context) => context.distDir ?? `${context.root}/dist`;
7427
- var reactIntegration = (compilerPath) => compilerPath ? `react({ babel: { plugins: [[${JSON.stringify(compilerPath)}, { target: "19" }]] } })` : "react()";
7732
+ var REACT_EXCLUDE = String.raw`exclude: [/\/node_modules\/\.vite\//]`;
7733
+ var reactIntegration = (compilerPath) => compilerPath ? `react({ babel: { plugins: [[${JSON.stringify(compilerPath)}, { target: "19" }]] }, ${REACT_EXCLUDE} })` : `react({ ${REACT_EXCLUDE} })`;
7428
7734
  var astroConfigTemplate = (options) => {
7429
7735
  const { context, config, needsReact, pages, dataPath, themePath } = options;
7430
7736
  const {
@@ -7967,12 +8273,24 @@ import data from ${JSON.stringify(options.dataImport)};
7967
8273
  export const prerender = true;
7968
8274
 
7969
8275
  const configuration = ${JSON.stringify(options.configuration, null, 2)};
8276
+
8277
+ // The reference is an unlocalized route, so its chrome renders in the default
8278
+ // locale's language and direction (\`data.ui\` is the default locale's resolved
8279
+ // dictionary), mirroring the changelog index's locale wiring.
8280
+ const i18n = data.config.i18n;
8281
+ const localeMeta = i18n
8282
+ ? i18n.locales.find((l) => l.code === i18n.defaultLocale)
8283
+ : null;
8284
+ const dir = localeMeta?.dir ?? "ltr";
8285
+ const htmlLang = i18n ? i18n.defaultLocale : "en";
7970
8286
  ---
7971
8287
 
7972
8288
  <ReferenceLayout
7973
8289
  analytics={data.config.analytics}
7974
8290
  banner={data.config.banner}
8291
+ dir={dir}
7975
8292
  fontCssVars={data.fontCssVars}
8293
+ locale={htmlLang}
7976
8294
  logo={data.config.logo}
7977
8295
  favicon={data.config.favicon}
7978
8296
  appleIcon={data.config.appleIcon}
@@ -8133,6 +8451,13 @@ const ogRel = seo.image ?? ogPath;
8133
8451
  // an external URL, which passes through verbatim (mirrors PageLayout).
8134
8452
  const ogImage =
8135
8453
  ogRel && base && ogRel.startsWith("/") ? \`\${base}\${withBase(ogRel)}\` : ogRel;
8454
+ // Blume's generated card has known dimensions the layout can declare; a user's
8455
+ // \`seo.image\` could be any size or format, so it gets none.
8456
+ const ogGenerated = !seo.image && Boolean(ogPath);
8457
+
8458
+ // X attribution: the site's account, plus a creator the page can claim for
8459
+ // itself (a guest post crediting its own author) over the configured default.
8460
+ const x = { ...data.config.x, ...(seo.x?.creator ? { creator: seo.x.creator } : {}) };
8136
8461
 
8137
8462
  const basedRoute = withBase(route);
8138
8463
  const canonical =
@@ -8229,6 +8554,8 @@ const LayoutComponent = resolveSlot(layoutOverrides.Layout, RootLayout);
8229
8554
  searchEnabled={data.config.search.enabled}
8230
8555
  indexable={indexable}
8231
8556
  ogImage={ogImage}
8557
+ ogGenerated={ogGenerated}
8558
+ x={x}
8232
8559
  canonical={canonical}
8233
8560
  editUrl={editUrl}
8234
8561
  feedback={data.config.feedback}
@@ -8255,7 +8582,7 @@ var changelogIndexTemplate = (options) => {
8255
8582
  const askSlot = options.askEnabled ? `
8256
8583
  <AskAI slot="ask" strings={data.ui.ask} suggestions={data.config.ask?.suggestions ?? []} />` : "";
8257
8584
  const clientData = options.needsReact ? `
8258
- clientData={{ config: data.config, navigation: data.navigation, page: { route: "/changelog", title: data.config.title + " changelog" } }}` : "";
8585
+ clientData={{ config: data.config, navigation: data.navigation, page: { route: "/changelog", title: pageTitle } }}` : "";
8259
8586
  const stagedSpread = options.staged ? `
8260
8587
  ...(await getCollection("staged")),` : "";
8261
8588
  return `---
@@ -8393,6 +8720,15 @@ const localeMeta = i18n
8393
8720
  const dir = localeMeta?.dir ?? "ltr";
8394
8721
  const htmlLang = i18n ? i18n.defaultLocale : "en";
8395
8722
 
8723
+ // The page chrome (h1, title, description) comes from the same translatable
8724
+ // \`changelog\` group as the reveal button; optional chaining tolerates a
8725
+ // not-yet-regenerated data snapshot from before these keys existed.
8726
+ const changelogTitle = data.ui.changelog?.title ?? "Changelog";
8727
+ const changelogDescription =
8728
+ data.ui.changelog?.description ??
8729
+ "Product updates, new features, and fixes from every release.";
8730
+ const pageTitle = data.config.title + " " + changelogTitle;
8731
+
8396
8732
  const LayoutComponent = resolveSlot(layoutOverrides.Layout, RootLayout);
8397
8733
  ---
8398
8734
 
@@ -8412,8 +8748,8 @@ const LayoutComponent = resolveSlot(layoutOverrides.Layout, RootLayout);
8412
8748
  dir={dir}
8413
8749
  ui={data.ui}
8414
8750
  page={{
8415
- title: data.config.title + " changelog",
8416
- description: "Product updates and release notes.",
8751
+ title: pageTitle,
8752
+ description: changelogDescription,
8417
8753
  route: "/changelog",
8418
8754
  }}
8419
8755
  headings={headings}
@@ -8424,6 +8760,7 @@ const LayoutComponent = resolveSlot(layoutOverrides.Layout, RootLayout);
8424
8760
  searchEnabled={data.config.search.enabled}
8425
8761
  indexable={true}
8426
8762
  ogImage={null}
8763
+ x={data.config.x}
8427
8764
  canonical={canonical}
8428
8765
  askEnabled={${options.askEnabled}}
8429
8766
  exportPdf={${options.exportPdf}}
@@ -8433,7 +8770,7 @@ const LayoutComponent = resolveSlot(layoutOverrides.Layout, RootLayout);
8433
8770
  noindex={false}
8434
8771
  structuredDataEnabled={data.config.structuredData}
8435
8772
  >${askSlot}
8436
- <h1>Changelog</h1>
8773
+ <h1>{changelogTitle}</h1>
8437
8774
  {
8438
8775
  items.length === 0 ? (
8439
8776
  <p>No changelog entries yet.</p>
@@ -10210,7 +10547,8 @@ var buildRuntimeData = (project) => {
10210
10547
  structuredData: config.seo.structuredData,
10211
10548
  theme: config.theme,
10212
10549
  title: config.title,
10213
- toc: config.toc
10550
+ toc: config.toc,
10551
+ x: config.seo.x
10214
10552
  },
10215
10553
  feeds: buildRssFeeds(project).map((feed) => ({
10216
10554
  href: feed.path,
@@ -11397,9 +11735,10 @@ var RED = `${ESC2}[31m`;
11397
11735
  var BOLD = `${ESC2}[1m`;
11398
11736
  var RESET = `${ESC2}[0m`;
11399
11737
  var ISSUES_URL = "https://github.com/haydenbleasel/blume/issues";
11400
- var BLUME_FRAME = /(?<abs>\/[^\s()]*\/\.blume\/[^\s()]*)/gu;
11738
+ var BLUME_FRAME = /(?<abs>(?:\/[^\s()]*\/|[A-Za-z]:\\[^\s()]*\\)\.blume[/\\][^\s()]*)/gu;
11739
+ var BLUME_MARKER = /[/\\]\.blume[/\\]/u;
11401
11740
  var remapBlumeStack = (stack) => stack.replaceAll(BLUME_FRAME, (match) => {
11402
- const marker = match.indexOf("/.blume/");
11741
+ const marker = match.search(BLUME_MARKER);
11403
11742
  return `${match.slice(marker + 1)} (generated)`;
11404
11743
  });
11405
11744
  var reportInternalError = (error) => {
@@ -11592,16 +11931,23 @@ var runClientAssetChecks = async (staticDir, args) => {
11592
11931
  process.exit(1);
11593
11932
  }
11594
11933
  };
11934
+ var isolatedOutputDir = (config, context) => {
11935
+ const { adapter, output } = config.deployment;
11936
+ if (output === "server" && adapter === "vercel") {
11937
+ return join24(context.outDir, ".vercel", "output");
11938
+ }
11939
+ return context.distDir ?? join24(context.outDir, "dist");
11940
+ };
11595
11941
  var isolatedStaticDir = (config, context) => {
11596
11942
  const { adapter, output } = config.deployment;
11943
+ const outputDir = isolatedOutputDir(config, context);
11597
11944
  if (output === "server" && adapter === "vercel") {
11598
- return join24(context.outDir, ".vercel", "output", "static");
11945
+ return join24(outputDir, "static");
11599
11946
  }
11600
- const dist = context.distDir ?? join24(context.outDir, "dist");
11601
11947
  if (output === "server" && adapter === "node") {
11602
- return join24(dist, "client");
11948
+ return join24(outputDir, "client");
11603
11949
  }
11604
- return dist;
11950
+ return outputDir;
11605
11951
  };
11606
11952
  var publishLlmsFiles = async (project, distDir) => {
11607
11953
  const indexPath = join24(distDir, "llms.txt");
@@ -11748,10 +12094,9 @@ var buildCommand = defineCommand2({
11748
12094
  logLevel: "info",
11749
12095
  root: project.context.outDir
11750
12096
  });
11751
- const distDir = project.context.distDir ?? join24(root, "dist");
11752
12097
  if (runtimeDir) {
11753
12098
  await runClientAssetChecks(isolatedStaticDir(project.config, project.context), args);
11754
- logger.success(`Isolated build OK — output at ${distDir} (not published).`);
12099
+ logger.success(`Isolated build OK — output at ${isolatedOutputDir(project.config, project.context)} (not published).`);
11755
12100
  return;
11756
12101
  }
11757
12102
  const surfaced = await surfaceAdapterOutput(project.config, project.context);
@@ -13491,5 +13836,5 @@ process.on("unhandledRejection", (error) => {
13491
13836
  });
13492
13837
  runMain(main);
13493
13838
 
13494
- //# debugId=0106CF055BC5BCA264756E2164756E21
13839
+ //# debugId=066FB7264FFC708364756E2164756E21
13495
13840
  //# sourceMappingURL=index.js.map