@forge/react

11.12.011.13.0-next.0
~

Modified (11 files)

Index: package/out/components/global/index.js
===================================================================
--- package/out/components/global/index.js
+++ package/out/components/global/index.js
@@ -2,25 +2,12 @@
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.Global = void 0;
 const jsx_runtime_1 = require("react/jsx-runtime");
 const GlobalPrimitive = 'Global';
-const GlobalMainPrimitive = 'Global.Main';
-const GlobalSidebarPrimitive = 'Global.Sidebar';
-const GlobalExpandMenuItemPrimitive = 'Global.ExpandMenuItem';
-const GlobalLinkMenuItemPrimitive = 'Global.LinkMenuItem';
-// Top level component
 const Global = (props) => {
     return (0, jsx_runtime_1.jsx)(GlobalPrimitive, { children: props.children });
 };
 exports.Global = Global;
-exports.Global.Main = (props) => {
-    return (0, jsx_runtime_1.jsx)(GlobalMainPrimitive, { children: props.children });
-};
-exports.Global.Sidebar = ({ children, forYouUrl }) => {
-    return (0, jsx_runtime_1.jsx)(GlobalSidebarPrimitive, { forYouUrl: forYouUrl, children: children });
-};
-exports.Global.ExpandMenuItem = ({ label, children }) => {
-    return (0, jsx_runtime_1.jsx)(GlobalExpandMenuItemPrimitive, { label: label, children: children });
-};
-exports.Global.LinkMenuItem = (props) => {
-    return (0, jsx_runtime_1.jsx)(GlobalLinkMenuItemPrimitive, { ...props });
-};
+exports.Global.Main = 'Global.Main';
+exports.Global.Sidebar = 'Global.Sidebar';
+exports.Global.LinkMenuItem = 'Global.LinkMenuItem';
+exports.Global.ExpandMenuItem = 'Global.ExpandMenuItem';
Index: package/out/index.js
===================================================================
--- package/out/index.js
+++ package/out/index.js
@@ -13,8 +13,9 @@
 var usePermissions_1 = require("./hooks/usePermissions");
 Object.defineProperty(exports, "usePermissions", { enumerable: true, get: function () { return usePermissions_1.usePermissions; } });
 var reconciler_1 = require("./reconciler");
 Object.defineProperty(exports, "default", { enumerable: true, get: function () { return reconciler_1.ForgeReconciler; } });
+// All UI Kit component definitions
 tslib_1.__exportStar(require("./components"), exports);
 var useContentProperty_1 = require("./hooks/useContentProperty");
 Object.defineProperty(exports, "useContentProperty", { enumerable: true, get: function () { return useContentProperty_1.useContentProperty; } });
 var useSpaceProperty_1 = require("./hooks/useSpaceProperty");
Index: package/out/__test__/reconciler.test.js
===================================================================
--- package/out/__test__/reconciler.test.js
+++ package/out/__test__/reconciler.test.js
@@ -115,8 +115,24 @@
         expect(forgeDoc).toHaveProperty('children[1].props.placeholder', 'name');
         expect(forgeDoc).toHaveProperty('children[2].props.placeholder', 'date');
     });
 });
+describe('Global component reconciliation', () => {
+    let bridgeCalls = [];
+    beforeAll(async () => {
+        bridgeCalls = (0, testUtils_1.setupBridge)();
+        const App = () => {
+            return ((0, jsx_runtime_1.jsxs)(components_1.Global, { children: [(0, jsx_runtime_1.jsxs)(components_1.Global.Sidebar, { forYouUrl: "for-you-test", children: [(0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: "Link item 1", href: "1" }), (0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: "Link item 2", href: "2" }), (0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: "Link item 3", href: "3" }), (0, jsx_runtime_1.jsxs)(components_1.Global.ExpandMenuItem, { label: `Campaign 49`, children: [(0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: `Campaign 49 Home`, href: `campaigns/49` }), (0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: `Feedback for Campaign 49`, href: `campaigns/49/feedback` })] }, 49), (0, jsx_runtime_1.jsxs)(components_1.Global.ExpandMenuItem, { label: `Campaign 23`, children: [(0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: `Campaign 23 Home`, href: `campaigns/23` }), (0, jsx_runtime_1.jsx)(components_1.Global.LinkMenuItem, { label: `Feedback for Campaign 23`, href: `campaigns/23/feedback` })] }, 23)] }), (0, jsx_runtime_1.jsx)(components_1.Global.Main, { children: (0, jsx_runtime_1.jsx)(components_1.Text, { children: "hello" }) })] }));
+        };
+        resetKeyCount();
+        await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(App, {}));
+    });
+    it('should reconcile the Global component tree', () => {
+        const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
+        expect(forgeDoc).not.toBeNull();
+        expect(forgeDoc).toMatchSnapshot();
+    });
+});
 describe('function props __id__ attributes', () => {
     let bridgeCalls = [];
     beforeAll(async () => {
         bridgeCalls = (0, testUtils_1.setupBridge)();
Index: package/package.json
===================================================================
--- package/package.json
+++ package/package.json
@@ -1,7 +1,7 @@
 {
   "name": "@forge/react",
-  "version": "11.12.0",
+  "version": "11.13.0-next.0",
   "description": "Forge React reconciler",
   "author": "Atlassian",
   "license": "SEE LICENSE IN LICENSE.txt",
   "main": "out/index.js",
@@ -30,10 +30,10 @@
   },
   "dependencies": {
     "@atlaskit/adf-schema": "^48.0.0",
     "@atlaskit/adf-utils": "^19.19.0",
-    "@atlaskit/forge-react-types": "^0.59.0",
-    "@forge/bridge": "^5.13.0",
+    "@atlaskit/forge-react-types": "^0.62.0",
+    "@forge/bridge": "^5.13.1-next.0",
     "@forge/egress": "^2.3.1",
     "@forge/i18n": "0.0.7",
     "@types/react": "^18.2.64",
     "@types/react-reconciler": "^0.28.8",
Index: package/out/components/global/index.d.ts.map
===================================================================
--- package/out/components/global/index.d.ts.map
+++ package/out/components/global/index.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/global/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGrD,aAAK,cAAc,GACf,YAAY,CAAC,6BAA6B,CAAC,GAC3C,YAAY,CAAC,uBAAuB,CAAC,GACrC,YAAY,CAAC,kBAAkB,CAAC,GAChC,YAAY,CAAC,eAAe,CAAC,GAC7B,YAAY,CAAC,WAAW,CAAC,CAAC;AAE9B,aAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,cAAc,GAAG,KAAK,GAAG,CAAC,CAAC;AAEnE,UAAU,uBAAuB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC;CAElB;AAED,UAAU,6BAA6B;IACrC,QAAQ,EAAE,YAAY,CAAC,uBAAuB,CAAC,GAAG,YAAY,CAAC,uBAAuB,CAAC,EAAE,CAAC;IAC1F,KAAK,EAAE,MAAM,CAAC;CAEf;AAED,UAAU,kBAAkB;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EACJ,YAAY,CAAC,uBAAuB,CAAC,GACrC,YAAY,CAAC,6BAA6B,CAAC,GAC3C,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,GAAG,YAAY,CAAC,6BAA6B,CAAC,CAAC,CAAC;CAEhG;AAED,UAAU,eAAe;IACvB,QAAQ,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;CAE1C;AAED,UAAU,WAAW;IACnB,QAAQ,EACJ,CAAC,YAAY,CAAC,kBAAkB,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,eAAe,EAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAC5G,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,kBAAkB,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;CAElH;AAiBD,eAAO,MAAM,MAAM;YAAW,WAAW;gBAInB,eAAe;qCAIM,kBAAkB;wCAIf,6BAA6B;wBAI7C,uBAAuB;CAdpD,CAAC"}
\ No newline at end of file
+{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/global/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,cAAc,EACd,WAAW,EAEX,WAAW,EACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,eAAO,MAAM,MAAM;YAAW,WAAW;;;;;CAExC,CAAC"}
\ No newline at end of file
Index: package/out/components/index.d.ts.map
===================================================================
--- package/out/components/index.d.ts.map
+++ package/out/components/index.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,eAAe,IAAI,SAAS,EAC5B,qBAAqB,IAAI,eAAe,EACxC,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kBAAkB,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,aAAK,SAAS,GAAG;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AACF;;;;GAIG;AACH,eAAO,MAAM,IAAI,UAAgC,SAAS,KAAK,YAAY,CAAC;AAE5E,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,UAAiC,UAAU,KAAK,YAAY,CAAC;AAE/E,eAAO,MAAM,IAAI,UAAgC,SAAS,KAAK,YAAY,CAAC;AAC5E,eAAO,MAAM,UAAU,UAAsC,eAAe,KAAK,YAAY,CAAC;AAC9F,eAAO,MAAM,SAAS,UAAqC,cAAc,KAAK,YAAY,CAAC;AAE3F,eAAO,MAAM,EAAE,UAA8B,WAAW,KAAK,YAAY,CAAC;AAC1E,eAAO,MAAM,MAAM,UAAkC,WAAW,KAAK,YAAY,CAAC;AAClF,eAAO,MAAM,MAAM,UAAkC,WAAW,KAAK,YAAY,CAAC;AAElF,aAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,KAAK,UAAiC,UAAU,KAAK,YAAY,CAAC;AAE/E;;GAEG;AACH,cAAc,qBAAqB,CAAC;AAIpC,UAAU,uBAAuB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AACD,aAAK,kBAAkB,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAC5E,eAAO,MAAM,aAAa,UAAyC,kBAAkB,KAAK,YAAY,CAAC"}
\ No newline at end of file
+{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,eAAe,IAAI,SAAS,EAC5B,qBAAqB,IAAI,eAAe,EACxC,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kBAAkB,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,aAAK,SAAS,GAAG;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AACF;;;;GAIG;AACH,eAAO,MAAM,IAAI,UAAgC,SAAS,KAAK,YAAY,CAAC;AAE5E,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,UAAiC,UAAU,KAAK,YAAY,CAAC;AAE/E,eAAO,MAAM,IAAI,UAAgC,SAAS,KAAK,YAAY,CAAC;AAC5E,eAAO,MAAM,UAAU,UAAsC,eAAe,KAAK,YAAY,CAAC;AAC9F,eAAO,MAAM,SAAS,UAAqC,cAAc,KAAK,YAAY,CAAC;AAE3F,eAAO,MAAM,EAAE,UAA8B,WAAW,KAAK,YAAY,CAAC;AAC1E,eAAO,MAAM,MAAM,UAAkC,WAAW,KAAK,YAAY,CAAC;AAClF,eAAO,MAAM,MAAM,UAAkC,WAAW,KAAK,YAAY,CAAC;AAElF,aAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,KAAK,UAAiC,UAAU,KAAK,YAAY,CAAC;AAE/E;;GAEG;AACH,cAAc,qBAAqB,CAAC;AAIpC,UAAU,uBAAuB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AACD,aAAK,kBAAkB,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAC5E,eAAO,MAAM,aAAa,UAAyC,kBAAkB,KAAK,YAAY,CAAC"}
\ No newline at end of file
Index: package/out/index.d.ts.map
===================================================================
--- package/out/index.d.ts.map
+++ package/out/index.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,eAAO,MAAM,IAAI,UAAW,UAAU,KAAG,UAAmB,CAAC;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAE1D,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAClE,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,UAAU,EACV,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,UAAU,EACV,UAAU,EACV,yBAAyB,EACzB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,SAAS,EACT,aAAa,EACb,QAAQ,EACR,SAAS,EACT,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,aAAa,EACb,gBAAgB,EACjB,MAAM,6BAA6B,CAAC"}
\ No newline at end of file
+{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,eAAO,MAAM,IAAI,UAAW,UAAU,KAAG,UAAmB,CAAC;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAG1D,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAElE,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,UAAU,EACV,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,UAAU,EACV,UAAU,EACV,yBAAyB,EACzB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,SAAS,EACT,aAAa,EACb,QAAQ,EACR,SAAS,EACT,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,aAAa,EACb,gBAAgB,EACjB,MAAM,6BAA6B,CAAC;AAGrC,YAAY,EACV,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,6BAA6B,EAC9B,MAAM,6BAA6B,CAAC"}
\ No newline at end of file
Index: package/CHANGELOG.md
===================================================================
--- package/CHANGELOG.md
+++ package/CHANGELOG.md
@@ -1,6 +1,16 @@
 # @forge/react
 
+## 11.13.0-next.0
+
+### Minor Changes
+
+- fdb2861: Export Global Component prop types
+
+### Patch Changes
+
+- @forge/[email protected]
+
 ## 11.12.0
 
 ### Minor Changes
Index: package/out/components/global/index.d.ts
===================================================================
--- package/out/components/global/index.d.ts
+++ package/out/components/global/index.d.ts
@@ -1,31 +1,10 @@
-import type { ReactElement, ReactNode } from 'react';
-declare type GlobalElements = ReactElement<GlobalExpandableMenuItemProps> | ReactElement<GlobalLinkMenuItemProps> | ReactElement<GlobalSidebarProps> | ReactElement<GlobalMainProps> | ReactElement<GlobalProps>;
-declare type NotGlobalComponents<T> = T extends GlobalElements ? never : T;
-interface GlobalLinkMenuItemProps {
-    href: string;
-    label: string;
-    children?: never;
-}
-interface GlobalExpandableMenuItemProps {
-    children: ReactElement<GlobalLinkMenuItemProps> | ReactElement<GlobalLinkMenuItemProps>[];
-    label: string;
-}
-interface GlobalSidebarProps {
-    forYouUrl?: string;
-    children: ReactElement<GlobalLinkMenuItemProps> | ReactElement<GlobalExpandableMenuItemProps> | Array<ReactElement<GlobalLinkMenuItemProps> | ReactElement<GlobalExpandableMenuItemProps>>;
-}
-interface GlobalMainProps {
-    children: NotGlobalComponents<ReactNode>;
-}
-interface GlobalProps {
-    children: [ReactElement<GlobalSidebarProps, typeof Global.Sidebar>, ReactElement<GlobalMainProps, typeof Global.Main>] | [ReactElement<GlobalMainProps, typeof Global.Main>, ReactElement<GlobalSidebarProps, typeof Global.Sidebar>];
-}
+import { TGlobalExpandableMenuItem, TGlobalLinkMenuItem, TGlobalSidebar, TGlobalMain, GlobalProps } from '@atlaskit/forge-react-types';
+import { ForgeElement } from '../../types';
 export declare const Global: {
     (props: GlobalProps): import("react/jsx-runtime").JSX.Element;
-    Main(props: GlobalMainProps): import("react/jsx-runtime").JSX.Element;
-    Sidebar({ children, forYouUrl }: GlobalSidebarProps): import("react/jsx-runtime").JSX.Element;
-    ExpandMenuItem({ label, children }: GlobalExpandableMenuItemProps): import("react/jsx-runtime").JSX.Element;
-    LinkMenuItem(props: GlobalLinkMenuItemProps): import("react/jsx-runtime").JSX.Element;
+    Main: TGlobalMain<ForgeElement<Record<string, any>>>;
+    Sidebar: TGlobalSidebar<ForgeElement<Record<string, any>>>;
+    LinkMenuItem: TGlobalLinkMenuItem<ForgeElement<Record<string, any>>>;
+    ExpandMenuItem: TGlobalExpandableMenuItem<ForgeElement<Record<string, any>>>;
 };
-export {};
 //# sourceMappingURL=index.d.ts.map
\ No newline at end of file
Index: package/out/index.d.ts
===================================================================
--- package/out/index.d.ts
+++ package/out/index.d.ts
@@ -14,5 +14,6 @@
 export { useForm } from './hooks/useForm';
 export { useObjectStore } from './hooks/useObjectStore';
 export type { XCSSObject, DocNode, Event } from './package-types';
 export type { AdfRendererProps, BadgeProps, BoxProps, ButtonGroupProps, ButtonProps, CalendarProps, CheckboxProps, CheckboxGroupProps, CodeBlockProps, CodeProps, CommentProps, DatePickerProps, DynamicTableProps, EmptyStateProps, ErrorMessageProps, FlexProps, FormFooterProps, FormHeaderProps, FormProps, FormSectionProps, GridProps, HeadingProps, HelperMessageProps, IconProps, InlineProps, LabelProps, LinkButtonProps, ListProps, ListItemProps, LoadingButtonProps, LozengeProps, ModalBodyProps, ModalFooterProps, ModalHeaderProps, ModalProps, ModalTitleProps, ModalTransitionProps, ProgressBarProps, ProgressTrackerProps, RadioGroupProps, RadioProps, RangeProps, SectionMessageActionProps, SectionMessageProps, SelectProps, SpinnerProps, StackProps, TabListProps, TabPanelProps, TabProps, TabsProps, TagGroupProps, TagProps, TextProps, TextAreaProps, TextfieldProps, ToggleProps, TooltipProps, TimePickerProps, ValidMessageProps, PopupProps, InlineEditProps, ChromelessEditorProps, CommentEditorProps, PressableProps, BarChartProps, StackBarChartProps, HorizontalStackBarChartProps, HorizontalBarChartProps, LineChartProps, DonutChartProps, PieChartProps, ChartColorTokens } from '@atlaskit/forge-react-types';
+export type { GlobalProps, GlobalMainProps, GlobalSidebarProps, GlobalLinkMenuItemProps, GlobalExpandableMenuItemProps } from '@atlaskit/forge-react-types';
 //# sourceMappingURL=index.d.ts.map
\ No newline at end of file
File too large for inline diff