@teambit/pubsub 1.0.187 → 1.0.189

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.
@@ -1,4 +1,4 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites tests="0" failures="0" errors="0" skipped="0">
3
- <testsuite name="teambit.harmony/pubsub@1.0.187" tests="0" failures="0" errors="0" skipped="0"/>
3
+ <testsuite name="teambit.harmony/pubsub@1.0.189" tests="0" failures="0" errors="0" skipped="0"/>
4
4
  </testsuites>
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.harmony/pubsub-preview"]=t():e["teambit.harmony/pubsub-preview"]=t()}(self,(()=>(()=>{"use strict";var e={34765:(e,t,o)=>{var r={id:"teambit.harmony/pubsub@1.0.187",homepage:"https://bit.cloud/teambit/harmony/pubsub",exported:!0};function n(){const e=i(o(41594));return n=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,n.__bit_component=r,i.__bit_component=r;const p=()=>n().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},n().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/pubsub.svg"}));p.__bit_component=r,t.Logo=p},41594:e=>{e.exports=React}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{compositions:()=>d,compositions_metadata:()=>f,overview:()=>b});var e={};o.r(e),o.d(e,{default:()=>u});var t=o(34765);o(41594);const n=MdxJsReact,i=TeambitMdxUiMdxScopeContext;var p=["components"];function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},a.apply(this,arguments)}var s={},c="wrapper";function u(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o,r,n={},i=Object.keys(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,p);return(0,n.mdx)(c,a({},s,o,{components:t,mdxType:"MDXLayout"}),(0,n.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}u.isMDXComponent=!0;const d=[t],b=[e],f={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),r})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.harmony/pubsub-preview"]=t():e["teambit.harmony/pubsub-preview"]=t()}(self,(()=>(()=>{"use strict";var e={67203:(e,t,o)=>{var r={id:"teambit.harmony/pubsub@1.0.189",homepage:"https://bit.cloud/teambit/harmony/pubsub",exported:!0};function n(){const e=i(o(41594));return n=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,n.__bit_component=r,i.__bit_component=r;const p=()=>n().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},n().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/pubsub.svg"}));p.__bit_component=r,t.Logo=p},41594:e=>{e.exports=React}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{compositions:()=>d,compositions_metadata:()=>f,overview:()=>b});var e={};o.r(e),o.d(e,{default:()=>u});var t=o(67203);o(41594);const n=MdxJsReact,i=TeambitMdxUiMdxScopeContext;var p=["components"];function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},a.apply(this,arguments)}var s={},c="wrapper";function u(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o,r,n={},i=Object.keys(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,p);return(0,n.mdx)(c,a({},s,o,{components:t,mdxType:"MDXLayout"}),(0,n.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}u.isMDXComponent=!0;const d=[t],b=[e],f={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),r})()));
@@ -360,7 +360,8 @@
360
360
  "line": 24,
361
361
  "character": 39
362
362
  },
363
- "name": "Callback"
363
+ "name": "Callback",
364
+ "internalFilePath": "types.ts"
364
365
  },
365
366
  "isOptional": false,
366
367
  "isSpread": false
@@ -682,7 +683,11 @@
682
683
  "line": 92,
683
684
  "character": 34
684
685
  },
685
- "name": "UiUI"
686
+ "name": "UiUI",
687
+ "componentId": {
688
+ "scope": "teambit.ui-foundation",
689
+ "name": "ui"
690
+ }
686
691
  }
687
692
  ]
688
693
  },
@@ -953,6 +958,7 @@
953
958
  "character": 39
954
959
  },
955
960
  "name": "RefObject",
961
+ "packageName": "react",
956
962
  "typeArgs": [
957
963
  {
958
964
  "__schema": "TypeRefSchema",
@@ -1096,7 +1102,8 @@
1096
1102
  "line": 24,
1097
1103
  "character": 39
1098
1104
  },
1099
- "name": "Callback"
1105
+ "name": "Callback",
1106
+ "internalFilePath": "types.ts"
1100
1107
  },
1101
1108
  "isOptional": false,
1102
1109
  "isSpread": false
@@ -1555,7 +1562,11 @@
1555
1562
  "line": 92,
1556
1563
  "character": 34
1557
1564
  },
1558
- "name": "UiUI"
1565
+ "name": "UiUI",
1566
+ "componentId": {
1567
+ "scope": "teambit.ui-foundation",
1568
+ "name": "ui"
1569
+ }
1559
1570
  }
1560
1571
  ]
1561
1572
  },
@@ -1948,6 +1959,7 @@
1948
1959
  "character": 39
1949
1960
  },
1950
1961
  "name": "RefObject",
1962
+ "packageName": "react",
1951
1963
  "typeArgs": [
1952
1964
  {
1953
1965
  "__schema": "TypeRefSchema",
@@ -1984,7 +1996,7 @@
1984
1996
  "componentId": {
1985
1997
  "scope": "teambit.harmony",
1986
1998
  "name": "pubsub",
1987
- "version": "1.0.187"
1999
+ "version": "1.0.189"
1988
2000
  },
1989
2001
  "taggedModuleExports": []
1990
2002
  }
@@ -1 +1 @@
1
- {"version":3,"names":["BitBaseEvent","constructor","type","version","timestamp","data","exports"],"sources":["bit-base-event.ts"],"sourcesContent":["export class BitBaseEvent<T> {\n constructor(readonly type: string, readonly version: string, readonly timestamp: number, readonly data: T) {}\n}\n"],"mappings":";;;;;;AAAO,MAAMA,YAAY,CAAI;EAC3BC,WAAWA,CAAUC,IAAY,EAAWC,OAAe,EAAWC,SAAiB,EAAWC,IAAO,EAAE;IAAA,KAAtFH,IAAY,GAAZA,IAAY;IAAA,KAAWC,OAAe,GAAfA,OAAe;IAAA,KAAWC,SAAiB,GAAjBA,SAAiB;IAAA,KAAWC,IAAO,GAAPA,IAAO;EAAG;AAC9G;AAACC,OAAA,CAAAN,YAAA,GAAAA,YAAA"}
1
+ {"version":3,"names":["BitBaseEvent","constructor","type","version","timestamp","data","exports"],"sources":["bit-base-event.ts"],"sourcesContent":["export class BitBaseEvent<T> {\n constructor(readonly type: string, readonly version: string, readonly timestamp: number, readonly data: T) {}\n}\n"],"mappings":";;;;;;AAAO,MAAMA,YAAY,CAAI;EAC3BC,WAAWA,CAAUC,IAAY,EAAWC,OAAe,EAAWC,SAAiB,EAAWC,IAAO,EAAE;IAAA,KAAtFH,IAAY,GAAZA,IAAY;IAAA,KAAWC,OAAe,GAAfA,OAAe;IAAA,KAAWC,SAAiB,GAAjBA,SAAiB;IAAA,KAAWC,IAAO,GAAPA,IAAO;EAAG;AAC9G;AAACC,OAAA,CAAAN,YAAA,GAAAA,YAAA","ignoreList":[]}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_pubsub","data","require","_bitBaseEvent","_pubsubContext"],"sources":["index.ts"],"sourcesContent":["export { PubsubAspect, PubsubAspect as default } from './pubsub.aspect';\n\nexport type { PubsubMain } from './pubsub.main.runtime';\nexport type { PubsubPreview } from './pubsub.preview.runtime';\nexport type { PubsubUI } from './pubsub.ui.runtime';\nexport { BitBaseEvent } from './bit-base-event';\nexport type { PubSubRegistry } from './pubsub-context';\nexport { usePubSub, usePubSubIframe } from './pubsub-context';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAE,cAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,aAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,eAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,cAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA"}
1
+ {"version":3,"names":["_pubsub","data","require","_bitBaseEvent","_pubsubContext"],"sources":["index.ts"],"sourcesContent":["export { PubsubAspect, PubsubAspect as default } from './pubsub.aspect';\n\nexport type { PubsubMain } from './pubsub.main.runtime';\nexport type { PubsubPreview } from './pubsub.preview.runtime';\nexport type { PubsubUI } from './pubsub.ui.runtime';\nexport { BitBaseEvent } from './bit-base-event';\nexport type { PubSubRegistry } from './pubsub-context';\nexport { usePubSub, usePubSubIframe } from './pubsub-context';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAE,cAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,aAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,eAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,cAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["PubSubNoParentError","Error","constructor","name","exports"],"sources":["no-parent-error.ts"],"sourcesContent":["export class PubSubNoParentError extends Error {\n constructor() {\n super('could not connect to parent window');\n this.name = 'PubSubNoParentError';\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,SAASC,KAAK,CAAC;EAC7CC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,oCAAoC,CAAC;IAC3C,IAAI,CAACC,IAAI,GAAG,qBAAqB;EACnC;AACF;AAACC,OAAA,CAAAJ,mBAAA,GAAAA,mBAAA"}
1
+ {"version":3,"names":["PubSubNoParentError","Error","constructor","name","exports"],"sources":["no-parent-error.ts"],"sourcesContent":["export class PubSubNoParentError extends Error {\n constructor() {\n super('could not connect to parent window');\n this.name = 'PubSubNoParentError';\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,SAASC,KAAK,CAAC;EAC7CC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,oCAAoC,CAAC;IAC3C,IAAI,CAACC,IAAI,GAAG,qBAAqB;EACnC;AACF;AAACC,OAAA,CAAAJ,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import * as compositions_0 from '/Users/giladshoham/Library/Caches/Bit/capsules/root/b5ea46ec36fa42b9dbedfc12ecb7bb63e03fcfe6/teambit.harmony_pubsub@1.0.189/dist/pubsub.composition.js';
2
+ import * as overview_0 from '/Users/giladshoham/Library/Caches/Bit/capsules/root/b5ea46ec36fa42b9dbedfc12ecb7bb63e03fcfe6/teambit.harmony_pubsub@1.0.189/dist/pubsub.docs.mdx';
3
+
4
+ export const compositions = [compositions_0];
5
+ export const overview = [overview_0];
6
+
7
+ export const compositions_metadata = {"compositions":[{"displayName":"Logo","identifier":"Logo"}]};
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","pubsubRegistry","exports","createContext","undefined","createProvider","pubSubContext","PubSubProvider","children","createElement","Provider","value","usePubSub","useContext","usePubSubIframe","ref","pubSub","useEffect","current","destroyConnection","connect"],"sources":["pubsub-context.tsx"],"sourcesContent":["import React, { createContext, useContext, useEffect, RefObject, ReactNode } from 'react';\n\nexport interface PubSubRegistry {\n /**\n * starts a connection to an iframe child.\n * Returns a destroy() function that will break the connection.\n */\n connect(ref: HTMLIFrameElement): () => void;\n}\n\nexport const pubsubRegistry = createContext<PubSubRegistry | undefined>(undefined);\n\nexport function createProvider(pubSubContext: PubSubRegistry) {\n const PubSubProvider = ({ children }: { children: ReactNode }) => (\n <pubsubRegistry.Provider value={pubSubContext}>{children}</pubsubRegistry.Provider>\n );\n\n return PubSubProvider;\n}\n\nexport function usePubSub() {\n return useContext(pubsubRegistry);\n}\n\nexport function usePubSubIframe(ref?: RefObject<HTMLIFrameElement>) {\n const pubSub = usePubSub();\n\n useEffect(() => {\n if (!ref?.current || !pubSub) return () => {};\n\n const destroyConnection = pubSub.connect(ref.current);\n return () => destroyConnection();\n }, [ref?.current, pubSub]);\n}\n"],"mappings":";;;;;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,uBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0F,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAUnF,MAAMY,cAAc,GAAAC,OAAA,CAAAD,cAAA,gBAAG,IAAAE,sBAAa,EAA6BC,SAAS,CAAC;AAE3E,SAASC,cAAcA,CAACC,aAA6B,EAAE;EAC5D,MAAMC,cAAc,GAAGA,CAAC;IAAEC;EAAkC,CAAC,kBAC3DhC,MAAA,GAAAU,OAAA,CAAAuB,aAAA,CAACR,cAAc,CAACS,QAAQ;IAACC,KAAK,EAAEL;EAAc,GAAEE,QAAkC,CACnF;EAED,OAAOD,cAAc;AACvB;AAEO,SAASK,SAASA,CAAA,EAAG;EAC1B,OAAO,IAAAC,mBAAU,EAACZ,cAAc,CAAC;AACnC;AAEO,SAASa,eAAeA,CAACC,GAAkC,EAAE;EAClE,MAAMC,MAAM,GAAGJ,SAAS,CAAC,CAAC;EAE1B,IAAAK,kBAAS,EAAC,MAAM;IACd,IAAI,CAACF,GAAG,EAAEG,OAAO,IAAI,CAACF,MAAM,EAAE,OAAO,MAAM,CAAC,CAAC;IAE7C,MAAMG,iBAAiB,GAAGH,MAAM,CAACI,OAAO,CAACL,GAAG,CAACG,OAAO,CAAC;IACrD,OAAO,MAAMC,iBAAiB,CAAC,CAAC;EAClC,CAAC,EAAE,CAACJ,GAAG,EAAEG,OAAO,EAAEF,MAAM,CAAC,CAAC;AAC5B"}
1
+ {"version":3,"names":["_react","data","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","pubsubRegistry","exports","createContext","undefined","createProvider","pubSubContext","PubSubProvider","children","createElement","Provider","value","usePubSub","useContext","usePubSubIframe","ref","pubSub","useEffect","current","destroyConnection","connect"],"sources":["pubsub-context.tsx"],"sourcesContent":["import React, { createContext, useContext, useEffect, RefObject, ReactNode } from 'react';\n\nexport interface PubSubRegistry {\n /**\n * starts a connection to an iframe child.\n * Returns a destroy() function that will break the connection.\n */\n connect(ref: HTMLIFrameElement): () => void;\n}\n\nexport const pubsubRegistry = createContext<PubSubRegistry | undefined>(undefined);\n\nexport function createProvider(pubSubContext: PubSubRegistry) {\n const PubSubProvider = ({ children }: { children: ReactNode }) => (\n <pubsubRegistry.Provider value={pubSubContext}>{children}</pubsubRegistry.Provider>\n );\n\n return PubSubProvider;\n}\n\nexport function usePubSub() {\n return useContext(pubsubRegistry);\n}\n\nexport function usePubSubIframe(ref?: RefObject<HTMLIFrameElement>) {\n const pubSub = usePubSub();\n\n useEffect(() => {\n if (!ref?.current || !pubSub) return () => {};\n\n const destroyConnection = pubSub.connect(ref.current);\n return () => destroyConnection();\n }, [ref?.current, pubSub]);\n}\n"],"mappings":";;;;;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,uBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0F,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAUnF,MAAMY,cAAc,GAAAC,OAAA,CAAAD,cAAA,gBAAG,IAAAE,sBAAa,EAA6BC,SAAS,CAAC;AAE3E,SAASC,cAAcA,CAACC,aAA6B,EAAE;EAC5D,MAAMC,cAAc,GAAGA,CAAC;IAAEC;EAAkC,CAAC,kBAC3DhC,MAAA,GAAAU,OAAA,CAAAuB,aAAA,CAACR,cAAc,CAACS,QAAQ;IAACC,KAAK,EAAEL;EAAc,GAAEE,QAAkC,CACnF;EAED,OAAOD,cAAc;AACvB;AAEO,SAASK,SAASA,CAAA,EAAG;EAC1B,OAAO,IAAAC,mBAAU,EAACZ,cAAc,CAAC;AACnC;AAEO,SAASa,eAAeA,CAACC,GAAkC,EAAE;EAClE,MAAMC,MAAM,GAAGJ,SAAS,CAAC,CAAC;EAE1B,IAAAK,kBAAS,EAAC,MAAM;IACd,IAAI,CAACF,GAAG,EAAEG,OAAO,IAAI,CAACF,MAAM,EAAE,OAAO,MAAM,CAAC,CAAC;IAE7C,MAAMG,iBAAiB,GAAGH,MAAM,CAACI,OAAO,CAACL,GAAG,CAACG,OAAO,CAAC;IACrD,OAAO,MAAMC,iBAAiB,CAAC,CAAC;EAClC,CAAC,EAAE,CAACJ,GAAG,EAAEG,OAAO,EAAEF,MAAM,CAAC,CAAC;AAC5B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_harmony","data","require","PubsubAspect","exports","Aspect","create","id","dependencies","_default","default"],"sources":["pubsub.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const PubsubAspect = Aspect.create({\n id: 'teambit.harmony/pubsub',\n dependencies: [],\n});\n\nexport default PubsubAspect;\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAGE,iBAAM,CAACC,MAAM,CAAC;EACxCC,EAAE,EAAE,wBAAwB;EAC5BC,YAAY,EAAE;AAChB,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAL,OAAA,CAAAM,OAAA,GAEYP,YAAY"}
1
+ {"version":3,"names":["_harmony","data","require","PubsubAspect","exports","Aspect","create","id","dependencies","_default","default"],"sources":["pubsub.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const PubsubAspect = Aspect.create({\n id: 'teambit.harmony/pubsub',\n dependencies: [],\n});\n\nexport default PubsubAspect;\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAGE,iBAAM,CAACC,MAAM,CAAC;EACxCC,EAAE,EAAE,wBAAwB;EAC5BC,YAAY,EAAE;AAChB,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAL,OAAA,CAAAM,OAAA,GAEYP,YAAY","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","obj","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["pubsub.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/pubsub.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAoD,CAAE,CAClF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","obj","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["pubsub.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/pubsub.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAoD,CAAE,CAClF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_pubsub","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","PubsubMain","constructor","topicUUID","topicMap","sub","callback","createOrGetTopic","push","pub","event","forEach","unsubscribeAll","topicId","provider","exports","MainRuntime","PubsubAspect","addRuntime"],"sources":["pubsub.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\n\nimport { BitBaseEvent } from './bit-base-event';\nimport { PubsubAspect } from './pubsub.aspect';\n\nexport class PubsubMain {\n private topicMap = {};\n\n private createOrGetTopic = (topicUUID) => {\n this.topicMap[topicUUID] = this.topicMap[topicUUID] || [];\n };\n\n public sub(topicUUID, callback) {\n this.createOrGetTopic(topicUUID);\n this.topicMap[topicUUID].push(callback);\n }\n\n public pub(topicUUID, event: BitBaseEvent<any>) {\n this.createOrGetTopic(topicUUID);\n this.topicMap[topicUUID].forEach((callback) => callback(event));\n }\n\n unsubscribeAll(topicId: string) {\n delete this.topicMap[topicId];\n }\n\n static runtime = MainRuntime;\n\n static async provider() {\n return new PubsubMain();\n }\n}\n\nPubsubAspect.addRuntime(PubsubMain);\n"],"mappings":";;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAE,QAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,OAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA+C,SAAAG,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAE,MAAA,CAAAF,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAI,CAAA,2BAAAJ,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAK,CAAA,GAAAL,CAAA,CAAAM,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAJ,CAAA,GAAAI,CAAA,CAAAG,IAAA,CAAAR,CAAA,EAAAI,CAAA,uCAAAH,CAAA,SAAAA,CAAA,YAAAQ,SAAA,yEAAAL,CAAA,GAAAD,MAAA,GAAAO,MAAA,EAAAV,CAAA;AAExC,MAAMW,UAAU,CAAC;EAAAC,YAAA;IAAAtB,eAAA,mBACH,CAAC,CAAC;IAAAA,eAAA,2BAEOuB,SAAS,IAAK;MACxC,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,GAAG,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,IAAI,EAAE;IAC3D,CAAC;EAAA;EAEME,GAAGA,CAACF,SAAS,EAAEG,QAAQ,EAAE;IAC9B,IAAI,CAACC,gBAAgB,CAACJ,SAAS,CAAC;IAChC,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,CAACK,IAAI,CAACF,QAAQ,CAAC;EACzC;EAEOG,GAAGA,CAACN,SAAS,EAAEO,KAAwB,EAAE;IAC9C,IAAI,CAACH,gBAAgB,CAACJ,SAAS,CAAC;IAChC,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,CAACQ,OAAO,CAAEL,QAAQ,IAAKA,QAAQ,CAACI,KAAK,CAAC,CAAC;EACjE;EAEAE,cAAcA,CAACC,OAAe,EAAE;IAC9B,OAAO,IAAI,CAACT,QAAQ,CAACS,OAAO,CAAC;EAC/B;EAIA,aAAaC,QAAQA,CAAA,EAAG;IACtB,OAAO,IAAIb,UAAU,CAAC,CAAC;EACzB;AACF;AAACc,OAAA,CAAAd,UAAA,GAAAA,UAAA;AAAArB,eAAA,CA1BYqB,UAAU,aAqBJe,kBAAW;AAO9BC,sBAAY,CAACC,UAAU,CAACjB,UAAU,CAAC"}
1
+ {"version":3,"names":["_cli","data","require","_pubsub","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","PubsubMain","constructor","topicUUID","topicMap","sub","callback","createOrGetTopic","push","pub","event","forEach","unsubscribeAll","topicId","provider","exports","MainRuntime","PubsubAspect","addRuntime"],"sources":["pubsub.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\n\nimport { BitBaseEvent } from './bit-base-event';\nimport { PubsubAspect } from './pubsub.aspect';\n\nexport class PubsubMain {\n private topicMap = {};\n\n private createOrGetTopic = (topicUUID) => {\n this.topicMap[topicUUID] = this.topicMap[topicUUID] || [];\n };\n\n public sub(topicUUID, callback) {\n this.createOrGetTopic(topicUUID);\n this.topicMap[topicUUID].push(callback);\n }\n\n public pub(topicUUID, event: BitBaseEvent<any>) {\n this.createOrGetTopic(topicUUID);\n this.topicMap[topicUUID].forEach((callback) => callback(event));\n }\n\n unsubscribeAll(topicId: string) {\n delete this.topicMap[topicId];\n }\n\n static runtime = MainRuntime;\n\n static async provider() {\n return new PubsubMain();\n }\n}\n\nPubsubAspect.addRuntime(PubsubMain);\n"],"mappings":";;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAE,QAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,OAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA+C,SAAAG,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAE,MAAA,CAAAF,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAI,CAAA,2BAAAJ,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAK,CAAA,GAAAL,CAAA,CAAAM,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAJ,CAAA,GAAAI,CAAA,CAAAG,IAAA,CAAAR,CAAA,EAAAI,CAAA,uCAAAH,CAAA,SAAAA,CAAA,YAAAQ,SAAA,yEAAAL,CAAA,GAAAD,MAAA,GAAAO,MAAA,EAAAV,CAAA;AAExC,MAAMW,UAAU,CAAC;EAAAC,YAAA;IAAAtB,eAAA,mBACH,CAAC,CAAC;IAAAA,eAAA,2BAEOuB,SAAS,IAAK;MACxC,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,GAAG,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,IAAI,EAAE;IAC3D,CAAC;EAAA;EAEME,GAAGA,CAACF,SAAS,EAAEG,QAAQ,EAAE;IAC9B,IAAI,CAACC,gBAAgB,CAACJ,SAAS,CAAC;IAChC,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,CAACK,IAAI,CAACF,QAAQ,CAAC;EACzC;EAEOG,GAAGA,CAACN,SAAS,EAAEO,KAAwB,EAAE;IAC9C,IAAI,CAACH,gBAAgB,CAACJ,SAAS,CAAC;IAChC,IAAI,CAACC,QAAQ,CAACD,SAAS,CAAC,CAACQ,OAAO,CAAEL,QAAQ,IAAKA,QAAQ,CAACI,KAAK,CAAC,CAAC;EACjE;EAEAE,cAAcA,CAACC,OAAe,EAAE;IAC9B,OAAO,IAAI,CAACT,QAAQ,CAACS,OAAO,CAAC;EAC/B;EAIA,aAAaC,QAAQA,CAAA,EAAG;IACtB,OAAO,IAAIb,UAAU,CAAC,CAAC;EACzB;AACF;AAACc,OAAA,CAAAd,UAAA,GAAAA,UAAA;AAAArB,eAAA,CA1BYqB,UAAU,aAqBJe,kBAAW;AAO9BC,sBAAY,CAACC,UAAU,CAACjB,UAAU,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_preview","data","require","_uiFoundationUi","_eventemitter","_penpal","_noParentError","_pubsub","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","PubsubPreview","constructor","EventEmitter2","retries","PubSubNoParentError","connectToParent","timeout","methods","pub","handleMessageFromParent","promise","then","parentPubsub","_parentPubsub","catch","code","ErrorCode","ConnectionTimeout","connectToParentPubSub","topic","message","events","emit","sub","callback","emitter","on","unSub","off","event","err","console","error","inIframe","isBrowser","window","self","top","provider","pubsubPreview","exports","PreviewRuntime","PubsubAspect","addRuntime"],"sources":["pubsub.preview.runtime.ts"],"sourcesContent":["/**\n * Please Notice: This file will run in the preview iframe.\n */\n\nimport { PreviewRuntime } from '@teambit/preview';\nimport { isBrowser } from '@teambit/ui-foundation.ui.is-browser';\n\nimport { EventEmitter2 } from 'eventemitter2';\nimport { connectToParent, ErrorCode } from 'penpal';\n\nimport { BitBaseEvent } from './bit-base-event';\nimport { PubSubNoParentError } from './no-parent-error';\nimport { PubsubAspect } from './pubsub.aspect';\nimport { Callback } from './types';\n\ntype ParentMethods = {\n pub: (topic: string, event: BitBaseEvent<any>) => Promise<any>;\n};\n\nexport class PubsubPreview {\n private _parentPubsub?: ParentMethods;\n private events = new EventEmitter2();\n\n public sub(topic: string, callback: Callback) {\n const emitter = this.events;\n emitter.on(topic, callback);\n\n const unSub = () => {\n emitter.off(topic, callback);\n };\n return unSub;\n }\n\n public pub(topic: string, event: BitBaseEvent<any>) {\n this.events.emit(topic, event);\n this._parentPubsub?.pub(topic, event).catch((err) => {\n // eslint-disable-next-line no-console\n console.error('[Pubsub.preview]', err);\n });\n }\n\n private inIframe() {\n try {\n return isBrowser && window.self !== window.top;\n } catch (e: any) {\n return false;\n }\n }\n\n private connectToParentPubSub = (retries = 10): Promise<ParentMethods | undefined> => {\n if (retries <= 0) throw new PubSubNoParentError();\n\n return connectToParent<ParentMethods>({\n timeout: 300,\n methods: {\n pub: this.handleMessageFromParent,\n },\n })\n .promise.then((parentPubsub) => (this._parentPubsub = parentPubsub))\n .catch((e: any) => {\n if (e.code !== ErrorCode.ConnectionTimeout) throw e;\n\n return this.connectToParentPubSub(retries - 1);\n });\n };\n\n private handleMessageFromParent = (topic: string, message: BitBaseEvent<any>) => {\n this.events.emit(topic, message);\n };\n\n static runtime = PreviewRuntime;\n\n static async provider(): Promise<PubsubPreview> {\n const pubsubPreview = new PubsubPreview();\n\n if (pubsubPreview.inIframe()) {\n pubsubPreview.connectToParentPubSub().catch((err) => {\n // parent window is not required to accept connections\n if (err instanceof PubSubNoParentError) return;\n\n // eslint-disable-next-line no-console\n console.error('[Pubsub.preview]', err);\n });\n }\n\n return pubsubPreview;\n }\n}\n\nPubsubAspect.addRuntime(PubsubPreview);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_preview","data","require","_uiFoundationUi","_eventemitter","_penpal","_noParentError","_pubsub","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","PubsubPreview","constructor","EventEmitter2","retries","PubSubNoParentError","connectToParent","timeout","methods","pub","handleMessageFromParent","promise","then","parentPubsub","_parentPubsub","catch","code","ErrorCode","ConnectionTimeout","connectToParentPubSub","topic","message","events","emit","sub","callback","emitter","on","unSub","off","event","err","console","error","inIframe","isBrowser","window","self","top","provider","pubsubPreview","exports","PreviewRuntime","PubsubAspect","addRuntime"],"sources":["pubsub.preview.runtime.ts"],"sourcesContent":["/**\n * Please Notice: This file will run in the preview iframe.\n */\n\nimport { PreviewRuntime } from '@teambit/preview';\nimport { isBrowser } from '@teambit/ui-foundation.ui.is-browser';\n\nimport { EventEmitter2 } from 'eventemitter2';\nimport { connectToParent, ErrorCode } from 'penpal';\n\nimport { BitBaseEvent } from './bit-base-event';\nimport { PubSubNoParentError } from './no-parent-error';\nimport { PubsubAspect } from './pubsub.aspect';\nimport { Callback } from './types';\n\ntype ParentMethods = {\n pub: (topic: string, event: BitBaseEvent<any>) => Promise<any>;\n};\n\nexport class PubsubPreview {\n private _parentPubsub?: ParentMethods;\n private events = new EventEmitter2();\n\n public sub(topic: string, callback: Callback) {\n const emitter = this.events;\n emitter.on(topic, callback);\n\n const unSub = () => {\n emitter.off(topic, callback);\n };\n return unSub;\n }\n\n public pub(topic: string, event: BitBaseEvent<any>) {\n this.events.emit(topic, event);\n this._parentPubsub?.pub(topic, event).catch((err) => {\n // eslint-disable-next-line no-console\n console.error('[Pubsub.preview]', err);\n });\n }\n\n private inIframe() {\n try {\n return isBrowser && window.self !== window.top;\n } catch (e: any) {\n return false;\n }\n }\n\n private connectToParentPubSub = (retries = 10): Promise<ParentMethods | undefined> => {\n if (retries <= 0) throw new PubSubNoParentError();\n\n return connectToParent<ParentMethods>({\n timeout: 300,\n methods: {\n pub: this.handleMessageFromParent,\n },\n })\n .promise.then((parentPubsub) => (this._parentPubsub = parentPubsub))\n .catch((e: any) => {\n if (e.code !== ErrorCode.ConnectionTimeout) throw e;\n\n return this.connectToParentPubSub(retries - 1);\n });\n };\n\n private handleMessageFromParent = (topic: string, message: BitBaseEvent<any>) => {\n this.events.emit(topic, message);\n };\n\n static runtime = PreviewRuntime;\n\n static async provider(): Promise<PubsubPreview> {\n const pubsubPreview = new PubsubPreview();\n\n if (pubsubPreview.inIframe()) {\n pubsubPreview.connectToParentPubSub().catch((err) => {\n // parent window is not required to accept connections\n if (err instanceof PubSubNoParentError) return;\n\n // eslint-disable-next-line no-console\n console.error('[Pubsub.preview]', err);\n });\n }\n\n return pubsubPreview;\n }\n}\n\nPubsubAspect.addRuntime(PubsubPreview);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_ui","data","require","_eventemitter","_penpal","_pubsub","_pubsubContext","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","PubsubUI","constructor","EventEmitter2","topic","callback","events","on","unSub","off","event","propagate","emitEvent","pubToChild","iframe","connection","connectToChild","methods","pub","promise","then","childConnection","childApi","catch","err","console","error","destroy","emit","getPubSubContext","createProvider","connect","connectToIframe","provider","uiUI","pubsubUI","reactContext","registerRenderHooks","exports","UIRuntime","UIAspect","PubsubAspect","addRuntime"],"sources":["pubsub.ui.runtime.ts"],"sourcesContent":["import { UIRuntime, UIAspect, UiUI } from '@teambit/ui';\nimport { EventEmitter2 } from 'eventemitter2';\nimport { connectToChild } from 'penpal';\nimport type { AsyncMethodReturns } from 'penpal/lib/types';\nimport { BitBaseEvent } from './bit-base-event';\nimport { PubsubAspect } from './pubsub.aspect';\nimport { createProvider } from './pubsub-context';\nimport { Callback } from './types';\n\ntype PubOptions = {\n /** forward the event to adjacent windows (including the preview iframe) */\n propagate?: boolean;\n};\n\ntype ChildMethods = {\n pub: (topic: string, event: BitBaseEvent<any>) => any;\n};\nexport class PubsubUI {\n private childApi?: AsyncMethodReturns<ChildMethods>;\n private events = new EventEmitter2();\n\n /**\n * subscribe to events\n */\n public sub = (topic: string, callback: Callback) => {\n const events = this.events;\n events.on(topic, callback);\n\n const unSub = () => {\n events.off(topic, callback);\n };\n\n return unSub;\n };\n\n /**\n * publish event to all subscribers, including nested iframes.\n */\n public pub = (topic: string, event: BitBaseEvent<any>, { propagate }: PubOptions = {}) => {\n this.emitEvent(topic, event);\n\n // opt-in to forward to iframe, as we would not want 'private' messages automatically passing to iframe\n if (propagate) {\n this.pubToChild(topic, event);\n }\n };\n\n private connectToIframe = (iframe: HTMLIFrameElement) => {\n const connection = connectToChild<ChildMethods>({\n iframe,\n methods: {\n pub: this.emitEvent,\n },\n });\n\n connection.promise\n .then((childConnection) => (this.childApi = childConnection))\n .catch((err) => {\n // eslint-disable-next-line no-console\n console.error('[Pubsub.ui]', 'failed connecting to child iframe:', err);\n });\n\n const destroy = () => {\n connection && connection.destroy();\n };\n return destroy;\n };\n\n getPubSubContext() {\n return createProvider({\n connect: this.connectToIframe,\n });\n }\n\n /**\n * publish event to all subscribers in this window\n */\n private emitEvent = (topic: string, event: BitBaseEvent<any>) => {\n this.events.emit(topic, event);\n };\n\n /**\n * publish event to nested iframes\n */\n private pubToChild = (topic: string, event: BitBaseEvent<any>) => {\n return this.childApi?.pub(topic, event);\n };\n\n static runtime = UIRuntime;\n static dependencies = [UIAspect];\n\n static async provider([uiUI]: [UiUI]) {\n const pubsubUI = new PubsubUI();\n\n const reactContext = pubsubUI.getPubSubContext();\n\n if (uiUI) uiUI.registerRenderHooks({ reactContext });\n\n return pubsubUI;\n }\n}\n\nPubsubAspect.addRuntime(PubsubUI);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_ui","data","require","_eventemitter","_penpal","_pubsub","_pubsubContext","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","PubsubUI","constructor","EventEmitter2","topic","callback","events","on","unSub","off","event","propagate","emitEvent","pubToChild","iframe","connection","connectToChild","methods","pub","promise","then","childConnection","childApi","catch","err","console","error","destroy","emit","getPubSubContext","createProvider","connect","connectToIframe","provider","uiUI","pubsubUI","reactContext","registerRenderHooks","exports","UIRuntime","UIAspect","PubsubAspect","addRuntime"],"sources":["pubsub.ui.runtime.ts"],"sourcesContent":["import { UIRuntime, UIAspect, UiUI } from '@teambit/ui';\nimport { EventEmitter2 } from 'eventemitter2';\nimport { connectToChild } from 'penpal';\nimport type { AsyncMethodReturns } from 'penpal/lib/types';\nimport { BitBaseEvent } from './bit-base-event';\nimport { PubsubAspect } from './pubsub.aspect';\nimport { createProvider } from './pubsub-context';\nimport { Callback } from './types';\n\ntype PubOptions = {\n /** forward the event to adjacent windows (including the preview iframe) */\n propagate?: boolean;\n};\n\ntype ChildMethods = {\n pub: (topic: string, event: BitBaseEvent<any>) => any;\n};\nexport class PubsubUI {\n private childApi?: AsyncMethodReturns<ChildMethods>;\n private events = new EventEmitter2();\n\n /**\n * subscribe to events\n */\n public sub = (topic: string, callback: Callback) => {\n const events = this.events;\n events.on(topic, callback);\n\n const unSub = () => {\n events.off(topic, callback);\n };\n\n return unSub;\n };\n\n /**\n * publish event to all subscribers, including nested iframes.\n */\n public pub = (topic: string, event: BitBaseEvent<any>, { propagate }: PubOptions = {}) => {\n this.emitEvent(topic, event);\n\n // opt-in to forward to iframe, as we would not want 'private' messages automatically passing to iframe\n if (propagate) {\n this.pubToChild(topic, event);\n }\n };\n\n private connectToIframe = (iframe: HTMLIFrameElement) => {\n const connection = connectToChild<ChildMethods>({\n iframe,\n methods: {\n pub: this.emitEvent,\n },\n });\n\n connection.promise\n .then((childConnection) => (this.childApi = childConnection))\n .catch((err) => {\n // eslint-disable-next-line no-console\n console.error('[Pubsub.ui]', 'failed connecting to child iframe:', err);\n });\n\n const destroy = () => {\n connection && connection.destroy();\n };\n return destroy;\n };\n\n getPubSubContext() {\n return createProvider({\n connect: this.connectToIframe,\n });\n }\n\n /**\n * publish event to all subscribers in this window\n */\n private emitEvent = (topic: string, event: BitBaseEvent<any>) => {\n this.events.emit(topic, event);\n };\n\n /**\n * publish event to nested iframes\n */\n private pubToChild = (topic: string, event: BitBaseEvent<any>) => {\n return this.childApi?.pub(topic, event);\n };\n\n static runtime = UIRuntime;\n static dependencies = [UIAspect];\n\n static async provider([uiUI]: [UiUI]) {\n const pubsubUI = new PubsubUI();\n\n const reactContext = pubsubUI.getPubSubContext();\n\n if (uiUI) uiUI.registerRenderHooks({ reactContext });\n\n return pubsubUI;\n }\n}\n\nPubsubAspect.addRuntime(PubsubUI);\n"],"mappings":"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","ignoreList":[]}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import { BitBaseEvent } from './bit-base-event';\n\nexport type Callback = (event: BitBaseEvent<any>) => void;\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import { BitBaseEvent } from './bit-base-event';\n\nexport type Callback = (event: BitBaseEvent<any>) => void;\n"],"mappings":"","ignoreList":[]}
package/package.json CHANGED
@@ -1,26 +1,26 @@
1
1
  {
2
2
  "name": "@teambit/pubsub",
3
- "version": "1.0.187",
3
+ "version": "1.0.189",
4
4
  "homepage": "https://bit.cloud/teambit/harmony/pubsub",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.harmony",
8
8
  "name": "pubsub",
9
- "version": "1.0.187"
9
+ "version": "1.0.189"
10
10
  },
11
11
  "dependencies": {
12
12
  "eventemitter2": "6.4.4",
13
13
  "penpal": "6.2.2",
14
14
  "@teambit/harmony": "0.4.6",
15
- "@teambit/cli": "0.0.855",
16
- "@teambit/ui": "1.0.187"
15
+ "@teambit/cli": "0.0.856",
16
+ "@teambit/ui": "1.0.189"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@types/mocha": "9.1.0",
20
20
  "chai": "4.3.0",
21
21
  "@teambit/ui-foundation.ui.is-browser": "0.0.500",
22
- "@teambit/harmony.envs.core-aspect-env": "0.0.25",
23
- "@teambit/preview": "1.0.187"
22
+ "@teambit/harmony.envs.core-aspect-env": "0.0.27",
23
+ "@teambit/preview": "1.0.189"
24
24
  },
25
25
  "peerDependencies": {
26
26
  "react": "^17.0.0 || ^18.0.0",
@@ -1,7 +0,0 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_pubsub@1.0.187/dist/pubsub.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_pubsub@1.0.187/dist/pubsub.docs.mdx';
3
-
4
- export const compositions = [compositions_0];
5
- export const overview = [overview_0];
6
-
7
- export const compositions_metadata = {"compositions":[{"displayName":"Logo","identifier":"Logo"}]};