@deephaven/dashboard-core-plugins 0.22.3-beta.18 → 0.22.3-beta.21

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 (166) hide show
  1. package/dist/ChartBuilderPlugin.d.ts +1 -1
  2. package/dist/ChartBuilderPlugin.d.ts.map +1 -1
  3. package/dist/ChartBuilderPlugin.js +6 -8
  4. package/dist/ChartBuilderPlugin.js.map +1 -1
  5. package/dist/ChartPlugin.d.ts +1 -1
  6. package/dist/ChartPlugin.d.ts.map +1 -1
  7. package/dist/ChartPlugin.js +4 -8
  8. package/dist/ChartPlugin.js.map +1 -1
  9. package/dist/ConsolePlugin.d.ts +1 -1
  10. package/dist/ConsolePlugin.d.ts.map +1 -1
  11. package/dist/ConsolePlugin.js +16 -62
  12. package/dist/ConsolePlugin.js.map +1 -1
  13. package/dist/FilterPlugin.d.ts +1 -1
  14. package/dist/FilterPlugin.d.ts.map +1 -1
  15. package/dist/FilterPlugin.js +6 -13
  16. package/dist/FilterPlugin.js.map +1 -1
  17. package/dist/GridPlugin.d.ts +1 -1
  18. package/dist/GridPlugin.d.ts.map +1 -1
  19. package/dist/GridPlugin.js +4 -8
  20. package/dist/GridPlugin.js.map +1 -1
  21. package/dist/LinkerPlugin.d.ts +1 -1
  22. package/dist/LinkerPlugin.d.ts.map +1 -1
  23. package/dist/LinkerPlugin.js +2 -2
  24. package/dist/LinkerPlugin.js.map +1 -1
  25. package/dist/MarkdownPlugin.d.ts +1 -1
  26. package/dist/MarkdownPlugin.d.ts.map +1 -1
  27. package/dist/MarkdownPlugin.js +4 -8
  28. package/dist/MarkdownPlugin.js.map +1 -1
  29. package/dist/PandasPlugin.d.ts +1 -1
  30. package/dist/PandasPlugin.d.ts.map +1 -1
  31. package/dist/PandasPlugin.js +4 -8
  32. package/dist/PandasPlugin.js.map +1 -1
  33. package/dist/controls/ControlType.js +0 -6
  34. package/dist/controls/ControlType.js.map +1 -1
  35. package/dist/controls/dropdown-filter/DropdownFilter.js +7 -51
  36. package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
  37. package/dist/controls/input-filter/InputFilter.js +1 -31
  38. package/dist/controls/input-filter/InputFilter.js.map +1 -1
  39. package/dist/controls/markdown/MarkdownContainer.js +0 -3
  40. package/dist/controls/markdown/MarkdownContainer.js.map +1 -1
  41. package/dist/controls/markdown/MarkdownEditor.d.ts +0 -2
  42. package/dist/controls/markdown/MarkdownEditor.d.ts.map +1 -1
  43. package/dist/controls/markdown/MarkdownEditor.js +13 -20
  44. package/dist/controls/markdown/MarkdownEditor.js.map +1 -1
  45. package/dist/controls/markdown/MarkdownStartPage.js +0 -11
  46. package/dist/controls/markdown/MarkdownStartPage.js.map +1 -1
  47. package/dist/controls/markdown/MarkdownUtils.js +0 -7
  48. package/dist/controls/markdown/MarkdownUtils.js.map +1 -1
  49. package/dist/events/ChartEvent.js +0 -5
  50. package/dist/events/ChartEvent.js.map +1 -1
  51. package/dist/events/ConsoleEvent.js +0 -7
  52. package/dist/events/ConsoleEvent.js.map +1 -1
  53. package/dist/events/InputFilterEvent.js +0 -10
  54. package/dist/events/InputFilterEvent.js.map +1 -1
  55. package/dist/events/IrisGridEvent.js +0 -8
  56. package/dist/events/IrisGridEvent.js.map +1 -1
  57. package/dist/events/MarkdownEvent.js.map +1 -1
  58. package/dist/events/NotebookEvent.js +0 -10
  59. package/dist/events/NotebookEvent.js.map +1 -1
  60. package/dist/events/PQEvent.js +0 -5
  61. package/dist/events/PQEvent.js.map +1 -1
  62. package/dist/events/PandasEvent.js +0 -4
  63. package/dist/events/PandasEvent.js.map +1 -1
  64. package/dist/events/TabEvent.js +0 -8
  65. package/dist/events/TabEvent.js.map +1 -1
  66. package/dist/events/index.js.map +1 -1
  67. package/dist/index.js.map +1 -1
  68. package/dist/linker/Linker.d.ts +3 -0
  69. package/dist/linker/Linker.d.ts.map +1 -1
  70. package/dist/linker/Linker.js +70 -119
  71. package/dist/linker/Linker.js.map +1 -1
  72. package/dist/linker/LinkerLink.css +90 -25
  73. package/dist/linker/LinkerLink.css.map +1 -1
  74. package/dist/linker/LinkerLink.d.ts +20 -2
  75. package/dist/linker/LinkerLink.d.ts.map +1 -1
  76. package/dist/linker/LinkerLink.js +214 -23
  77. package/dist/linker/LinkerLink.js.map +1 -1
  78. package/dist/linker/LinkerOverlayContent.css +0 -4
  79. package/dist/linker/LinkerOverlayContent.css.map +1 -1
  80. package/dist/linker/LinkerOverlayContent.d.ts +11 -0
  81. package/dist/linker/LinkerOverlayContent.d.ts.map +1 -1
  82. package/dist/linker/LinkerOverlayContent.js +78 -33
  83. package/dist/linker/LinkerOverlayContent.js.map +1 -1
  84. package/dist/linker/LinkerUtils.d.ts +9 -2
  85. package/dist/linker/LinkerUtils.d.ts.map +1 -1
  86. package/dist/linker/LinkerUtils.js +9 -25
  87. package/dist/linker/LinkerUtils.js.map +1 -1
  88. package/dist/linker/ToolType.js.map +1 -1
  89. package/dist/panels/ChartColumnSelectorOverlay.d.ts +5 -5
  90. package/dist/panels/ChartColumnSelectorOverlay.d.ts.map +1 -1
  91. package/dist/panels/ChartColumnSelectorOverlay.js +4 -7
  92. package/dist/panels/ChartColumnSelectorOverlay.js.map +1 -1
  93. package/dist/panels/ChartFilterOverlay.d.ts +4 -4
  94. package/dist/panels/ChartFilterOverlay.d.ts.map +1 -1
  95. package/dist/panels/ChartFilterOverlay.js +2 -7
  96. package/dist/panels/ChartFilterOverlay.js.map +1 -1
  97. package/dist/panels/ChartPanel.d.ts.map +1 -1
  98. package/dist/panels/ChartPanel.js +11 -150
  99. package/dist/panels/ChartPanel.js.map +1 -1
  100. package/dist/panels/CommandHistoryPanel.d.ts.map +1 -1
  101. package/dist/panels/CommandHistoryPanel.js +1 -26
  102. package/dist/panels/CommandHistoryPanel.js.map +1 -1
  103. package/dist/panels/ConsolePanel.d.ts.map +1 -1
  104. package/dist/panels/ConsolePanel.js +12 -57
  105. package/dist/panels/ConsolePanel.js.map +1 -1
  106. package/dist/panels/DropdownFilterPanel.d.ts.map +1 -1
  107. package/dist/panels/DropdownFilterPanel.js +16 -122
  108. package/dist/panels/DropdownFilterPanel.js.map +1 -1
  109. package/dist/panels/FileExplorerPanel.js +4 -33
  110. package/dist/panels/FileExplorerPanel.js.map +1 -1
  111. package/dist/panels/FilterSetManager.d.ts.map +1 -1
  112. package/dist/panels/FilterSetManager.js +13 -86
  113. package/dist/panels/FilterSetManager.js.map +1 -1
  114. package/dist/panels/FilterSetManagerPanel.js +10 -64
  115. package/dist/panels/FilterSetManagerPanel.js.map +1 -1
  116. package/dist/panels/InputFilterPanel.d.ts.map +1 -1
  117. package/dist/panels/InputFilterPanel.js +8 -38
  118. package/dist/panels/InputFilterPanel.js.map +1 -1
  119. package/dist/panels/IrisGridPanel.d.ts.map +1 -1
  120. package/dist/panels/IrisGridPanel.js +24 -133
  121. package/dist/panels/IrisGridPanel.js.map +1 -1
  122. package/dist/panels/IrisGridPanelTooltip.d.ts +5 -5
  123. package/dist/panels/IrisGridPanelTooltip.d.ts.map +1 -1
  124. package/dist/panels/IrisGridPanelTooltip.js +2 -5
  125. package/dist/panels/IrisGridPanelTooltip.js.map +1 -1
  126. package/dist/panels/LogPanel.js +4 -22
  127. package/dist/panels/LogPanel.js.map +1 -1
  128. package/dist/panels/MarkdownNotebook.js +3 -30
  129. package/dist/panels/MarkdownNotebook.js.map +1 -1
  130. package/dist/panels/MarkdownPanel.js +2 -30
  131. package/dist/panels/MarkdownPanel.js.map +1 -1
  132. package/dist/panels/MockFileStorage.js +1 -14
  133. package/dist/panels/MockFileStorage.js.map +1 -1
  134. package/dist/panels/MockFileStorageTable.js +11 -30
  135. package/dist/panels/MockFileStorageTable.js.map +1 -1
  136. package/dist/panels/NotebookPanel.js +24 -182
  137. package/dist/panels/NotebookPanel.js.map +1 -1
  138. package/dist/panels/PandasPanel.js +1 -20
  139. package/dist/panels/PandasPanel.js.map +1 -1
  140. package/dist/panels/Panel.js +2 -38
  141. package/dist/panels/Panel.js.map +1 -1
  142. package/dist/panels/PanelContextMenu.js +7 -29
  143. package/dist/panels/PanelContextMenu.js.map +1 -1
  144. package/dist/panels/RenameDialog.js +2 -17
  145. package/dist/panels/RenameDialog.js.map +1 -1
  146. package/dist/panels/WidgetPanel.js +2 -20
  147. package/dist/panels/WidgetPanel.js.map +1 -1
  148. package/dist/panels/WidgetPanelTooltip.d.ts +5 -5
  149. package/dist/panels/WidgetPanelTooltip.d.ts.map +1 -1
  150. package/dist/panels/WidgetPanelTooltip.js +2 -4
  151. package/dist/panels/WidgetPanelTooltip.js.map +1 -1
  152. package/dist/panels/index.js.map +1 -1
  153. package/dist/prop-types/CommonPropTypes.js +0 -3
  154. package/dist/prop-types/CommonPropTypes.js.map +1 -1
  155. package/dist/prop-types/UIPropTypes.js.map +1 -1
  156. package/dist/prop-types/index.js.map +1 -1
  157. package/dist/redux/actionTypes.js.map +1 -1
  158. package/dist/redux/actions.js +8 -9
  159. package/dist/redux/actions.js.map +1 -1
  160. package/dist/redux/index.js.map +1 -1
  161. package/dist/redux/reducers/connection.js.map +1 -1
  162. package/dist/redux/reducers/index.js.map +1 -1
  163. package/dist/redux/reducers/sessionWrapper.js.map +1 -1
  164. package/dist/redux/selectors.js +10 -15
  165. package/dist/redux/selectors.js.map +1 -1
  166. package/package.json +21 -20
@@ -1 +1 @@
1
- {"version":3,"file":"MockFileStorageTable.js","names":["isDirectory","MockFileStorageTable","constructor","items","setSearch","search","setExpanded","path","expanded","charAt","length","i","item","filename","isExpanded","Promise","resolve","collapseAll","getViewportData","offset","getSnapshot","sortedRanges","Error","setViewport","viewport","loadedViewportData","onUpdateCallback","setFilters","config","setSorts","setReversed","isReversed","close","onUpdate","callback","jest","fn","size"],"sources":["../../src/panels/MockFileStorageTable.ts"],"sourcesContent":["import {\n FileStorageItem,\n FileStorageTable,\n isDirectory,\n} from '@deephaven/file-explorer';\nimport {\n ViewportData,\n IndexRange,\n StorageSnapshot,\n StorageTableViewport,\n FilterConfig,\n SortConfig,\n ViewportUpdateCallback,\n StorageListenerRemover,\n} from '@deephaven/storage';\n\nexport class MockFileStorageTable implements FileStorageTable {\n private items: FileStorageItem[];\n\n private onUpdateCallback?: ViewportUpdateCallback<FileStorageItem>;\n\n constructor(items: FileStorageItem[]) {\n this.items = items;\n }\n\n /* eslint-disable class-methods-use-this */\n setSearch(search: string): void {\n // no-op\n }\n\n setExpanded(path: string, expanded: boolean): Promise<void> {\n // only sets expansion for the FileExplorer in NewItemModal\n if (path.charAt(path.length - 1) === '/') {\n for (let i = 0; i < this.items.length; i += 1) {\n const item = this.items[i];\n if (\n isDirectory(item) &&\n (`${item.filename}/` === path || item.filename === path)\n ) {\n item.isExpanded = expanded;\n }\n }\n }\n return Promise.resolve();\n }\n\n collapseAll(): Promise<void> {\n for (let i = 0; i < this.items.length; i += 1) {\n const item = this.items[i];\n if (isDirectory(item)) {\n item.isExpanded = false;\n }\n }\n return Promise.resolve();\n }\n\n getViewportData(): Promise<ViewportData<FileStorageItem>> {\n return Promise.resolve({\n items: this.items, // Fill in with mock items\n offset: 0,\n });\n }\n\n async getSnapshot(\n sortedRanges: IndexRange[]\n ): Promise<StorageSnapshot<FileStorageItem>> {\n throw new Error('Method not implemented.');\n }\n\n async setViewport(viewport: StorageTableViewport): Promise<void> {\n const loadedViewportData = await this.getViewportData();\n this.onUpdateCallback?.(loadedViewportData);\n }\n\n setFilters(config: FilterConfig[] | null): void {\n // no-op\n }\n\n setSorts(config: SortConfig[] | null): void {\n // no-op\n }\n\n setReversed(isReversed: boolean): void {\n // no-op\n }\n\n close(): void {\n // no-op\n }\n\n onUpdate(\n callback: ViewportUpdateCallback<FileStorageItem>\n ): StorageListenerRemover {\n this.onUpdateCallback = callback;\n return jest.fn();\n }\n\n get size(): number {\n return this.items.length;\n }\n}\n\nexport default MockFileStorageTable;\n"],"mappings":";;;;;;AAAA,SAGEA,WAHF,QAIO,0BAJP;AAgBA,OAAO,MAAMC,oBAAN,CAAuD;EAK5DC,WAAW,CAACC,KAAD,EAA2B;IAAA;;IAAA;;IACpC,KAAKA,KAAL,GAAaA,KAAb;EACD;EAED;;;EACAC,SAAS,CAACC,MAAD,EAAuB,CAC9B;EACD;;EAEDC,WAAW,CAACC,IAAD,EAAeC,QAAf,EAAiD;IAC1D;IACA,IAAID,IAAI,CAACE,MAAL,CAAYF,IAAI,CAACG,MAAL,GAAc,CAA1B,MAAiC,GAArC,EAA0C;MACxC,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,KAAKR,KAAL,CAAWO,MAA/B,EAAuCC,CAAC,IAAI,CAA5C,EAA+C;QAC7C,IAAMC,IAAI,GAAG,KAAKT,KAAL,CAAWQ,CAAX,CAAb;;QACA,IACEX,WAAW,CAACY,IAAD,CAAX,KACC,UAAGA,IAAI,CAACC,QAAR,WAAwBN,IAAxB,IAAgCK,IAAI,CAACC,QAAL,KAAkBN,IADnD,CADF,EAGE;UACAK,IAAI,CAACE,UAAL,GAAkBN,QAAlB;QACD;MACF;IACF;;IACD,OAAOO,OAAO,CAACC,OAAR,EAAP;EACD;;EAEDC,WAAW,GAAkB;IAC3B,KAAK,IAAIN,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,KAAKR,KAAL,CAAWO,MAA/B,EAAuCC,CAAC,IAAI,CAA5C,EAA+C;MAC7C,IAAMC,IAAI,GAAG,KAAKT,KAAL,CAAWQ,CAAX,CAAb;;MACA,IAAIX,WAAW,CAACY,IAAD,CAAf,EAAuB;QACrBA,IAAI,CAACE,UAAL,GAAkB,KAAlB;MACD;IACF;;IACD,OAAOC,OAAO,CAACC,OAAR,EAAP;EACD;;EAEDE,eAAe,GAA2C;IACxD,OAAOH,OAAO,CAACC,OAAR,CAAgB;MACrBb,KAAK,EAAE,KAAKA,KADS;MACF;MACnBgB,MAAM,EAAE;IAFa,CAAhB,CAAP;EAID;;EAEKC,WAAW,CACfC,YADe,EAE4B;IAAA;MAC3C,MAAM,IAAIC,KAAJ,CAAU,yBAAV,CAAN;IAD2C;EAE5C;;EAEKC,WAAW,CAACC,QAAD,EAAgD;IAAA;;IAAA;MAAA;;MAC/D,IAAMC,kBAAkB,SAAS,KAAI,CAACP,eAAL,EAAjC;MACA,8BAAI,CAACQ,gBAAL,0FAAI,EAAoBD,kBAApB,CAAJ;IAF+D;EAGhE;;EAEDE,UAAU,CAACC,MAAD,EAAsC,CAC9C;EACD;;EAEDC,QAAQ,CAACD,MAAD,EAAoC,CAC1C;EACD;;EAEDE,WAAW,CAACC,UAAD,EAA4B,CACrC;EACD;;EAEDC,KAAK,GAAS,CACZ;EACD;;EAEDC,QAAQ,CACNC,QADM,EAEkB;IACxB,KAAKR,gBAAL,GAAwBQ,QAAxB;IACA,OAAOC,IAAI,CAACC,EAAL,EAAP;EACD;;EAEO,IAAJC,IAAI,GAAW;IACjB,OAAO,KAAKlC,KAAL,CAAWO,MAAlB;EACD;;AAnF2D;AAsF9D,eAAeT,oBAAf"}
1
+ {"version":3,"file":"MockFileStorageTable.js","names":["isDirectory","MockFileStorageTable","constructor","items","setSearch","search","setExpanded","path","expanded","charAt","length","i","item","filename","isExpanded","Promise","resolve","collapseAll","getViewportData","offset","getSnapshot","sortedRanges","Error","setViewport","viewport","loadedViewportData","onUpdateCallback","setFilters","config","setSorts","setReversed","isReversed","close","onUpdate","callback","jest","fn","size"],"sources":["../../src/panels/MockFileStorageTable.ts"],"sourcesContent":["import {\n FileStorageItem,\n FileStorageTable,\n isDirectory,\n} from '@deephaven/file-explorer';\nimport {\n ViewportData,\n IndexRange,\n StorageSnapshot,\n StorageTableViewport,\n FilterConfig,\n SortConfig,\n ViewportUpdateCallback,\n StorageListenerRemover,\n} from '@deephaven/storage';\n\nexport class MockFileStorageTable implements FileStorageTable {\n private items: FileStorageItem[];\n\n private onUpdateCallback?: ViewportUpdateCallback<FileStorageItem>;\n\n constructor(items: FileStorageItem[]) {\n this.items = items;\n }\n\n /* eslint-disable class-methods-use-this */\n setSearch(search: string): void {\n // no-op\n }\n\n setExpanded(path: string, expanded: boolean): Promise<void> {\n // only sets expansion for the FileExplorer in NewItemModal\n if (path.charAt(path.length - 1) === '/') {\n for (let i = 0; i < this.items.length; i += 1) {\n const item = this.items[i];\n if (\n isDirectory(item) &&\n (`${item.filename}/` === path || item.filename === path)\n ) {\n item.isExpanded = expanded;\n }\n }\n }\n return Promise.resolve();\n }\n\n collapseAll(): Promise<void> {\n for (let i = 0; i < this.items.length; i += 1) {\n const item = this.items[i];\n if (isDirectory(item)) {\n item.isExpanded = false;\n }\n }\n return Promise.resolve();\n }\n\n getViewportData(): Promise<ViewportData<FileStorageItem>> {\n return Promise.resolve({\n items: this.items, // Fill in with mock items\n offset: 0,\n });\n }\n\n async getSnapshot(\n sortedRanges: IndexRange[]\n ): Promise<StorageSnapshot<FileStorageItem>> {\n throw new Error('Method not implemented.');\n }\n\n async setViewport(viewport: StorageTableViewport): Promise<void> {\n const loadedViewportData = await this.getViewportData();\n this.onUpdateCallback?.(loadedViewportData);\n }\n\n setFilters(config: FilterConfig[] | null): void {\n // no-op\n }\n\n setSorts(config: SortConfig[] | null): void {\n // no-op\n }\n\n setReversed(isReversed: boolean): void {\n // no-op\n }\n\n close(): void {\n // no-op\n }\n\n onUpdate(\n callback: ViewportUpdateCallback<FileStorageItem>\n ): StorageListenerRemover {\n this.onUpdateCallback = callback;\n return jest.fn();\n }\n\n get size(): number {\n return this.items.length;\n }\n}\n\nexport default MockFileStorageTable;\n"],"mappings":";;;AAAA,SAGEA,WAAW,QACN,0BAA0B;AAYjC,OAAO,MAAMC,oBAAoB,CAA6B;EAK5DC,WAAW,CAACC,KAAwB,EAAE;IAAA;IAAA;IACpC,IAAI,CAACA,KAAK,GAAGA,KAAK;EACpB;;EAEA;EACAC,SAAS,CAACC,MAAc,EAAQ;IAC9B;EAAA;EAGFC,WAAW,CAACC,IAAY,EAAEC,QAAiB,EAAiB;IAC1D;IACA,IAAID,IAAI,CAACE,MAAM,CAACF,IAAI,CAACG,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;MACxC,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACR,KAAK,CAACO,MAAM,EAAEC,CAAC,IAAI,CAAC,EAAE;QAC7C,IAAMC,IAAI,GAAG,IAAI,CAACT,KAAK,CAACQ,CAAC,CAAC;QAC1B,IACEX,WAAW,CAACY,IAAI,CAAC,KAChB,UAAGA,IAAI,CAACC,QAAQ,WAAQN,IAAI,IAAIK,IAAI,CAACC,QAAQ,KAAKN,IAAI,CAAC,EACxD;UACAK,IAAI,CAACE,UAAU,GAAGN,QAAQ;QAC5B;MACF;IACF;IACA,OAAOO,OAAO,CAACC,OAAO,EAAE;EAC1B;EAEAC,WAAW,GAAkB;IAC3B,KAAK,IAAIN,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACR,KAAK,CAACO,MAAM,EAAEC,CAAC,IAAI,CAAC,EAAE;MAC7C,IAAMC,IAAI,GAAG,IAAI,CAACT,KAAK,CAACQ,CAAC,CAAC;MAC1B,IAAIX,WAAW,CAACY,IAAI,CAAC,EAAE;QACrBA,IAAI,CAACE,UAAU,GAAG,KAAK;MACzB;IACF;IACA,OAAOC,OAAO,CAACC,OAAO,EAAE;EAC1B;EAEAE,eAAe,GAA2C;IACxD,OAAOH,OAAO,CAACC,OAAO,CAAC;MACrBb,KAAK,EAAE,IAAI,CAACA,KAAK;MAAE;MACnBgB,MAAM,EAAE;IACV,CAAC,CAAC;EACJ;EAEMC,WAAW,CACfC,YAA0B,EACiB;IAAA;MAC3C,MAAM,IAAIC,KAAK,CAAC,yBAAyB,CAAC;IAAC;EAC7C;EAEMC,WAAW,CAACC,QAA8B,EAAiB;IAAA;IAAA;MAAA;MAC/D,IAAMC,kBAAkB,SAAS,KAAI,CAACP,eAAe,EAAE;MACvD,8BAAI,CAACQ,gBAAgB,0DAArB,gCAAI,EAAoBD,kBAAkB,CAAC;IAAC;EAC9C;EAEAE,UAAU,CAACC,MAA6B,EAAQ;IAC9C;EAAA;EAGFC,QAAQ,CAACD,MAA2B,EAAQ;IAC1C;EAAA;EAGFE,WAAW,CAACC,UAAmB,EAAQ;IACrC;EAAA;EAGFC,KAAK,GAAS;IACZ;EAAA;EAGFC,QAAQ,CACNC,QAAiD,EACzB;IACxB,IAAI,CAACR,gBAAgB,GAAGQ,QAAQ;IAChC,OAAOC,IAAI,CAACC,EAAE,EAAE;EAClB;EAEA,IAAIC,IAAI,GAAW;IACjB,OAAO,IAAI,CAAClC,KAAK,CAACO,MAAM;EAC1B;AACF;AAEA,eAAeT,oBAAoB"}