@wordpress/e2e-test-utils-playwright 1.34.0 → 1.35.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.
Files changed (113) hide show
  1. package/build/admin/create-new-post.js +2 -0
  2. package/build/admin/create-new-post.js.map +1 -1
  3. package/build/admin/edit-post.js +2 -0
  4. package/build/admin/edit-post.js.map +1 -1
  5. package/build/admin/get-page-error.js +3 -1
  6. package/build/admin/get-page-error.js.map +1 -1
  7. package/build/admin/index.js +4 -2
  8. package/build/admin/index.js.map +1 -1
  9. package/build/admin/visit-admin-page.js +2 -0
  10. package/build/admin/visit-admin-page.js.map +1 -1
  11. package/build/admin/visit-site-editor.js +2 -0
  12. package/build/admin/visit-site-editor.js.map +1 -1
  13. package/build/config.js +4 -2
  14. package/build/config.js.map +1 -1
  15. package/build/editor/click-block-options-menu-item.js +2 -0
  16. package/build/editor/click-block-options-menu-item.js.map +1 -1
  17. package/build/editor/click-block-toolbar-button.js +2 -0
  18. package/build/editor/click-block-toolbar-button.js.map +1 -1
  19. package/build/editor/get-blocks.js +2 -0
  20. package/build/editor/get-blocks.js.map +1 -1
  21. package/build/editor/get-edited-post-content.js +2 -0
  22. package/build/editor/get-edited-post-content.js.map +1 -1
  23. package/build/editor/index.js +4 -2
  24. package/build/editor/index.js.map +1 -1
  25. package/build/editor/insert-block.js +2 -0
  26. package/build/editor/insert-block.js.map +1 -1
  27. package/build/editor/open-document-settings-sidebar.js +2 -0
  28. package/build/editor/open-document-settings-sidebar.js.map +1 -1
  29. package/build/editor/preview.js +2 -0
  30. package/build/editor/preview.js.map +1 -1
  31. package/build/editor/publish-post.js +2 -0
  32. package/build/editor/publish-post.js.map +1 -1
  33. package/build/editor/save-draft.js +2 -0
  34. package/build/editor/save-draft.js.map +1 -1
  35. package/build/editor/select-blocks.js +2 -0
  36. package/build/editor/select-blocks.js.map +1 -1
  37. package/build/editor/set-content.js +2 -0
  38. package/build/editor/set-content.js.map +1 -1
  39. package/build/editor/set-is-fixed-toolbar.js +2 -0
  40. package/build/editor/set-is-fixed-toolbar.js.map +1 -1
  41. package/build/editor/set-preferences.js +2 -0
  42. package/build/editor/set-preferences.js.map +1 -1
  43. package/build/editor/show-block-toolbar.js +2 -0
  44. package/build/editor/show-block-toolbar.js.map +1 -1
  45. package/build/editor/site-editor.js +2 -0
  46. package/build/editor/site-editor.js.map +1 -1
  47. package/build/editor/switch-editor-tool.js +2 -0
  48. package/build/editor/switch-editor-tool.js.map +1 -1
  49. package/build/editor/switch-to-legacy-canvas.js +2 -0
  50. package/build/editor/switch-to-legacy-canvas.js.map +1 -1
  51. package/build/editor/transform-block-to.js +2 -0
  52. package/build/editor/transform-block-to.js.map +1 -1
  53. package/build/index.js +2 -0
  54. package/build/index.js.map +1 -1
  55. package/build/lighthouse/index.js +4 -2
  56. package/build/lighthouse/index.js.map +1 -1
  57. package/build/metrics/index.js +4 -2
  58. package/build/metrics/index.js.map +1 -1
  59. package/build/page-utils/drag-files.js +2 -0
  60. package/build/page-utils/drag-files.js.map +1 -1
  61. package/build/page-utils/emulate-network-conditions.js +3 -1
  62. package/build/page-utils/emulate-network-conditions.js.map +1 -1
  63. package/build/page-utils/index.js +4 -2
  64. package/build/page-utils/index.js.map +1 -1
  65. package/build/page-utils/is-current-url.js +2 -0
  66. package/build/page-utils/is-current-url.js.map +1 -1
  67. package/build/page-utils/keycodes.js +7 -5
  68. package/build/page-utils/keycodes.js.map +1 -1
  69. package/build/page-utils/press-keys.js +8 -6
  70. package/build/page-utils/press-keys.js.map +1 -1
  71. package/build/page-utils/set-browser-viewport.js +3 -1
  72. package/build/page-utils/set-browser-viewport.js.map +1 -1
  73. package/build/request-utils/blocks.js +2 -0
  74. package/build/request-utils/blocks.js.map +1 -1
  75. package/build/request-utils/comments.js +2 -0
  76. package/build/request-utils/comments.js.map +1 -1
  77. package/build/request-utils/gutenberg-experiments.js +2 -0
  78. package/build/request-utils/gutenberg-experiments.js.map +1 -1
  79. package/build/request-utils/index.js +4 -2
  80. package/build/request-utils/index.js.map +1 -1
  81. package/build/request-utils/login.js +2 -0
  82. package/build/request-utils/login.js.map +1 -1
  83. package/build/request-utils/media.js +2 -0
  84. package/build/request-utils/media.js.map +1 -1
  85. package/build/request-utils/menus.js +2 -0
  86. package/build/request-utils/menus.js.map +1 -1
  87. package/build/request-utils/pages.js +3 -1
  88. package/build/request-utils/pages.js.map +1 -1
  89. package/build/request-utils/patterns.js +2 -0
  90. package/build/request-utils/patterns.js.map +1 -1
  91. package/build/request-utils/plugins.js +2 -0
  92. package/build/request-utils/plugins.js.map +1 -1
  93. package/build/request-utils/posts.js +2 -0
  94. package/build/request-utils/posts.js.map +1 -1
  95. package/build/request-utils/preferences.js +2 -0
  96. package/build/request-utils/preferences.js.map +1 -1
  97. package/build/request-utils/rest.js +2 -0
  98. package/build/request-utils/rest.js.map +1 -1
  99. package/build/request-utils/site-settings.js +2 -0
  100. package/build/request-utils/site-settings.js.map +1 -1
  101. package/build/request-utils/templates.js +3 -1
  102. package/build/request-utils/templates.js.map +1 -1
  103. package/build/request-utils/themes.js +3 -1
  104. package/build/request-utils/themes.js.map +1 -1
  105. package/build/request-utils/users.js +2 -0
  106. package/build/request-utils/users.js.map +1 -1
  107. package/build/request-utils/widgets.js +2 -0
  108. package/build/request-utils/widgets.js.map +1 -1
  109. package/build/test.js +5 -3
  110. package/build/test.js.map +1 -1
  111. package/build/types.js +2 -0
  112. package/build/types.js.map +1 -1
  113. package/package.json +2 -3
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/index.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport * as fs from 'fs/promises';\nimport * as path from 'path';\nimport { request } from '@playwright/test';\nimport type { APIRequestContext, Cookie } from '@playwright/test';\n\n/**\n * Internal dependencies\n */\nimport { WP_ADMIN_USER, WP_BASE_URL } from '../config';\nimport type { User } from './login';\nimport { login } from './login';\nimport { listMedia, uploadMedia, deleteMedia, deleteAllMedia } from './media';\nimport { createUser, deleteAllUsers } from './users';\nimport { setupRest, rest, getMaxBatchSize, batchRest } from './rest';\nimport { getPluginsMap, activatePlugin, deactivatePlugin } from './plugins';\nimport { deleteAllTemplates, createTemplate } from './templates';\nimport {\n\tactivateTheme,\n\tgetCurrentThemeGlobalStylesPostId,\n\tgetThemeGlobalStylesRevisions,\n} from './themes';\nimport { createBlock, deleteAllBlocks } from './blocks';\nimport { createComment, deleteAllComments } from './comments';\nimport { createPost, deleteAllPosts } from './posts';\nimport {\n\tcreateClassicMenu,\n\tcreateNavigationMenu,\n\tdeleteAllMenus,\n\tgetNavigationMenus,\n} from './menus';\nimport { deleteAllPages, createPage } from './pages';\nimport { resetPreferences } from './preferences';\nimport { getSiteSettings, updateSiteSettings } from './site-settings';\nimport { deleteAllWidgets, addWidgetBlock } from './widgets';\nimport { deleteAllPatternCategories } from './patterns';\nimport { setGutenbergExperiments } from './gutenberg-experiments';\n\ninterface StorageState {\n\tcookies: Cookie[];\n\tnonce: string;\n\trootURL: string;\n}\n\nclass RequestUtils {\n\trequest: APIRequestContext;\n\tuser: User;\n\tmaxBatchSize?: number;\n\tstorageState?: StorageState;\n\tstorageStatePath?: string;\n\tbaseURL?: string;\n\n\tpluginsMap: Record< string, string > | null = null;\n\n\tstatic async setup( {\n\t\tuser,\n\t\tstorageStatePath,\n\t\tbaseURL = WP_BASE_URL,\n\t}: {\n\t\tuser?: User;\n\t\tstorageStatePath?: string;\n\t\tbaseURL?: string;\n\t} ) {\n\t\tlet storageState: StorageState | undefined;\n\t\tif ( storageStatePath ) {\n\t\t\tawait fs.mkdir( path.dirname( storageStatePath ), {\n\t\t\t\trecursive: true,\n\t\t\t} );\n\n\t\t\ttry {\n\t\t\t\tstorageState = JSON.parse(\n\t\t\t\t\tawait fs.readFile( storageStatePath, 'utf-8' )\n\t\t\t\t);\n\t\t\t} catch ( error ) {\n\t\t\t\tif (\n\t\t\t\t\terror instanceof Error &&\n\t\t\t\t\t( error as NodeJS.ErrnoException ).code === 'ENOENT'\n\t\t\t\t) {\n\t\t\t\t\t// Ignore errors if the state is not found.\n\t\t\t\t} else {\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst requestContext = await request.newContext( {\n\t\t\tbaseURL,\n\t\t\tstorageState: storageState && {\n\t\t\t\tcookies: storageState.cookies,\n\t\t\t\torigins: [],\n\t\t\t},\n\t\t} );\n\n\t\tconst requestUtils = new this( requestContext, {\n\t\t\tuser,\n\t\t\tstorageState,\n\t\t\tstorageStatePath,\n\t\t\tbaseURL,\n\t\t} );\n\n\t\treturn requestUtils;\n\t}\n\n\tconstructor(\n\t\trequestContext: APIRequestContext,\n\t\t{\n\t\t\tuser = WP_ADMIN_USER,\n\t\t\tstorageState,\n\t\t\tstorageStatePath,\n\t\t\tbaseURL = WP_BASE_URL,\n\t\t}: {\n\t\t\tuser?: User;\n\t\t\tstorageState?: StorageState;\n\t\t\tstorageStatePath?: string;\n\t\t\tbaseURL?: string;\n\t\t} = {}\n\t) {\n\t\tthis.user = user;\n\t\tthis.request = requestContext;\n\t\tthis.storageStatePath = storageStatePath;\n\t\tthis.storageState = storageState;\n\t\tthis.baseURL = baseURL;\n\t}\n\n\t/** @borrows login as this.login */\n\tlogin: typeof login = login.bind( this );\n\t/** @borrows setupRest as this.setupRest */\n\tsetupRest: typeof setupRest = setupRest.bind( this );\n\t// .bind() drops the generic types. Re-casting it to keep the type signature.\n\trest: typeof rest = rest.bind( this ) as typeof rest;\n\t/** @borrows getMaxBatchSize as this.getMaxBatchSize */\n\tgetMaxBatchSize: typeof getMaxBatchSize = getMaxBatchSize.bind( this );\n\t// .bind() drops the generic types. Re-casting it to keep the type signature.\n\tbatchRest: typeof batchRest = batchRest.bind( this ) as typeof batchRest;\n\t/** @borrows getPluginsMap as this.getPluginsMap */\n\tgetPluginsMap: typeof getPluginsMap = getPluginsMap.bind( this );\n\t/** @borrows activatePlugin as this.activatePlugin */\n\tactivatePlugin: typeof activatePlugin = activatePlugin.bind( this );\n\t/** @borrows deactivatePlugin as this.deactivatePlugin */\n\tdeactivatePlugin: typeof deactivatePlugin = deactivatePlugin.bind( this );\n\t/** @borrows activateTheme as this.activateTheme */\n\tactivateTheme: typeof activateTheme = activateTheme.bind( this );\n\t/** @borrows createBlock as this.createBlock */\n\tcreateBlock: typeof createBlock = createBlock.bind( this );\n\t/** @borrows deleteAllBlocks as this.deleteAllBlocks */\n\tdeleteAllBlocks = deleteAllBlocks.bind( this );\n\t/** @borrows createPost as this.createPost */\n\tcreatePost: typeof createPost = createPost.bind( this );\n\t/** @borrows deleteAllPosts as this.deleteAllPosts */\n\tdeleteAllPosts: typeof deleteAllPosts = deleteAllPosts.bind( this );\n\t/** @borrows createClassicMenu as this.createClassicMenu */\n\tcreateClassicMenu: typeof createClassicMenu =\n\t\tcreateClassicMenu.bind( this );\n\t/** @borrows createNavigationMenu as this.createNavigationMenu */\n\tcreateNavigationMenu: typeof createNavigationMenu =\n\t\tcreateNavigationMenu.bind( this );\n\t/** @borrows deleteAllMenus as this.deleteAllMenus */\n\tdeleteAllMenus: typeof deleteAllMenus = deleteAllMenus.bind( this );\n\t/** @borrows getNavigationMenus as this.getNavigationMenus */\n\tgetNavigationMenus: typeof getNavigationMenus =\n\t\tgetNavigationMenus.bind( this );\n\t/** @borrows createComment as this.createComment */\n\tcreateComment: typeof createComment = createComment.bind( this );\n\t/** @borrows deleteAllComments as this.deleteAllComments */\n\tdeleteAllComments: typeof deleteAllComments =\n\t\tdeleteAllComments.bind( this );\n\t/** @borrows deleteAllWidgets as this.deleteAllWidgets */\n\tdeleteAllWidgets: typeof deleteAllWidgets = deleteAllWidgets.bind( this );\n\t/** @borrows addWidgetBlock as this.addWidgetBlock */\n\taddWidgetBlock: typeof addWidgetBlock = addWidgetBlock.bind( this );\n\t/** @borrows deleteAllTemplates as this.deleteAllTemplates */\n\tdeleteAllTemplates: typeof deleteAllTemplates =\n\t\tdeleteAllTemplates.bind( this );\n\t/** @borrows createTemplate as this.createTemplate */\n\tcreateTemplate: typeof createTemplate = createTemplate.bind( this );\n\t/** @borrows resetPreferences as this.resetPreferences */\n\tresetPreferences: typeof resetPreferences = resetPreferences.bind( this );\n\t/** @borrows listMedia as this.listMedia */\n\tlistMedia: typeof listMedia = listMedia.bind( this );\n\t/** @borrows uploadMedia as this.uploadMedia */\n\tuploadMedia: typeof uploadMedia = uploadMedia.bind( this );\n\t/** @borrows deleteMedia as this.deleteMedia */\n\tdeleteMedia: typeof deleteMedia = deleteMedia.bind( this );\n\t/** @borrows deleteAllMedia as this.deleteAllMedia */\n\tdeleteAllMedia: typeof deleteAllMedia = deleteAllMedia.bind( this );\n\t/** @borrows createUser as this.createUser */\n\tcreateUser: typeof createUser = createUser.bind( this );\n\t/** @borrows deleteAllUsers as this.deleteAllUsers */\n\tdeleteAllUsers: typeof deleteAllUsers = deleteAllUsers.bind( this );\n\t/** @borrows getSiteSettings as this.getSiteSettings */\n\tgetSiteSettings: typeof getSiteSettings = getSiteSettings.bind( this );\n\t/** @borrows updateSiteSettings as this.updateSiteSettings */\n\tupdateSiteSettings: typeof updateSiteSettings =\n\t\tupdateSiteSettings.bind( this );\n\t/** @borrows deleteAllPages as this.deleteAllPages */\n\tdeleteAllPages: typeof deleteAllPages = deleteAllPages.bind( this );\n\t/** @borrows createPage as this.createPage */\n\tcreatePage: typeof createPage = createPage.bind( this );\n\t/** @borrows getCurrentThemeGlobalStylesPostId as this.getCurrentThemeGlobalStylesPostId */\n\tgetCurrentThemeGlobalStylesPostId: typeof getCurrentThemeGlobalStylesPostId =\n\t\tgetCurrentThemeGlobalStylesPostId.bind( this );\n\t/** @borrows getThemeGlobalStylesRevisions as this.getThemeGlobalStylesRevisions */\n\tgetThemeGlobalStylesRevisions: typeof getThemeGlobalStylesRevisions =\n\t\tgetThemeGlobalStylesRevisions.bind( this );\n\t/** @borrows deleteAllPatternCategories as this.deleteAllPatternCategories */\n\tdeleteAllPatternCategories = deleteAllPatternCategories.bind( this );\n\t/** @borrows setGutenbergExperiments as this.setGutenbergExperiments */\n\tsetGutenbergExperiments: typeof setGutenbergExperiments =\n\t\tsetGutenbergExperiments.bind( this );\n}\n\nexport type { StorageState };\nexport { RequestUtils };\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/login.ts
19
21
  var login_exports = {};
20
22
  __export(login_exports, {
21
23
  login: () => login
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/login.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nexport interface User {\n\tusername: string;\n\tpassword: string;\n}\n\nasync function login( this: RequestUtils, user: User = this.user ) {\n\t// Login to admin using request context.\n\tlet response = await this.request.post( 'wp-login.php', {\n\t\tfailOnStatusCode: true,\n\t\tform: {\n\t\t\tlog: user.username,\n\t\t\tpwd: user.password,\n\t\t},\n\t} );\n\tawait response.dispose();\n\n\t// Get the nonce.\n\tresponse = await this.request.get(\n\t\t'wp-admin/admin-ajax.php?action=rest-nonce',\n\t\t{\n\t\t\tfailOnStatusCode: true,\n\t\t}\n\t);\n\tconst nonce = await response.text();\n\n\treturn nonce;\n}\n\nexport { login };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,eAAe,MAA2B,OAAa,KAAK,MAAO;AAElE,MAAI,WAAW,MAAM,KAAK,QAAQ,KAAM,gBAAgB;AAAA,IACvD,kBAAkB;AAAA,IAClB,MAAM;AAAA,MACL,KAAK,KAAK;AAAA,MACV,KAAK,KAAK;AAAA,IACX;AAAA,EACD,CAAE;AACF,QAAM,SAAS,QAAQ;AAGvB,aAAW,MAAM,KAAK,QAAQ;AAAA,IAC7B;AAAA,IACA;AAAA,MACC,kBAAkB;AAAA,IACnB;AAAA,EACD;AACA,QAAM,QAAQ,MAAM,SAAS,KAAK;AAElC,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,eAAe,MAA2B,OAAa,KAAK,MAAO;AAElE,MAAI,WAAW,MAAM,KAAK,QAAQ,KAAM,gBAAgB;AAAA,IACvD,kBAAkB;AAAA,IAClB,MAAM;AAAA,MACL,KAAK,KAAK;AAAA,MACV,KAAK,KAAK;AAAA,IACX;AAAA,EACD,CAAE;AACF,QAAM,SAAS,QAAQ;AAGvB,aAAW,MAAM,KAAK,QAAQ;AAAA,IAC7B;AAAA,IACA;AAAA,MACC,kBAAkB;AAAA,IACnB;AAAA,EACD;AACA,QAAM,QAAQ,MAAM,SAAS,KAAK;AAElC,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -26,6 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/e2e-test-utils-playwright/src/request-utils/media.ts
29
31
  var media_exports = {};
30
32
  __export(media_exports, {
31
33
  deleteAllMedia: () => deleteAllMedia,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/media.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport * as fs from 'fs';\n\n/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nexport interface Media {\n\tid: number;\n\ttitle: {\n\t\traw: string;\n\t\trendered: string;\n\t};\n\tsource_url: string;\n\tslug: string;\n\talt_text: string;\n\tcaption: { rendered: string };\n\tlink: string;\n}\n\n/**\n * List all media files.\n *\n * @see https://developer.wordpress.org/rest-api/reference/media/#list-media\n * @param this\n */\nasync function listMedia( this: RequestUtils ) {\n\tconst response = await this.rest< Media[] >( {\n\t\tmethod: 'GET',\n\t\tpath: '/wp/v2/media',\n\t\tparams: {\n\t\t\tper_page: 100,\n\t\t},\n\t} );\n\n\treturn response;\n}\n\n/**\n * Upload a media file.\n *\n * @see https://developer.wordpress.org/rest-api/reference/media/#create-a-media-item\n * @param this\n * @param filePathOrData The path or data of the file being uploaded.\n */\nasync function uploadMedia(\n\tthis: RequestUtils,\n\tfilePathOrData: string | fs.ReadStream\n) {\n\tconst file =\n\t\ttypeof filePathOrData === 'string'\n\t\t\t? fs.createReadStream( filePathOrData )\n\t\t\t: filePathOrData;\n\n\tconst response = await this.rest< Media >( {\n\t\tmethod: 'POST',\n\t\tpath: '/wp/v2/media',\n\t\tmultipart: {\n\t\t\tfile,\n\t\t},\n\t} );\n\n\treturn response;\n}\n\n/**\n * delete a media file.\n *\n * @see https://developer.wordpress.org/rest-api/reference/media/#delete-a-media-item\n * @param this\n * @param mediaId The ID of the media file.\n */\nasync function deleteMedia( this: RequestUtils, mediaId: number ) {\n\tconst response = await this.rest( {\n\t\tmethod: 'DELETE',\n\t\tpath: `/wp/v2/media/${ mediaId }`,\n\t\tparams: { force: true },\n\t} );\n\n\treturn response;\n}\n\n/**\n * delete all media files.\n *\n * @param this\n */\nasync function deleteAllMedia( this: RequestUtils ) {\n\tconst files = await this.listMedia();\n\n\t// The media endpoint doesn't support batch request yet.\n\tconst responses = await Promise.all(\n\t\tfiles.map( ( media ) => this.deleteMedia( media.id ) )\n\t);\n\n\treturn responses;\n}\n\nexport { listMedia, uploadMedia, deleteMedia, deleteAllMedia };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,SAAoB;AA0BpB,eAAe,YAAgC;AAC9C,QAAM,WAAW,MAAM,KAAK,KAAiB;AAAA,IAC5C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AAEF,SAAO;AACR;AASA,eAAe,YAEd,gBACC;AACD,QAAM,OACL,OAAO,mBAAmB,WACvB,GAAG,iBAAkB,cAAe,IACpC;AAEJ,QAAM,WAAW,MAAM,KAAK,KAAe;AAAA,IAC1C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,MACV;AAAA,IACD;AAAA,EACD,CAAE;AAEF,SAAO;AACR;AASA,eAAe,YAAiC,SAAkB;AACjE,QAAM,WAAW,MAAM,KAAK,KAAM;AAAA,IACjC,QAAQ;AAAA,IACR,MAAM,gBAAiB,OAAQ;AAAA,IAC/B,QAAQ,EAAE,OAAO,KAAK;AAAA,EACvB,CAAE;AAEF,SAAO;AACR;AAOA,eAAe,iBAAqC;AACnD,QAAM,QAAQ,MAAM,KAAK,UAAU;AAGnC,QAAM,YAAY,MAAM,QAAQ;AAAA,IAC/B,MAAM,IAAK,CAAE,UAAW,KAAK,YAAa,MAAM,EAAG,CAAE;AAAA,EACtD;AAEA,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,SAAoB;AA0BpB,eAAe,YAAgC;AAC9C,QAAM,WAAW,MAAM,KAAK,KAAiB;AAAA,IAC5C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AAEF,SAAO;AACR;AASA,eAAe,YAEd,gBACC;AACD,QAAM,OACL,OAAO,mBAAmB,WACpB,oBAAkB,cAAe,IACpC;AAEJ,QAAM,WAAW,MAAM,KAAK,KAAe;AAAA,IAC1C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,MACV;AAAA,IACD;AAAA,EACD,CAAE;AAEF,SAAO;AACR;AASA,eAAe,YAAiC,SAAkB;AACjE,QAAM,WAAW,MAAM,KAAK,KAAM;AAAA,IACjC,QAAQ;AAAA,IACR,MAAM,gBAAiB,OAAQ;AAAA,IAC/B,QAAQ,EAAE,OAAO,KAAK;AAAA,EACvB,CAAE;AAEF,SAAO;AACR;AAOA,eAAe,iBAAqC;AACnD,QAAM,QAAQ,MAAM,KAAK,UAAU;AAGnC,QAAM,YAAY,MAAM,QAAQ;AAAA,IAC/B,MAAM,IAAK,CAAE,UAAW,KAAK,YAAa,MAAM,EAAG,CAAE;AAAA,EACtD;AAEA,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/menus.ts
19
21
  var menus_exports = {};
20
22
  __export(menus_exports, {
21
23
  createClassicMenu: () => createClassicMenu,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/menus.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nexport interface MenuData {\n\ttitle: string;\n\tcontent: string;\n}\nexport interface NavigationMenu {\n\tid: number;\n\tcontent: string;\n\tstatus: 'publish' | 'future' | 'draft' | 'pending' | 'private';\n}\n\n/**\n * Create a classic menu\n *\n * @param name Menu name.\n * @return Menu content.\n */\nexport async function createClassicMenu( this: RequestUtils, name: string ) {\n\tconst menuItems = [\n\t\t{\n\t\t\ttitle: 'Custom link',\n\t\t\turl: 'http://localhost:8889/',\n\t\t\ttype: 'custom',\n\t\t\tmenu_order: 1,\n\t\t},\n\t];\n\n\tconst menu = await this.rest< NavigationMenu >( {\n\t\tmethod: 'POST',\n\t\tpath: `/wp/v2/menus/`,\n\t\tdata: {\n\t\t\tname,\n\t\t},\n\t} );\n\n\tawait this.batchRest(\n\t\tmenuItems.map( ( menuItem ) => ( {\n\t\t\tmethod: 'POST',\n\t\t\tpath: `/wp/v2/menu-items`,\n\t\t\tbody: {\n\t\t\t\tmenus: menu.id,\n\t\t\t\tobject_id: undefined,\n\t\t\t\t...menuItem,\n\t\t\t\tparent: undefined,\n\t\t\t},\n\t\t} ) )\n\t);\n\n\treturn menu;\n}\n\n/**\n * Create a navigation menu\n *\n * @param menuData navigation menu post data.\n * @return Menu content.\n */\nexport async function createNavigationMenu(\n\tthis: RequestUtils,\n\tmenuData: MenuData\n) {\n\treturn this.rest( {\n\t\tmethod: 'POST',\n\t\tpath: `/wp/v2/navigation/`,\n\t\tdata: {\n\t\t\tstatus: 'publish',\n\t\t\t...menuData,\n\t\t},\n\t} );\n}\n\n/**\n * Delete all navigation and classic menus\n *\n */\nexport async function deleteAllMenus( this: RequestUtils ) {\n\tconst navMenus = await this.rest< NavigationMenu[] >( {\n\t\tpath: `/wp/v2/navigation/`,\n\t\tdata: {\n\t\t\tstatus: [\n\t\t\t\t'publish',\n\t\t\t\t'pending',\n\t\t\t\t'draft',\n\t\t\t\t'auto-draft',\n\t\t\t\t'future',\n\t\t\t\t'private',\n\t\t\t\t'inherit',\n\t\t\t\t'trash',\n\t\t\t],\n\t\t},\n\t} );\n\n\tif ( navMenus.length ) {\n\t\tawait this.batchRest(\n\t\t\tnavMenus.map( ( menu ) => ( {\n\t\t\t\tmethod: 'DELETE',\n\t\t\t\tpath: `/wp/v2/navigation/${ menu.id }?force=true`,\n\t\t\t} ) )\n\t\t);\n\t}\n\n\tconst classicMenus = await this.rest< NavigationMenu[] >( {\n\t\tpath: `/wp/v2/menus/`,\n\t\tdata: {\n\t\t\tstatus: [\n\t\t\t\t'publish',\n\t\t\t\t'pending',\n\t\t\t\t'draft',\n\t\t\t\t'auto-draft',\n\t\t\t\t'future',\n\t\t\t\t'private',\n\t\t\t\t'inherit',\n\t\t\t\t'trash',\n\t\t\t],\n\t\t},\n\t} );\n\n\tif ( classicMenus.length ) {\n\t\tawait this.batchRest(\n\t\t\tclassicMenus.map( ( menu ) => ( {\n\t\t\t\tmethod: 'DELETE',\n\t\t\t\tpath: `/wp/v2/menus/${ menu.id }?force=true`,\n\t\t\t} ) )\n\t\t);\n\t}\n}\n\n/**\n * Get latest navigation menus\n *\n * @param args\n * @param args.status\n * @return {string} Menu content.\n */\nexport async function getNavigationMenus(\n\tthis: RequestUtils,\n\targs: { status: 'publish' }\n) {\n\tconst navigationMenus = await this.rest< NavigationMenu[] >( {\n\t\tmethod: 'GET',\n\t\tpath: `/wp/v2/navigation/`,\n\t\tdata: args,\n\t} );\n\treturn navigationMenus;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAqBA,eAAsB,kBAAuC,MAAe;AAC3E,QAAM,YAAY;AAAA,IACjB;AAAA,MACC,OAAO;AAAA,MACP,KAAK;AAAA,MACL,MAAM;AAAA,MACN,YAAY;AAAA,IACb;AAAA,EACD;AAEA,QAAM,OAAO,MAAM,KAAK,KAAwB;AAAA,IAC/C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,MACL;AAAA,IACD;AAAA,EACD,CAAE;AAEF,QAAM,KAAK;AAAA,IACV,UAAU,IAAK,CAAE,cAAgB;AAAA,MAChC,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,MAAM;AAAA,QACL,OAAO,KAAK;AAAA,QACZ,WAAW;AAAA,QACX,GAAG;AAAA,QACH,QAAQ;AAAA,MACT;AAAA,IACD,EAAI;AAAA,EACL;AAEA,SAAO;AACR;AAQA,eAAsB,qBAErB,UACC;AACD,SAAO,KAAK,KAAM;AAAA,IACjB,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,MACL,QAAQ;AAAA,MACR,GAAG;AAAA,IACJ;AAAA,EACD,CAAE;AACH;AAMA,eAAsB,iBAAqC;AAC1D,QAAM,WAAW,MAAM,KAAK,KAA0B;AAAA,IACrD,MAAM;AAAA,IACN,MAAM;AAAA,MACL,QAAQ;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD;AAAA,EACD,CAAE;AAEF,MAAK,SAAS,QAAS;AACtB,UAAM,KAAK;AAAA,MACV,SAAS,IAAK,CAAE,UAAY;AAAA,QAC3B,QAAQ;AAAA,QACR,MAAM,qBAAsB,KAAK,EAAG;AAAA,MACrC,EAAI;AAAA,IACL;AAAA,EACD;AAEA,QAAM,eAAe,MAAM,KAAK,KAA0B;AAAA,IACzD,MAAM;AAAA,IACN,MAAM;AAAA,MACL,QAAQ;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD;AAAA,EACD,CAAE;AAEF,MAAK,aAAa,QAAS;AAC1B,UAAM,KAAK;AAAA,MACV,aAAa,IAAK,CAAE,UAAY;AAAA,QAC/B,QAAQ;AAAA,QACR,MAAM,gBAAiB,KAAK,EAAG;AAAA,MAChC,EAAI;AAAA,IACL;AAAA,EACD;AACD;AASA,eAAsB,mBAErB,MACC;AACD,QAAM,kBAAkB,MAAM,KAAK,KAA0B;AAAA,IAC5D,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,EACP,CAAE;AACF,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAqBA,eAAsB,kBAAuC,MAAe;AAC3E,QAAM,YAAY;AAAA,IACjB;AAAA,MACC,OAAO;AAAA,MACP,KAAK;AAAA,MACL,MAAM;AAAA,MACN,YAAY;AAAA,IACb;AAAA,EACD;AAEA,QAAM,OAAO,MAAM,KAAK,KAAwB;AAAA,IAC/C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,MACL;AAAA,IACD;AAAA,EACD,CAAE;AAEF,QAAM,KAAK;AAAA,IACV,UAAU,IAAK,CAAE,cAAgB;AAAA,MAChC,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,MAAM;AAAA,QACL,OAAO,KAAK;AAAA,QACZ,WAAW;AAAA,QACX,GAAG;AAAA,QACH,QAAQ;AAAA,MACT;AAAA,IACD,EAAI;AAAA,EACL;AAEA,SAAO;AACR;AAQA,eAAsB,qBAErB,UACC;AACD,SAAO,KAAK,KAAM;AAAA,IACjB,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,MACL,QAAQ;AAAA,MACR,GAAG;AAAA,IACJ;AAAA,EACD,CAAE;AACH;AAMA,eAAsB,iBAAqC;AAC1D,QAAM,WAAW,MAAM,KAAK,KAA0B;AAAA,IACrD,MAAM;AAAA,IACN,MAAM;AAAA,MACL,QAAQ;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD;AAAA,EACD,CAAE;AAEF,MAAK,SAAS,QAAS;AACtB,UAAM,KAAK;AAAA,MACV,SAAS,IAAK,CAAE,UAAY;AAAA,QAC3B,QAAQ;AAAA,QACR,MAAM,qBAAsB,KAAK,EAAG;AAAA,MACrC,EAAI;AAAA,IACL;AAAA,EACD;AAEA,QAAM,eAAe,MAAM,KAAK,KAA0B;AAAA,IACzD,MAAM;AAAA,IACN,MAAM;AAAA,MACL,QAAQ;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD;AAAA,EACD,CAAE;AAEF,MAAK,aAAa,QAAS;AAC1B,UAAM,KAAK;AAAA,MACV,aAAa,IAAK,CAAE,UAAY;AAAA,QAC/B,QAAQ;AAAA,QACR,MAAM,gBAAiB,KAAK,EAAG;AAAA,MAChC,EAAI;AAAA,IACL;AAAA,EACD;AACD;AASA,eAAsB,mBAErB,MACC;AACD,QAAM,kBAAkB,MAAM,KAAK,KAA0B;AAAA,IAC5D,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,EACP,CAAE;AACF,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/pages.ts
19
21
  var pages_exports = {};
20
22
  __export(pages_exports, {
21
23
  createPage: () => createPage,
@@ -23,7 +25,7 @@ __export(pages_exports, {
23
25
  deletePage: () => deletePage
24
26
  });
25
27
  module.exports = __toCommonJS(pages_exports);
26
- const PAGE_STATUS = [
28
+ var PAGE_STATUS = [
27
29
  "publish",
28
30
  "future",
29
31
  "draft",
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/pages.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nconst PAGE_STATUS = [\n\t'publish',\n\t'future',\n\t'draft',\n\t'pending',\n\t'private',\n\t'trash',\n] as const;\n\nexport type Page = {\n\tid: number;\n\tstatus: ( typeof PAGE_STATUS )[ number ];\n};\n\nexport type CreatePagePayload = {\n\ttitle?: string;\n\tcontent?: string;\n\tstatus: ( typeof PAGE_STATUS )[ number ];\n\tdate?: string;\n\tdate_gmt?: string;\n};\n\nexport async function deletePage( this: RequestUtils, id: number ) {\n\t// https://developer.wordpress.org/rest-api/reference/pages/#delete-a-page\n\treturn await this.rest( {\n\t\tmethod: 'DELETE',\n\t\tpath: `/wp/v2/pages/${ id }`,\n\t\tparams: {\n\t\t\tforce: true,\n\t\t},\n\t} );\n}\n\n/**\n * Delete all pages using REST API.\n *\n * @param this\n */\nexport async function deleteAllPages( this: RequestUtils ) {\n\t// List all pages.\n\t// https://developer.wordpress.org/rest-api/reference/pages/#list-pages\n\tconst pages = await this.rest< Page[] >( {\n\t\tpath: '/wp/v2/pages',\n\t\tparams: {\n\t\t\tper_page: 100,\n\n\t\t\tstatus: PAGE_STATUS.join( ',' ),\n\t\t},\n\t} );\n\n\t// Delete all pages one by one.\n\t// \"/wp/v2/pages\" not yet supports batch requests.\n\tawait Promise.all(\n\t\tpages.map( ( page ) => deletePage.call( this, page.id ) )\n\t);\n}\n\n/**\n * Create a new page.\n *\n * @param this\n * @param payload The page payload.\n */\nexport async function createPage(\n\tthis: RequestUtils,\n\tpayload: CreatePagePayload\n) {\n\t// https://developer.wordpress.org/rest-api/reference/pages/#create-a-page\n\tconst page = await this.rest< Page >( {\n\t\tmethod: 'POST',\n\t\tpath: `/wp/v2/pages`,\n\t\tdata: { ...payload },\n\t} );\n\n\treturn page;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,MAAM,cAAc;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAeA,eAAsB,WAAgC,IAAa;AAElE,SAAO,MAAM,KAAK,KAAM;AAAA,IACvB,QAAQ;AAAA,IACR,MAAM,gBAAiB,EAAG;AAAA,IAC1B,QAAQ;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD,CAAE;AACH;AAOA,eAAsB,iBAAqC;AAG1D,QAAM,QAAQ,MAAM,KAAK,KAAgB;AAAA,IACxC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,MAEV,QAAQ,YAAY,KAAM,GAAI;AAAA,IAC/B;AAAA,EACD,CAAE;AAIF,QAAM,QAAQ;AAAA,IACb,MAAM,IAAK,CAAE,SAAU,WAAW,KAAM,MAAM,KAAK,EAAG,CAAE;AAAA,EACzD;AACD;AAQA,eAAsB,WAErB,SACC;AAED,QAAM,OAAO,MAAM,KAAK,KAAc;AAAA,IACrC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM,EAAE,GAAG,QAAQ;AAAA,EACpB,CAAE;AAEF,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,IAAM,cAAc;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAeA,eAAsB,WAAgC,IAAa;AAElE,SAAO,MAAM,KAAK,KAAM;AAAA,IACvB,QAAQ;AAAA,IACR,MAAM,gBAAiB,EAAG;AAAA,IAC1B,QAAQ;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD,CAAE;AACH;AAOA,eAAsB,iBAAqC;AAG1D,QAAM,QAAQ,MAAM,KAAK,KAAgB;AAAA,IACxC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,MAEV,QAAQ,YAAY,KAAM,GAAI;AAAA,IAC/B;AAAA,EACD,CAAE;AAIF,QAAM,QAAQ;AAAA,IACb,MAAM,IAAK,CAAE,SAAU,WAAW,KAAM,MAAM,KAAK,EAAG,CAAE;AAAA,EACzD;AACD;AAQA,eAAsB,WAErB,SACC;AAED,QAAM,OAAO,MAAM,KAAK,KAAc;AAAA,IACrC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM,EAAE,GAAG,QAAQ;AAAA,EACpB,CAAE;AAEF,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/patterns.ts
19
21
  var patterns_exports = {};
20
22
  __export(patterns_exports, {
21
23
  deleteAllPatternCategories: () => deleteAllPatternCategories
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/patterns.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\n/**\n * Delete all pattern categories using REST API.\n *\n * @see https://developer.wordpress.org/rest-api/reference/categories/#list-categories\n * @param this\n */\nexport async function deleteAllPatternCategories( this: RequestUtils ) {\n\t// List all pattern categories.\n\t// https://developer.wordpress.org/rest-api/reference/categories/#list-categories\n\tconst categories = await this.rest( {\n\t\tpath: '/wp/v2/wp_pattern_category',\n\t\tparams: {\n\t\t\tper_page: 100,\n\t\t},\n\t} );\n\n\t// Delete pattern categories.\n\t// https://developer.wordpress.org/rest-api/reference/categories/#delete-a-category\n\t// \"/wp/v2/category\" does not yet supports batch requests.\n\tawait this.batchRest(\n\t\tcategories.map( ( category: { id: number } ) => ( {\n\t\t\tmethod: 'DELETE',\n\t\t\tpath: `/wp/v2/wp_pattern_category/${ category.id }?force=true`,\n\t\t} ) )\n\t);\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAWA,eAAsB,6BAAiD;AAGtE,QAAM,aAAa,MAAM,KAAK,KAAM;AAAA,IACnC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AAKF,QAAM,KAAK;AAAA,IACV,WAAW,IAAK,CAAE,cAAgC;AAAA,MACjD,QAAQ;AAAA,MACR,MAAM,8BAA+B,SAAS,EAAG;AAAA,IAClD,EAAI;AAAA,EACL;AACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAWA,eAAsB,6BAAiD;AAGtE,QAAM,aAAa,MAAM,KAAK,KAAM;AAAA,IACnC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AAKF,QAAM,KAAK;AAAA,IACV,WAAW,IAAK,CAAE,cAAgC;AAAA,MACjD,QAAQ;AAAA,MACR,MAAM,8BAA+B,SAAS,EAAG;AAAA,IAClD,EAAI;AAAA,EACL;AACD;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/plugins.ts
19
21
  var plugins_exports = {};
20
22
  __export(plugins_exports, {
21
23
  activatePlugin: () => activatePlugin,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/plugins.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\n/**\n * Fetch the plugins from API and cache them in memory,\n * since they are unlikely to change during testing.\n *\n * @param this\n * @param forceRefetch Force refetch the installed plugins to update the cache.\n */\nasync function getPluginsMap( this: RequestUtils, forceRefetch = false ) {\n\tif ( ! forceRefetch && this.pluginsMap ) {\n\t\treturn this.pluginsMap;\n\t}\n\n\tconst plugins = await this.rest( {\n\t\tpath: '/wp/v2/plugins',\n\t} );\n\tthis.pluginsMap = {};\n\tfor ( const plugin of plugins ) {\n\t\t// Ideally, we should be using sanitize_title() in PHP rather than kebabCase(),\n\t\t// but we don't have the exact port of it in JS.\n\t\t// This is a good approximation though.\n\t\tconst slug = kebabCase( plugin.name.toLowerCase() );\n\t\tthis.pluginsMap[ slug ] = plugin.plugin;\n\t}\n\treturn this.pluginsMap;\n}\n\n/**\n * Finds a plugin in the plugin map.\n *\n * Attempts to provide a helpful error message if not found.\n *\n * @param slug Plugin slug.\n * @param pluginsMap Plugins map.\n */\nfunction getPluginFromMap(\n\tslug: string,\n\tpluginsMap: Record< string, string >\n) {\n\tconst plugin = pluginsMap[ slug ];\n\n\tif ( ! plugin ) {\n\t\tfor ( const key of Object.keys( pluginsMap ) ) {\n\t\t\tif (\n\t\t\t\tkey.toLowerCase().replace( /-/g, '' ) ===\n\t\t\t\tslug.toLowerCase().replace( /-/g, '' )\n\t\t\t) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`The plugin \"${ slug }\" isn't installed. Did you perhaps mean \"${ key }\"?`\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tthrow new Error( `The plugin \"${ slug }\" isn't installed` );\n\t}\n\n\treturn plugin;\n}\n\n/**\n * Activates an installed plugin.\n *\n * @param this RequestUtils.\n * @param slug Plugin slug.\n */\nasync function activatePlugin( this: RequestUtils, slug: string ) {\n\tconst pluginsMap = await this.getPluginsMap();\n\tconst plugin = getPluginFromMap( slug, pluginsMap );\n\n\tawait this.rest( {\n\t\tmethod: 'PUT',\n\t\tpath: `/wp/v2/plugins/${ plugin }`,\n\t\tdata: { status: 'active' },\n\t} );\n}\n\n/**\n * Deactivates an active plugin.\n *\n * @param this RequestUtils.\n * @param slug Plugin slug.\n */\nasync function deactivatePlugin( this: RequestUtils, slug: string ) {\n\tconst pluginsMap = await this.getPluginsMap();\n\tconst plugin = getPluginFromMap( slug, pluginsMap );\n\n\tawait this.rest( {\n\t\tmethod: 'PUT',\n\t\tpath: `/wp/v2/plugins/${ plugin }`,\n\t\tdata: { status: 'inactive' },\n\t} );\n}\n\nexport { getPluginsMap, activatePlugin, deactivatePlugin };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,yBAAuC;AAcvC,eAAe,cAAmC,eAAe,OAAQ;AACxE,MAAK,CAAE,gBAAgB,KAAK,YAAa;AACxC,WAAO,KAAK;AAAA,EACb;AAEA,QAAM,UAAU,MAAM,KAAK,KAAM;AAAA,IAChC,MAAM;AAAA,EACP,CAAE;AACF,OAAK,aAAa,CAAC;AACnB,aAAY,UAAU,SAAU;AAI/B,UAAM,WAAO,mBAAAA,WAAW,OAAO,KAAK,YAAY,CAAE;AAClD,SAAK,WAAY,IAAK,IAAI,OAAO;AAAA,EAClC;AACA,SAAO,KAAK;AACb;AAUA,SAAS,iBACR,MACA,YACC;AACD,QAAM,SAAS,WAAY,IAAK;AAEhC,MAAK,CAAE,QAAS;AACf,eAAY,OAAO,OAAO,KAAM,UAAW,GAAI;AAC9C,UACC,IAAI,YAAY,EAAE,QAAS,MAAM,EAAG,MACpC,KAAK,YAAY,EAAE,QAAS,MAAM,EAAG,GACpC;AACD,cAAM,IAAI;AAAA,UACT,eAAgB,IAAK,4CAA6C,GAAI;AAAA,QACvE;AAAA,MACD;AAAA,IACD;AAEA,UAAM,IAAI,MAAO,eAAgB,IAAK,mBAAoB;AAAA,EAC3D;AAEA,SAAO;AACR;AAQA,eAAe,eAAoC,MAAe;AACjE,QAAM,aAAa,MAAM,KAAK,cAAc;AAC5C,QAAM,SAAS,iBAAkB,MAAM,UAAW;AAElD,QAAM,KAAK,KAAM;AAAA,IAChB,QAAQ;AAAA,IACR,MAAM,kBAAmB,MAAO;AAAA,IAChC,MAAM,EAAE,QAAQ,SAAS;AAAA,EAC1B,CAAE;AACH;AAQA,eAAe,iBAAsC,MAAe;AACnE,QAAM,aAAa,MAAM,KAAK,cAAc;AAC5C,QAAM,SAAS,iBAAkB,MAAM,UAAW;AAElD,QAAM,KAAK,KAAM;AAAA,IAChB,QAAQ;AAAA,IACR,MAAM,kBAAmB,MAAO;AAAA,IAChC,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC5B,CAAE;AACH;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,yBAAuC;AAcvC,eAAe,cAAmC,eAAe,OAAQ;AACxE,MAAK,CAAE,gBAAgB,KAAK,YAAa;AACxC,WAAO,KAAK;AAAA,EACb;AAEA,QAAM,UAAU,MAAM,KAAK,KAAM;AAAA,IAChC,MAAM;AAAA,EACP,CAAE;AACF,OAAK,aAAa,CAAC;AACnB,aAAY,UAAU,SAAU;AAI/B,UAAM,WAAO,mBAAAA,WAAW,OAAO,KAAK,YAAY,CAAE;AAClD,SAAK,WAAY,IAAK,IAAI,OAAO;AAAA,EAClC;AACA,SAAO,KAAK;AACb;AAUA,SAAS,iBACR,MACA,YACC;AACD,QAAM,SAAS,WAAY,IAAK;AAEhC,MAAK,CAAE,QAAS;AACf,eAAY,OAAO,OAAO,KAAM,UAAW,GAAI;AAC9C,UACC,IAAI,YAAY,EAAE,QAAS,MAAM,EAAG,MACpC,KAAK,YAAY,EAAE,QAAS,MAAM,EAAG,GACpC;AACD,cAAM,IAAI;AAAA,UACT,eAAgB,IAAK,4CAA6C,GAAI;AAAA,QACvE;AAAA,MACD;AAAA,IACD;AAEA,UAAM,IAAI,MAAO,eAAgB,IAAK,mBAAoB;AAAA,EAC3D;AAEA,SAAO;AACR;AAQA,eAAe,eAAoC,MAAe;AACjE,QAAM,aAAa,MAAM,KAAK,cAAc;AAC5C,QAAM,SAAS,iBAAkB,MAAM,UAAW;AAElD,QAAM,KAAK,KAAM;AAAA,IAChB,QAAQ;AAAA,IACR,MAAM,kBAAmB,MAAO;AAAA,IAChC,MAAM,EAAE,QAAQ,SAAS;AAAA,EAC1B,CAAE;AACH;AAQA,eAAe,iBAAsC,MAAe;AACnE,QAAM,aAAa,MAAM,KAAK,cAAc;AAC5C,QAAM,SAAS,iBAAkB,MAAM,UAAW;AAElD,QAAM,KAAK,KAAM;AAAA,IAChB,QAAQ;AAAA,IACR,MAAM,kBAAmB,MAAO;AAAA,IAChC,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC5B,CAAE;AACH;",
6
6
  "names": ["kebabCase"]
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/posts.ts
19
21
  var posts_exports = {};
20
22
  __export(posts_exports, {
21
23
  createPost: () => createPost,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/posts.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nexport interface Post {\n\tid: number;\n\tcontent: string;\n\tstatus: 'publish' | 'future' | 'draft' | 'pending' | 'private';\n\tlink: string;\n}\n\nexport interface CreatePostPayload {\n\ttitle?: string;\n\tcontent?: string;\n\tstatus: 'publish' | 'future' | 'draft' | 'pending' | 'private';\n\tdate?: string;\n\tdate_gmt: string;\n}\n\n/**\n * Delete all posts using REST API.\n *\n * @param this\n */\nexport async function deleteAllPosts( this: RequestUtils ) {\n\t// List all posts.\n\t// https://developer.wordpress.org/rest-api/reference/posts/#list-posts\n\tconst posts = await this.rest< Post[] >( {\n\t\tpath: '/wp/v2/posts',\n\t\tparams: {\n\t\t\tper_page: 100,\n\t\t\t// All possible statuses.\n\t\t\tstatus: 'publish,future,draft,pending,private,trash',\n\t\t},\n\t} );\n\n\t// Delete all posts one by one.\n\t// https://developer.wordpress.org/rest-api/reference/posts/#delete-a-post\n\t// \"/wp/v2/posts\" not yet supports batch requests.\n\tawait Promise.all(\n\t\tposts.map( ( post ) =>\n\t\t\tthis.rest( {\n\t\t\t\tmethod: 'DELETE',\n\t\t\t\tpath: `/wp/v2/posts/${ post.id }`,\n\t\t\t\tparams: {\n\t\t\t\t\tforce: true,\n\t\t\t\t},\n\t\t\t} )\n\t\t)\n\t);\n}\n\n/**\n * Creates a new post using the REST API.\n *\n * @param this\n * @param payload Post attributes.\n */\nexport async function createPost(\n\tthis: RequestUtils,\n\tpayload: CreatePostPayload\n) {\n\tconst post = await this.rest< Post >( {\n\t\tmethod: 'POST',\n\t\tpath: `/wp/v2/posts`,\n\t\tdata: { ...payload },\n\t} );\n\n\treturn post;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBA,eAAsB,iBAAqC;AAG1D,QAAM,QAAQ,MAAM,KAAK,KAAgB;AAAA,IACxC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA;AAAA,MAEV,QAAQ;AAAA,IACT;AAAA,EACD,CAAE;AAKF,QAAM,QAAQ;AAAA,IACb,MAAM;AAAA,MAAK,CAAE,SACZ,KAAK,KAAM;AAAA,QACV,QAAQ;AAAA,QACR,MAAM,gBAAiB,KAAK,EAAG;AAAA,QAC/B,QAAQ;AAAA,UACP,OAAO;AAAA,QACR;AAAA,MACD,CAAE;AAAA,IACH;AAAA,EACD;AACD;AAQA,eAAsB,WAErB,SACC;AACD,QAAM,OAAO,MAAM,KAAK,KAAc;AAAA,IACrC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM,EAAE,GAAG,QAAQ;AAAA,EACpB,CAAE;AAEF,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBA,eAAsB,iBAAqC;AAG1D,QAAM,QAAQ,MAAM,KAAK,KAAgB;AAAA,IACxC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA;AAAA,MAEV,QAAQ;AAAA,IACT;AAAA,EACD,CAAE;AAKF,QAAM,QAAQ;AAAA,IACb,MAAM;AAAA,MAAK,CAAE,SACZ,KAAK,KAAM;AAAA,QACV,QAAQ;AAAA,QACR,MAAM,gBAAiB,KAAK,EAAG;AAAA,QAC/B,QAAQ;AAAA,UACP,OAAO;AAAA,QACR;AAAA,MACD,CAAE;AAAA,IACH;AAAA,EACD;AACD;AAQA,eAAsB,WAErB,SACC;AACD,QAAM,OAAO,MAAM,KAAK,KAAc;AAAA,IACrC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM,EAAE,GAAG,QAAQ;AAAA,EACpB,CAAE;AAEF,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/preferences.ts
19
21
  var preferences_exports = {};
20
22
  __export(preferences_exports, {
21
23
  resetPreferences: () => resetPreferences
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/preferences.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\n/**\n * Reset user preferences\n *\n * @param this Request utils.\n */\nexport async function resetPreferences( this: RequestUtils ) {\n\tawait this.rest( {\n\t\tpath: '/wp/v2/users/me',\n\t\tmethod: 'PUT',\n\t\tdata: {\n\t\t\tmeta: {\n\t\t\t\tpersisted_preferences: {},\n\t\t\t},\n\t\t},\n\t} );\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,eAAsB,mBAAuC;AAC5D,QAAM,KAAK,KAAM;AAAA,IAChB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,MACL,MAAM;AAAA,QACL,uBAAuB,CAAC;AAAA,MACzB;AAAA,IACD;AAAA,EACD,CAAE;AACH;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,eAAsB,mBAAuC;AAC5D,QAAM,KAAK,KAAM;AAAA,IAChB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,MACL,MAAM;AAAA,QACL,uBAAuB,CAAC;AAAA,MACzB;AAAA,IACD;AAAA,EACD,CAAE;AACH;",
6
6
  "names": []
7
7
  }
@@ -26,6 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/e2e-test-utils-playwright/src/request-utils/rest.ts
29
31
  var rest_exports = {};
30
32
  __export(rest_exports, {
31
33
  batchRest: () => batchRest,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/rest.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport * as fs from 'fs/promises';\nimport { dirname } from 'path';\nimport { expect } from '@playwright/test';\nimport type { APIRequestContext } from '@playwright/test';\n\n/**\n * Internal dependencies\n */\nimport { WP_BASE_URL } from '../config';\nimport type { RequestUtils, StorageState } from './index';\n\nfunction splitRequestsToChunks( requests: BatchRequest[], chunkSize: number ) {\n\tconst arr = [ ...requests ];\n\tconst cache = [];\n\twhile ( arr.length ) {\n\t\tcache.push( arr.splice( 0, chunkSize ) );\n\t}\n\n\treturn cache;\n}\n\nasync function getAPIRootURL( request: APIRequestContext ) {\n\t// Discover the API root url using link header.\n\t// See https://developer.wordpress.org/rest-api/using-the-rest-api/discovery/#link-header\n\tconst response = await request.head( WP_BASE_URL );\n\tconst links = response.headers().link;\n\tconst restLink = links?.match( /<([^>]+)>; rel=\"https:\\/\\/api\\.w\\.org\\/\"/ );\n\n\tif ( ! restLink ) {\n\t\tthrow new Error( `Failed to discover REST API endpoint.\n Link header: ${ links }` );\n\t}\n\n\tconst [ , rootURL ] = restLink;\n\n\treturn rootURL;\n}\n\nasync function setupRest( this: RequestUtils ): Promise< StorageState > {\n\tlet nonce = '';\n\tlet rootURL = '';\n\n\t// Poll until the REST API is discovered.\n\t// See https://github.com/WordPress/gutenberg/issues/61627\n\tawait expect\n\t\t.poll(\n\t\t\tasync () => {\n\t\t\t\ttry {\n\t\t\t\t\t[ nonce, rootURL ] = await Promise.all( [\n\t\t\t\t\t\tthis.login(),\n\t\t\t\t\t\tgetAPIRootURL( this.request ),\n\t\t\t\t\t] );\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\t// Prints the error if the timeout is reached.\n\t\t\t\t\treturn error;\n\t\t\t\t}\n\n\t\t\t\treturn !! ( nonce && rootURL );\n\t\t\t},\n\t\t\t{\n\t\t\t\tmessage: 'Failed to setup REST API.',\n\t\t\t\ttimeout: 60_000, // 1 minute.\n\t\t\t}\n\t\t)\n\t\t.toBe( true );\n\n\tconst { cookies } = await this.request.storageState();\n\n\tconst storageState: StorageState = {\n\t\tcookies,\n\t\tnonce,\n\t\trootURL,\n\t};\n\n\tif ( this.storageStatePath ) {\n\t\tawait fs.mkdir( dirname( this.storageStatePath ), { recursive: true } );\n\t\tawait fs.writeFile(\n\t\t\tthis.storageStatePath,\n\t\t\tJSON.stringify( storageState ),\n\t\t\t'utf-8'\n\t\t);\n\t}\n\n\tthis.storageState = storageState;\n\n\treturn storageState;\n}\n\ntype RequestFetchOptions = Exclude<\n\tParameters< APIRequestContext[ 'fetch' ] >[ 1 ],\n\tundefined\n>;\nexport interface RestOptions extends RequestFetchOptions {\n\tpath: string;\n}\n\nasync function rest< RestResponse = any >(\n\tthis: RequestUtils,\n\toptions: RestOptions\n): Promise< RestResponse > {\n\tconst { path, ...fetchOptions } = options;\n\n\tif ( ! path ) {\n\t\tthrow new Error( '\"path\" is required to make a REST call' );\n\t}\n\n\tif ( ! this.storageState?.nonce || ! this.storageState?.rootURL ) {\n\t\tawait this.setupRest();\n\t}\n\n\tconst relativePath = path.startsWith( '/' ) ? path.slice( 1 ) : path;\n\n\tconst url = this.storageState!.rootURL + relativePath;\n\n\ttry {\n\t\tconst response = await this.request.fetch( url, {\n\t\t\t...fetchOptions,\n\t\t\tfailOnStatusCode: false,\n\t\t\theaders: {\n\t\t\t\t'X-WP-Nonce': this.storageState!.nonce,\n\t\t\t\t...( fetchOptions.headers || {} ),\n\t\t\t},\n\t\t} );\n\t\tconst json: RestResponse = await response.json();\n\n\t\tif ( ! response.ok() ) {\n\t\t\tthrow json;\n\t\t}\n\n\t\treturn json;\n\t} catch ( error ) {\n\t\t// Nonce in invalid, retry again with a renewed nonce.\n\t\tif (\n\t\t\ttypeof error === 'object' &&\n\t\t\terror !== null &&\n\t\t\tObject.prototype.hasOwnProperty.call( error, 'code' ) &&\n\t\t\t( error as { code: string } ).code === 'rest_cookie_invalid_nonce'\n\t\t) {\n\t\t\tawait this.setupRest();\n\n\t\t\treturn this.rest( options );\n\t\t}\n\n\t\tthrow error;\n\t}\n}\n\n/**\n * Get the maximum batch size for the REST API.\n *\n * @param this\n * @param forceRefetch Force revalidate the cached max batch size.\n */\nasync function getMaxBatchSize( this: RequestUtils, forceRefetch = false ) {\n\tif ( ! forceRefetch && this.maxBatchSize ) {\n\t\treturn this.maxBatchSize;\n\t}\n\n\tconst response = await this.rest< {\n\t\tendpoints: {\n\t\t\targs: {\n\t\t\t\trequests: {\n\t\t\t\t\tmaxItems: number;\n\t\t\t\t};\n\t\t\t};\n\t\t}[];\n\t} >( {\n\t\tmethod: 'OPTIONS',\n\t\tpath: '/batch/v1',\n\t} );\n\tthis.maxBatchSize = response.endpoints[ 0 ].args.requests.maxItems;\n\treturn this.maxBatchSize;\n}\n\nexport interface BatchRequest {\n\tmethod?: string;\n\tpath: string;\n\theaders?: Record< string, string | string[] >;\n\tbody?: any;\n}\n\nasync function batchRest< BatchResponse >(\n\tthis: RequestUtils,\n\trequests: BatchRequest[]\n): Promise< BatchResponse[] > {\n\tconst maxBatchSize = await this.getMaxBatchSize();\n\n\tif ( requests.length > maxBatchSize ) {\n\t\tconst chunks = splitRequestsToChunks( requests, maxBatchSize );\n\n\t\tconst chunkResponses = await Promise.all(\n\t\t\tchunks.map( ( chunkRequests ) =>\n\t\t\t\tthis.batchRest< BatchResponse >( chunkRequests )\n\t\t\t)\n\t\t);\n\n\t\treturn chunkResponses.flat();\n\t}\n\n\tconst batchResponses = await this.rest< {\n\t\tfailed?: string;\n\t\tresponses: BatchResponse[];\n\t} >( {\n\t\tmethod: 'POST',\n\t\tpath: '/batch/v1',\n\t\tdata: {\n\t\t\trequests,\n\t\t\tvalidation: 'require-all-validate',\n\t\t},\n\t} );\n\n\tif ( batchResponses.failed ) {\n\t\tthrow batchResponses;\n\t}\n\n\treturn batchResponses.responses;\n}\n\nexport { setupRest, rest, getMaxBatchSize, batchRest };\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/site-settings.ts
19
21
  var site_settings_exports = {};
20
22
  __export(site_settings_exports, {
21
23
  getSiteSettings: () => getSiteSettings,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/site-settings.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\ntype SiteSettings = {\n\ttitle: string;\n\tdescription: string;\n\turl: string;\n\temail: string;\n\ttimezone: string;\n\tdate_format: string;\n\ttime_format: string;\n\tstart_of_week: number;\n\tlanguage: string;\n\tuse_smilies: boolean;\n\tdefault_category: number;\n\tdefault_post_format: string;\n\tposts_per_page: number;\n\tdefault_ping_status: 'open' | 'closed';\n\tdefault_comment_status: 'open' | 'closed';\n\tshow_on_front: 'posts' | 'page';\n\tpage_on_front: number;\n\tpage_for_posts: number;\n};\n\n/**\n * Get the site settings.\n *\n * @see https://developer.wordpress.org/rest-api/reference/settings/#retrieve-a-site-setting\n *\n * @param this RequestUtils.\n */\nexport async function getSiteSettings( this: RequestUtils ) {\n\treturn await this.rest< SiteSettings >( {\n\t\tpath: '/wp/v2/settings',\n\t\tmethod: 'GET',\n\t} );\n}\n\n/**\n * Update the site settings.\n *\n * @see https://developer.wordpress.org/rest-api/reference/settings/#update-a-site-setting\n *\n * @param this RequestUtils.\n * @param siteSettings The partial settings payload to update.\n */\nexport async function updateSiteSettings(\n\tthis: RequestUtils,\n\tsiteSettings: Partial< SiteSettings >\n) {\n\treturn await this.rest< SiteSettings >( {\n\t\tpath: '/wp/v2/settings',\n\t\tmethod: 'POST',\n\t\tdata: siteSettings,\n\t} );\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiCA,eAAsB,kBAAsC;AAC3D,SAAO,MAAM,KAAK,KAAsB;AAAA,IACvC,MAAM;AAAA,IACN,QAAQ;AAAA,EACT,CAAE;AACH;AAUA,eAAsB,mBAErB,cACC;AACD,SAAO,MAAM,KAAK,KAAsB;AAAA,IACvC,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,EACP,CAAE;AACH;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiCA,eAAsB,kBAAsC;AAC3D,SAAO,MAAM,KAAK,KAAsB;AAAA,IACvC,MAAM;AAAA,IACN,QAAQ;AAAA,EACT,CAAE;AACH;AAUA,eAAsB,mBAErB,cACC;AACD,SAAO,MAAM,KAAK,KAAsB;AAAA,IACvC,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,EACP,CAAE;AACH;",
6
6
  "names": []
7
7
  }
@@ -16,13 +16,15 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/templates.ts
19
21
  var templates_exports = {};
20
22
  __export(templates_exports, {
21
23
  createTemplate: () => createTemplate,
22
24
  deleteAllTemplates: () => deleteAllTemplates
23
25
  });
24
26
  module.exports = __toCommonJS(templates_exports);
25
- const PATH_MAPPING = {
27
+ var PATH_MAPPING = {
26
28
  wp_template: "/wp/v2/templates",
27
29
  wp_template_part: "/wp/v2/template-parts"
28
30
  };
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/templates.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\ntype TemplateType = 'wp_template' | 'wp_template_part';\n\ninterface Template {\n\twp_id: number;\n\tid: string;\n}\n\ninterface CreateTemplatePayload {\n\tslug: string;\n\ttitle?: string;\n\tcontent?: string;\n\tdescription?: string;\n}\n\nconst PATH_MAPPING = {\n\twp_template: '/wp/v2/templates',\n\twp_template_part: '/wp/v2/template-parts',\n};\n\n/**\n * Delete all the templates of given type.\n *\n * @param this\n * @param type - Template type to delete.\n */\nasync function deleteAllTemplates( this: RequestUtils, type: TemplateType ) {\n\tconst path = PATH_MAPPING[ type ];\n\n\tif ( ! path ) {\n\t\tthrow new Error( `Unsupported template type: ${ type }.` );\n\t}\n\n\tconst templates = await this.rest< Template[] >( { path } );\n\n\tfor ( const template of templates ) {\n\t\tif ( ! template?.id || ! template?.wp_id ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\ttry {\n\t\t\tawait this.rest( {\n\t\t\t\tmethod: 'DELETE',\n\t\t\t\tpath: `${ path }/${ template.id }`,\n\t\t\t\tparams: { force: true },\n\t\t\t} );\n\t\t} catch ( responseError ) {\n\t\t\t// Disable reason - the error provides valuable feedback about issues with tests.\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn(\n\t\t\t\t`deleteAllTemplates failed to delete template (id: ${ template.wp_id }) with the following error`,\n\t\t\t\tresponseError\n\t\t\t);\n\t\t}\n\t}\n}\n\n/**\n * Creates a new template using the REST API.\n *\n * @param this\n * @param type Template type to delete.\n * @param payload Template attributes.\n */\nasync function createTemplate(\n\tthis: RequestUtils,\n\ttype: TemplateType,\n\tpayload: CreateTemplatePayload\n) {\n\tconst template = await this.rest< Template >( {\n\t\tmethod: 'POST',\n\t\tpath: PATH_MAPPING[ type ],\n\t\tparams: { ...payload, type, status: 'publish', is_wp_suggestion: true },\n\t} );\n\n\treturn template;\n}\n\nexport { deleteAllTemplates, createTemplate };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBA,MAAM,eAAe;AAAA,EACpB,aAAa;AAAA,EACb,kBAAkB;AACnB;AAQA,eAAe,mBAAwC,MAAqB;AAC3E,QAAM,OAAO,aAAc,IAAK;AAEhC,MAAK,CAAE,MAAO;AACb,UAAM,IAAI,MAAO,8BAA+B,IAAK,GAAI;AAAA,EAC1D;AAEA,QAAM,YAAY,MAAM,KAAK,KAAoB,EAAE,KAAK,CAAE;AAE1D,aAAY,YAAY,WAAY;AACnC,QAAK,CAAE,UAAU,MAAM,CAAE,UAAU,OAAQ;AAC1C;AAAA,IACD;AAEA,QAAI;AACH,YAAM,KAAK,KAAM;AAAA,QAChB,QAAQ;AAAA,QACR,MAAM,GAAI,IAAK,IAAK,SAAS,EAAG;AAAA,QAChC,QAAQ,EAAE,OAAO,KAAK;AAAA,MACvB,CAAE;AAAA,IACH,SAAU,eAAgB;AAGzB,cAAQ;AAAA,QACP,qDAAsD,SAAS,KAAM;AAAA,QACrE;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD;AASA,eAAe,eAEd,MACA,SACC;AACD,QAAM,WAAW,MAAM,KAAK,KAAkB;AAAA,IAC7C,QAAQ;AAAA,IACR,MAAM,aAAc,IAAK;AAAA,IACzB,QAAQ,EAAE,GAAG,SAAS,MAAM,QAAQ,WAAW,kBAAkB,KAAK;AAAA,EACvE,CAAE;AAEF,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBA,IAAM,eAAe;AAAA,EACpB,aAAa;AAAA,EACb,kBAAkB;AACnB;AAQA,eAAe,mBAAwC,MAAqB;AAC3E,QAAM,OAAO,aAAc,IAAK;AAEhC,MAAK,CAAE,MAAO;AACb,UAAM,IAAI,MAAO,8BAA+B,IAAK,GAAI;AAAA,EAC1D;AAEA,QAAM,YAAY,MAAM,KAAK,KAAoB,EAAE,KAAK,CAAE;AAE1D,aAAY,YAAY,WAAY;AACnC,QAAK,CAAE,UAAU,MAAM,CAAE,UAAU,OAAQ;AAC1C;AAAA,IACD;AAEA,QAAI;AACH,YAAM,KAAK,KAAM;AAAA,QAChB,QAAQ;AAAA,QACR,MAAM,GAAI,IAAK,IAAK,SAAS,EAAG;AAAA,QAChC,QAAQ,EAAE,OAAO,KAAK;AAAA,MACvB,CAAE;AAAA,IACH,SAAU,eAAgB;AAGzB,cAAQ;AAAA,QACP,qDAAsD,SAAS,KAAM;AAAA,QACrE;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD;AASA,eAAe,eAEd,MACA,SACC;AACD,QAAM,WAAW,MAAM,KAAK,KAAkB;AAAA,IAC7C,QAAQ;AAAA,IACR,MAAM,aAAc,IAAK;AAAA,IACzB,QAAQ,EAAE,GAAG,SAAS,MAAM,QAAQ,WAAW,kBAAkB,KAAK;AAAA,EACvE,CAAE;AAEF,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/themes.ts
19
21
  var themes_exports = {};
20
22
  __export(themes_exports, {
21
23
  activateTheme: () => activateTheme,
@@ -24,7 +26,7 @@ __export(themes_exports, {
24
26
  });
25
27
  module.exports = __toCommonJS(themes_exports);
26
28
  var import_config = require("../config");
27
- const THEMES_URL = new URL("wp-admin/themes.php", import_config.WP_BASE_URL).href;
29
+ var THEMES_URL = new URL("wp-admin/themes.php", import_config.WP_BASE_URL).href;
28
30
  async function activateTheme(themeSlug) {
29
31
  let response = await this.request.get(THEMES_URL);
30
32
  const html = await response.text();
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/themes.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\nimport { WP_BASE_URL } from '../config';\n\nconst THEMES_URL = new URL( 'wp-admin/themes.php', WP_BASE_URL ).href;\n\nasync function activateTheme(\n\tthis: RequestUtils,\n\tthemeSlug: string\n): Promise< void > {\n\tlet response = await this.request.get( THEMES_URL );\n\tconst html = await response.text();\n\tconst optionalFolder = '([a-z0-9-]+%2F)?';\n\n\t// The `optionalFolder` regex part matches paths with a folder,\n\t// so it will return the first match, which might contain a folder.\n\t// First try to honor the included theme slug, that is, without a folder.\n\tlet matchGroup = html.match(\n\t\t`action=activate&amp;stylesheet=${ encodeURIComponent(\n\t\t\tthemeSlug\n\t\t) }&amp;_wpnonce=[a-z0-9]+`\n\t);\n\n\t// If the theme is not found, try to match the theme slug with a folder.\n\tif ( ! matchGroup ) {\n\t\tmatchGroup = html.match(\n\t\t\t`action=activate&amp;stylesheet=${ optionalFolder }${ encodeURIComponent(\n\t\t\t\tthemeSlug\n\t\t\t) }&amp;_wpnonce=[a-z0-9]+`\n\t\t);\n\t}\n\n\tif ( ! matchGroup ) {\n\t\tif ( html.includes( `data-slug=\"${ themeSlug }\"` ) ) {\n\t\t\t// The theme is already activated.\n\t\t\treturn;\n\t\t}\n\n\t\tthrow new Error( `The theme \"${ themeSlug }\" is not installed` );\n\t}\n\n\tconst [ activateQuery ] = matchGroup;\n\tconst activateLink =\n\t\tTHEMES_URL + `?${ activateQuery }`.replace( /&amp;/g, '&' );\n\n\tresponse = await this.request.get( activateLink );\n\n\tawait response.dispose();\n}\n\n// https://developer.wordpress.org/rest-api/reference/themes/#definition\nasync function getCurrentThemeGlobalStylesPostId( this: RequestUtils ) {\n\ttype ThemeItem = {\n\t\tstylesheet: string;\n\t\tstatus: string;\n\t\t_links: { 'wp:user-global-styles': { href: string }[] };\n\t};\n\tconst themes = await this.rest< ThemeItem[] >( {\n\t\tpath: '/wp/v2/themes',\n\t} );\n\tlet themeGlobalStylesId: string = '';\n\tif ( themes && themes.length ) {\n\t\tconst currentTheme: ThemeItem | undefined = themes.find(\n\t\t\t( { status } ) => status === 'active'\n\t\t);\n\n\t\tconst globalStylesURL =\n\t\t\tcurrentTheme?._links?.[ 'wp:user-global-styles' ]?.[ 0 ]?.href;\n\t\tif ( globalStylesURL ) {\n\t\t\tthemeGlobalStylesId = globalStylesURL?.split(\n\t\t\t\t'rest_route=/wp/v2/global-styles/'\n\t\t\t)[ 1 ];\n\t\t}\n\t}\n\treturn themeGlobalStylesId;\n}\n\n/**\n * Deletes all post revisions using the REST API.\n *\n * @param {} this RequestUtils.\n * @param {string|number} parentId Post attributes.\n */\nasync function getThemeGlobalStylesRevisions(\n\tthis: RequestUtils,\n\tparentId: number | string\n) {\n\t// Lists all global styles revisions.\n\treturn await this.rest< Record< string, Object >[] >( {\n\t\tpath: `/wp/v2/global-styles/${ parentId }/revisions`,\n\t\tparams: {\n\t\t\tper_page: 100,\n\t\t},\n\t} );\n}\n\nexport {\n\tactivateTheme,\n\tgetCurrentThemeGlobalStylesPostId,\n\tgetThemeGlobalStylesRevisions,\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,oBAA4B;AAE5B,MAAM,aAAa,IAAI,IAAK,uBAAuB,yBAAY,EAAE;AAEjE,eAAe,cAEd,WACkB;AAClB,MAAI,WAAW,MAAM,KAAK,QAAQ,IAAK,UAAW;AAClD,QAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAM,iBAAiB;AAKvB,MAAI,aAAa,KAAK;AAAA,IACrB,kCAAmC;AAAA,MAClC;AAAA,IACD,CAAE;AAAA,EACH;AAGA,MAAK,CAAE,YAAa;AACnB,iBAAa,KAAK;AAAA,MACjB,kCAAmC,cAAe,GAAI;AAAA,QACrD;AAAA,MACD,CAAE;AAAA,IACH;AAAA,EACD;AAEA,MAAK,CAAE,YAAa;AACnB,QAAK,KAAK,SAAU,cAAe,SAAU,GAAI,GAAI;AAEpD;AAAA,IACD;AAEA,UAAM,IAAI,MAAO,cAAe,SAAU,oBAAqB;AAAA,EAChE;AAEA,QAAM,CAAE,aAAc,IAAI;AAC1B,QAAM,eACL,aAAa,IAAK,aAAc,GAAG,QAAS,UAAU,GAAI;AAE3D,aAAW,MAAM,KAAK,QAAQ,IAAK,YAAa;AAEhD,QAAM,SAAS,QAAQ;AACxB;AAGA,eAAe,oCAAwD;AAMtE,QAAM,SAAS,MAAM,KAAK,KAAqB;AAAA,IAC9C,MAAM;AAAA,EACP,CAAE;AACF,MAAI,sBAA8B;AAClC,MAAK,UAAU,OAAO,QAAS;AAC9B,UAAM,eAAsC,OAAO;AAAA,MAClD,CAAE,EAAE,OAAO,MAAO,WAAW;AAAA,IAC9B;AAEA,UAAM,kBACL,cAAc,SAAU,uBAAwB,IAAK,CAAE,GAAG;AAC3D,QAAK,iBAAkB;AACtB,4BAAsB,iBAAiB;AAAA,QACtC;AAAA,MACD,EAAG,CAAE;AAAA,IACN;AAAA,EACD;AACA,SAAO;AACR;AAQA,eAAe,8BAEd,UACC;AAED,SAAO,MAAM,KAAK,KAAoC;AAAA,IACrD,MAAM,wBAAyB,QAAS;AAAA,IACxC,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AACH;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,oBAA4B;AAE5B,IAAM,aAAa,IAAI,IAAK,uBAAuB,yBAAY,EAAE;AAEjE,eAAe,cAEd,WACkB;AAClB,MAAI,WAAW,MAAM,KAAK,QAAQ,IAAK,UAAW;AAClD,QAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAM,iBAAiB;AAKvB,MAAI,aAAa,KAAK;AAAA,IACrB,kCAAmC;AAAA,MAClC;AAAA,IACD,CAAE;AAAA,EACH;AAGA,MAAK,CAAE,YAAa;AACnB,iBAAa,KAAK;AAAA,MACjB,kCAAmC,cAAe,GAAI;AAAA,QACrD;AAAA,MACD,CAAE;AAAA,IACH;AAAA,EACD;AAEA,MAAK,CAAE,YAAa;AACnB,QAAK,KAAK,SAAU,cAAe,SAAU,GAAI,GAAI;AAEpD;AAAA,IACD;AAEA,UAAM,IAAI,MAAO,cAAe,SAAU,oBAAqB;AAAA,EAChE;AAEA,QAAM,CAAE,aAAc,IAAI;AAC1B,QAAM,eACL,aAAa,IAAK,aAAc,GAAG,QAAS,UAAU,GAAI;AAE3D,aAAW,MAAM,KAAK,QAAQ,IAAK,YAAa;AAEhD,QAAM,SAAS,QAAQ;AACxB;AAGA,eAAe,oCAAwD;AAMtE,QAAM,SAAS,MAAM,KAAK,KAAqB;AAAA,IAC9C,MAAM;AAAA,EACP,CAAE;AACF,MAAI,sBAA8B;AAClC,MAAK,UAAU,OAAO,QAAS;AAC9B,UAAM,eAAsC,OAAO;AAAA,MAClD,CAAE,EAAE,OAAO,MAAO,WAAW;AAAA,IAC9B;AAEA,UAAM,kBACL,cAAc,SAAU,uBAAwB,IAAK,CAAE,GAAG;AAC3D,QAAK,iBAAkB;AACtB,4BAAsB,iBAAiB;AAAA,QACtC;AAAA,MACD,EAAG,CAAE;AAAA,IACN;AAAA,EACD;AACA,SAAO;AACR;AAQA,eAAe,8BAEd,UACC;AAED,SAAO,MAAM,KAAK,KAAoC;AAAA,IACrD,MAAM,wBAAyB,QAAS;AAAA,IACxC,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AACH;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/users.ts
19
21
  var users_exports = {};
20
22
  __export(users_exports, {
21
23
  createUser: () => createUser,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/users.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nexport interface User {\n\tid: number;\n\tname: string;\n\temail: string;\n}\n\nexport interface UserData {\n\tusername: string;\n\temail: string;\n\tfirstName?: string;\n\tlastName?: string;\n\tpassword?: string;\n\troles?: string[];\n}\n\nexport interface UserRequestData {\n\tusername: string;\n\temail: string;\n\tfirst_name?: string;\n\tlast_name?: string;\n\tpassword?: string;\n\troles?: string[];\n}\n\n/**\n * List all users.\n *\n * @see https://developer.wordpress.org/rest-api/reference/users/#list-users\n * @param this\n */\nasync function listUsers( this: RequestUtils ) {\n\tconst response = await this.rest< User[] >( {\n\t\tmethod: 'GET',\n\t\tpath: '/wp/v2/users',\n\t\tparams: {\n\t\t\tper_page: 100,\n\t\t},\n\t} );\n\n\treturn response;\n}\n\n/**\n * Add a test user.\n *\n * @see https://developer.wordpress.org/rest-api/reference/users/#create-a-user\n * @param this\n * @param user User data to create.\n */\nasync function createUser( this: RequestUtils, user: UserData ) {\n\tconst userData: UserRequestData = {\n\t\tusername: user.username,\n\t\temail: user.email,\n\t};\n\n\tif ( user.firstName ) {\n\t\tuserData.first_name = user.firstName;\n\t}\n\n\tif ( user.lastName ) {\n\t\tuserData.last_name = user.lastName;\n\t}\n\n\tif ( user.password ) {\n\t\tuserData.password = user.password;\n\t}\n\n\tif ( user.roles ) {\n\t\tuserData.roles = user.roles;\n\t}\n\n\tconst response = await this.rest< User >( {\n\t\tmethod: 'POST',\n\t\tpath: '/wp/v2/users',\n\t\tdata: userData,\n\t} );\n\n\treturn response;\n}\n\n/**\n * Delete a user.\n *\n * @see https://developer.wordpress.org/rest-api/reference/users/#delete-a-user\n * @param this\n * @param userId The ID of the user.\n */\nasync function deleteUser( this: RequestUtils, userId: number ) {\n\tconst response = await this.rest( {\n\t\tmethod: 'DELETE',\n\t\tpath: `/wp/v2/users/${ userId }`,\n\t\tparams: { force: true, reassign: 1 },\n\t} );\n\n\treturn response;\n}\n\n/**\n * Delete all users except main root user.\n *\n * @param this\n */\nasync function deleteAllUsers( this: RequestUtils ) {\n\tconst users = await listUsers.bind( this )();\n\n\t// The users endpoint doesn't support batch request yet.\n\tconst responses = await Promise.all(\n\t\tusers\n\t\t\t// Do not delete neither root user nor the current user.\n\t\t\t.filter(\n\t\t\t\t( user: User ) =>\n\t\t\t\t\tuser.id !== 1 && user.name !== this.user.username\n\t\t\t)\n\t\t\t.map( ( user: User ) => deleteUser.bind( this )( user.id ) )\n\t);\n\n\treturn responses;\n}\n\nexport { createUser, deleteAllUsers };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmCA,eAAe,YAAgC;AAC9C,QAAM,WAAW,MAAM,KAAK,KAAgB;AAAA,IAC3C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AAEF,SAAO;AACR;AASA,eAAe,WAAgC,MAAiB;AAC/D,QAAM,WAA4B;AAAA,IACjC,UAAU,KAAK;AAAA,IACf,OAAO,KAAK;AAAA,EACb;AAEA,MAAK,KAAK,WAAY;AACrB,aAAS,aAAa,KAAK;AAAA,EAC5B;AAEA,MAAK,KAAK,UAAW;AACpB,aAAS,YAAY,KAAK;AAAA,EAC3B;AAEA,MAAK,KAAK,UAAW;AACpB,aAAS,WAAW,KAAK;AAAA,EAC1B;AAEA,MAAK,KAAK,OAAQ;AACjB,aAAS,QAAQ,KAAK;AAAA,EACvB;AAEA,QAAM,WAAW,MAAM,KAAK,KAAc;AAAA,IACzC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,EACP,CAAE;AAEF,SAAO;AACR;AASA,eAAe,WAAgC,QAAiB;AAC/D,QAAM,WAAW,MAAM,KAAK,KAAM;AAAA,IACjC,QAAQ;AAAA,IACR,MAAM,gBAAiB,MAAO;AAAA,IAC9B,QAAQ,EAAE,OAAO,MAAM,UAAU,EAAE;AAAA,EACpC,CAAE;AAEF,SAAO;AACR;AAOA,eAAe,iBAAqC;AACnD,QAAM,QAAQ,MAAM,UAAU,KAAM,IAAK,EAAE;AAG3C,QAAM,YAAY,MAAM,QAAQ;AAAA,IAC/B,MAEE;AAAA,MACA,CAAE,SACD,KAAK,OAAO,KAAK,KAAK,SAAS,KAAK,KAAK;AAAA,IAC3C,EACC,IAAK,CAAE,SAAgB,WAAW,KAAM,IAAK,EAAG,KAAK,EAAG,CAAE;AAAA,EAC7D;AAEA,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmCA,eAAe,YAAgC;AAC9C,QAAM,WAAW,MAAM,KAAK,KAAgB;AAAA,IAC3C,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,IACX;AAAA,EACD,CAAE;AAEF,SAAO;AACR;AASA,eAAe,WAAgC,MAAiB;AAC/D,QAAM,WAA4B;AAAA,IACjC,UAAU,KAAK;AAAA,IACf,OAAO,KAAK;AAAA,EACb;AAEA,MAAK,KAAK,WAAY;AACrB,aAAS,aAAa,KAAK;AAAA,EAC5B;AAEA,MAAK,KAAK,UAAW;AACpB,aAAS,YAAY,KAAK;AAAA,EAC3B;AAEA,MAAK,KAAK,UAAW;AACpB,aAAS,WAAW,KAAK;AAAA,EAC1B;AAEA,MAAK,KAAK,OAAQ;AACjB,aAAS,QAAQ,KAAK;AAAA,EACvB;AAEA,QAAM,WAAW,MAAM,KAAK,KAAc;AAAA,IACzC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,EACP,CAAE;AAEF,SAAO;AACR;AASA,eAAe,WAAgC,QAAiB;AAC/D,QAAM,WAAW,MAAM,KAAK,KAAM;AAAA,IACjC,QAAQ;AAAA,IACR,MAAM,gBAAiB,MAAO;AAAA,IAC9B,QAAQ,EAAE,OAAO,MAAM,UAAU,EAAE;AAAA,EACpC,CAAE;AAEF,SAAO;AACR;AAOA,eAAe,iBAAqC;AACnD,QAAM,QAAQ,MAAM,UAAU,KAAM,IAAK,EAAE;AAG3C,QAAM,YAAY,MAAM,QAAQ;AAAA,IAC/B,MAEE;AAAA,MACA,CAAE,SACD,KAAK,OAAO,KAAK,KAAK,SAAS,KAAK,KAAK;AAAA,IAC3C,EACC,IAAK,CAAE,SAAgB,WAAW,KAAM,IAAK,EAAG,KAAK,EAAG,CAAE;AAAA,EAC7D;AAEA,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/e2e-test-utils-playwright/src/request-utils/widgets.js
19
21
  var widgets_exports = {};
20
22
  __export(widgets_exports, {
21
23
  addWidgetBlock: () => addWidgetBlock,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/request-utils/widgets.js"],
4
4
  "sourcesContent": ["/**\n * Delete all the widgets in the widgets screen.\n *\n * @this {import('./index').RequestUtils}\n */\nexport async function deleteAllWidgets() {\n\tconst [ widgets, sidebars ] = await Promise.all( [\n\t\tthis.rest( { path: '/wp/v2/widgets' } ),\n\t\tthis.rest( { path: '/wp/v2/sidebars' } ),\n\t] );\n\n\tawait this.batchRest(\n\t\twidgets.map( ( widget ) => ( {\n\t\t\tmethod: 'DELETE',\n\t\t\tpath: `/wp/v2/widgets/${ widget.id }?force=true`,\n\t\t} ) )\n\t);\n\n\t// The endpoint doesn't support batch requests yet.\n\tawait Promise.all(\n\t\tsidebars.map( ( sidebar ) =>\n\t\t\tthis.rest( {\n\t\t\t\tmethod: 'POST',\n\t\t\t\tpath: `/wp/v2/sidebars/${ sidebar.id }`,\n\t\t\t\tdata: { id: sidebar.id, widgets: [] },\n\t\t\t} )\n\t\t)\n\t);\n}\n\n/**\n * Add a widget block to the widget area.\n *\n * @this {import('./index').RequestUtils}\n * @param {string} serializedBlock The serialized content of the inserted block HTML.\n * @param {string} widgetAreaId The ID of the widget area.\n */\nexport async function addWidgetBlock( serializedBlock, widgetAreaId ) {\n\tconst { id: blockId } = await this.rest( {\n\t\tmethod: 'POST',\n\t\tpath: '/wp/v2/widgets',\n\t\tdata: {\n\t\t\tid_base: 'block',\n\t\t\tsidebar: widgetAreaId,\n\t\t\tinstance: {\n\t\t\t\traw: { content: serializedBlock },\n\t\t\t},\n\t\t},\n\t} );\n\n\tconst { widgets } = await this.rest( {\n\t\tpath: `/wp/v2/sidebars/${ widgetAreaId }`,\n\t} );\n\n\tconst updatedWidgets = new Set( widgets );\n\t// Remove duplicate.\n\tupdatedWidgets.delete( blockId );\n\t// Add to last block.\n\tupdatedWidgets.add( blockId );\n\n\tawait this.rest( {\n\t\tmethod: 'PUT',\n\t\tpath: `/wp/v2/sidebars/${ widgetAreaId }`,\n\t\tdata: {\n\t\t\twidgets: [ ...updatedWidgets ],\n\t\t},\n\t} );\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,eAAsB,mBAAmB;AACxC,QAAM,CAAE,SAAS,QAAS,IAAI,MAAM,QAAQ,IAAK;AAAA,IAChD,KAAK,KAAM,EAAE,MAAM,iBAAiB,CAAE;AAAA,IACtC,KAAK,KAAM,EAAE,MAAM,kBAAkB,CAAE;AAAA,EACxC,CAAE;AAEF,QAAM,KAAK;AAAA,IACV,QAAQ,IAAK,CAAE,YAAc;AAAA,MAC5B,QAAQ;AAAA,MACR,MAAM,kBAAmB,OAAO,EAAG;AAAA,IACpC,EAAI;AAAA,EACL;AAGA,QAAM,QAAQ;AAAA,IACb,SAAS;AAAA,MAAK,CAAE,YACf,KAAK,KAAM;AAAA,QACV,QAAQ;AAAA,QACR,MAAM,mBAAoB,QAAQ,EAAG;AAAA,QACrC,MAAM,EAAE,IAAI,QAAQ,IAAI,SAAS,CAAC,EAAE;AAAA,MACrC,CAAE;AAAA,IACH;AAAA,EACD;AACD;AASA,eAAsB,eAAgB,iBAAiB,cAAe;AACrE,QAAM,EAAE,IAAI,QAAQ,IAAI,MAAM,KAAK,KAAM;AAAA,IACxC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,MACL,SAAS;AAAA,MACT,SAAS;AAAA,MACT,UAAU;AAAA,QACT,KAAK,EAAE,SAAS,gBAAgB;AAAA,MACjC;AAAA,IACD;AAAA,EACD,CAAE;AAEF,QAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,KAAM;AAAA,IACpC,MAAM,mBAAoB,YAAa;AAAA,EACxC,CAAE;AAEF,QAAM,iBAAiB,IAAI,IAAK,OAAQ;AAExC,iBAAe,OAAQ,OAAQ;AAE/B,iBAAe,IAAK,OAAQ;AAE5B,QAAM,KAAK,KAAM;AAAA,IAChB,QAAQ;AAAA,IACR,MAAM,mBAAoB,YAAa;AAAA,IACvC,MAAM;AAAA,MACL,SAAS,CAAE,GAAG,cAAe;AAAA,IAC9B;AAAA,EACD,CAAE;AACH;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,eAAsB,mBAAmB;AACxC,QAAM,CAAE,SAAS,QAAS,IAAI,MAAM,QAAQ,IAAK;AAAA,IAChD,KAAK,KAAM,EAAE,MAAM,iBAAiB,CAAE;AAAA,IACtC,KAAK,KAAM,EAAE,MAAM,kBAAkB,CAAE;AAAA,EACxC,CAAE;AAEF,QAAM,KAAK;AAAA,IACV,QAAQ,IAAK,CAAE,YAAc;AAAA,MAC5B,QAAQ;AAAA,MACR,MAAM,kBAAmB,OAAO,EAAG;AAAA,IACpC,EAAI;AAAA,EACL;AAGA,QAAM,QAAQ;AAAA,IACb,SAAS;AAAA,MAAK,CAAE,YACf,KAAK,KAAM;AAAA,QACV,QAAQ;AAAA,QACR,MAAM,mBAAoB,QAAQ,EAAG;AAAA,QACrC,MAAM,EAAE,IAAI,QAAQ,IAAI,SAAS,CAAC,EAAE;AAAA,MACrC,CAAE;AAAA,IACH;AAAA,EACD;AACD;AASA,eAAsB,eAAgB,iBAAiB,cAAe;AACrE,QAAM,EAAE,IAAI,QAAQ,IAAI,MAAM,KAAK,KAAM;AAAA,IACxC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM;AAAA,MACL,SAAS;AAAA,MACT,SAAS;AAAA,MACT,UAAU;AAAA,QACT,KAAK,EAAE,SAAS,gBAAgB;AAAA,MACjC;AAAA,IACD;AAAA,EACD,CAAE;AAEF,QAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,KAAM;AAAA,IACpC,MAAM,mBAAoB,YAAa;AAAA,EACxC,CAAE;AAEF,QAAM,iBAAiB,IAAI,IAAK,OAAQ;AAExC,iBAAe,OAAQ,OAAQ;AAE/B,iBAAe,IAAK,OAAQ;AAE5B,QAAM,KAAK,KAAM;AAAA,IAChB,QAAQ;AAAA,IACR,MAAM,mBAAoB,YAAa;AAAA,IACvC,MAAM;AAAA,MACL,SAAS,CAAE,GAAG,cAAe;AAAA,IAC9B;AAAA,EACD,CAAE;AACH;",
6
6
  "names": []
7
7
  }
package/build/test.js CHANGED
@@ -26,6 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/e2e-test-utils-playwright/src/test.ts
29
31
  var test_exports = {};
30
32
  __export(test_exports, {
31
33
  expect: () => import_test.expect,
@@ -36,8 +38,8 @@ var path = __toESM(require("path"));
36
38
  var import_test = require("@playwright/test");
37
39
  var import_get_port = __toESM(require("get-port"));
38
40
  var import_index = require("./index");
39
- const STORAGE_STATE_PATH = process.env.STORAGE_STATE_PATH || path.join(process.cwd(), "artifacts/storage-states/admin.json");
40
- const OBSERVED_CONSOLE_MESSAGE_TYPES = ["warn", "error"];
41
+ var STORAGE_STATE_PATH = process.env.STORAGE_STATE_PATH || path.join(process.cwd(), "artifacts/storage-states/admin.json");
42
+ var OBSERVED_CONSOLE_MESSAGE_TYPES = ["warn", "error"];
41
43
  function observeConsoleLogging(message) {
42
44
  const type = message.type();
43
45
  if (!OBSERVED_CONSOLE_MESSAGE_TYPES.includes(
@@ -72,7 +74,7 @@ function observeConsoleLogging(message) {
72
74
  const logFunction = type;
73
75
  console[logFunction](text);
74
76
  }
75
- const test = import_test.test.extend({
77
+ var test = import_test.test.extend({
76
78
  admin: async ({ page, pageUtils, editor }, use) => {
77
79
  await use(new import_index.Admin({ page, pageUtils, editor }));
78
80
  },
package/build/test.js.map CHANGED
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/test.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport * as path from 'path';\nimport { test as base, expect, chromium } from '@playwright/test';\nimport type { ConsoleMessage } from '@playwright/test';\nimport getPort from 'get-port';\n\n/**\n * Internal dependencies\n */\nimport {\n\tAdmin,\n\tEditor,\n\tPageUtils,\n\tRequestUtils,\n\tMetrics,\n\tLighthouse,\n} from './index';\n\nconst STORAGE_STATE_PATH =\n\tprocess.env.STORAGE_STATE_PATH ||\n\tpath.join( process.cwd(), 'artifacts/storage-states/admin.json' );\n\n/**\n * Set of console logging types observed to protect against unexpected yet\n * handled (i.e. not catastrophic) errors or warnings. Each key corresponds\n * to the Playwright ConsoleMessage type, its value the corresponding function\n * on the console global object.\n */\nconst OBSERVED_CONSOLE_MESSAGE_TYPES = [ 'warn', 'error' ] as const;\n\n/**\n * Adds a page event handler to emit uncaught exception to process if one of\n * the observed console logging types is encountered.\n *\n * @param message The console message.\n */\nfunction observeConsoleLogging( message: ConsoleMessage ) {\n\tconst type = message.type();\n\tif (\n\t\t! OBSERVED_CONSOLE_MESSAGE_TYPES.includes(\n\t\t\ttype as ( typeof OBSERVED_CONSOLE_MESSAGE_TYPES )[ number ]\n\t\t)\n\t) {\n\t\treturn;\n\t}\n\n\tconst text = message.text();\n\n\t// An exception is made for _blanket_ deprecation warnings: Those\n\t// which log regardless of whether a deprecated feature is in use.\n\tif ( text.includes( 'This is a global warning' ) ) {\n\t\treturn;\n\t}\n\n\t// A chrome advisory warning about SameSite cookies is informational\n\t// about future changes, tracked separately for improvement in core.\n\t//\n\t// See: https://core.trac.wordpress.org/ticket/37000\n\t// See: https://www.chromestatus.com/feature/5088147346030592\n\t// See: https://www.chromestatus.com/feature/5633521622188032\n\tif (\n\t\ttext.includes( 'A cookie associated with a cross-site resource' ) ||\n\t\ttext.includes(\n\t\t\t'https://developer.mozilla.org/docs/Web/HTTP/Headers/Set-Cookie/SameSite'\n\t\t)\n\t) {\n\t\treturn;\n\t}\n\n\t// Viewing posts on the front end can result in this error, which\n\t// has nothing to do with Gutenberg.\n\tif ( text.includes( 'net::ERR_UNKNOWN_URL_SCHEME' ) ) {\n\t\treturn;\n\t}\n\n\t// TODO: Not implemented yet.\n\t// Network errors are ignored only if we are intentionally testing\n\t// offline mode.\n\t// if (\n\t// \ttext.includes( 'net::ERR_INTERNET_DISCONNECTED' ) &&\n\t// \tisOfflineMode()\n\t// ) {\n\t// \treturn;\n\t// }\n\n\t// As of WordPress 5.3.2 in Chrome 79, navigating to the block editor\n\t// (Posts > Add New) will display a console warning about\n\t// non - unique IDs.\n\t// See: https://core.trac.wordpress.org/ticket/23165\n\tif ( text.includes( 'elements with non-unique id #_wpnonce' ) ) {\n\t\treturn;\n\t}\n\n\t// Ignore all JQMIGRATE (jQuery migrate) deprecation warnings.\n\tif ( text.includes( 'JQMIGRATE' ) ) {\n\t\treturn;\n\t}\n\n\t// https://bugzilla.mozilla.org/show_bug.cgi?id=1404468\n\tif (\n\t\ttext.includes( 'Layout was forced before the page was fully loaded' )\n\t) {\n\t\treturn;\n\t}\n\n\t// Deprecated warnings coming from the third-party libraries.\n\tif ( text.includes( 'MouseEvent.moz' ) ) {\n\t\treturn;\n\t}\n\n\tconst logFunction =\n\t\ttype as ( typeof OBSERVED_CONSOLE_MESSAGE_TYPES )[ number ];\n\n\t// Disable reason: We intentionally bubble up the console message\n\t// which, unless the test explicitly anticipates the logging via\n\t// @wordpress/jest-console matchers, will cause the intended test\n\t// failure.\n\t// eslint-disable-next-line no-console\n\tconsole[ logFunction ]( text );\n}\n\nconst test = base.extend<\n\t{\n\t\tadmin: Admin;\n\t\teditor: Editor;\n\t\tpageUtils: PageUtils;\n\t\tsnapshotConfig: void;\n\t\tmetrics: Metrics;\n\t\tlighthouse: Lighthouse;\n\t},\n\t{\n\t\trequestUtils: RequestUtils;\n\t\tlighthousePort: number;\n\t}\n>( {\n\tadmin: async ( { page, pageUtils, editor }, use ) => {\n\t\tawait use( new Admin( { page, pageUtils, editor } ) );\n\t},\n\teditor: async ( { page }, use ) => {\n\t\tawait use( new Editor( { page } ) );\n\t},\n\tpage: async ( { page }, use ) => {\n\t\tpage.on( 'console', observeConsoleLogging );\n\n\t\tawait use( page );\n\n\t\t// Clear local storage after each test.\n\t\t// This needs to be wrapped with a try/catch because it can fail when\n\t\t// the test is skipped (e.g. via fixme).\n\t\ttry {\n\t\t\tawait page.evaluate( () => {\n\t\t\t\twindow.localStorage.clear();\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\t// noop.\n\t\t}\n\n\t\tawait page.close();\n\t},\n\tpageUtils: async ( { page, browserName }, use ) => {\n\t\tawait use( new PageUtils( { page, browserName } ) );\n\t},\n\trequestUtils: [\n\t\tasync ( {}, use, workerInfo ) => {\n\t\t\tconst requestUtils = await RequestUtils.setup( {\n\t\t\t\tbaseURL: workerInfo.project.use.baseURL,\n\t\t\t\tstorageStatePath: STORAGE_STATE_PATH,\n\t\t\t} );\n\n\t\t\tawait use( requestUtils );\n\t\t},\n\t\t{ scope: 'worker', auto: true },\n\t],\n\t// Spins up a new browser for use by the Lighthouse fixture\n\t// so that Lighthouse can connect to the debugging port.\n\t// As a worker-scoped fixture, this will only launch 1\n\t// instance for the whole test worker, so multiple tests\n\t// will share the same instance with the same port.\n\tlighthousePort: [\n\t\tasync ( {}, use ) => {\n\t\t\tconst port = await getPort();\n\t\t\tconst browser = await chromium.launch( {\n\t\t\t\targs: [ `--remote-debugging-port=${ port }` ],\n\t\t\t} );\n\n\t\t\tawait use( port );\n\n\t\t\tawait browser.close();\n\t\t},\n\t\t{ scope: 'worker' },\n\t],\n\tlighthouse: async ( { page, lighthousePort }, use ) => {\n\t\tawait use( new Lighthouse( { page, port: lighthousePort } ) );\n\t},\n\tmetrics: async ( { page }, use ) => {\n\t\tawait use( new Metrics( { page } ) );\n\t},\n} );\n\nexport { test, expect };\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["base", "getPort"]
7
7
  }
package/build/types.js CHANGED
@@ -12,6 +12,8 @@ var __copyProps = (to, from, except, desc) => {
12
12
  return to;
13
13
  };
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // packages/e2e-test-utils-playwright/src/types.ts
15
17
  var types_exports = {};
16
18
  module.exports = __toCommonJS(types_exports);
17
19
  //# sourceMappingURL=types.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/types.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\ndeclare global {\n\tinterface Window {\n\t\t// Silence the warning for `window.wp` in Playwright's evaluate functions.\n\t\twp: any;\n\t\t// Helper function added by Metrics fixture for web-vitals.js.\n\t\t__reportVitals__: ( data: string ) => void;\n\t}\n}\n\nexport {};\n"],
5
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/e2e-test-utils-playwright",
3
- "version": "1.34.0",
3
+ "version": "1.35.0",
4
4
  "description": "End-To-End (E2E) test utils for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -39,7 +39,6 @@
39
39
  "types": "./build-types",
40
40
  "dependencies": {
41
41
  "change-case": "^4.1.2",
42
- "form-data": "^4.0.0",
43
42
  "get-port": "^5.1.1",
44
43
  "lighthouse": "^12.2.2",
45
44
  "mime": "^3.0.0",
@@ -51,5 +50,5 @@
51
50
  "publishConfig": {
52
51
  "access": "public"
53
52
  },
54
- "gitHead": "ceebff807958d2e8fc755b5a20473939c78b4d1d"
53
+ "gitHead": "77aa1f194edceafe8ac2a1b9438bf84b557e76e3"
55
54
  }