@wordpress/edit-site 5.28.2 → 5.28.4

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 (162) hide show
  1. package/build/components/add-new-pattern/index.js +18 -8
  2. package/build/components/add-new-pattern/index.js.map +1 -1
  3. package/build/components/editor/index.js +1 -1
  4. package/build/components/editor/index.js.map +1 -1
  5. package/build/components/global-styles/block-preview-panel.js +2 -2
  6. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  7. package/build/components/global-styles/font-library-modal/collection-font-variant.js +2 -2
  8. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  9. package/build/components/global-styles/font-library-modal/font-card.js +10 -15
  10. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
  11. package/build/components/global-styles/font-library-modal/font-collection.js +167 -37
  12. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  13. package/build/components/global-styles/font-library-modal/font-demo.js +29 -8
  14. package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  15. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +1 -1
  16. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  17. package/build/components/global-styles/font-library-modal/installed-fonts.js +149 -83
  18. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  19. package/build/components/global-styles/font-library-modal/library-font-variant.js +2 -2
  20. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  21. package/build/components/global-styles/font-library-modal/upload-fonts.js +6 -4
  22. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  23. package/build/components/global-styles/screen-revisions/index.js +2 -2
  24. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  25. package/build/components/global-styles/ui.js +27 -2
  26. package/build/components/global-styles/ui.js.map +1 -1
  27. package/build/components/header-edit-mode/index.js +1 -1
  28. package/build/components/header-edit-mode/index.js.map +1 -1
  29. package/build/components/layout/index.js +8 -3
  30. package/build/components/layout/index.js.map +1 -1
  31. package/build/components/layout/router.js +26 -5
  32. package/build/components/layout/router.js.map +1 -1
  33. package/build/components/page-patterns/index.js +14 -14
  34. package/build/components/page-patterns/index.js.map +1 -1
  35. package/build/components/page-patterns/use-patterns.js +10 -5
  36. package/build/components/page-patterns/use-patterns.js.map +1 -1
  37. package/build/components/page-templates-template-parts/index.js +1 -0
  38. package/build/components/page-templates-template-parts/index.js.map +1 -1
  39. package/build/components/sidebar/index.js +6 -3
  40. package/build/components/sidebar/index.js.map +1 -1
  41. package/build/components/sidebar-dataviews/default-views.js +2 -0
  42. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  43. package/build/components/sidebar-navigation-screen-pages/index.js +3 -1
  44. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  45. package/build/components/sidebar-navigation-screen-templates-browse/content.js +2 -2
  46. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  47. package/build/components/sidebar-navigation-screen-templates-browse/index.js +7 -5
  48. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  49. package/build/components/style-book/index.js +2 -0
  50. package/build/components/style-book/index.js.map +1 -1
  51. package/build/store/private-actions.js +3 -1
  52. package/build/store/private-actions.js.map +1 -1
  53. package/build-module/components/add-new-pattern/index.js +18 -8
  54. package/build-module/components/add-new-pattern/index.js.map +1 -1
  55. package/build-module/components/editor/index.js +1 -1
  56. package/build-module/components/editor/index.js.map +1 -1
  57. package/build-module/components/global-styles/block-preview-panel.js +2 -2
  58. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  59. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +4 -4
  60. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  61. package/build-module/components/global-styles/font-library-modal/font-card.js +11 -16
  62. package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
  63. package/build-module/components/global-styles/font-library-modal/font-collection.js +172 -42
  64. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  65. package/build-module/components/global-styles/font-library-modal/font-demo.js +30 -9
  66. package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  67. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +1 -1
  68. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  69. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +149 -83
  70. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  71. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +4 -4
  72. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  73. package/build-module/components/global-styles/font-library-modal/upload-fonts.js +7 -5
  74. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  75. package/build-module/components/global-styles/screen-revisions/index.js +2 -2
  76. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  77. package/build-module/components/global-styles/ui.js +27 -2
  78. package/build-module/components/global-styles/ui.js.map +1 -1
  79. package/build-module/components/header-edit-mode/index.js +1 -1
  80. package/build-module/components/header-edit-mode/index.js.map +1 -1
  81. package/build-module/components/layout/index.js +8 -3
  82. package/build-module/components/layout/index.js.map +1 -1
  83. package/build-module/components/layout/router.js +26 -5
  84. package/build-module/components/layout/router.js.map +1 -1
  85. package/build-module/components/page-patterns/index.js +14 -14
  86. package/build-module/components/page-patterns/index.js.map +1 -1
  87. package/build-module/components/page-patterns/use-patterns.js +10 -5
  88. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  89. package/build-module/components/page-templates-template-parts/index.js +1 -0
  90. package/build-module/components/page-templates-template-parts/index.js.map +1 -1
  91. package/build-module/components/sidebar/index.js +6 -3
  92. package/build-module/components/sidebar/index.js.map +1 -1
  93. package/build-module/components/sidebar-dataviews/default-views.js +3 -1
  94. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  95. package/build-module/components/sidebar-navigation-screen-pages/index.js +3 -1
  96. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  97. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +2 -2
  98. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  99. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +7 -5
  100. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  101. package/build-module/components/style-book/index.js +2 -0
  102. package/build-module/components/style-book/index.js.map +1 -1
  103. package/build-module/store/private-actions.js +3 -1
  104. package/build-module/store/private-actions.js.map +1 -1
  105. package/build-style/style-rtl.css +52 -25
  106. package/build-style/style.css +52 -25
  107. package/package.json +18 -18
  108. package/src/components/add-new-pattern/index.js +27 -11
  109. package/src/components/editor/index.js +1 -0
  110. package/src/components/global-styles/block-preview-panel.js +2 -2
  111. package/src/components/global-styles/font-library-modal/collection-font-variant.js +4 -4
  112. package/src/components/global-styles/font-library-modal/font-card.js +11 -26
  113. package/src/components/global-styles/font-library-modal/font-collection.js +328 -129
  114. package/src/components/global-styles/font-library-modal/font-demo.js +38 -4
  115. package/src/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +1 -1
  116. package/src/components/global-styles/font-library-modal/installed-fonts.js +246 -132
  117. package/src/components/global-styles/font-library-modal/library-font-variant.js +4 -4
  118. package/src/components/global-styles/font-library-modal/style.scss +17 -13
  119. package/src/components/global-styles/font-library-modal/upload-fonts.js +13 -5
  120. package/src/components/global-styles/screen-revisions/index.js +5 -2
  121. package/src/components/global-styles/ui.js +26 -2
  122. package/src/components/header-edit-mode/index.js +3 -1
  123. package/src/components/layout/index.js +47 -30
  124. package/src/components/layout/router.js +31 -2
  125. package/src/components/layout/style.scss +7 -0
  126. package/src/components/page-patterns/index.js +20 -20
  127. package/src/components/page-patterns/style.scss +10 -0
  128. package/src/components/page-patterns/use-patterns.js +13 -5
  129. package/src/components/page-templates-template-parts/index.js +1 -0
  130. package/src/components/page-templates-template-parts/style.scss +6 -0
  131. package/src/components/sidebar/index.js +9 -4
  132. package/src/components/sidebar-dataviews/default-views.js +3 -1
  133. package/src/components/sidebar-navigation-screen-pages/index.js +10 -6
  134. package/src/components/sidebar-navigation-screen-templates-browse/content.js +2 -2
  135. package/src/components/sidebar-navigation-screen-templates-browse/index.js +5 -3
  136. package/src/components/style-book/index.js +5 -1
  137. package/src/store/private-actions.js +4 -0
  138. package/build/components/global-styles/font-library-modal/collection-font-details.js +0 -50
  139. package/build/components/global-styles/font-library-modal/collection-font-details.js.map +0 -1
  140. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +0 -30
  141. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +0 -1
  142. package/build/components/global-styles/font-library-modal/fonts-grid.js +0 -57
  143. package/build/components/global-styles/font-library-modal/fonts-grid.js.map +0 -1
  144. package/build/components/global-styles/font-library-modal/library-font-card.js +0 -39
  145. package/build/components/global-styles/font-library-modal/library-font-card.js.map +0 -1
  146. package/build/components/global-styles/font-library-modal/tab-panel-layout.js +0 -67
  147. package/build/components/global-styles/font-library-modal/tab-panel-layout.js.map +0 -1
  148. package/build-module/components/global-styles/font-library-modal/collection-font-details.js +0 -42
  149. package/build-module/components/global-styles/font-library-modal/collection-font-details.js.map +0 -1
  150. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +0 -23
  151. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +0 -1
  152. package/build-module/components/global-styles/font-library-modal/fonts-grid.js +0 -50
  153. package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +0 -1
  154. package/build-module/components/global-styles/font-library-modal/library-font-card.js +0 -31
  155. package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +0 -1
  156. package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js +0 -60
  157. package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js.map +0 -1
  158. package/src/components/global-styles/font-library-modal/collection-font-details.js +0 -56
  159. package/src/components/global-styles/font-library-modal/confirm-delete-dialog.js +0 -33
  160. package/src/components/global-styles/font-library-modal/fonts-grid.js +0 -59
  161. package/src/components/global-styles/font-library-modal/library-font-card.js +0 -34
  162. package/src/components/global-styles/font-library-modal/tab-panel-layout.js +0 -85
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _react = require("react");
8
- var _components = require("@wordpress/components");
9
- var _element = require("@wordpress/element");
10
- /**
11
- * WordPress dependencies
12
- */
13
-
14
- function FontsGrid({
15
- title,
16
- children,
17
- pageSize = 32
18
- }) {
19
- const [lastItem, setLastItem] = (0, _element.useState)(null);
20
- const [page, setPage] = (0, _element.useState)(1);
21
- const itemsLimit = page * pageSize;
22
- const items = children.slice(0, itemsLimit);
23
- (0, _element.useEffect)(() => {
24
- if (lastItem) {
25
- const observer = new window.IntersectionObserver(([entry]) => {
26
- if (entry.isIntersecting) {
27
- setPage(prevPage => prevPage + 1);
28
- }
29
- });
30
- observer.observe(lastItem);
31
- return () => observer.disconnect();
32
- }
33
- }, [lastItem]);
34
- return (0, _react.createElement)("div", {
35
- className: "font-library-modal__fonts-grid"
36
- }, (0, _react.createElement)(_components.__experimentalVStack, {
37
- spacing: 0
38
- }, title && (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_components.__experimentalText, {
39
- className: "font-library-modal__subtitle"
40
- }, title), (0, _react.createElement)(_components.__experimentalSpacer, {
41
- margin: 2
42
- })), (0, _react.createElement)("div", {
43
- className: "font-library-modal__fonts-grid__main"
44
- }, items.map((child, i) => {
45
- if (i === itemsLimit - 1) {
46
- return (0, _react.createElement)("div", {
47
- key: child.key,
48
- ref: setLastItem
49
- }, child);
50
- }
51
- return (0, _react.createElement)("div", {
52
- key: child.key
53
- }, child);
54
- }))));
55
- }
56
- var _default = exports.default = FontsGrid;
57
- //# sourceMappingURL=fonts-grid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_components","require","_element","FontsGrid","title","children","pageSize","lastItem","setLastItem","useState","page","setPage","itemsLimit","items","slice","useEffect","observer","window","IntersectionObserver","entry","isIntersecting","prevPage","observe","disconnect","_react","createElement","className","__experimentalVStack","spacing","Fragment","__experimentalText","__experimentalSpacer","margin","map","child","i","key","ref","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalText as Text,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\n\nfunction FontsGrid( { title, children, pageSize = 32 } ) {\n\tconst [ lastItem, setLastItem ] = useState( null );\n\tconst [ page, setPage ] = useState( 1 );\n\tconst itemsLimit = page * pageSize;\n\tconst items = children.slice( 0, itemsLimit );\n\n\tuseEffect( () => {\n\t\tif ( lastItem ) {\n\t\t\tconst observer = new window.IntersectionObserver( ( [ entry ] ) => {\n\t\t\t\tif ( entry.isIntersecting ) {\n\t\t\t\t\tsetPage( ( prevPage ) => prevPage + 1 );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tobserver.observe( lastItem );\n\n\t\t\treturn () => observer.disconnect();\n\t\t}\n\t}, [ lastItem ] );\n\n\treturn (\n\t\t<div className=\"font-library-modal__fonts-grid\">\n\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t{ title && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Text className=\"font-library-modal__subtitle\">\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<Spacer margin={ 2 } />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t<div className=\"font-library-modal__fonts-grid__main\">\n\t\t\t\t\t{ items.map( ( child, i ) => {\n\t\t\t\t\t\tif ( i === itemsLimit - 1 ) {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<div key={ child.key } ref={ setLastItem }>\n\t\t\t\t\t\t\t\t\t{ child }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn <div key={ child.key }>{ child }</div>;\n\t\t\t\t\t} ) }\n\t\t\t\t</div>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default FontsGrid;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAQA,SAASE,SAASA,CAAE;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,QAAQ,GAAG;AAAG,CAAC,EAAG;EACxD,MAAM,CAAEC,QAAQ,EAAEC,WAAW,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EAClD,MAAM,CAAEC,IAAI,EAAEC,OAAO,CAAE,GAAG,IAAAF,iBAAQ,EAAE,CAAE,CAAC;EACvC,MAAMG,UAAU,GAAGF,IAAI,GAAGJ,QAAQ;EAClC,MAAMO,KAAK,GAAGR,QAAQ,CAACS,KAAK,CAAE,CAAC,EAAEF,UAAW,CAAC;EAE7C,IAAAG,kBAAS,EAAE,MAAM;IAChB,IAAKR,QAAQ,EAAG;MACf,MAAMS,QAAQ,GAAG,IAAIC,MAAM,CAACC,oBAAoB,CAAE,CAAE,CAAEC,KAAK,CAAE,KAAM;QAClE,IAAKA,KAAK,CAACC,cAAc,EAAG;UAC3BT,OAAO,CAAIU,QAAQ,IAAMA,QAAQ,GAAG,CAAE,CAAC;QACxC;MACD,CAAE,CAAC;MAEHL,QAAQ,CAACM,OAAO,CAAEf,QAAS,CAAC;MAE5B,OAAO,MAAMS,QAAQ,CAACO,UAAU,CAAC,CAAC;IACnC;EACD,CAAC,EAAE,CAAEhB,QAAQ,CAAG,CAAC;EAEjB,OACC,IAAAiB,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAgC,GAC9C,IAAAF,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA2B,oBAAM;IAACC,OAAO,EAAG;EAAG,GAClBxB,KAAK,IACN,IAAAoB,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAK,QAAA,QACC,IAAAL,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA8B,kBAAI;IAACJ,SAAS,EAAC;EAA8B,GAC3CtB,KACG,CAAC,EACP,IAAAoB,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA+B,oBAAM;IAACC,MAAM,EAAG;EAAG,CAAE,CACrB,CACF,EACD,IAAAR,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAsC,GAClDb,KAAK,CAACoB,GAAG,CAAE,CAAEC,KAAK,EAAEC,CAAC,KAAM;IAC5B,IAAKA,CAAC,KAAKvB,UAAU,GAAG,CAAC,EAAG;MAC3B,OACC,IAAAY,MAAA,CAAAC,aAAA;QAAKW,GAAG,EAAGF,KAAK,CAACE,GAAK;QAACC,GAAG,EAAG7B;MAAa,GACvC0B,KACE,CAAC;IAER;IACA,OAAO,IAAAV,MAAA,CAAAC,aAAA;MAAKW,GAAG,EAAGF,KAAK,CAACE;IAAK,GAAGF,KAAY,CAAC;EAC9C,CAAE,CACE,CACE,CACJ,CAAC;AAER;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcrC,SAAS"}
@@ -1,39 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = require("react");
9
- var _i18n = require("@wordpress/i18n");
10
- var _element = require("@wordpress/element");
11
- var _fontCard = _interopRequireDefault(require("./font-card"));
12
- var _context = require("./context");
13
- /**
14
- * WordPress dependencies
15
- */
16
-
17
- /**
18
- * Internal dependencies
19
- */
20
-
21
- function LibraryFontCard({
22
- font,
23
- ...props
24
- }) {
25
- const {
26
- getFontFacesActivated
27
- } = (0, _element.useContext)(_context.FontLibraryContext);
28
- const variantsInstalled = font?.fontFace?.length > 0 ? font.fontFace.length : 1;
29
- const variantsActive = getFontFacesActivated(font.slug, font.source).length;
30
- const variantsText = (0, _i18n.sprintf)( /* translators: 1: Active font variants, 2: Total font variants. */
31
- (0, _i18n.__)('%1$s/%2$s variants active'), variantsActive, variantsInstalled);
32
- return (0, _react.createElement)(_fontCard.default, {
33
- font: font,
34
- variantsText: variantsText,
35
- ...props
36
- });
37
- }
38
- var _default = exports.default = LibraryFontCard;
39
- //# sourceMappingURL=library-font-card.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_i18n","require","_element","_fontCard","_interopRequireDefault","_context","LibraryFontCard","font","props","getFontFacesActivated","useContext","FontLibraryContext","variantsInstalled","fontFace","length","variantsActive","slug","source","variantsText","sprintf","__","_react","createElement","default","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/library-font-card.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontCard from './font-card';\nimport { FontLibraryContext } from './context';\n\nfunction LibraryFontCard( { font, ...props } ) {\n\tconst { getFontFacesActivated } = useContext( FontLibraryContext );\n\n\tconst variantsInstalled =\n\t\tfont?.fontFace?.length > 0 ? font.fontFace.length : 1;\n\tconst variantsActive = getFontFacesActivated(\n\t\tfont.slug,\n\t\tfont.source\n\t).length;\n\tconst variantsText = sprintf(\n\t\t/* translators: 1: Active font variants, 2: Total font variants. */\n\t\t__( '%1$s/%2$s variants active' ),\n\t\tvariantsActive,\n\t\tvariantsInstalled\n\t);\n\n\treturn (\n\t\t<FontCard font={ font } variantsText={ variantsText } { ...props } />\n\t);\n}\n\nexport default LibraryFontCard;\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAVA;AACA;AACA;;AAIA;AACA;AACA;;AAIA,SAASK,eAAeA,CAAE;EAAEC,IAAI;EAAE,GAAGC;AAAM,CAAC,EAAG;EAC9C,MAAM;IAAEC;EAAsB,CAAC,GAAG,IAAAC,mBAAU,EAAEC,2BAAmB,CAAC;EAElE,MAAMC,iBAAiB,GACtBL,IAAI,EAAEM,QAAQ,EAAEC,MAAM,GAAG,CAAC,GAAGP,IAAI,CAACM,QAAQ,CAACC,MAAM,GAAG,CAAC;EACtD,MAAMC,cAAc,GAAGN,qBAAqB,CAC3CF,IAAI,CAACS,IAAI,EACTT,IAAI,CAACU,MACN,CAAC,CAACH,MAAM;EACR,MAAMI,YAAY,GAAG,IAAAC,aAAO,GAC3B;EACA,IAAAC,QAAE,EAAE,2BAA4B,CAAC,EACjCL,cAAc,EACdH,iBACD,CAAC;EAED,OACC,IAAAS,MAAA,CAAAC,aAAA,EAACnB,SAAA,CAAAoB,OAAQ;IAAChB,IAAI,EAAGA,IAAM;IAACW,YAAY,EAAGA,YAAc;IAAA,GAAMV;EAAK,CAAI,CAAC;AAEvE;AAAC,IAAAgB,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAEcjB,eAAe"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _react = require("react");
8
- var _element = require("@wordpress/element");
9
- var _components = require("@wordpress/components");
10
- var _icons = require("@wordpress/icons");
11
- var _i18n = require("@wordpress/i18n");
12
- var _context = require("./context");
13
- /**
14
- * WordPress dependencies
15
- */
16
-
17
- /**
18
- * Internal dependencies
19
- */
20
-
21
- function TabPanelLayout({
22
- title,
23
- description,
24
- notice,
25
- handleBack,
26
- children,
27
- footer
28
- }) {
29
- const {
30
- setNotice
31
- } = (0, _element.useContext)(_context.FontLibraryContext);
32
- return (0, _react.createElement)("div", {
33
- className: "font-library-modal__tabpanel-layout"
34
- }, (0, _react.createElement)(_components.__experimentalSpacer, {
35
- margin: 4
36
- }), (0, _react.createElement)(_components.__experimentalVStack, {
37
- spacing: 4,
38
- justify: "space-between"
39
- }, (0, _react.createElement)(_components.__experimentalVStack, {
40
- spacing: 2
41
- }, (0, _react.createElement)(_components.__experimentalHStack, {
42
- justify: "flex-start"
43
- }, !!handleBack && (0, _react.createElement)(_components.Button, {
44
- variant: "tertiary",
45
- onClick: handleBack,
46
- icon: _icons.chevronLeft,
47
- size: "small",
48
- label: (0, _i18n.__)('Back')
49
- }), title && (0, _react.createElement)(_components.__experimentalHeading, {
50
- level: 2,
51
- size: 13,
52
- className: "edit-site-global-styles-header"
53
- }, title)), description && (0, _react.createElement)(_components.__experimentalText, null, description), notice && (0, _react.createElement)(_components.FlexBlock, null, (0, _react.createElement)(_components.__experimentalSpacer, {
54
- margin: 1
55
- }), (0, _react.createElement)(_components.Notice, {
56
- status: notice.type,
57
- onRemove: () => setNotice(null)
58
- }, notice.message), (0, _react.createElement)(_components.__experimentalSpacer, {
59
- margin: 1
60
- }))), (0, _react.createElement)("div", {
61
- className: "font-library-modal__tabpanel-layout__main"
62
- }, children), footer && (0, _react.createElement)("div", {
63
- className: "font-library-modal__tabpanel-layout__footer"
64
- }, footer)));
65
- }
66
- var _default = exports.default = TabPanelLayout;
67
- //# sourceMappingURL=tab-panel-layout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_element","require","_components","_icons","_i18n","_context","TabPanelLayout","title","description","notice","handleBack","children","footer","setNotice","useContext","FontLibraryContext","_react","createElement","className","__experimentalSpacer","margin","__experimentalVStack","spacing","justify","__experimentalHStack","Button","variant","onClick","icon","chevronLeft","size","label","__","__experimentalHeading","level","__experimentalText","FlexBlock","Notice","status","type","onRemove","message","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/tab-panel-layout.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useContext } from '@wordpress/element';\nimport {\n\t__experimentalText as Text,\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHStack as HStack,\n\tButton,\n\tNotice,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { chevronLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './context';\n\nfunction TabPanelLayout( {\n\ttitle,\n\tdescription,\n\tnotice,\n\thandleBack,\n\tchildren,\n\tfooter,\n} ) {\n\tconst { setNotice } = useContext( FontLibraryContext );\n\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t<Spacer margin={ 4 } />\n\t\t\t<VStack spacing={ 4 } justify=\"space-between\">\n\t\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t\t\t{ !! handleBack && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleBack }\n\t\t\t\t\t\t\t\ticon={ chevronLeft }\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ title && (\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-header\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t\t{ description && <Text>{ description }</Text> }\n\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t<FlexBlock>\n\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t\t<div className=\"font-library-modal__tabpanel-layout__main\">\n\t\t\t\t\t{ children }\n\t\t\t\t</div>\n\t\t\t\t{ footer && (\n\t\t\t\t\t<div className=\"font-library-modal__tabpanel-layout__footer\">\n\t\t\t\t\t\t{ footer }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default TabPanelLayout;\n"],"mappings":";;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAUA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAKA,IAAAI,QAAA,GAAAJ,OAAA;AApBA;AACA;AACA;;AAeA;AACA;AACA;;AAGA,SAASK,cAAcA,CAAE;EACxBC,KAAK;EACLC,WAAW;EACXC,MAAM;EACNC,UAAU;EACVC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,mBAAU,EAAEC,2BAAmB,CAAC;EAEtD,OACC,IAAAC,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAqC,GACnD,IAAAF,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAiB,oBAAM;IAACC,MAAM,EAAG;EAAG,CAAE,CAAC,EACvB,IAAAJ,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAmB,oBAAM;IAACC,OAAO,EAAG,CAAG;IAACC,OAAO,EAAC;EAAe,GAC5C,IAAAP,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAmB,oBAAM;IAACC,OAAO,EAAG;EAAG,GACpB,IAAAN,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAsB,oBAAM;IAACD,OAAO,EAAC;EAAY,GACzB,CAAC,CAAEb,UAAU,IACd,IAAAM,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAuB,MAAM;IACNC,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGjB,UAAY;IACtBkB,IAAI,EAAGC,kBAAa;IACpBC,IAAI,EAAC,OAAO;IACZC,KAAK,EAAG,IAAAC,QAAE,EAAE,MAAO;EAAG,CACtB,CACD,EACCzB,KAAK,IACN,IAAAS,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAA+B,qBAAO;IACPC,KAAK,EAAG,CAAG;IACXJ,IAAI,EAAG,EAAI;IACXZ,SAAS,EAAC;EAAgC,GAExCX,KACM,CAEH,CAAC,EACPC,WAAW,IAAI,IAAAQ,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAiC,kBAAI,QAAG3B,WAAmB,CAAC,EAC3CC,MAAM,IACP,IAAAO,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAkC,SAAS,QACT,IAAApB,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAiB,oBAAM;IAACC,MAAM,EAAG;EAAG,CAAE,CAAC,EACvB,IAAAJ,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAmC,MAAM;IACNC,MAAM,EAAG7B,MAAM,CAAC8B,IAAM;IACtBC,QAAQ,EAAGA,CAAA,KAAM3B,SAAS,CAAE,IAAK;EAAG,GAElCJ,MAAM,CAACgC,OACF,CAAC,EACT,IAAAzB,MAAA,CAAAC,aAAA,EAACf,WAAA,CAAAiB,oBAAM;IAACC,MAAM,EAAG;EAAG,CAAE,CACZ,CAEL,CAAC,EACT,IAAAJ,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAA2C,GACvDP,QACE,CAAC,EACJC,MAAM,IACP,IAAAI,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAA6C,GACzDN,MACE,CAEC,CACJ,CAAC;AAER;AAAC,IAAA8B,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEctC,cAAc"}
@@ -1,42 +0,0 @@
1
- import { createElement, Fragment } from "react";
2
- /**
3
- * WordPress dependencies
4
- */
5
- import { __experimentalVStack as VStack, __experimentalSpacer as Spacer } from '@wordpress/components';
6
-
7
- /**
8
- * Internal dependencies
9
- */
10
- import CollectionFontVariant from './collection-font-variant';
11
- import { isFontFontFaceInOutline } from './utils/fonts-outline';
12
- import { sortFontFaces } from './utils/sort-font-faces';
13
- function CollectionFontDetails({
14
- font,
15
- handleToggleVariant,
16
- fontToInstallOutline
17
- }) {
18
- const fontFaces = font.fontFace && font.fontFace.length ? sortFontFaces(font.fontFace) : [{
19
- fontFamily: font.fontFamily,
20
- fontStyle: 'normal',
21
- fontWeight: '400'
22
- }];
23
- return createElement(Fragment, null, createElement(Spacer, {
24
- margin: 4
25
- }), createElement(VStack, {
26
- spacing: 0
27
- }, createElement(Spacer, {
28
- margin: 8
29
- }), fontFaces.map((face, i) => createElement(CollectionFontVariant, {
30
- font: font,
31
- face: face,
32
- key: `face${i}`,
33
- handleToggleVariant: handleToggleVariant,
34
- selected: isFontFontFaceInOutline(font.slug, font.fontFace ? face : null,
35
- // If the font has no fontFace, we want to check if the font is in the outline
36
- fontToInstallOutline)
37
- }))), createElement(Spacer, {
38
- margin: 8
39
- }));
40
- }
41
- export default CollectionFontDetails;
42
- //# sourceMappingURL=collection-font-details.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["__experimentalVStack","VStack","__experimentalSpacer","Spacer","CollectionFontVariant","isFontFontFaceInOutline","sortFontFaces","CollectionFontDetails","font","handleToggleVariant","fontToInstallOutline","fontFaces","fontFace","length","fontFamily","fontStyle","fontWeight","createElement","Fragment","margin","spacing","map","face","i","key","selected","slug"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/collection-font-details.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport CollectionFontVariant from './collection-font-variant';\nimport { isFontFontFaceInOutline } from './utils/fonts-outline';\nimport { sortFontFaces } from './utils/sort-font-faces';\n\nfunction CollectionFontDetails( {\n\tfont,\n\thandleToggleVariant,\n\tfontToInstallOutline,\n} ) {\n\tconst fontFaces =\n\t\tfont.fontFace && font.fontFace.length\n\t\t\t? sortFontFaces( font.fontFace )\n\t\t\t: [\n\t\t\t\t\t{\n\t\t\t\t\t\tfontFamily: font.fontFamily,\n\t\t\t\t\t\tfontStyle: 'normal',\n\t\t\t\t\t\tfontWeight: '400',\n\t\t\t\t\t},\n\t\t\t ];\n\n\treturn (\n\t\t<>\n\t\t\t<Spacer margin={ 4 } />\n\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t<Spacer margin={ 8 } />\n\t\t\t\t{ fontFaces.map( ( face, i ) => (\n\t\t\t\t\t<CollectionFontVariant\n\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\tface={ face }\n\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\thandleToggleVariant={ handleToggleVariant }\n\t\t\t\t\t\tselected={ isFontFontFaceInOutline(\n\t\t\t\t\t\t\tfont.slug,\n\t\t\t\t\t\t\tfont.fontFace ? face : null, // If the font has no fontFace, we want to check if the font is in the outline\n\t\t\t\t\t\t\tfontToInstallOutline\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</VStack>\n\t\t\t<Spacer margin={ 8 } />\n\t\t</>\n\t);\n}\n\nexport default CollectionFontDetails;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,2BAA2B;AAC7D,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,aAAa,QAAQ,yBAAyB;AAEvD,SAASC,qBAAqBA,CAAE;EAC/BC,IAAI;EACJC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAMC,SAAS,GACdH,IAAI,CAACI,QAAQ,IAAIJ,IAAI,CAACI,QAAQ,CAACC,MAAM,GAClCP,aAAa,CAAEE,IAAI,CAACI,QAAS,CAAC,GAC9B,CACA;IACCE,UAAU,EAAEN,IAAI,CAACM,UAAU;IAC3BC,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE;EACb,CAAC,CACA;EAEL,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACd,MAAM;IAACgB,MAAM,EAAG;EAAG,CAAE,CAAC,EACvBF,aAAA,CAAChB,MAAM;IAACmB,OAAO,EAAG;EAAG,GACpBH,aAAA,CAACd,MAAM;IAACgB,MAAM,EAAG;EAAG,CAAE,CAAC,EACrBR,SAAS,CAACU,GAAG,CAAE,CAAEC,IAAI,EAAEC,CAAC,KACzBN,aAAA,CAACb,qBAAqB;IACrBI,IAAI,EAAGA,IAAM;IACbc,IAAI,EAAGA,IAAM;IACbE,GAAG,EAAI,OAAOD,CAAG,EAAG;IACpBd,mBAAmB,EAAGA,mBAAqB;IAC3CgB,QAAQ,EAAGpB,uBAAuB,CACjCG,IAAI,CAACkB,IAAI,EACTlB,IAAI,CAACI,QAAQ,GAAGU,IAAI,GAAG,IAAI;IAAE;IAC7BZ,oBACD;EAAG,CACH,CACA,CACK,CAAC,EACTO,aAAA,CAACd,MAAM;IAACgB,MAAM,EAAG;EAAG,CAAE,CACrB,CAAC;AAEL;AAEA,eAAeZ,qBAAqB"}
@@ -1,23 +0,0 @@
1
- import { createElement } from "react";
2
- /**
3
- * WordPress dependencies
4
- */
5
- import { __, sprintf } from '@wordpress/i18n';
6
- import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';
7
- function ConfirmDeleteDialog({
8
- font,
9
- isConfirmDeleteOpen,
10
- handleConfirmUninstall,
11
- handleCancelUninstall
12
- }) {
13
- return createElement(ConfirmDialog, {
14
- isOpen: isConfirmDeleteOpen,
15
- cancelButtonText: __('Cancel'),
16
- confirmButtonText: __('Delete'),
17
- onCancel: handleCancelUninstall,
18
- onConfirm: handleConfirmUninstall
19
- }, font && sprintf( /* translators: %s: Name of the font. */
20
- __('Are you sure you want to delete "%s" font and all its variants and assets?'), font.name));
21
- }
22
- export default ConfirmDeleteDialog;
23
- //# sourceMappingURL=confirm-delete-dialog.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["__","sprintf","__experimentalConfirmDialog","ConfirmDialog","ConfirmDeleteDialog","font","isConfirmDeleteOpen","handleConfirmUninstall","handleCancelUninstall","createElement","isOpen","cancelButtonText","confirmButtonText","onCancel","onConfirm","name"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/confirm-delete-dialog.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n\nfunction ConfirmDeleteDialog( {\n\tfont,\n\tisConfirmDeleteOpen,\n\thandleConfirmUninstall,\n\thandleCancelUninstall,\n} ) {\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isConfirmDeleteOpen }\n\t\t\tcancelButtonText={ __( 'Cancel' ) }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\tonCancel={ handleCancelUninstall }\n\t\t\tonConfirm={ handleConfirmUninstall }\n\t\t>\n\t\t\t{ font &&\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: Name of the font. */\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\" font and all its variants and assets?'\n\t\t\t\t\t),\n\t\t\t\t\tfont.name\n\t\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n\nexport default ConfirmDeleteDialog;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,2BAA2B,IAAIC,aAAa,QAAQ,uBAAuB;AAEpF,SAASC,mBAAmBA,CAAE;EAC7BC,IAAI;EACJC,mBAAmB;EACnBC,sBAAsB;EACtBC;AACD,CAAC,EAAG;EACH,OACCC,aAAA,CAACN,aAAa;IACbO,MAAM,EAAGJ,mBAAqB;IAC9BK,gBAAgB,EAAGX,EAAE,CAAE,QAAS,CAAG;IACnCY,iBAAiB,EAAGZ,EAAE,CAAE,QAAS,CAAG;IACpCa,QAAQ,EAAGL,qBAAuB;IAClCM,SAAS,EAAGP;EAAwB,GAElCF,IAAI,IACLJ,OAAO,EACN;EACAD,EAAE,CACD,4EACD,CAAC,EACDK,IAAI,CAACU,IACN,CACa,CAAC;AAElB;AAEA,eAAeX,mBAAmB"}
@@ -1,50 +0,0 @@
1
- import { createElement, Fragment } from "react";
2
- /**
3
- * WordPress dependencies
4
- */
5
- import { __experimentalVStack as VStack, __experimentalText as Text, __experimentalSpacer as Spacer } from '@wordpress/components';
6
- import { useState, useEffect } from '@wordpress/element';
7
- function FontsGrid({
8
- title,
9
- children,
10
- pageSize = 32
11
- }) {
12
- const [lastItem, setLastItem] = useState(null);
13
- const [page, setPage] = useState(1);
14
- const itemsLimit = page * pageSize;
15
- const items = children.slice(0, itemsLimit);
16
- useEffect(() => {
17
- if (lastItem) {
18
- const observer = new window.IntersectionObserver(([entry]) => {
19
- if (entry.isIntersecting) {
20
- setPage(prevPage => prevPage + 1);
21
- }
22
- });
23
- observer.observe(lastItem);
24
- return () => observer.disconnect();
25
- }
26
- }, [lastItem]);
27
- return createElement("div", {
28
- className: "font-library-modal__fonts-grid"
29
- }, createElement(VStack, {
30
- spacing: 0
31
- }, title && createElement(Fragment, null, createElement(Text, {
32
- className: "font-library-modal__subtitle"
33
- }, title), createElement(Spacer, {
34
- margin: 2
35
- })), createElement("div", {
36
- className: "font-library-modal__fonts-grid__main"
37
- }, items.map((child, i) => {
38
- if (i === itemsLimit - 1) {
39
- return createElement("div", {
40
- key: child.key,
41
- ref: setLastItem
42
- }, child);
43
- }
44
- return createElement("div", {
45
- key: child.key
46
- }, child);
47
- }))));
48
- }
49
- export default FontsGrid;
50
- //# sourceMappingURL=fonts-grid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["__experimentalVStack","VStack","__experimentalText","Text","__experimentalSpacer","Spacer","useState","useEffect","FontsGrid","title","children","pageSize","lastItem","setLastItem","page","setPage","itemsLimit","items","slice","observer","window","IntersectionObserver","entry","isIntersecting","prevPage","observe","disconnect","createElement","className","spacing","Fragment","margin","map","child","i","key","ref"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalText as Text,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\n\nfunction FontsGrid( { title, children, pageSize = 32 } ) {\n\tconst [ lastItem, setLastItem ] = useState( null );\n\tconst [ page, setPage ] = useState( 1 );\n\tconst itemsLimit = page * pageSize;\n\tconst items = children.slice( 0, itemsLimit );\n\n\tuseEffect( () => {\n\t\tif ( lastItem ) {\n\t\t\tconst observer = new window.IntersectionObserver( ( [ entry ] ) => {\n\t\t\t\tif ( entry.isIntersecting ) {\n\t\t\t\t\tsetPage( ( prevPage ) => prevPage + 1 );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tobserver.observe( lastItem );\n\n\t\t\treturn () => observer.disconnect();\n\t\t}\n\t}, [ lastItem ] );\n\n\treturn (\n\t\t<div className=\"font-library-modal__fonts-grid\">\n\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t{ title && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Text className=\"font-library-modal__subtitle\">\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<Spacer margin={ 2 } />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t<div className=\"font-library-modal__fonts-grid__main\">\n\t\t\t\t\t{ items.map( ( child, i ) => {\n\t\t\t\t\t\tif ( i === itemsLimit - 1 ) {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<div key={ child.key } ref={ setLastItem }>\n\t\t\t\t\t\t\t\t\t{ child }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn <div key={ child.key }>{ child }</div>;\n\t\t\t\t\t} ) }\n\t\t\t\t</div>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default FontsGrid;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,QAAQ,EAAEC,SAAS,QAAQ,oBAAoB;AAExD,SAASC,SAASA,CAAE;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,QAAQ,GAAG;AAAG,CAAC,EAAG;EACxD,MAAM,CAAEC,QAAQ,EAAEC,WAAW,CAAE,GAAGP,QAAQ,CAAE,IAAK,CAAC;EAClD,MAAM,CAAEQ,IAAI,EAAEC,OAAO,CAAE,GAAGT,QAAQ,CAAE,CAAE,CAAC;EACvC,MAAMU,UAAU,GAAGF,IAAI,GAAGH,QAAQ;EAClC,MAAMM,KAAK,GAAGP,QAAQ,CAACQ,KAAK,CAAE,CAAC,EAAEF,UAAW,CAAC;EAE7CT,SAAS,CAAE,MAAM;IAChB,IAAKK,QAAQ,EAAG;MACf,MAAMO,QAAQ,GAAG,IAAIC,MAAM,CAACC,oBAAoB,CAAE,CAAE,CAAEC,KAAK,CAAE,KAAM;QAClE,IAAKA,KAAK,CAACC,cAAc,EAAG;UAC3BR,OAAO,CAAIS,QAAQ,IAAMA,QAAQ,GAAG,CAAE,CAAC;QACxC;MACD,CAAE,CAAC;MAEHL,QAAQ,CAACM,OAAO,CAAEb,QAAS,CAAC;MAE5B,OAAO,MAAMO,QAAQ,CAACO,UAAU,CAAC,CAAC;IACnC;EACD,CAAC,EAAE,CAAEd,QAAQ,CAAG,CAAC;EAEjB,OACCe,aAAA;IAAKC,SAAS,EAAC;EAAgC,GAC9CD,aAAA,CAAC1B,MAAM;IAAC4B,OAAO,EAAG;EAAG,GAClBpB,KAAK,IACNkB,aAAA,CAAAG,QAAA,QACCH,aAAA,CAACxB,IAAI;IAACyB,SAAS,EAAC;EAA8B,GAC3CnB,KACG,CAAC,EACPkB,aAAA,CAACtB,MAAM;IAAC0B,MAAM,EAAG;EAAG,CAAE,CACrB,CACF,EACDJ,aAAA;IAAKC,SAAS,EAAC;EAAsC,GAClDX,KAAK,CAACe,GAAG,CAAE,CAAEC,KAAK,EAAEC,CAAC,KAAM;IAC5B,IAAKA,CAAC,KAAKlB,UAAU,GAAG,CAAC,EAAG;MAC3B,OACCW,aAAA;QAAKQ,GAAG,EAAGF,KAAK,CAACE,GAAK;QAACC,GAAG,EAAGvB;MAAa,GACvCoB,KACE,CAAC;IAER;IACA,OAAON,aAAA;MAAKQ,GAAG,EAAGF,KAAK,CAACE;IAAK,GAAGF,KAAY,CAAC;EAC9C,CAAE,CACE,CACE,CACJ,CAAC;AAER;AAEA,eAAezB,SAAS"}
@@ -1,31 +0,0 @@
1
- import { createElement } from "react";
2
- /**
3
- * WordPress dependencies
4
- */
5
- import { __, sprintf } from '@wordpress/i18n';
6
- import { useContext } from '@wordpress/element';
7
-
8
- /**
9
- * Internal dependencies
10
- */
11
- import FontCard from './font-card';
12
- import { FontLibraryContext } from './context';
13
- function LibraryFontCard({
14
- font,
15
- ...props
16
- }) {
17
- const {
18
- getFontFacesActivated
19
- } = useContext(FontLibraryContext);
20
- const variantsInstalled = font?.fontFace?.length > 0 ? font.fontFace.length : 1;
21
- const variantsActive = getFontFacesActivated(font.slug, font.source).length;
22
- const variantsText = sprintf( /* translators: 1: Active font variants, 2: Total font variants. */
23
- __('%1$s/%2$s variants active'), variantsActive, variantsInstalled);
24
- return createElement(FontCard, {
25
- font: font,
26
- variantsText: variantsText,
27
- ...props
28
- });
29
- }
30
- export default LibraryFontCard;
31
- //# sourceMappingURL=library-font-card.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["__","sprintf","useContext","FontCard","FontLibraryContext","LibraryFontCard","font","props","getFontFacesActivated","variantsInstalled","fontFace","length","variantsActive","slug","source","variantsText","createElement"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/library-font-card.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontCard from './font-card';\nimport { FontLibraryContext } from './context';\n\nfunction LibraryFontCard( { font, ...props } ) {\n\tconst { getFontFacesActivated } = useContext( FontLibraryContext );\n\n\tconst variantsInstalled =\n\t\tfont?.fontFace?.length > 0 ? font.fontFace.length : 1;\n\tconst variantsActive = getFontFacesActivated(\n\t\tfont.slug,\n\t\tfont.source\n\t).length;\n\tconst variantsText = sprintf(\n\t\t/* translators: 1: Active font variants, 2: Total font variants. */\n\t\t__( '%1$s/%2$s variants active' ),\n\t\tvariantsActive,\n\t\tvariantsInstalled\n\t);\n\n\treturn (\n\t\t<FontCard font={ font } variantsText={ variantsText } { ...props } />\n\t);\n}\n\nexport default LibraryFontCard;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAClC,SAASC,kBAAkB,QAAQ,WAAW;AAE9C,SAASC,eAAeA,CAAE;EAAEC,IAAI;EAAE,GAAGC;AAAM,CAAC,EAAG;EAC9C,MAAM;IAAEC;EAAsB,CAAC,GAAGN,UAAU,CAAEE,kBAAmB,CAAC;EAElE,MAAMK,iBAAiB,GACtBH,IAAI,EAAEI,QAAQ,EAAEC,MAAM,GAAG,CAAC,GAAGL,IAAI,CAACI,QAAQ,CAACC,MAAM,GAAG,CAAC;EACtD,MAAMC,cAAc,GAAGJ,qBAAqB,CAC3CF,IAAI,CAACO,IAAI,EACTP,IAAI,CAACQ,MACN,CAAC,CAACH,MAAM;EACR,MAAMI,YAAY,GAAGd,OAAO,EAC3B;EACAD,EAAE,CAAE,2BAA4B,CAAC,EACjCY,cAAc,EACdH,iBACD,CAAC;EAED,OACCO,aAAA,CAACb,QAAQ;IAACG,IAAI,EAAGA,IAAM;IAACS,YAAY,EAAGA,YAAc;IAAA,GAAMR;EAAK,CAAI,CAAC;AAEvE;AAEA,eAAeF,eAAe"}
@@ -1,60 +0,0 @@
1
- import { createElement } from "react";
2
- /**
3
- * WordPress dependencies
4
- */
5
- import { useContext } from '@wordpress/element';
6
- import { __experimentalText as Text, __experimentalHeading as Heading, __experimentalVStack as VStack, __experimentalSpacer as Spacer, __experimentalHStack as HStack, Button, Notice, FlexBlock } from '@wordpress/components';
7
- import { chevronLeft } from '@wordpress/icons';
8
- import { __ } from '@wordpress/i18n';
9
-
10
- /**
11
- * Internal dependencies
12
- */
13
- import { FontLibraryContext } from './context';
14
- function TabPanelLayout({
15
- title,
16
- description,
17
- notice,
18
- handleBack,
19
- children,
20
- footer
21
- }) {
22
- const {
23
- setNotice
24
- } = useContext(FontLibraryContext);
25
- return createElement("div", {
26
- className: "font-library-modal__tabpanel-layout"
27
- }, createElement(Spacer, {
28
- margin: 4
29
- }), createElement(VStack, {
30
- spacing: 4,
31
- justify: "space-between"
32
- }, createElement(VStack, {
33
- spacing: 2
34
- }, createElement(HStack, {
35
- justify: "flex-start"
36
- }, !!handleBack && createElement(Button, {
37
- variant: "tertiary",
38
- onClick: handleBack,
39
- icon: chevronLeft,
40
- size: "small",
41
- label: __('Back')
42
- }), title && createElement(Heading, {
43
- level: 2,
44
- size: 13,
45
- className: "edit-site-global-styles-header"
46
- }, title)), description && createElement(Text, null, description), notice && createElement(FlexBlock, null, createElement(Spacer, {
47
- margin: 1
48
- }), createElement(Notice, {
49
- status: notice.type,
50
- onRemove: () => setNotice(null)
51
- }, notice.message), createElement(Spacer, {
52
- margin: 1
53
- }))), createElement("div", {
54
- className: "font-library-modal__tabpanel-layout__main"
55
- }, children), footer && createElement("div", {
56
- className: "font-library-modal__tabpanel-layout__footer"
57
- }, footer)));
58
- }
59
- export default TabPanelLayout;
60
- //# sourceMappingURL=tab-panel-layout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["useContext","__experimentalText","Text","__experimentalHeading","Heading","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalHStack","HStack","Button","Notice","FlexBlock","chevronLeft","__","FontLibraryContext","TabPanelLayout","title","description","notice","handleBack","children","footer","setNotice","createElement","className","margin","spacing","justify","variant","onClick","icon","size","label","level","status","type","onRemove","message"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/tab-panel-layout.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useContext } from '@wordpress/element';\nimport {\n\t__experimentalText as Text,\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHStack as HStack,\n\tButton,\n\tNotice,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { chevronLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './context';\n\nfunction TabPanelLayout( {\n\ttitle,\n\tdescription,\n\tnotice,\n\thandleBack,\n\tchildren,\n\tfooter,\n} ) {\n\tconst { setNotice } = useContext( FontLibraryContext );\n\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t<Spacer margin={ 4 } />\n\t\t\t<VStack spacing={ 4 } justify=\"space-between\">\n\t\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t\t\t{ !! handleBack && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleBack }\n\t\t\t\t\t\t\t\ticon={ chevronLeft }\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ title && (\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-header\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t\t{ description && <Text>{ description }</Text> }\n\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t<FlexBlock>\n\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t\t<div className=\"font-library-modal__tabpanel-layout__main\">\n\t\t\t\t\t{ children }\n\t\t\t\t</div>\n\t\t\t\t{ footer && (\n\t\t\t\t\t<div className=\"font-library-modal__tabpanel-layout__footer\">\n\t\t\t\t\t\t{ footer }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default TabPanelLayout;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,UAAU,QAAQ,oBAAoB;AAC/C,SACCC,kBAAkB,IAAIC,IAAI,EAC1BC,qBAAqB,IAAIC,OAAO,EAChCC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,MAAM,EACNC,MAAM,EACNC,SAAS,QACH,uBAAuB;AAC9B,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,kBAAkB,QAAQ,WAAW;AAE9C,SAASC,cAAcA,CAAE;EACxBC,KAAK;EACLC,WAAW;EACXC,MAAM;EACNC,UAAU;EACVC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAU,CAAC,GAAGxB,UAAU,CAAEgB,kBAAmB,CAAC;EAEtD,OACCS,aAAA;IAAKC,SAAS,EAAC;EAAqC,GACnDD,aAAA,CAACjB,MAAM;IAACmB,MAAM,EAAG;EAAG,CAAE,CAAC,EACvBF,aAAA,CAACnB,MAAM;IAACsB,OAAO,EAAG,CAAG;IAACC,OAAO,EAAC;EAAe,GAC5CJ,aAAA,CAACnB,MAAM;IAACsB,OAAO,EAAG;EAAG,GACpBH,aAAA,CAACf,MAAM;IAACmB,OAAO,EAAC;EAAY,GACzB,CAAC,CAAER,UAAU,IACdI,aAAA,CAACd,MAAM;IACNmB,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGV,UAAY;IACtBW,IAAI,EAAGlB,WAAa;IACpBmB,IAAI,EAAC,OAAO;IACZC,KAAK,EAAGnB,EAAE,CAAE,MAAO;EAAG,CACtB,CACD,EACCG,KAAK,IACNO,aAAA,CAACrB,OAAO;IACP+B,KAAK,EAAG,CAAG;IACXF,IAAI,EAAG,EAAI;IACXP,SAAS,EAAC;EAAgC,GAExCR,KACM,CAEH,CAAC,EACPC,WAAW,IAAIM,aAAA,CAACvB,IAAI,QAAGiB,WAAmB,CAAC,EAC3CC,MAAM,IACPK,aAAA,CAACZ,SAAS,QACTY,aAAA,CAACjB,MAAM;IAACmB,MAAM,EAAG;EAAG,CAAE,CAAC,EACvBF,aAAA,CAACb,MAAM;IACNwB,MAAM,EAAGhB,MAAM,CAACiB,IAAM;IACtBC,QAAQ,EAAGA,CAAA,KAAMd,SAAS,CAAE,IAAK;EAAG,GAElCJ,MAAM,CAACmB,OACF,CAAC,EACTd,aAAA,CAACjB,MAAM;IAACmB,MAAM,EAAG;EAAG,CAAE,CACZ,CAEL,CAAC,EACTF,aAAA;IAAKC,SAAS,EAAC;EAA2C,GACvDJ,QACE,CAAC,EACJC,MAAM,IACPE,aAAA;IAAKC,SAAS,EAAC;EAA6C,GACzDH,MACE,CAEC,CACJ,CAAC;AAER;AAEA,eAAeN,cAAc"}
@@ -1,56 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import {
5
- __experimentalVStack as VStack,
6
- __experimentalSpacer as Spacer,
7
- } from '@wordpress/components';
8
-
9
- /**
10
- * Internal dependencies
11
- */
12
- import CollectionFontVariant from './collection-font-variant';
13
- import { isFontFontFaceInOutline } from './utils/fonts-outline';
14
- import { sortFontFaces } from './utils/sort-font-faces';
15
-
16
- function CollectionFontDetails( {
17
- font,
18
- handleToggleVariant,
19
- fontToInstallOutline,
20
- } ) {
21
- const fontFaces =
22
- font.fontFace && font.fontFace.length
23
- ? sortFontFaces( font.fontFace )
24
- : [
25
- {
26
- fontFamily: font.fontFamily,
27
- fontStyle: 'normal',
28
- fontWeight: '400',
29
- },
30
- ];
31
-
32
- return (
33
- <>
34
- <Spacer margin={ 4 } />
35
- <VStack spacing={ 0 }>
36
- <Spacer margin={ 8 } />
37
- { fontFaces.map( ( face, i ) => (
38
- <CollectionFontVariant
39
- font={ font }
40
- face={ face }
41
- key={ `face${ i }` }
42
- handleToggleVariant={ handleToggleVariant }
43
- selected={ isFontFontFaceInOutline(
44
- font.slug,
45
- font.fontFace ? face : null, // If the font has no fontFace, we want to check if the font is in the outline
46
- fontToInstallOutline
47
- ) }
48
- />
49
- ) ) }
50
- </VStack>
51
- <Spacer margin={ 8 } />
52
- </>
53
- );
54
- }
55
-
56
- export default CollectionFontDetails;
@@ -1,33 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { __, sprintf } from '@wordpress/i18n';
5
- import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';
6
-
7
- function ConfirmDeleteDialog( {
8
- font,
9
- isConfirmDeleteOpen,
10
- handleConfirmUninstall,
11
- handleCancelUninstall,
12
- } ) {
13
- return (
14
- <ConfirmDialog
15
- isOpen={ isConfirmDeleteOpen }
16
- cancelButtonText={ __( 'Cancel' ) }
17
- confirmButtonText={ __( 'Delete' ) }
18
- onCancel={ handleCancelUninstall }
19
- onConfirm={ handleConfirmUninstall }
20
- >
21
- { font &&
22
- sprintf(
23
- /* translators: %s: Name of the font. */
24
- __(
25
- 'Are you sure you want to delete "%s" font and all its variants and assets?'
26
- ),
27
- font.name
28
- ) }
29
- </ConfirmDialog>
30
- );
31
- }
32
-
33
- export default ConfirmDeleteDialog;
@@ -1,59 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import {
5
- __experimentalVStack as VStack,
6
- __experimentalText as Text,
7
- __experimentalSpacer as Spacer,
8
- } from '@wordpress/components';
9
- import { useState, useEffect } from '@wordpress/element';
10
-
11
- function FontsGrid( { title, children, pageSize = 32 } ) {
12
- const [ lastItem, setLastItem ] = useState( null );
13
- const [ page, setPage ] = useState( 1 );
14
- const itemsLimit = page * pageSize;
15
- const items = children.slice( 0, itemsLimit );
16
-
17
- useEffect( () => {
18
- if ( lastItem ) {
19
- const observer = new window.IntersectionObserver( ( [ entry ] ) => {
20
- if ( entry.isIntersecting ) {
21
- setPage( ( prevPage ) => prevPage + 1 );
22
- }
23
- } );
24
-
25
- observer.observe( lastItem );
26
-
27
- return () => observer.disconnect();
28
- }
29
- }, [ lastItem ] );
30
-
31
- return (
32
- <div className="font-library-modal__fonts-grid">
33
- <VStack spacing={ 0 }>
34
- { title && (
35
- <>
36
- <Text className="font-library-modal__subtitle">
37
- { title }
38
- </Text>
39
- <Spacer margin={ 2 } />
40
- </>
41
- ) }
42
- <div className="font-library-modal__fonts-grid__main">
43
- { items.map( ( child, i ) => {
44
- if ( i === itemsLimit - 1 ) {
45
- return (
46
- <div key={ child.key } ref={ setLastItem }>
47
- { child }
48
- </div>
49
- );
50
- }
51
- return <div key={ child.key }>{ child }</div>;
52
- } ) }
53
- </div>
54
- </VStack>
55
- </div>
56
- );
57
- }
58
-
59
- export default FontsGrid;
@@ -1,34 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { __, sprintf } from '@wordpress/i18n';
5
- import { useContext } from '@wordpress/element';
6
-
7
- /**
8
- * Internal dependencies
9
- */
10
- import FontCard from './font-card';
11
- import { FontLibraryContext } from './context';
12
-
13
- function LibraryFontCard( { font, ...props } ) {
14
- const { getFontFacesActivated } = useContext( FontLibraryContext );
15
-
16
- const variantsInstalled =
17
- font?.fontFace?.length > 0 ? font.fontFace.length : 1;
18
- const variantsActive = getFontFacesActivated(
19
- font.slug,
20
- font.source
21
- ).length;
22
- const variantsText = sprintf(
23
- /* translators: 1: Active font variants, 2: Total font variants. */
24
- __( '%1$s/%2$s variants active' ),
25
- variantsActive,
26
- variantsInstalled
27
- );
28
-
29
- return (
30
- <FontCard font={ font } variantsText={ variantsText } { ...props } />
31
- );
32
- }
33
-
34
- export default LibraryFontCard;