@adminide-stack/extension-api 9.0.1-alpha.0 → 9.0.6-alpha.1

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.
package/lib/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from './connections/remote-rpc';
7
7
  export * from './connections/proxy';
8
8
  export * from './connections/remote-rpc';
9
9
  export * from './constants';
10
+ export * from './middlewares';
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- export{graphQLContent}from'./interfaces/graphql.js';export{ContributableViewContainer,IContributableMenu}from'./interfaces/contributions/contribution.js';export{EMPTY_MODEL}from'./interfaces/model.js';export{match,score}from'./interfaces/text-document.js';export{ContextMenuDocument,CopyDocument,ExtensionsByLimitDocument,GalleryDocument,GalleryExtensionDocument,HideContextMenuDocument,ICacheControlScope,IClientContainerService,IEnvironmentSync,IExtensionKind,IExtensionType,IGraphqlCallType,IMailTemplateId,IMarkupKind,IMenuId,IMoleculerCronServiceName,IMoleculerServiceName,INotificationChangeType,INotificationSeverity,INotificationViewItemLabelKind,ISortEnum,InstallDocument,InstalledExtensionsDocument,NotificationsDocument,ProviderDefinitionDocument,RemoveDocument,RunMenuActionDocument,ShowContextMenuDocument,ShowNotificationDocument,useContextMenuLazyQuery,useContextMenuQuery,useContextMenuSuspenseQuery,useCopyMutation,useExtensionsByLimitLazyQuery,useExtensionsByLimitQuery,useExtensionsByLimitSuspenseQuery,useGalleryExtensionLazyQuery,useGalleryExtensionQuery,useGalleryExtensionSuspenseQuery,useGalleryLazyQuery,useGalleryQuery,useGallerySuspenseQuery,useHideContextMenuMutation,useInstallMutation,useInstalledExtensionsLazyQuery,useInstalledExtensionsQuery,useInstalledExtensionsSuspenseQuery,useNotificationsLazyQuery,useNotificationsQuery,useNotificationsSuspenseQuery,useProviderDefinitionMutation,useRemoveMutation,useRunMenuActionMutation,useShowContextMenuMutation,useShowNotificationLazyQuery,useShowNotificationQuery,useShowNotificationSuspenseQuery}from'./interfaces/generated-models.js';export{WebviewContentPurpose}from'./interfaces/webview/webview.js';export{EditorPosition}from'./protocol/editor-missing-types.js';export{HostIdentifier,ProxyIdentifier,RequestType,TransportType,createExtHostContextProxyIdentifier,createMainContextProxyIdentifier,getStringIdentifierForProxy}from'./protocol/proxy-identifier.js';export{modes}from'./protocol/temporary-types.js';export{ClientContext}from'./protocol/client.protocol.js';export{ISuggestDataDtoField,ISuggestResultDtoField,IdObject,ObjectIdentifier,reviveWorkspaceEditDto}from'./protocol/common.protocol.js';export{editorGroupToViewColumn,viewColumnToEditorGroup}from'./protocol/shared/editor.js';export{ExtHostContext,MainContext}from'./protocol/server.protocol.js';export{ArgType,MessageBuffer,MessageIO,MessageType,RPCProtocol,RequestInitiator,ResponsiveState,safeStringify}from'./protocol/rpc-protocol.js';export{RPCLogger}from'./protocol/rpc-logger.js';export{createBarrier}from'./utils/helper.test.js';export{flattenAndCompact,generateContributionId,isPromise,isSubscribable,tryCatchPromise}from'./utils/util.js';export{asError,isErrorLike}from'./utils/errors.js';export{getScriptURLFromExtensionManifest}from'./utils/extensions.js';export{combineLatestOrDefault}from'./utils/rxjs/combineLatestOrDefault.js';import*as pathsUtil from'./utils/paths-util.js';export{pathsUtil as path };export{ConfigurationTarget,Disposable,LogLevel,RelativePattern}from'./core/types/ext-host-types.js';export{Expression,TemplateExpression,parse,parseTemplate}from'./core/expr/evaluator.js';export{Lexer,OPERATORS,OPERATOR_CHARS,TemplateLexer,TokenType}from'./core/expr/lexer.js';export{Parser,TemplateParser}from'./core/expr/parser.js';export{ConnectionError,ConnectionErrors,createConnection}from'./connections/jsonrpc2/connection.js';export{createWebWorkerMessageTransports}from'./connections/jsonrpc2/transports/webWorker.js';export{BrowserConsoleTracer,noopTracer}from'./connections/jsonrpc2/trace.js';export{createMessagePipe,createMessageTransports}from'./connections/jsonrpc2/test-helper.js';export{BrowserRemoteRPC}from'./connections/remote-rpc/browser-remote-rpc.js';export{createExtensionProxy,createProxy,createProxyAndHandleRequests,handleRequests,handleServerProxyRequest,handleServerProxyRequests}from'./connections/proxy/proxy.js';export{ClientTypes}from'./constants/types.js';export{COMMAND_ACTION_TYPES,CONTRIBUTION_ACTION_TYPES,EXTENSION_ACTION_TYPES,SETTINGS_ACTION_TYPES}from'./constants/action-types.js';
1
+ export{graphQLContent}from'./interfaces/graphql.js';export{ContributableViewContainer,IContributableMenu}from'./interfaces/contributions/contribution.js';export{EMPTY_MODEL}from'./interfaces/model.js';export{match,score}from'./interfaces/text-document.js';export{ContextMenuDocument,CopyDocument,ExtensionsByLimitDocument,GalleryDocument,GalleryExtensionDocument,HideContextMenuDocument,ICacheControlScope,IClientContainerService,IEnvironmentSync,IExtensionKind,IExtensionType,IGraphqlCallType,IMailTemplateId,IMarkupKind,IMenuId,IMoleculerCronServiceName,IMoleculerServiceName,INotificationChangeType,INotificationSeverity,INotificationViewItemLabelKind,ISortEnum,InstallDocument,InstalledExtensionsDocument,NotificationsDocument,ProviderDefinitionDocument,RemoveDocument,RunMenuActionDocument,ShowContextMenuDocument,ShowNotificationDocument,useContextMenuLazyQuery,useContextMenuQuery,useContextMenuSuspenseQuery,useCopyMutation,useExtensionsByLimitLazyQuery,useExtensionsByLimitQuery,useExtensionsByLimitSuspenseQuery,useGalleryExtensionLazyQuery,useGalleryExtensionQuery,useGalleryExtensionSuspenseQuery,useGalleryLazyQuery,useGalleryQuery,useGallerySuspenseQuery,useHideContextMenuMutation,useInstallMutation,useInstalledExtensionsLazyQuery,useInstalledExtensionsQuery,useInstalledExtensionsSuspenseQuery,useNotificationsLazyQuery,useNotificationsQuery,useNotificationsSuspenseQuery,useProviderDefinitionMutation,useRemoveMutation,useRunMenuActionMutation,useShowContextMenuMutation,useShowNotificationLazyQuery,useShowNotificationQuery,useShowNotificationSuspenseQuery}from'./interfaces/generated-models.js';export{WebviewContentPurpose}from'./interfaces/webview/webview.js';export{EditorPosition}from'./protocol/editor-missing-types.js';export{HostIdentifier,ProxyIdentifier,RequestType,TransportType,createExtHostContextProxyIdentifier,createMainContextProxyIdentifier,getStringIdentifierForProxy}from'./protocol/proxy-identifier.js';export{modes}from'./protocol/temporary-types.js';export{ClientContext}from'./protocol/client.protocol.js';export{ISuggestDataDtoField,ISuggestResultDtoField,IdObject,ObjectIdentifier,reviveWorkspaceEditDto}from'./protocol/common.protocol.js';export{editorGroupToViewColumn,viewColumnToEditorGroup}from'./protocol/shared/editor.js';export{ExtHostContext,MainContext}from'./protocol/server.protocol.js';export{ArgType,MessageBuffer,MessageIO,MessageType,RPCProtocol,RequestInitiator,ResponsiveState,safeStringify}from'./protocol/rpc-protocol.js';export{RPCLogger}from'./protocol/rpc-logger.js';export{createBarrier}from'./utils/helper.test.js';export{flattenAndCompact,generateContributionId,isPromise,isSubscribable,tryCatchPromise}from'./utils/util.js';export{asError,isErrorLike}from'./utils/errors.js';export{getScriptURLFromExtensionManifest}from'./utils/extensions.js';export{combineLatestOrDefault}from'./utils/rxjs/combineLatestOrDefault.js';import*as pathsUtil from'./utils/paths-util.js';export{pathsUtil as path };export{ConfigurationTarget,Disposable,LogLevel,RelativePattern}from'./core/types/ext-host-types.js';export{Expression,TemplateExpression,parse,parseTemplate}from'./core/expr/evaluator.js';export{Lexer,OPERATORS,OPERATOR_CHARS,TemplateLexer,TokenType}from'./core/expr/lexer.js';export{Parser,TemplateParser}from'./core/expr/parser.js';export{ConnectionError,ConnectionErrors,createConnection}from'./connections/jsonrpc2/connection.js';export{createWebWorkerMessageTransports}from'./connections/jsonrpc2/transports/webWorker.js';export{BrowserConsoleTracer,noopTracer}from'./connections/jsonrpc2/trace.js';export{createMessagePipe,createMessageTransports}from'./connections/jsonrpc2/test-helper.js';export{BrowserRemoteRPC}from'./connections/remote-rpc/browser-remote-rpc.js';export{createExtensionProxy,createProxy,createProxyAndHandleRequests,handleRequests,handleServerProxyRequest,handleServerProxyRequests}from'./connections/proxy/proxy.js';export{ClientTypes}from'./constants/types.js';export{COMMAND_ACTION_TYPES,CONTRIBUTION_ACTION_TYPES,EXTENSION_ACTION_TYPES,SETTINGS_ACTION_TYPES}from'./constants/action-types.js';export{middleware}from'./middlewares/extensionController.js';
@@ -0,0 +1,3 @@
1
+ export declare const middleware: ({ context }: {
2
+ context: any;
3
+ }, dataLoader: any, next: any) => Promise<void>;
@@ -0,0 +1,5 @@
1
+ import {IClientContainerService}from'../interfaces/generated-models.js';const middleware = async ({ context }, dataLoader, next) => {
2
+ const { container } = context;
3
+ container.bind(IClientContainerService.ExtensionController).toConstantValue({});
4
+ await next();
5
+ };export{middleware};
@@ -0,0 +1 @@
1
+ export * from './extensionController';
@@ -0,0 +1 @@
1
+ export * from './view-component';
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ interface IViewComponent {
3
+ viewId: string;
4
+ visible: boolean;
5
+ elementProps?: any;
6
+ }
7
+ export declare const ViewComponent: (props: IViewComponent) => React.JSX.Element;
8
+ export {};
@@ -0,0 +1,27 @@
1
+ import React__default,{useState,useEffect}from'react';import {Subscription}from'rxjs';import {map}from'rxjs/operators/index.js';import {useExtensionController}from'../../useExtensionController.js';import {ContributableViewContainer}from'../../../interfaces/contributions/contribution.js';const ViewComponent = (props) => {
2
+ const [panelView, setPanelView] = useState(null);
3
+ const controller = useExtensionController();
4
+ const subscriptions = new Subscription();
5
+ useEffect(() => {
6
+ subscriptions.add(controller?.services.panelView
7
+ .getPanelViews(ContributableViewContainer.Panel)
8
+ .pipe(map((views) => ({ views })))
9
+ .subscribe((stateUpdate) => {
10
+ const view = stateUpdate.views.find((v) => v.id === props.viewId);
11
+ setPanelView(view);
12
+ }));
13
+ return () => {
14
+ subscriptions.unsubscribe();
15
+ };
16
+ }, [controller?.services, props.viewId]);
17
+ if (!(props.viewId && props.visible && panelView)) {
18
+ return null;
19
+ }
20
+ const { reactElement, id } = panelView;
21
+ return (React__default.createElement("div", { id: id }, reactElement
22
+ ? {
23
+ ...reactElement,
24
+ props: { ...reactElement.props, ...props.elementProps },
25
+ }
26
+ : null));
27
+ };export{ViewComponent};
@@ -0,0 +1 @@
1
+ export * from './ViewComponent';
@@ -0,0 +1,2 @@
1
+ export * from './useExtensionController';
2
+ export * from './components';
@@ -0,0 +1 @@
1
+ export{useExtensionController}from'./useExtensionController.js';export{ViewComponent}from'./components/view-component/ViewComponent.js';
@@ -0,0 +1,2 @@
1
+ import { IController } from '../interfaces/controller';
2
+ export declare function useExtensionController(): IController;
@@ -0,0 +1,11 @@
1
+ import*as React from'react';import {InversifyContext,useInjection}from'@common-stack/client-react';import {IClientContainerService}from'../interfaces/generated-models.js';const isBrowser = typeof document !== 'undefined';
2
+ function useExtensionController() {
3
+ const { container } = React.useContext(InversifyContext);
4
+ const extensionController = container.isBound(IClientContainerService.ExtensionController)
5
+ ? useInjection(IClientContainerService.ExtensionController)
6
+ : null;
7
+ if (!isBrowser) {
8
+ return null;
9
+ }
10
+ return extensionController;
11
+ }export{useExtensionController};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adminide-stack/extension-api",
3
- "version": "9.0.1-alpha.0",
3
+ "version": "9.0.6-alpha.1",
4
4
  "description": "Workbench core for higher packages to depend on",
5
5
  "license": "ISC",
6
6
  "author": "CDMBase LLC",
@@ -60,5 +60,5 @@
60
60
  "typescript": {
61
61
  "definition": "lib/index.d.ts"
62
62
  },
63
- "gitHead": "2142ed6400eaa3ba45116696752e7747e2b4c5b1"
63
+ "gitHead": "5e91d53d54fe4f7ba399e4f1803f988747364dfa"
64
64
  }