@docusaurus/theme-common 3.9.1 → 3.9.2-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/hooks/useCodeWordWrap.d.ts +1 -1
- package/lib/hooks/useCodeWordWrap.d.ts.map +1 -1
- package/lib/hooks/useCodeWordWrap.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/internal.d.ts +3 -2
- package/lib/internal.d.ts.map +1 -1
- package/lib/internal.js +3 -2
- package/lib/internal.js.map +1 -1
- package/lib/{hooks/styles.css → translations/docsTranslations.d.ts} +2 -4
- package/lib/translations/docsTranslations.d.ts.map +1 -0
- package/lib/translations/docsTranslations.js +17 -0
- package/lib/translations/docsTranslations.js.map +1 -0
- package/lib/utils/ThemeClassNames.d.ts +7 -0
- package/lib/utils/ThemeClassNames.d.ts.map +1 -1
- package/lib/utils/ThemeClassNames.js +7 -0
- package/lib/utils/ThemeClassNames.js.map +1 -1
- package/lib/utils/anchorUtils.d.ts +16 -0
- package/lib/utils/anchorUtils.d.ts.map +1 -0
- package/lib/utils/anchorUtils.js +26 -0
- package/lib/utils/anchorUtils.js.map +1 -0
- package/{src/hooks/styles.css → lib/utils/anchorUtils.module.css} +6 -2
- package/lib/utils/emojiUtils.d.ts +20 -0
- package/lib/utils/emojiUtils.d.ts.map +1 -0
- package/lib/utils/emojiUtils.js +31 -0
- package/lib/utils/emojiUtils.js.map +1 -0
- package/lib/utils/reactUtils.js +1 -1
- package/lib/utils/reactUtils.js.map +1 -1
- package/lib/utils/storageUtils.d.ts.map +1 -1
- package/lib/utils/storageUtils.js +0 -4
- package/lib/utils/storageUtils.js.map +1 -1
- package/lib/utils/tabsUtils.d.ts +12 -6
- package/lib/utils/tabsUtils.d.ts.map +1 -1
- package/lib/utils/tabsUtils.js +46 -22
- package/lib/utils/tabsUtils.js.map +1 -1
- package/package.json +8 -8
- package/src/hooks/useCodeWordWrap.ts +2 -2
- package/src/index.ts +2 -0
- package/src/internal.ts +9 -5
- package/src/translations/docsTranslations.tsx +28 -0
- package/src/utils/ThemeClassNames.ts +7 -0
- package/src/utils/anchorUtils.module.css +14 -0
- package/src/utils/anchorUtils.ts +31 -0
- package/src/utils/emojiUtils.ts +41 -0
- package/src/utils/reactUtils.tsx +1 -1
- package/src/utils/skipToContentUtils.tsx +1 -1
- package/src/utils/storageUtils.ts +0 -4
- package/src/utils/tabsUtils.tsx +72 -35
- package/lib/hooks/useKeyboardNavigation.d.ts +0 -20
- package/lib/hooks/useKeyboardNavigation.d.ts.map +0 -1
- package/lib/hooks/useKeyboardNavigation.js +0 -39
- package/lib/hooks/useKeyboardNavigation.js.map +0 -1
- package/src/hooks/useKeyboardNavigation.ts +0 -45
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { RefObject } from 'react';
|
|
8
8
|
export type WordWrap = {
|
|
9
|
-
readonly codeBlockRef: RefObject<HTMLPreElement>;
|
|
9
|
+
readonly codeBlockRef: RefObject<HTMLPreElement | null>;
|
|
10
10
|
readonly isEnabled: boolean;
|
|
11
11
|
readonly isCodeScrollable: boolean;
|
|
12
12
|
readonly toggle: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCodeWordWrap.d.ts","sourceRoot":"","sources":["../../src/hooks/useCodeWordWrap.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAgDrC,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useCodeWordWrap.d.ts","sourceRoot":"","sources":["../../src/hooks/useCodeWordWrap.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAgDrC,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAgB,eAAe,IAAI,QAAQ,CA6C1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCodeWordWrap.js","sourceRoot":"","sources":["../../src/hooks/useCodeWordWrap.ts"],"names":[],"mappings":"AAOA,OAAO,EAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,OAAO,CAAC;AAC/D,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAE1D,mEAAmE;AACnE,uDAAuD;AACvD,SAAS,2BAA2B,CAClC,
|
|
1
|
+
{"version":3,"file":"useCodeWordWrap.js","sourceRoot":"","sources":["../../src/hooks/useCodeWordWrap.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -25,6 +25,7 @@ export { NavbarSecondaryMenuFiller, type NavbarSecondaryMenuComponent, } from '.
|
|
|
25
25
|
export { useWindowSize } from './hooks/useWindowSize';
|
|
26
26
|
export { translateTagsPageTitle, listTagsByLetters, type TagLetterEntry, } from './utils/tagsUtils';
|
|
27
27
|
export { useSearchQueryString, useSearchLinkCreator, } from './hooks/useSearchPage';
|
|
28
|
+
export { useAnchorTargetClassName } from './utils/anchorUtils';
|
|
28
29
|
export { isMultiColumnFooterLinks } from './utils/footerUtils';
|
|
29
30
|
export { isRegexpStringMatch } from './utils/regexpUtils';
|
|
30
31
|
export { duplicates, uniq, groupBy } from './utils/jsUtils';
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,wBAAgB,yBAAyB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAKrE;AACD,wBAAgB,sBAAsB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAKlE;AACD,wBAAgB,uBAAuB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAKnE;AACD,wBAAgB,0BAA0B;;;EAOzC;AAMD,OAAO,EACL,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAExE,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,0BAA0B,CAAC;AAErE,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EACL,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,uBAAuB,CAAC;AAE1E,OAAO,EAAC,YAAY,EAAE,KAAK,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAElE,OAAO,EACL,yBAAyB,EACzB,KAAK,4BAA4B,GAClC,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAOpD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,KAAK,cAAc,GACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAC,wBAAwB,EAAC,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAC,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAC,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,iCAAiC,EACjC,kBAAkB,GACnB,MAAM,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,wBAAgB,yBAAyB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAKrE;AACD,wBAAgB,sBAAsB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAKlE;AACD,wBAAgB,uBAAuB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAKnE;AACD,wBAAgB,0BAA0B;;;EAOzC;AAMD,OAAO,EACL,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAExE,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,0BAA0B,CAAC;AAErE,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EACL,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,uBAAuB,CAAC;AAE1E,OAAO,EAAC,YAAY,EAAE,KAAK,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAElE,OAAO,EACL,yBAAyB,EACzB,KAAK,4BAA4B,GAClC,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAOpD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,KAAK,cAAc,GACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAC,wBAAwB,EAAC,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAC,wBAAwB,EAAC,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAC,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAC,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,iCAAiC,EACjC,kBAAkB,GACnB,MAAM,4BAA4B,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -51,6 +51,7 @@ export { useWindowSize } from './hooks/useWindowSize';
|
|
|
51
51
|
*/
|
|
52
52
|
export { translateTagsPageTitle, listTagsByLetters, } from './utils/tagsUtils';
|
|
53
53
|
export { useSearchQueryString, useSearchLinkCreator, } from './hooks/useSearchPage';
|
|
54
|
+
export { useAnchorTargetClassName } from './utils/anchorUtils';
|
|
54
55
|
export { isMultiColumnFooterLinks } from './utils/footerUtils';
|
|
55
56
|
export { isRegexpStringMatch } from './utils/regexpUtils';
|
|
56
57
|
export { duplicates, uniq, groupBy } from './utils/jsUtils';
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/internal.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export * from './index';
|
|
8
8
|
export { AnnouncementBarProvider, useAnnouncementBar, } from './contexts/announcementBar';
|
|
9
|
-
export { useTabs,
|
|
9
|
+
export { sanitizeTabsChildren, TabsProvider, useTabs, useTabsContextValue, } from './utils/tabsUtils';
|
|
10
10
|
export type { TabValue, TabsProps, TabItemProps } from './utils/tabsUtils';
|
|
11
11
|
export { useNavbarMobileSidebar } from './contexts/navbarMobileSidebar';
|
|
12
12
|
export { useNavbarSecondaryMenu } from './contexts/navbarSecondaryMenu/display';
|
|
@@ -23,12 +23,13 @@ export { ScrollControllerProvider, useScrollController, useScrollPosition, useSc
|
|
|
23
23
|
export { useHomePageRoute, isSamePath } from './utils/routesUtils';
|
|
24
24
|
export { PluginHtmlClassNameProvider } from './utils/metadataUtils';
|
|
25
25
|
export { splitNavbarItems, NavbarProvider } from './utils/navbarUtils';
|
|
26
|
+
export { extractLeadingEmoji } from './utils/emojiUtils';
|
|
26
27
|
export { useTOCHighlight, type TOCHighlightConfig, } from './hooks/useTOCHighlight';
|
|
27
28
|
export { useDateTimeFormat } from './utils/IntlUtils';
|
|
28
29
|
export { useHideableNavbar } from './hooks/useHideableNavbar';
|
|
29
|
-
export { useKeyboardNavigation, keyboardFocusedClassName, } from './hooks/useKeyboardNavigation';
|
|
30
30
|
export { useLockBodyScroll } from './hooks/useLockBodyScroll';
|
|
31
31
|
export { useCodeWordWrap } from './hooks/useCodeWordWrap';
|
|
32
32
|
export { useBackToTopButton } from './hooks/useBackToTopButton';
|
|
33
|
+
export { useDocCardDescriptionCategoryItemsPlural } from './translations/docsTranslations';
|
|
33
34
|
export { useBlogTagsPostsPageTitle, useBlogAuthorPageTitle, translateBlogAuthorsListPageTitle, BlogAuthorsListViewAllLabel, BlogAuthorNoPostsLabel, } from './translations/blogTranslations';
|
|
34
35
|
//# sourceMappingURL=internal.d.ts.map
|
package/lib/internal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,cAAc,SAAS,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,
|
|
1
|
+
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,cAAc,SAAS,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,OAAO,EACP,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAC,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAC,sBAAsB,EAAC,MAAM,wCAAwC,CAAC;AAE9E,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EACL,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EAInB,mBAAmB,EACnB,sBAAsB,IAAI,aAAa,EACvC,UAAU,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAC,gBAAgB,EAAE,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAC,2BAA2B,EAAC,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAC,gBAAgB,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAErE,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EACL,eAAe,EACf,KAAK,kBAAkB,GACxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAC,wCAAwC,EAAC,MAAM,iCAAiC,CAAC;AACzF,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,iCAAiC,EACjC,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC"}
|
package/lib/internal.js
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
// eslint-disable-next-line no-restricted-syntax
|
|
18
18
|
export * from './index';
|
|
19
19
|
export { AnnouncementBarProvider, useAnnouncementBar, } from './contexts/announcementBar';
|
|
20
|
-
export { useTabs,
|
|
20
|
+
export { sanitizeTabsChildren, TabsProvider, useTabs, useTabsContextValue, } from './utils/tabsUtils';
|
|
21
21
|
export { useNavbarMobileSidebar } from './contexts/navbarMobileSidebar';
|
|
22
22
|
export { useNavbarSecondaryMenu } from './contexts/navbarSecondaryMenu/display';
|
|
23
23
|
export { ColorModeProvider } from './contexts/colorMode';
|
|
@@ -36,12 +36,13 @@ export { ScrollControllerProvider, useScrollController, useScrollPosition, useSc
|
|
|
36
36
|
export { useHomePageRoute, isSamePath } from './utils/routesUtils';
|
|
37
37
|
export { PluginHtmlClassNameProvider } from './utils/metadataUtils';
|
|
38
38
|
export { splitNavbarItems, NavbarProvider } from './utils/navbarUtils';
|
|
39
|
+
export { extractLeadingEmoji } from './utils/emojiUtils';
|
|
39
40
|
export { useTOCHighlight, } from './hooks/useTOCHighlight';
|
|
40
41
|
export { useDateTimeFormat } from './utils/IntlUtils';
|
|
41
42
|
export { useHideableNavbar } from './hooks/useHideableNavbar';
|
|
42
|
-
export { useKeyboardNavigation, keyboardFocusedClassName, } from './hooks/useKeyboardNavigation';
|
|
43
43
|
export { useLockBodyScroll } from './hooks/useLockBodyScroll';
|
|
44
44
|
export { useCodeWordWrap } from './hooks/useCodeWordWrap';
|
|
45
45
|
export { useBackToTopButton } from './hooks/useBackToTopButton';
|
|
46
|
+
export { useDocCardDescriptionCategoryItemsPlural } from './translations/docsTranslations';
|
|
46
47
|
export { useBlogTagsPostsPageTitle, useBlogAuthorPageTitle, translateBlogAuthorsListPageTitle, BlogAuthorsListViewAllLabel, BlogAuthorNoPostsLabel, } from './translations/blogTranslations';
|
|
47
48
|
//# sourceMappingURL=internal.js.map
|
package/lib/internal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,4EAA4E;AAC5E,6EAA6E;AAC7E,2EAA2E;AAC3E,uDAAuD;AACvD,EAAE;AACF,6DAA6D;AAC7D,gFAAgF;AAChF,yEAAyE;AACzE,oDAAoD;AACpD,EAAE;AACF,gDAAgD;AAChD,cAAc,SAAS,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,4EAA4E;AAC5E,6EAA6E;AAC7E,2EAA2E;AAC3E,uDAAuD;AACvD,EAAE;AACF,6DAA6D;AAC7D,gFAAgF;AAChF,yEAAyE;AACzE,oDAAoD;AACpD,EAAE;AACF,gDAAgD;AAChD,cAAc,SAAS,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,OAAO,EACP,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAC,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAC,sBAAsB,EAAC,MAAM,wCAAwC,CAAC;AAE9E,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAEL,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB;AAEnB,yEAAyE;AACzE,yDAAyD;AACzD,mBAAmB,EACnB,sBAAsB,IAAI,aAAa,EACvC,UAAU,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,0BAA0B,EAC1B,eAAe,GAEhB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAC,gBAAgB,EAAE,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAC,2BAA2B,EAAC,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAC,gBAAgB,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAErE,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EACL,eAAe,GAEhB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAC,wCAAwC,EAAC,MAAM,iCAAiC,CAAC;AACzF,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,iCAAiC,EACjC,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC"}
|
|
@@ -4,7 +4,5 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
outline: none;
|
|
10
|
-
}
|
|
7
|
+
export declare function useDocCardDescriptionCategoryItemsPlural(): (count: number) => string;
|
|
8
|
+
//# sourceMappingURL=docsTranslations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docsTranslations.d.ts","sourceRoot":"","sources":["../../src/translations/docsTranslations.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,wBAAgB,wCAAwC,IAAI,CAC1D,KAAK,EAAE,MAAM,KACV,MAAM,CAeV"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import { translate } from '@docusaurus/Translate';
|
|
8
|
+
import { usePluralForm } from '../utils/usePluralForm';
|
|
9
|
+
export function useDocCardDescriptionCategoryItemsPlural() {
|
|
10
|
+
const { selectMessage } = usePluralForm();
|
|
11
|
+
return (count) => selectMessage(count, translate({
|
|
12
|
+
message: '1 item|{count} items',
|
|
13
|
+
id: 'theme.docs.DocCard.categoryDescription.plurals',
|
|
14
|
+
description: 'The default description for a category card in the generated index about how many items this category includes',
|
|
15
|
+
}, { count }));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=docsTranslations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docsTranslations.js","sourceRoot":"","sources":["../../src/translations/docsTranslations.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAErD,MAAM,UAAU,wCAAwC;IAGtD,MAAM,EAAC,aAAa,EAAC,GAAG,aAAa,EAAE,CAAC;IACxC,OAAO,CAAC,KAAa,EAAE,EAAE,CACvB,aAAa,CACX,KAAK,EACL,SAAS,CACP;QACE,OAAO,EAAE,sBAAsB;QAC/B,EAAE,EAAE,gDAAgD;QACpD,WAAW,EACT,gHAAgH;KACnH,EACD,EAAC,KAAK,EAAC,CACR,CACF,CAAC;AACN,CAAC"}
|
|
@@ -80,6 +80,13 @@ export declare const ThemeClassNames: {
|
|
|
80
80
|
readonly docSidebarItemLink: "theme-doc-sidebar-item-link";
|
|
81
81
|
readonly docSidebarItemCategoryLevel: (level: number) => `theme-doc-sidebar-item-category-level-${number}`;
|
|
82
82
|
readonly docSidebarItemLinkLevel: (level: number) => `theme-doc-sidebar-item-link-level-${number}`;
|
|
83
|
+
readonly docCard: {
|
|
84
|
+
readonly container: "theme-doc-card-container";
|
|
85
|
+
readonly heading: "theme-doc-card-heading";
|
|
86
|
+
readonly icon: "theme-doc-card-icon";
|
|
87
|
+
readonly title: "theme-doc-card-title";
|
|
88
|
+
readonly description: "theme-doc-card-description";
|
|
89
|
+
};
|
|
83
90
|
};
|
|
84
91
|
readonly blog: {
|
|
85
92
|
readonly blogFooterTagsRow: "theme-blog-footer-tags-row";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeClassNames.d.ts","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAoCD,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;IA8B/B;;OAEG;;;;;;;;;;;;;;;sDAeoC,MAAM;kDAEV,MAAM
|
|
1
|
+
{"version":3,"file":"ThemeClassNames.d.ts","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAoCD,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;IA8B/B;;OAEG;;;;;;;;;;;;;;;sDAeoC,MAAM;kDAEV,MAAM;;;;;;;;;;;;;;;;CAmBjC,CAAC"}
|
|
@@ -87,6 +87,13 @@ export const ThemeClassNames = {
|
|
|
87
87
|
docSidebarItemCategoryLevel: (level) => `theme-doc-sidebar-item-category-level-${level}`,
|
|
88
88
|
docSidebarItemLinkLevel: (level) => `theme-doc-sidebar-item-link-level-${level}`,
|
|
89
89
|
// TODO add other stable classNames here
|
|
90
|
+
docCard: {
|
|
91
|
+
container: 'theme-doc-card-container',
|
|
92
|
+
heading: 'theme-doc-card-heading',
|
|
93
|
+
icon: 'theme-doc-card-icon',
|
|
94
|
+
title: 'theme-doc-card-title',
|
|
95
|
+
description: 'theme-doc-card-description',
|
|
96
|
+
},
|
|
90
97
|
},
|
|
91
98
|
blog: {
|
|
92
99
|
// TODO add other stable classNames here
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeClassNames.js","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,aAAa;AAEb;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE;QACJ,YAAY,EAAE,gBAAgB;QAC9B,YAAY,EAAE,gBAAgB;QAC9B,gBAAgB,EAAE,qBAAqB;QACvC,mBAAmB,EAAE,0BAA0B;QAC/C,mBAAmB,EAAE,wBAAwB;QAC7C,oBAAoB,EAAE,yBAAyB;QAE/C,WAAW,EAAE,eAAe;QAC5B,gBAAgB,EAAE,qBAAqB;QACvC,kBAAkB,EAAE,yBAAyB;QAE7C,OAAO,EAAE,UAAU;KACpB;IAED,0CAA0C;IAC1C,OAAO,EAAE;QACP,IAAI,EAAE,cAAc,EAAE,gCAAgC;QACtD,uDAAuD;QACvD,uCAAuC;QACvC,+DAA+D;QAC/D,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,cAAc;QACzB,QAAQ,EAAE,aAAa;KACxB;IAED,MAAM,EAAE;QACN,YAAY,EAAE,sBAAsB;QACpC,WAAW,EAAE,oBAAoB;QACjC,eAAe,EAAE,0BAA0B;QAC3C,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE,kBAAkB;QAC9B,cAAc,EAAE,uBAAuB;QACvC,WAAW,EAAE,oBAAoB;QAEjC,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,oBAAoB,IAAI,EAAE;KAC7D;IAED,eAAe,EAAE;QACf,SAAS,EAAE,wBAAwB;KACpC;IAED,IAAI,EAAE;QACJ,SAAS,EAAE,sBAAsB;KAClC;IAED,MAAM,EAAE;QACN,MAAM,EAAE;YACN,SAAS,EAAE,qBAAqB;YAChC,aAAa,EAAE,0BAA0B;YACzC,cAAc,EAAE,2BAA2B;YAC3C,aAAa,EAAE;gBACb,SAAS,EAAE,6BAA6B;gBACxC,KAAK,EAAE,mCAAmC;aAC3C;SACF;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,mBAAmB;SAC/B;QACD,MAAM,EAAE;YACN,SAAS,EAAE,qBAAqB;YAChC,MAAM,EAAE,4BAA4B;SACrC;KACF;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,gBAAgB,EAAE,0BAA0B;QAC5C,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,uBAAuB;QACvC,WAAW,EAAE,oBAAoB;QACjC,YAAY,EAAE,sBAAsB;QACpC,aAAa,EAAE,uBAAuB;QACtC,SAAS,EAAE,kBAAkB;QAC7B,gBAAgB,EAAE,2BAA2B;QAC7C,oBAAoB,EAAE,gCAAgC;QACtD,mBAAmB,EAAE,6BAA6B;QAClD,cAAc,EAAE,wBAAwB;QACxC,sBAAsB,EAAE,iCAAiC;QACzD,kBAAkB,EAAE,6BAA6B;QACjD,2BAA2B,EAAE,CAAC,KAAa,EAAE,EAAE,CAC7C,yCAAyC,KAAK,EAAW;QAC3D,uBAAuB,EAAE,CAAC,KAAa,EAAE,EAAE,CACzC,qCAAqC,KAAK,EAAW;QACvD,wCAAwC;
|
|
1
|
+
{"version":3,"file":"ThemeClassNames.js","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,aAAa;AAEb;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE;QACJ,YAAY,EAAE,gBAAgB;QAC9B,YAAY,EAAE,gBAAgB;QAC9B,gBAAgB,EAAE,qBAAqB;QACvC,mBAAmB,EAAE,0BAA0B;QAC/C,mBAAmB,EAAE,wBAAwB;QAC7C,oBAAoB,EAAE,yBAAyB;QAE/C,WAAW,EAAE,eAAe;QAC5B,gBAAgB,EAAE,qBAAqB;QACvC,kBAAkB,EAAE,yBAAyB;QAE7C,OAAO,EAAE,UAAU;KACpB;IAED,0CAA0C;IAC1C,OAAO,EAAE;QACP,IAAI,EAAE,cAAc,EAAE,gCAAgC;QACtD,uDAAuD;QACvD,uCAAuC;QACvC,+DAA+D;QAC/D,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,cAAc;QACzB,QAAQ,EAAE,aAAa;KACxB;IAED,MAAM,EAAE;QACN,YAAY,EAAE,sBAAsB;QACpC,WAAW,EAAE,oBAAoB;QACjC,eAAe,EAAE,0BAA0B;QAC3C,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE,kBAAkB;QAC9B,cAAc,EAAE,uBAAuB;QACvC,WAAW,EAAE,oBAAoB;QAEjC,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,oBAAoB,IAAI,EAAE;KAC7D;IAED,eAAe,EAAE;QACf,SAAS,EAAE,wBAAwB;KACpC;IAED,IAAI,EAAE;QACJ,SAAS,EAAE,sBAAsB;KAClC;IAED,MAAM,EAAE;QACN,MAAM,EAAE;YACN,SAAS,EAAE,qBAAqB;YAChC,aAAa,EAAE,0BAA0B;YACzC,cAAc,EAAE,2BAA2B;YAC3C,aAAa,EAAE;gBACb,SAAS,EAAE,6BAA6B;gBACxC,KAAK,EAAE,mCAAmC;aAC3C;SACF;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,mBAAmB;SAC/B;QACD,MAAM,EAAE;YACN,SAAS,EAAE,qBAAqB;YAChC,MAAM,EAAE,4BAA4B;SACrC;KACF;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,gBAAgB,EAAE,0BAA0B;QAC5C,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,uBAAuB;QACvC,WAAW,EAAE,oBAAoB;QACjC,YAAY,EAAE,sBAAsB;QACpC,aAAa,EAAE,uBAAuB;QACtC,SAAS,EAAE,kBAAkB;QAC7B,gBAAgB,EAAE,2BAA2B;QAC7C,oBAAoB,EAAE,gCAAgC;QACtD,mBAAmB,EAAE,6BAA6B;QAClD,cAAc,EAAE,wBAAwB;QACxC,sBAAsB,EAAE,iCAAiC;QACzD,kBAAkB,EAAE,6BAA6B;QACjD,2BAA2B,EAAE,CAAC,KAAa,EAAE,EAAE,CAC7C,yCAAyC,KAAK,EAAW;QAC3D,uBAAuB,EAAE,CAAC,KAAa,EAAE,EAAE,CACzC,qCAAqC,KAAK,EAAW;QACvD,wCAAwC;QACxC,OAAO,EAAE;YACP,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,wBAAwB;YACjC,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,sBAAsB;YAC7B,WAAW,EAAE,4BAA4B;SAC1C;KACF;IACD,IAAI,EAAE;QACJ,wCAAwC;QACxC,iBAAiB,EAAE,4BAA4B;QAC/C,qBAAqB,EAAE,iCAAiC;KACzD;IACD,KAAK,EAAE;QACL,qBAAqB,EAAE,kCAAkC;KAC1D;CACO,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* When the navbar is sticky, this ensures that when clicking a hash link,
|
|
9
|
+
* we do not navigate to an anchor that will appear below the navbar.
|
|
10
|
+
* This happens in particular for MDX headings and footnotes.
|
|
11
|
+
*
|
|
12
|
+
* See https://github.com/facebook/docusaurus/issues/11232
|
|
13
|
+
* See also headings case https://x.com/JoshWComeau/status/1332015868725891076
|
|
14
|
+
*/
|
|
15
|
+
export declare function useAnchorTargetClassName(id: string | undefined): string | undefined;
|
|
16
|
+
//# sourceMappingURL=anchorUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anchorUtils.d.ts","sourceRoot":"","sources":["../../src/utils/anchorUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,GAAG,SAAS,GACrB,MAAM,GAAG,SAAS,CAUpB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import { useThemeConfig } from './useThemeConfig';
|
|
8
|
+
import styles from './anchorUtils.module.css';
|
|
9
|
+
/**
|
|
10
|
+
* When the navbar is sticky, this ensures that when clicking a hash link,
|
|
11
|
+
* we do not navigate to an anchor that will appear below the navbar.
|
|
12
|
+
* This happens in particular for MDX headings and footnotes.
|
|
13
|
+
*
|
|
14
|
+
* See https://github.com/facebook/docusaurus/issues/11232
|
|
15
|
+
* See also headings case https://x.com/JoshWComeau/status/1332015868725891076
|
|
16
|
+
*/
|
|
17
|
+
export function useAnchorTargetClassName(id) {
|
|
18
|
+
const { navbar: { hideOnScroll }, } = useThemeConfig();
|
|
19
|
+
if (typeof id === 'undefined') {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
return hideOnScroll
|
|
23
|
+
? styles.anchorTargetHideOnScrollNavbar
|
|
24
|
+
: styles.anchorTargetStickyNavbar;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=anchorUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anchorUtils.js","sourceRoot":"","sources":["../../src/utils/anchorUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CACtC,EAAsB;IAEtB,MAAM,EACJ,MAAM,EAAE,EAAC,YAAY,EAAC,GACvB,GAAG,cAAc,EAAE,CAAC;IACrB,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,YAAY;QACjB,CAAC,CAAC,MAAM,CAAC,8BAA8B;QACvC,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC;AACtC,CAAC"}
|
|
@@ -5,6 +5,10 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
.anchorTargetStickyNavbar {
|
|
9
|
+
scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.anchorTargetHideOnScrollNavbar {
|
|
13
|
+
scroll-margin-top: 0.5rem;
|
|
10
14
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* This method splits "⚠️ Hello World" into "⚠️" + " Hello World".
|
|
9
|
+
* It is quite strict and dumb, only useful to handle best-effort heuristics.
|
|
10
|
+
* It only extracts a leading emoji if it is the first grapheme of the string.
|
|
11
|
+
* It only extracts one emoji, even if multiples are present.
|
|
12
|
+
* It doesn't trim the remaining string.
|
|
13
|
+
* If you need something more clever, it should be built on top.
|
|
14
|
+
* @param input
|
|
15
|
+
*/
|
|
16
|
+
export declare function extractLeadingEmoji(input: string): {
|
|
17
|
+
emoji: string | null;
|
|
18
|
+
rest: string;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=emojiUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emojiUtils.d.ts","sourceRoot":"","sources":["../../src/utils/emojiUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG;IAClD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAmBA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
const segmenter = new Intl.Segmenter(undefined, { granularity: 'grapheme' });
|
|
8
|
+
/**
|
|
9
|
+
* This method splits "⚠️ Hello World" into "⚠️" + " Hello World".
|
|
10
|
+
* It is quite strict and dumb, only useful to handle best-effort heuristics.
|
|
11
|
+
* It only extracts a leading emoji if it is the first grapheme of the string.
|
|
12
|
+
* It only extracts one emoji, even if multiples are present.
|
|
13
|
+
* It doesn't trim the remaining string.
|
|
14
|
+
* If you need something more clever, it should be built on top.
|
|
15
|
+
* @param input
|
|
16
|
+
*/
|
|
17
|
+
export function extractLeadingEmoji(input) {
|
|
18
|
+
const it = segmenter.segment(input)[Symbol.iterator]();
|
|
19
|
+
// const first = segmenter.segment(input).containing(0)?.segment;
|
|
20
|
+
const grapheme = it.next().value?.segment;
|
|
21
|
+
if (!grapheme) {
|
|
22
|
+
return { emoji: null, rest: input };
|
|
23
|
+
}
|
|
24
|
+
// Leading grapheme contains an emoji (covers flags/ZWJ/skin tones)
|
|
25
|
+
if (!/\p{Extended_Pictographic}/u.test(grapheme) &&
|
|
26
|
+
!/\p{Emoji}/u.test(grapheme)) {
|
|
27
|
+
return { emoji: null, rest: input };
|
|
28
|
+
}
|
|
29
|
+
return { emoji: grapheme, rest: input.slice(grapheme.length) };
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=emojiUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emojiUtils.js","sourceRoot":"","sources":["../../src/utils/emojiUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAC,WAAW,EAAE,UAAU,EAAC,CAAC,CAAC;AAE3E;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAI/C,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAEvD,iEAAiE;IACjE,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;IAE1C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC;IACpC,CAAC;IAED,mEAAmE;IACnE,IACE,CAAC,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC5C,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC5B,CAAC;QACD,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC;IACpC,CAAC;IAED,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAC,CAAC;AAC/D,CAAC"}
|
package/lib/utils/reactUtils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactUtils.js","sourceRoot":"","sources":["../../src/utils/reactUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,EACZ,WAAW,EACX,OAAO,EACP,MAAM,GAGP,MAAM,OAAO,CAAC;AACf,OAAO,yBAAyB,MAAM,uCAAuC,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,QAAQ,CACtB,QAAW;IAEX,MAAM,GAAG,GAAG,MAAM,CAAI,QAAQ,CAAC,CAAC;IAEhC,yBAAyB,CAAC,GAAG,EAAE;QAC7B,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC;IACzB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,4EAA4E;IAC5E,8BAA8B;IAC9B,OAAO,WAAW,CAAI,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAI,KAAQ;IACrC,MAAM,GAAG,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"reactUtils.js","sourceRoot":"","sources":["../../src/utils/reactUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,EACZ,WAAW,EACX,OAAO,EACP,MAAM,GAGP,MAAM,OAAO,CAAC;AACf,OAAO,yBAAyB,MAAM,uCAAuC,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,QAAQ,CACtB,QAAW;IAEX,MAAM,GAAG,GAAG,MAAM,CAAI,QAAQ,CAAC,CAAC;IAEhC,yBAAyB,CAAC,GAAG,EAAE;QAC7B,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC;IACzB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,4EAA4E;IAC5E,8BAA8B;IAC9B,OAAO,WAAW,CAAI,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAI,KAAQ;IACrC,MAAM,GAAG,GAAG,MAAM,CAAI,SAAS,CAAC,CAAC;IAEjC,yBAAyB,CAAC,GAAG,EAAE;QAC7B,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,kDAAkD;IAClD,6CAA6C;IAC7C,yDAAyD;IACzD,OAAO,GAAG,CAAC,OAAO,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,YAAoB,EAAE,cAAuB;QACvD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,QACb,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,2BAA2B,CAAC,EAAE,MAAO;aACpE,IAAI,IAAI,EACb,2BAA2B,YAAY,MAAM,cAAc,IAAI,EAAE,EAAE,CAAC;IACtE,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAmB,GAAM;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,4CAA4C;IAC5C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,qFAAqF;IACrF,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AACzC,CAAC;AAID;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAA2B;IAC1D,yEAAyE;IACzE,OAAO,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAE,CAAC,CACrB,EACE;MAAA,CAAC,SAAS,CAAC,WAAW,CACpB,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,CAC5B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,CAC7C,EACD,QAAQ,CACT,CACH;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageUtils.d.ts","sourceRoot":"","sources":["../../src/utils/storageUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAwFhE,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;CACjE,CAAC;AAyBF;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,WAAW,CAAA;CAAC,GACpC,WAAW,CA8Db;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,OAAO,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,WAAW,CAAA;CAAC,GACpC,CAAC,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"storageUtils.d.ts","sourceRoot":"","sources":["../../src/utils/storageUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAwFhE,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;CACjE,CAAC;AAyBF;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,WAAW,CAAA;CAAC,GACpC,WAAW,CA8Db;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,OAAO,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,WAAW,CAAA;CAAC,GACpC,CAAC,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,CA6B9B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,WAAW,GAAE,WAAgC,GAC5C,MAAM,EAAE,CAcV"}
|
|
@@ -168,10 +168,6 @@ export function useStorageSlot(key, options) {
|
|
|
168
168
|
return storageSlot.listen(onChange);
|
|
169
169
|
}, [storageSlot]);
|
|
170
170
|
const currentValue = useSyncExternalStore(listen, () => {
|
|
171
|
-
// react-test-renderer (deprecated) never call getServerSnapshot() :/
|
|
172
|
-
if (process.env.NODE_ENV === 'test') {
|
|
173
|
-
return null;
|
|
174
|
-
}
|
|
175
171
|
return storageSlot.get();
|
|
176
172
|
}, () => null);
|
|
177
173
|
return [currentValue, storageSlot];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageUtils.js","sourceRoot":"","sources":["../../src/utils/storageUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"storageUtils.js","sourceRoot":"","sources":["../../src/utils/storageUtils.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/tabsUtils.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import { type ReactNode
|
|
7
|
+
import { type ReactNode } from 'react';
|
|
8
8
|
/**
|
|
9
9
|
* TabValue is the "config" of a given Tab
|
|
10
10
|
* Provided through <Tabs> "values" prop or through the children <TabItem> props
|
|
@@ -17,11 +17,10 @@ export interface TabValue {
|
|
|
17
17
|
};
|
|
18
18
|
readonly default?: boolean;
|
|
19
19
|
}
|
|
20
|
-
type TabItem = ReactElement<TabItemProps> | null | false | undefined;
|
|
21
20
|
export interface TabsProps {
|
|
22
21
|
readonly lazy?: boolean;
|
|
23
22
|
readonly block?: boolean;
|
|
24
|
-
readonly children:
|
|
23
|
+
readonly children: ReactNode;
|
|
25
24
|
readonly defaultValue?: string | null;
|
|
26
25
|
readonly values?: readonly TabValue[];
|
|
27
26
|
readonly groupId?: string;
|
|
@@ -33,17 +32,24 @@ export interface TabItemProps {
|
|
|
33
32
|
readonly value: string;
|
|
34
33
|
readonly default?: boolean;
|
|
35
34
|
readonly label?: string;
|
|
36
|
-
readonly hidden?: boolean;
|
|
37
35
|
readonly className?: string;
|
|
38
36
|
readonly attributes?: {
|
|
39
37
|
[key: string]: unknown;
|
|
40
38
|
};
|
|
41
39
|
}
|
|
42
|
-
export declare function sanitizeTabsChildren(children:
|
|
43
|
-
|
|
40
|
+
export declare function sanitizeTabsChildren(children: ReactNode): ReactNode;
|
|
41
|
+
type TabsContextValue = {
|
|
44
42
|
selectedValue: string;
|
|
45
43
|
selectValue: (value: string) => void;
|
|
46
44
|
tabValues: readonly TabValue[];
|
|
45
|
+
lazy: boolean;
|
|
46
|
+
block: boolean;
|
|
47
47
|
};
|
|
48
|
+
export declare function useTabsContextValue(props: TabsProps): TabsContextValue;
|
|
49
|
+
export declare function useTabs(): TabsContextValue;
|
|
50
|
+
export declare function TabsProvider(props: {
|
|
51
|
+
children: ReactNode;
|
|
52
|
+
value: TabsContextValue;
|
|
53
|
+
}): ReactNode;
|
|
48
54
|
export {};
|
|
49
55
|
//# sourceMappingURL=tabsUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabsUtils.d.ts","sourceRoot":"","sources":["../../src/utils/tabsUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAc,
|
|
1
|
+
{"version":3,"file":"tabsUtils.d.ts","sourceRoot":"","sources":["../../src/utils/tabsUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAc,EAMZ,KAAK,SAAS,EAEf,MAAM,OAAO,CAAC;AAMf;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAC;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACzC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAC;CAChD;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,CAEnE;AA4KD,KAAK,gBAAgB,GAAG;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC/B,IAAI,EAAE,OAAO,CAAC;IAId,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAoDtE;AAID,wBAAgB,OAAO,IAAI,gBAAgB,CAM1C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC;CACzB,GAAG,SAAS,CAMZ"}
|
package/lib/utils/tabsUtils.js
CHANGED
|
@@ -4,34 +4,39 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import React, { isValidElement, useCallback, useState, useMemo, } from 'react';
|
|
7
|
+
import React, { isValidElement, useCallback, useState, useMemo, createContext, } from 'react';
|
|
8
8
|
import { useHistory } from '@docusaurus/router';
|
|
9
9
|
import useIsomorphicLayoutEffect from '@docusaurus/useIsomorphicLayoutEffect';
|
|
10
10
|
import { useQueryStringValue } from '@docusaurus/theme-common/internal';
|
|
11
11
|
import { duplicates, useStorageSlot } from '../index';
|
|
12
|
-
// A very rough duck type, but good enough to guard against mistakes while
|
|
13
|
-
// allowing customization
|
|
14
|
-
function isTabItem(comp) {
|
|
15
|
-
const { props } = comp;
|
|
16
|
-
return !!props && typeof props === 'object' && 'value' in props;
|
|
17
|
-
}
|
|
18
12
|
export function sanitizeTabsChildren(children) {
|
|
19
|
-
return
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
13
|
+
return React.Children.toArray(children).filter((child) => child !== '\n');
|
|
14
|
+
}
|
|
15
|
+
function extractChildrenTabValues(children) {
|
|
16
|
+
// ✅ <TabItem value="red"/> => true
|
|
17
|
+
// ✅ <CustomTabItem value="red"/> => true
|
|
18
|
+
// ❌ <RedTabItem value="tab-value"/> => requires <Tabs values> prop
|
|
19
|
+
function isTabItemWithValueProp(comp) {
|
|
20
|
+
const { props } = comp;
|
|
21
|
+
return !!props && typeof props === 'object' && 'value' in props;
|
|
22
|
+
}
|
|
23
|
+
const elements = React.Children.toArray(children).flatMap((child) => {
|
|
24
|
+
// Historical case, not sure when it happens, do we really need this?
|
|
25
|
+
if (!child) {
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
if (isValidElement(child) && isTabItemWithValueProp(child)) {
|
|
29
|
+
return [child];
|
|
24
30
|
}
|
|
25
31
|
// child.type.name will give non-sensical values in prod because of
|
|
26
32
|
// minification, but we assume it won't throw in prod.
|
|
27
|
-
|
|
33
|
+
const badChildTypeName =
|
|
28
34
|
// @ts-expect-error: guarding against unexpected cases
|
|
29
|
-
typeof child.type === 'string' ? child.type : child.type.name
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
return sanitizeTabsChildren(children).map(({ props: { value, label, attributes, default: isDefault } }) => ({
|
|
35
|
+
typeof child.type === 'string' ? child.type : child.type.name;
|
|
36
|
+
throw new Error(`Docusaurus error: Bad <Tabs> child <${badChildTypeName}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.
|
|
37
|
+
If you do not want to pass on a "value" prop to the direct children of <Tabs>, you can also pass an explicit <Tabs values={...}> prop.`);
|
|
38
|
+
});
|
|
39
|
+
return elements.map(({ props: { value, label, attributes, default: isDefault } }) => ({
|
|
35
40
|
value,
|
|
36
41
|
label,
|
|
37
42
|
attributes,
|
|
@@ -42,7 +47,7 @@ function ensureNoDuplicateValue(values) {
|
|
|
42
47
|
const dup = duplicates(values, (a, b) => a.value === b.value);
|
|
43
48
|
if (dup.length > 0) {
|
|
44
49
|
throw new Error(`Docusaurus error: Duplicate values "${dup
|
|
45
|
-
.map((a) => a.value)
|
|
50
|
+
.map((a) => `'${a.value}'`)
|
|
46
51
|
.join(', ')}" found in <Tabs>. Every value needs to be unique.`);
|
|
47
52
|
}
|
|
48
53
|
}
|
|
@@ -119,7 +124,7 @@ function useTabStorage({ groupId }) {
|
|
|
119
124
|
}, [key, storageSlot]);
|
|
120
125
|
return [value, setValue];
|
|
121
126
|
}
|
|
122
|
-
export function
|
|
127
|
+
export function useTabsContextValue(props) {
|
|
123
128
|
const { defaultValue, queryString = false, groupId } = props;
|
|
124
129
|
const tabValues = useTabValues(props);
|
|
125
130
|
const [selectedValue, setSelectedValue] = useState(() => getInitialStateValue({ defaultValue, tabValues }));
|
|
@@ -153,6 +158,25 @@ export function useTabs(props) {
|
|
|
153
158
|
setQueryString(newValue);
|
|
154
159
|
setStorageValue(newValue);
|
|
155
160
|
}, [setQueryString, setStorageValue, tabValues]);
|
|
156
|
-
return {
|
|
161
|
+
return {
|
|
162
|
+
selectedValue,
|
|
163
|
+
selectValue,
|
|
164
|
+
tabValues,
|
|
165
|
+
lazy: props.lazy ?? false,
|
|
166
|
+
block: props.block ?? false,
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
const TabsContext = createContext(null);
|
|
170
|
+
export function useTabs() {
|
|
171
|
+
const contextValue = React.useContext(TabsContext);
|
|
172
|
+
if (!contextValue) {
|
|
173
|
+
throw new Error('useTabsContext() must be used within a Tabs component');
|
|
174
|
+
}
|
|
175
|
+
return contextValue;
|
|
176
|
+
}
|
|
177
|
+
export function TabsProvider(props) {
|
|
178
|
+
return (<TabsContext.Provider value={props.value}>
|
|
179
|
+
{props.children}
|
|
180
|
+
</TabsContext.Provider>);
|
|
157
181
|
}
|
|
158
182
|
//# sourceMappingURL=tabsUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabsUtils.js","sourceRoot":"","sources":["../../src/utils/tabsUtils.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,EACZ,cAAc,EACd,WAAW,EACX,QAAQ,EACR,OAAO,
|
|
1
|
+
{"version":3,"file":"tabsUtils.js","sourceRoot":"","sources":["../../src/utils/tabsUtils.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@docusaurus/theme-common",
|
|
3
|
-
"version": "3.9.
|
|
3
|
+
"version": "3.9.2-alpha.0",
|
|
4
4
|
"description": "Common code for Docusaurus themes.",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -30,10 +30,10 @@
|
|
|
30
30
|
},
|
|
31
31
|
"license": "MIT",
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@docusaurus/mdx-loader": "3.9.
|
|
34
|
-
"@docusaurus/module-type-aliases": "3.9.
|
|
35
|
-
"@docusaurus/utils": "3.9.
|
|
36
|
-
"@docusaurus/utils-common": "3.9.
|
|
33
|
+
"@docusaurus/mdx-loader": "3.9.2-alpha.0",
|
|
34
|
+
"@docusaurus/module-type-aliases": "3.9.2-alpha.0",
|
|
35
|
+
"@docusaurus/utils": "3.9.2-alpha.0",
|
|
36
|
+
"@docusaurus/utils-common": "3.9.2-alpha.0",
|
|
37
37
|
"@types/history": "^4.7.11",
|
|
38
38
|
"@types/react": "*",
|
|
39
39
|
"@types/react-router-config": "*",
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
"utility-types": "^3.10.0"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@docusaurus/core": "3.9.
|
|
48
|
-
"@docusaurus/types": "3.9.
|
|
47
|
+
"@docusaurus/core": "3.9.2-alpha.0",
|
|
48
|
+
"@docusaurus/types": "3.9.2-alpha.0",
|
|
49
49
|
"@total-typescript/shoehorn": "^0.1.2",
|
|
50
50
|
"fs-extra": "^11.1.1",
|
|
51
51
|
"lodash": "^4.17.21"
|
|
@@ -58,5 +58,5 @@
|
|
|
58
58
|
"engines": {
|
|
59
59
|
"node": ">=20.0"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "27626cdd7a102277935f10cc4d8d3f93e211eafe"
|
|
62
62
|
}
|
|
@@ -11,7 +11,7 @@ import {useMutationObserver} from './useMutationObserver';
|
|
|
11
11
|
// Callback fires when the "hidden" attribute of a tabpanel changes
|
|
12
12
|
// See https://github.com/facebook/docusaurus/pull/7485
|
|
13
13
|
function useTabBecameVisibleCallback(
|
|
14
|
-
codeBlockRef: RefObject<HTMLPreElement>,
|
|
14
|
+
codeBlockRef: RefObject<HTMLPreElement | null>,
|
|
15
15
|
callback: () => void,
|
|
16
16
|
) {
|
|
17
17
|
const [hiddenTabElement, setHiddenTabElement] = useState<
|
|
@@ -53,7 +53,7 @@ function useTabBecameVisibleCallback(
|
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
export type WordWrap = {
|
|
56
|
-
readonly codeBlockRef: RefObject<HTMLPreElement>;
|
|
56
|
+
readonly codeBlockRef: RefObject<HTMLPreElement | null>;
|
|
57
57
|
readonly isEnabled: boolean;
|
|
58
58
|
readonly isCodeScrollable: boolean;
|
|
59
59
|
readonly toggle: () => void;
|
package/src/index.ts
CHANGED
|
@@ -109,6 +109,8 @@ export {
|
|
|
109
109
|
useSearchLinkCreator,
|
|
110
110
|
} from './hooks/useSearchPage';
|
|
111
111
|
|
|
112
|
+
export {useAnchorTargetClassName} from './utils/anchorUtils';
|
|
113
|
+
|
|
112
114
|
export {isMultiColumnFooterLinks} from './utils/footerUtils';
|
|
113
115
|
|
|
114
116
|
export {isRegexpStringMatch} from './utils/regexpUtils';
|
package/src/internal.ts
CHANGED
|
@@ -23,7 +23,12 @@ export {
|
|
|
23
23
|
useAnnouncementBar,
|
|
24
24
|
} from './contexts/announcementBar';
|
|
25
25
|
|
|
26
|
-
export {
|
|
26
|
+
export {
|
|
27
|
+
sanitizeTabsChildren,
|
|
28
|
+
TabsProvider,
|
|
29
|
+
useTabs,
|
|
30
|
+
useTabsContextValue,
|
|
31
|
+
} from './utils/tabsUtils';
|
|
27
32
|
export type {TabValue, TabsProps, TabItemProps} from './utils/tabsUtils';
|
|
28
33
|
|
|
29
34
|
export {useNavbarMobileSidebar} from './contexts/navbarMobileSidebar';
|
|
@@ -86,6 +91,8 @@ export {PluginHtmlClassNameProvider} from './utils/metadataUtils';
|
|
|
86
91
|
|
|
87
92
|
export {splitNavbarItems, NavbarProvider} from './utils/navbarUtils';
|
|
88
93
|
|
|
94
|
+
export {extractLeadingEmoji} from './utils/emojiUtils';
|
|
95
|
+
|
|
89
96
|
export {
|
|
90
97
|
useTOCHighlight,
|
|
91
98
|
type TOCHighlightConfig,
|
|
@@ -94,14 +101,11 @@ export {
|
|
|
94
101
|
export {useDateTimeFormat} from './utils/IntlUtils';
|
|
95
102
|
|
|
96
103
|
export {useHideableNavbar} from './hooks/useHideableNavbar';
|
|
97
|
-
export {
|
|
98
|
-
useKeyboardNavigation,
|
|
99
|
-
keyboardFocusedClassName,
|
|
100
|
-
} from './hooks/useKeyboardNavigation';
|
|
101
104
|
export {useLockBodyScroll} from './hooks/useLockBodyScroll';
|
|
102
105
|
export {useCodeWordWrap} from './hooks/useCodeWordWrap';
|
|
103
106
|
export {useBackToTopButton} from './hooks/useBackToTopButton';
|
|
104
107
|
|
|
108
|
+
export {useDocCardDescriptionCategoryItemsPlural} from './translations/docsTranslations';
|
|
105
109
|
export {
|
|
106
110
|
useBlogTagsPostsPageTitle,
|
|
107
111
|
useBlogAuthorPageTitle,
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import {translate} from '@docusaurus/Translate';
|
|
9
|
+
import {usePluralForm} from '../utils/usePluralForm';
|
|
10
|
+
|
|
11
|
+
export function useDocCardDescriptionCategoryItemsPlural(): (
|
|
12
|
+
count: number,
|
|
13
|
+
) => string {
|
|
14
|
+
const {selectMessage} = usePluralForm();
|
|
15
|
+
return (count: number) =>
|
|
16
|
+
selectMessage(
|
|
17
|
+
count,
|
|
18
|
+
translate(
|
|
19
|
+
{
|
|
20
|
+
message: '1 item|{count} items',
|
|
21
|
+
id: 'theme.docs.DocCard.categoryDescription.plurals',
|
|
22
|
+
description:
|
|
23
|
+
'The default description for a category card in the generated index about how many items this category includes',
|
|
24
|
+
},
|
|
25
|
+
{count},
|
|
26
|
+
),
|
|
27
|
+
);
|
|
28
|
+
}
|
|
@@ -100,6 +100,13 @@ export const ThemeClassNames = {
|
|
|
100
100
|
docSidebarItemLinkLevel: (level: number) =>
|
|
101
101
|
`theme-doc-sidebar-item-link-level-${level}` as const,
|
|
102
102
|
// TODO add other stable classNames here
|
|
103
|
+
docCard: {
|
|
104
|
+
container: 'theme-doc-card-container',
|
|
105
|
+
heading: 'theme-doc-card-heading',
|
|
106
|
+
icon: 'theme-doc-card-icon',
|
|
107
|
+
title: 'theme-doc-card-title',
|
|
108
|
+
description: 'theme-doc-card-description',
|
|
109
|
+
},
|
|
103
110
|
},
|
|
104
111
|
blog: {
|
|
105
112
|
// TODO add other stable classNames here
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
.anchorTargetStickyNavbar {
|
|
9
|
+
scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.anchorTargetHideOnScrollNavbar {
|
|
13
|
+
scroll-margin-top: 0.5rem;
|
|
14
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import {useThemeConfig} from './useThemeConfig';
|
|
9
|
+
import styles from './anchorUtils.module.css';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* When the navbar is sticky, this ensures that when clicking a hash link,
|
|
13
|
+
* we do not navigate to an anchor that will appear below the navbar.
|
|
14
|
+
* This happens in particular for MDX headings and footnotes.
|
|
15
|
+
*
|
|
16
|
+
* See https://github.com/facebook/docusaurus/issues/11232
|
|
17
|
+
* See also headings case https://x.com/JoshWComeau/status/1332015868725891076
|
|
18
|
+
*/
|
|
19
|
+
export function useAnchorTargetClassName(
|
|
20
|
+
id: string | undefined,
|
|
21
|
+
): string | undefined {
|
|
22
|
+
const {
|
|
23
|
+
navbar: {hideOnScroll},
|
|
24
|
+
} = useThemeConfig();
|
|
25
|
+
if (typeof id === 'undefined') {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
return hideOnScroll
|
|
29
|
+
? styles.anchorTargetHideOnScrollNavbar
|
|
30
|
+
: styles.anchorTargetStickyNavbar;
|
|
31
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
const segmenter = new Intl.Segmenter(undefined, {granularity: 'grapheme'});
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* This method splits "⚠️ Hello World" into "⚠️" + " Hello World".
|
|
12
|
+
* It is quite strict and dumb, only useful to handle best-effort heuristics.
|
|
13
|
+
* It only extracts a leading emoji if it is the first grapheme of the string.
|
|
14
|
+
* It only extracts one emoji, even if multiples are present.
|
|
15
|
+
* It doesn't trim the remaining string.
|
|
16
|
+
* If you need something more clever, it should be built on top.
|
|
17
|
+
* @param input
|
|
18
|
+
*/
|
|
19
|
+
export function extractLeadingEmoji(input: string): {
|
|
20
|
+
emoji: string | null;
|
|
21
|
+
rest: string;
|
|
22
|
+
} {
|
|
23
|
+
const it = segmenter.segment(input)[Symbol.iterator]();
|
|
24
|
+
|
|
25
|
+
// const first = segmenter.segment(input).containing(0)?.segment;
|
|
26
|
+
const grapheme = it.next().value?.segment;
|
|
27
|
+
|
|
28
|
+
if (!grapheme) {
|
|
29
|
+
return {emoji: null, rest: input};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Leading grapheme contains an emoji (covers flags/ZWJ/skin tones)
|
|
33
|
+
if (
|
|
34
|
+
!/\p{Extended_Pictographic}/u.test(grapheme) &&
|
|
35
|
+
!/\p{Emoji}/u.test(grapheme)
|
|
36
|
+
) {
|
|
37
|
+
return {emoji: null, rest: input};
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return {emoji: grapheme, rest: input.slice(grapheme.length)};
|
|
41
|
+
}
|
package/src/utils/reactUtils.tsx
CHANGED
|
@@ -44,7 +44,7 @@ export function useEvent<T extends (...args: never[]) => unknown>(
|
|
|
44
44
|
* Gets `value` from the last render.
|
|
45
45
|
*/
|
|
46
46
|
export function usePrevious<T>(value: T): T | undefined {
|
|
47
|
-
const ref = useRef<T>();
|
|
47
|
+
const ref = useRef<T>(undefined);
|
|
48
48
|
|
|
49
49
|
useIsomorphicLayoutEffect(() => {
|
|
50
50
|
ref.current = value;
|
|
@@ -52,7 +52,7 @@ function useSkipToContent(): {
|
|
|
52
52
|
* so that keyboard navigators can instantly interact with the link and jump
|
|
53
53
|
* to content.
|
|
54
54
|
*/
|
|
55
|
-
containerRef: React.RefObject<HTMLDivElement>;
|
|
55
|
+
containerRef: React.RefObject<HTMLDivElement | null>;
|
|
56
56
|
/**
|
|
57
57
|
* Callback fired when the skip to content link has been clicked.
|
|
58
58
|
* It will programmatically focus the main content.
|
|
@@ -229,10 +229,6 @@ export function useStorageSlot(
|
|
|
229
229
|
const currentValue = useSyncExternalStore(
|
|
230
230
|
listen,
|
|
231
231
|
() => {
|
|
232
|
-
// react-test-renderer (deprecated) never call getServerSnapshot() :/
|
|
233
|
-
if (process.env.NODE_ENV === 'test') {
|
|
234
|
-
return null;
|
|
235
|
-
}
|
|
236
232
|
return storageSlot.get();
|
|
237
233
|
},
|
|
238
234
|
() => null,
|
package/src/utils/tabsUtils.tsx
CHANGED
|
@@ -10,6 +10,7 @@ import React, {
|
|
|
10
10
|
useCallback,
|
|
11
11
|
useState,
|
|
12
12
|
useMemo,
|
|
13
|
+
createContext,
|
|
13
14
|
type ReactNode,
|
|
14
15
|
type ReactElement,
|
|
15
16
|
} from 'react';
|
|
@@ -29,12 +30,10 @@ export interface TabValue {
|
|
|
29
30
|
readonly default?: boolean;
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
type TabItem = ReactElement<TabItemProps> | null | false | undefined;
|
|
33
|
-
|
|
34
33
|
export interface TabsProps {
|
|
35
34
|
readonly lazy?: boolean;
|
|
36
35
|
readonly block?: boolean;
|
|
37
|
-
readonly children:
|
|
36
|
+
readonly children: ReactNode;
|
|
38
37
|
readonly defaultValue?: string | null;
|
|
39
38
|
readonly values?: readonly TabValue[];
|
|
40
39
|
readonly groupId?: string;
|
|
@@ -47,41 +46,45 @@ export interface TabItemProps {
|
|
|
47
46
|
readonly value: string;
|
|
48
47
|
readonly default?: boolean;
|
|
49
48
|
readonly label?: string;
|
|
50
|
-
readonly hidden?: boolean;
|
|
51
49
|
readonly className?: string;
|
|
52
50
|
readonly attributes?: {[key: string]: unknown};
|
|
53
51
|
}
|
|
54
52
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
function isTabItem(
|
|
58
|
-
comp: ReactElement<unknown>,
|
|
59
|
-
): comp is ReactElement<TabItemProps> {
|
|
60
|
-
const {props} = comp;
|
|
61
|
-
return !!props && typeof props === 'object' && 'value' in props;
|
|
53
|
+
export function sanitizeTabsChildren(children: ReactNode): ReactNode {
|
|
54
|
+
return React.Children.toArray(children).filter((child) => child !== '\n');
|
|
62
55
|
}
|
|
63
56
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
`Docusaurus error: Bad <Tabs> child <${
|
|
75
|
-
// @ts-expect-error: guarding against unexpected cases
|
|
76
|
-
typeof child.type === 'string' ? child.type : child.type.name
|
|
77
|
-
}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`,
|
|
78
|
-
);
|
|
79
|
-
})
|
|
80
|
-
?.filter(Boolean) ?? []) as ReactElement<TabItemProps>[];
|
|
81
|
-
}
|
|
57
|
+
function extractChildrenTabValues(children: ReactNode): TabValue[] {
|
|
58
|
+
// ✅ <TabItem value="red"/> => true
|
|
59
|
+
// ✅ <CustomTabItem value="red"/> => true
|
|
60
|
+
// ❌ <RedTabItem value="tab-value"/> => requires <Tabs values> prop
|
|
61
|
+
function isTabItemWithValueProp(
|
|
62
|
+
comp: ReactElement,
|
|
63
|
+
): comp is ReactElement<TabItemProps> {
|
|
64
|
+
const {props} = comp;
|
|
65
|
+
return !!props && typeof props === 'object' && 'value' in props;
|
|
66
|
+
}
|
|
82
67
|
|
|
83
|
-
|
|
84
|
-
|
|
68
|
+
const elements = React.Children.toArray(children).flatMap((child) => {
|
|
69
|
+
// Historical case, not sure when it happens, do we really need this?
|
|
70
|
+
if (!child) {
|
|
71
|
+
return [];
|
|
72
|
+
}
|
|
73
|
+
if (isValidElement(child) && isTabItemWithValueProp(child)) {
|
|
74
|
+
return [child];
|
|
75
|
+
}
|
|
76
|
+
// child.type.name will give non-sensical values in prod because of
|
|
77
|
+
// minification, but we assume it won't throw in prod.
|
|
78
|
+
const badChildTypeName =
|
|
79
|
+
// @ts-expect-error: guarding against unexpected cases
|
|
80
|
+
typeof child.type === 'string' ? child.type : child.type.name;
|
|
81
|
+
throw new Error(
|
|
82
|
+
`Docusaurus error: Bad <Tabs> child <${badChildTypeName}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.
|
|
83
|
+
If you do not want to pass on a "value" prop to the direct children of <Tabs>, you can also pass an explicit <Tabs values={...}> prop.`,
|
|
84
|
+
);
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
return elements.map(
|
|
85
88
|
({props: {value, label, attributes, default: isDefault}}) => ({
|
|
86
89
|
value,
|
|
87
90
|
label,
|
|
@@ -96,7 +99,7 @@ function ensureNoDuplicateValue(values: readonly TabValue[]) {
|
|
|
96
99
|
if (dup.length > 0) {
|
|
97
100
|
throw new Error(
|
|
98
101
|
`Docusaurus error: Duplicate values "${dup
|
|
99
|
-
.map((a) => a.value)
|
|
102
|
+
.map((a) => `'${a.value}'`)
|
|
100
103
|
.join(', ')}" found in <Tabs>. Every value needs to be unique.`,
|
|
101
104
|
);
|
|
102
105
|
}
|
|
@@ -221,11 +224,18 @@ function useTabStorage({groupId}: Pick<TabsProps, 'groupId'>) {
|
|
|
221
224
|
return [value, setValue] as const;
|
|
222
225
|
}
|
|
223
226
|
|
|
224
|
-
|
|
227
|
+
type TabsContextValue = {
|
|
225
228
|
selectedValue: string;
|
|
226
229
|
selectValue: (value: string) => void;
|
|
227
230
|
tabValues: readonly TabValue[];
|
|
228
|
-
|
|
231
|
+
lazy: boolean;
|
|
232
|
+
// TODO Docusaurus v4: remove this "block" concept?
|
|
233
|
+
// TIL about it, and afaik we never used nor documented it
|
|
234
|
+
// See https://infima.dev/docs/components/tabs#block
|
|
235
|
+
block: boolean;
|
|
236
|
+
};
|
|
237
|
+
|
|
238
|
+
export function useTabsContextValue(props: TabsProps): TabsContextValue {
|
|
229
239
|
const {defaultValue, queryString = false, groupId} = props;
|
|
230
240
|
const tabValues = useTabValues(props);
|
|
231
241
|
|
|
@@ -270,5 +280,32 @@ export function useTabs(props: TabsProps): {
|
|
|
270
280
|
[setQueryString, setStorageValue, tabValues],
|
|
271
281
|
);
|
|
272
282
|
|
|
273
|
-
return {
|
|
283
|
+
return {
|
|
284
|
+
selectedValue,
|
|
285
|
+
selectValue,
|
|
286
|
+
tabValues,
|
|
287
|
+
lazy: props.lazy ?? false,
|
|
288
|
+
block: props.block ?? false,
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
const TabsContext = createContext<TabsContextValue | null>(null);
|
|
293
|
+
|
|
294
|
+
export function useTabs(): TabsContextValue {
|
|
295
|
+
const contextValue = React.useContext(TabsContext);
|
|
296
|
+
if (!contextValue) {
|
|
297
|
+
throw new Error('useTabsContext() must be used within a Tabs component');
|
|
298
|
+
}
|
|
299
|
+
return contextValue;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
export function TabsProvider(props: {
|
|
303
|
+
children: ReactNode;
|
|
304
|
+
value: TabsContextValue;
|
|
305
|
+
}): ReactNode {
|
|
306
|
+
return (
|
|
307
|
+
<TabsContext.Provider value={props.value}>
|
|
308
|
+
{props.children}
|
|
309
|
+
</TabsContext.Provider>
|
|
310
|
+
);
|
|
274
311
|
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the MIT license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
import './styles.css';
|
|
8
|
-
export declare const keyboardFocusedClassName = "navigation-with-keyboard";
|
|
9
|
-
/**
|
|
10
|
-
* Side-effect that adds the `keyboardFocusedClassName` to the body element when
|
|
11
|
-
* the keyboard has been pressed, or removes it when the mouse is clicked.
|
|
12
|
-
*
|
|
13
|
-
* The presence of this class name signals that the user may be using keyboard
|
|
14
|
-
* for navigation, and the theme **must** add focus outline when this class name
|
|
15
|
-
* is present. (And optionally not if it's absent, for design purposes)
|
|
16
|
-
*
|
|
17
|
-
* Inspired by https://hackernoon.com/removing-that-ugly-focus-ring-and-keeping-it-too-6c8727fefcd2
|
|
18
|
-
*/
|
|
19
|
-
export declare function useKeyboardNavigation(): void;
|
|
20
|
-
//# sourceMappingURL=useKeyboardNavigation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useKeyboardNavigation.d.ts","sourceRoot":"","sources":["../../src/hooks/useKeyboardNavigation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,cAAc,CAAC;AAEtB,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AAEnE;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAqB5C"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the MIT license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
import { useEffect } from 'react';
|
|
8
|
-
import './styles.css';
|
|
9
|
-
export const keyboardFocusedClassName = 'navigation-with-keyboard';
|
|
10
|
-
/**
|
|
11
|
-
* Side-effect that adds the `keyboardFocusedClassName` to the body element when
|
|
12
|
-
* the keyboard has been pressed, or removes it when the mouse is clicked.
|
|
13
|
-
*
|
|
14
|
-
* The presence of this class name signals that the user may be using keyboard
|
|
15
|
-
* for navigation, and the theme **must** add focus outline when this class name
|
|
16
|
-
* is present. (And optionally not if it's absent, for design purposes)
|
|
17
|
-
*
|
|
18
|
-
* Inspired by https://hackernoon.com/removing-that-ugly-focus-ring-and-keeping-it-too-6c8727fefcd2
|
|
19
|
-
*/
|
|
20
|
-
export function useKeyboardNavigation() {
|
|
21
|
-
useEffect(() => {
|
|
22
|
-
function handleOutlineStyles(e) {
|
|
23
|
-
if (e.type === 'keydown' && e.key === 'Tab') {
|
|
24
|
-
document.body.classList.add(keyboardFocusedClassName);
|
|
25
|
-
}
|
|
26
|
-
if (e.type === 'mousedown') {
|
|
27
|
-
document.body.classList.remove(keyboardFocusedClassName);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
document.addEventListener('keydown', handleOutlineStyles);
|
|
31
|
-
document.addEventListener('mousedown', handleOutlineStyles);
|
|
32
|
-
return () => {
|
|
33
|
-
document.body.classList.remove(keyboardFocusedClassName);
|
|
34
|
-
document.removeEventListener('keydown', handleOutlineStyles);
|
|
35
|
-
document.removeEventListener('mousedown', handleOutlineStyles);
|
|
36
|
-
};
|
|
37
|
-
}, []);
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=useKeyboardNavigation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useKeyboardNavigation.js","sourceRoot":"","sources":["../../src/hooks/useKeyboardNavigation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAEhC,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,MAAM,wBAAwB,GAAG,0BAA0B,CAAC;AAEnE;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB;IACnC,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,mBAAmB,CAAC,CAA6B;YACxD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAK,CAAmB,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;gBAC/D,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YACxD,CAAC;YAED,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC3B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAC1D,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAE5D,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACzD,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;YAC7D,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACjE,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the MIT license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
import {useEffect} from 'react';
|
|
9
|
-
|
|
10
|
-
import './styles.css';
|
|
11
|
-
|
|
12
|
-
export const keyboardFocusedClassName = 'navigation-with-keyboard';
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Side-effect that adds the `keyboardFocusedClassName` to the body element when
|
|
16
|
-
* the keyboard has been pressed, or removes it when the mouse is clicked.
|
|
17
|
-
*
|
|
18
|
-
* The presence of this class name signals that the user may be using keyboard
|
|
19
|
-
* for navigation, and the theme **must** add focus outline when this class name
|
|
20
|
-
* is present. (And optionally not if it's absent, for design purposes)
|
|
21
|
-
*
|
|
22
|
-
* Inspired by https://hackernoon.com/removing-that-ugly-focus-ring-and-keeping-it-too-6c8727fefcd2
|
|
23
|
-
*/
|
|
24
|
-
export function useKeyboardNavigation(): void {
|
|
25
|
-
useEffect(() => {
|
|
26
|
-
function handleOutlineStyles(e: MouseEvent | KeyboardEvent) {
|
|
27
|
-
if (e.type === 'keydown' && (e as KeyboardEvent).key === 'Tab') {
|
|
28
|
-
document.body.classList.add(keyboardFocusedClassName);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
if (e.type === 'mousedown') {
|
|
32
|
-
document.body.classList.remove(keyboardFocusedClassName);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
document.addEventListener('keydown', handleOutlineStyles);
|
|
37
|
-
document.addEventListener('mousedown', handleOutlineStyles);
|
|
38
|
-
|
|
39
|
-
return () => {
|
|
40
|
-
document.body.classList.remove(keyboardFocusedClassName);
|
|
41
|
-
document.removeEventListener('keydown', handleOutlineStyles);
|
|
42
|
-
document.removeEventListener('mousedown', handleOutlineStyles);
|
|
43
|
-
};
|
|
44
|
-
}, []);
|
|
45
|
-
}
|