@actdim/dynstruct 1.0.5 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/appDomain/appContracts.d.ts +1 -1
  2. package/dist/appDomain/appContracts.es.js.map +1 -1
  3. package/dist/componentModel/DynamicContent.d.ts +2 -5
  4. package/dist/componentModel/DynamicContent.d.ts.map +1 -1
  5. package/dist/componentModel/DynamicContent.es.js +7 -6
  6. package/dist/componentModel/DynamicContent.es.js.map +1 -1
  7. package/dist/componentModel/adapters.d.ts +13 -0
  8. package/dist/componentModel/adapters.d.ts.map +1 -0
  9. package/dist/componentModel/adapters.es.js +30 -0
  10. package/dist/componentModel/adapters.es.js.map +1 -0
  11. package/dist/componentModel/componentContext.es.js +1 -1
  12. package/dist/componentModel/componentModel.d.ts +55 -43
  13. package/dist/componentModel/componentModel.d.ts.map +1 -1
  14. package/dist/componentModel/componentModel.es.js +257 -225
  15. package/dist/componentModel/componentModel.es.js.map +1 -1
  16. package/dist/componentModel/scope.d.ts +3 -6
  17. package/dist/componentModel/scope.d.ts.map +1 -1
  18. package/dist/componentModel/scope.es.js +2 -2
  19. package/dist/componentModel/scope.es.js.map +1 -1
  20. package/dist/net/request.d.ts +2 -2
  21. package/dist/net/request.d.ts.map +1 -1
  22. package/dist/net/request.es.js.map +1 -1
  23. package/dist/services/NavService.d.ts +4 -5
  24. package/dist/services/NavService.d.ts.map +1 -1
  25. package/dist/services/NavService.es.js +26 -27
  26. package/dist/services/NavService.es.js.map +1 -1
  27. package/dist/services/ServiceProvider.d.ts +6 -0
  28. package/dist/services/ServiceProvider.d.ts.map +1 -0
  29. package/dist/services/ServiceProvider.es.js +17 -0
  30. package/dist/services/ServiceProvider.es.js.map +1 -0
  31. package/dist/services/StorageService.d.ts +4 -4
  32. package/dist/services/StorageService.d.ts.map +1 -1
  33. package/dist/services/StorageService.es.js +13 -12
  34. package/dist/services/StorageService.es.js.map +1 -1
  35. package/package.json +3 -3
  36. package/dist/appDomain/adapters.d.ts +0 -10
  37. package/dist/appDomain/adapters.d.ts.map +0 -1
  38. package/dist/appDomain/adapters.es.js +0 -25
  39. package/dist/appDomain/adapters.es.js.map +0 -1
  40. package/dist/appDomain/reactHooks.d.ts +0 -6
  41. package/dist/appDomain/reactHooks.d.ts.map +0 -1
  42. package/dist/appDomain/reactHooks.es.js +0 -12
  43. package/dist/appDomain/reactHooks.es.js.map +0 -1
  44. package/dist/dist/componentModel/componentContext.es.es.js +0 -15
  45. package/dist/dist/componentModel/componentContext.es.es.js.map +0 -1
  46. package/dist/dist/componentModel/componentModel.es.es.js +0 -260
  47. package/dist/dist/componentModel/componentModel.es.es.js.map +0 -1
  48. package/dist/dist/globals.es.es.js +0 -10
  49. package/dist/dist/globals.es.es.js.map +0 -1
  50. package/dist/dist/reactHooks.es.es.js +0 -9
  51. package/dist/dist/reactHooks.es.es.js.map +0 -1
@@ -127,7 +127,7 @@ export type BaseAppDomainConfig<TSecurityDomainConfig extends BaseSecurityDomain
127
127
  security: TSecurityDomainConfig;
128
128
  apis: Record<string, TApiConfig>;
129
129
  };
130
- export type BaseAppBusChannels<TChannel extends keyof BaseAppMsgStruct | Array<keyof BaseAppMsgStruct>> = KeysOf<BaseAppMsgStruct, TChannel>;
130
+ export type BaseAppMsgChannels<TChannel extends keyof BaseAppMsgStruct | Array<keyof BaseAppMsgStruct>> = KeysOf<BaseAppMsgStruct, TChannel>;
131
131
  export type BaseAppContext<TMsgStruct extends BaseAppMsgStruct = BaseAppMsgStruct> = ComponentRegistryContext<TMsgStruct> & {};
132
132
  export declare const useBaseAppContext: <TMsgStruct extends BaseAppMsgStruct = BaseAppMsgStruct>() => BaseAppContext<TMsgStruct>;
133
133
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"appContracts.es.js","sources":["../../src/appDomain/appContracts.ts"],"sourcesContent":["import { $CG_ERROR, MsgBus, MsgStruct, MsgStructBase, MsgStructFactory } from \"@actdim/msgmesh/msgBusCore\";\r\nimport { BaseSecurityDomainConfig as BaseSecurityDomainConfig, BaseSecurityMsgStruct } from \"@/appDomain/security/securityContracts\";\r\nimport { ReactNode } from \"react\";\r\nimport { KeysOf } from \"@actdim/utico/typeCore\";\r\nimport { ComponentRegistryContext } from \"@/componentModel/contracts\";\r\nimport { useComponentContext } from \"@/componentModel/componentContext\";\r\n\r\nexport const $NAV_GOTO = \"APP-NAV-GOTO\";\r\nexport const $NAV_GET_CONTEXT = \"APP-NAV-GET-CONTEXT\";\r\nexport const $NAV_CONTEXT_CHANGED = \"APP-NAV-CONTEXT-CHANGED\";\r\nexport const $NAV_READ_HISTORY = \"APP-NAV-READ-HISTORY\";\r\n// TOAST\r\nexport const $NOTICE = \"APP-NOTICE\";\r\nexport const $CONFIG_GET = \"APP-CONFIG-GET\";\r\n// ERROR?\r\nexport const $FETCH = \"APP-FETCH\";\r\n\r\nexport const $KV_STORE_GET = \"APP-KV-STORE-GET\";\r\nexport const $KV_STORE_SET = \"APP-KV-STORE-SET\";\r\nexport const $KV_STORE_REMOVE = \"APP-KV-STORE-REMOVE\";\r\n// TODO: has, clear, entries\r\n\r\nexport type Module = \"security\" | \"api-client\";\r\n\r\nexport type NavPath = {\r\n /**\r\n * A URL pathname, beginning with a /.\r\n */\r\n pathname: string;\r\n /**\r\n * A URL search string, beginning with a ?.\r\n */\r\n search: string;\r\n /**\r\n * A URL fragment identifier, beginning with a #.\r\n */\r\n hash: string;\r\n};\r\n\r\nexport type NavLocation<State = any> = NavPath & {\r\n /**\r\n * A value of arbitrary data associated with this location.\r\n */\r\n state: State;\r\n /**\r\n * A unique string associated with this location. May be used to safely store\r\n * and retrieve data in some other storage API, like `localStorage`.\r\n *\r\n * Note: This value is always \"default\" on the initial location.\r\n */\r\n key: string;\r\n};\r\n\r\nexport type NavAction =\r\n /**\r\n * A POP indicates a change to an arbitrary index in the history stack, such\r\n * as a back or forward navigation. It does not describe the direction of the\r\n * navigation, only that the current index changed.\r\n *\r\n * Note: This is the default action for newly created history objects.\r\n */\r\n | \"POP\"\r\n /**\r\n * A PUSH indicates a new entry being added to the history stack, such as when\r\n * a link is clicked and a new page loads. When this happens, all subsequent\r\n * entries in the stack are lost.\r\n */\r\n | \"PUSH\"\r\n /**\r\n * A REPLACE indicates the entry at the current index in the history stack\r\n * being replaced by a new one.\r\n */\r\n | \"REPLACE\";\r\n\r\n// AppRouteParams\r\nexport type NavRouteParams = Record<string, string | undefined>;\r\n\r\n// AppRoute\r\nexport type NavRoute<TParams extends NavRouteParams = NavRouteParams> = {\r\n path(params?: TParams): string;\r\n match(path: string): TParams;\r\n element: ReactNode;\r\n defaultParams?: TParams;\r\n};\r\n\r\nexport type NavRoutes = Record<string, NavRoute>;\r\n\r\ntype NavRouteStruct<TNavRoutes extends NavRoutes> = {\r\n [K in keyof TNavRoutes]: {\r\n route: K;\r\n params?: TNavRoutes[K][\"defaultParams\"];\r\n };\r\n}[keyof TNavRoutes];\r\n\r\nexport type NavContext = {\r\n // route?: NavRoute;\r\n location?: NavLocation;\r\n searchParams?: URLSearchParams;\r\n params?: NavRouteParams;\r\n navType?: NavAction;\r\n};\r\n\r\nexport type NavHistory = Array<NavContext>;\r\n\r\n// OperationContext?\r\nexport type AppError<TModule = Module> = {\r\n module: TModule;\r\n // code: string;\r\n type: string;\r\n title?: string;\r\n source?: any;\r\n details?: any;\r\n // instance?: string;\r\n timestamp?: string;\r\n // errors: AppError[];\r\n traceId?: string;\r\n field?: string;\r\n reason?: string;\r\n};\r\n\r\n// Base(App)ApiMsgStruct\r\nexport type BaseApiMsgStruct = BaseSecurityMsgStruct &\r\n MsgStructFactory<{\r\n // \"GET-VERSION\"?: {\r\n // in: any;\r\n // };\r\n }>;\r\n\r\n// BaseAppMsgStruct\r\nexport type BaseAppMsgStruct<TNavRoutes extends NavRoutes = NavRoutes> = BaseApiMsgStruct &\r\n MsgStructFactory<\r\n {\r\n [$NOTICE]: {\r\n in: {\r\n text: string;\r\n title?: string;\r\n type: any;\r\n };\r\n out: void;\r\n };\r\n [$CONFIG_GET]: {\r\n in: void;\r\n out: BaseAppDomainConfig;\r\n };\r\n [$NAV_GOTO]: {\r\n in: string | number;\r\n ex: NavRouteStruct<TNavRoutes>;\r\n out: void;\r\n };\r\n [$NAV_GET_CONTEXT]: {\r\n in: void;\r\n out: NavContext;\r\n };\r\n [$NAV_CONTEXT_CHANGED]: {\r\n in: NavContext;\r\n out: void;\r\n };\r\n [$NAV_READ_HISTORY]: {\r\n in: number;\r\n out: NavContext;\r\n };\r\n [$FETCH]: {\r\n in: {\r\n url: string;\r\n params: RequestInit;\r\n };\r\n out: Response;\r\n };\r\n [$KV_STORE_GET]: {\r\n in: {\r\n key: string;\r\n useEncryption?: boolean;\r\n };\r\n out: string;\r\n };\r\n [$KV_STORE_SET]: {\r\n in: {\r\n key: string;\r\n value: any;\r\n useEncryption?: boolean;\r\n };\r\n out: void;\r\n };\r\n [$KV_STORE_REMOVE]: {\r\n in: {\r\n key: string;\r\n };\r\n out: void;\r\n };\r\n } & MsgStructBase\r\n >;\r\n\r\nexport type BaseApiConfig = {\r\n url?: string;\r\n versions?: string[];\r\n};\r\n\r\n// BaseApp(Domain)Config\r\nexport type BaseAppDomainConfig<\r\n TSecurityDomainConfig extends BaseSecurityDomainConfig = BaseSecurityDomainConfig,\r\n TApiConfig extends BaseApiConfig = BaseApiConfig\r\n> = {\r\n id: string;\r\n name?: string;\r\n baseUrl: string;\r\n security: TSecurityDomainConfig;\r\n apis: Record<string, TApiConfig>;\r\n // HATEOAS? (React Admin)\r\n};\r\n\r\nexport type BaseAppBusChannels<TChannel extends keyof BaseAppMsgStruct | Array<keyof BaseAppMsgStruct>> = KeysOf<BaseAppMsgStruct, TChannel>;\r\n\r\nexport type BaseAppContext<TMsgStruct extends BaseAppMsgStruct = BaseAppMsgStruct> = ComponentRegistryContext<TMsgStruct> & {\r\n // securityProvider: SecurityProvider;\r\n};\r\n\r\nexport const useBaseAppContext = <TMsgStruct extends BaseAppMsgStruct = BaseAppMsgStruct>() => useComponentContext() as BaseAppContext<TMsgStruct>;"],"names":["$NAV_GOTO","$NAV_GET_CONTEXT","$NAV_CONTEXT_CHANGED","$NAV_READ_HISTORY","$NOTICE","$CONFIG_GET","$FETCH","$KV_STORE_GET","$KV_STORE_SET","$KV_STORE_REMOVE","useBaseAppContext","useComponentContext"],"mappings":";AAOO,MAAMA,IAAY,gBACZC,IAAmB,uBACnBC,IAAuB,2BACvBC,IAAoB,wBAEpBC,IAAU,cACVC,IAAc,kBAEdC,IAAS,aAETC,IAAgB,oBAChBC,IAAgB,oBAChBC,IAAmB,uBAqMnBC,IAAoB,MAA8DC,EAAA;"}
1
+ {"version":3,"file":"appContracts.es.js","sources":["../../src/appDomain/appContracts.ts"],"sourcesContent":["import { $CG_ERROR, MsgBus, MsgStruct, MsgStructBase, MsgStructFactory } from \"@actdim/msgmesh/msgBusCore\";\r\nimport { BaseSecurityDomainConfig as BaseSecurityDomainConfig, BaseSecurityMsgStruct } from \"@/appDomain/security/securityContracts\";\r\nimport { ReactNode } from \"react\";\r\nimport { KeysOf } from \"@actdim/utico/typeCore\";\r\nimport { ComponentRegistryContext } from \"@/componentModel/contracts\";\r\nimport { useComponentContext } from \"@/componentModel/componentContext\";\r\n\r\nexport const $NAV_GOTO = \"APP-NAV-GOTO\";\r\nexport const $NAV_GET_CONTEXT = \"APP-NAV-GET-CONTEXT\";\r\nexport const $NAV_CONTEXT_CHANGED = \"APP-NAV-CONTEXT-CHANGED\";\r\nexport const $NAV_READ_HISTORY = \"APP-NAV-READ-HISTORY\";\r\n// TOAST\r\nexport const $NOTICE = \"APP-NOTICE\";\r\nexport const $CONFIG_GET = \"APP-CONFIG-GET\";\r\n// ERROR?\r\nexport const $FETCH = \"APP-FETCH\";\r\n\r\nexport const $KV_STORE_GET = \"APP-KV-STORE-GET\";\r\nexport const $KV_STORE_SET = \"APP-KV-STORE-SET\";\r\nexport const $KV_STORE_REMOVE = \"APP-KV-STORE-REMOVE\";\r\n// TODO: has, clear, entries\r\n\r\nexport type Module = \"security\" | \"api-client\";\r\n\r\nexport type NavPath = {\r\n /**\r\n * A URL pathname, beginning with a /.\r\n */\r\n pathname: string;\r\n /**\r\n * A URL search string, beginning with a ?.\r\n */\r\n search: string;\r\n /**\r\n * A URL fragment identifier, beginning with a #.\r\n */\r\n hash: string;\r\n};\r\n\r\nexport type NavLocation<State = any> = NavPath & {\r\n /**\r\n * A value of arbitrary data associated with this location.\r\n */\r\n state: State;\r\n /**\r\n * A unique string associated with this location. May be used to safely store\r\n * and retrieve data in some other storage API, like `localStorage`.\r\n *\r\n * Note: This value is always \"default\" on the initial location.\r\n */\r\n key: string;\r\n};\r\n\r\nexport type NavAction =\r\n /**\r\n * A POP indicates a change to an arbitrary index in the history stack, such\r\n * as a back or forward navigation. It does not describe the direction of the\r\n * navigation, only that the current index changed.\r\n *\r\n * Note: This is the default action for newly created history objects.\r\n */\r\n | \"POP\"\r\n /**\r\n * A PUSH indicates a new entry being added to the history stack, such as when\r\n * a link is clicked and a new page loads. When this happens, all subsequent\r\n * entries in the stack are lost.\r\n */\r\n | \"PUSH\"\r\n /**\r\n * A REPLACE indicates the entry at the current index in the history stack\r\n * being replaced by a new one.\r\n */\r\n | \"REPLACE\";\r\n\r\n// AppRouteParams\r\nexport type NavRouteParams = Record<string, string | undefined>;\r\n\r\n// AppRoute\r\nexport type NavRoute<TParams extends NavRouteParams = NavRouteParams> = {\r\n path(params?: TParams): string;\r\n match(path: string): TParams;\r\n element: ReactNode;\r\n defaultParams?: TParams;\r\n};\r\n\r\nexport type NavRoutes = Record<string, NavRoute>;\r\n\r\ntype NavRouteStruct<TNavRoutes extends NavRoutes> = {\r\n [K in keyof TNavRoutes]: {\r\n route: K;\r\n params?: TNavRoutes[K][\"defaultParams\"];\r\n };\r\n}[keyof TNavRoutes];\r\n\r\nexport type NavContext = {\r\n // route?: NavRoute;\r\n location?: NavLocation;\r\n searchParams?: URLSearchParams;\r\n params?: NavRouteParams;\r\n navType?: NavAction;\r\n};\r\n\r\nexport type NavHistory = Array<NavContext>;\r\n\r\n// OperationContext?\r\nexport type AppError<TModule = Module> = {\r\n module: TModule;\r\n // code: string;\r\n type: string;\r\n title?: string;\r\n source?: any;\r\n details?: any;\r\n // instance?: string;\r\n timestamp?: string;\r\n // errors: AppError[];\r\n traceId?: string;\r\n field?: string;\r\n reason?: string;\r\n};\r\n\r\n// Base(App)ApiMsgStruct\r\nexport type BaseApiMsgStruct = BaseSecurityMsgStruct &\r\n MsgStructFactory<{\r\n // \"GET-VERSION\"?: {\r\n // in: any;\r\n // };\r\n }>;\r\n\r\n// BaseAppMsgStruct\r\nexport type BaseAppMsgStruct<TNavRoutes extends NavRoutes = NavRoutes> = BaseApiMsgStruct &\r\n MsgStructFactory<\r\n {\r\n [$NOTICE]: {\r\n in: {\r\n text: string;\r\n title?: string;\r\n type: any;\r\n };\r\n out: void;\r\n };\r\n [$CONFIG_GET]: {\r\n in: void;\r\n out: BaseAppDomainConfig;\r\n };\r\n [$NAV_GOTO]: {\r\n in: string | number;\r\n ex: NavRouteStruct<TNavRoutes>;\r\n out: void;\r\n };\r\n [$NAV_GET_CONTEXT]: {\r\n in: void;\r\n out: NavContext;\r\n };\r\n [$NAV_CONTEXT_CHANGED]: {\r\n in: NavContext;\r\n out: void;\r\n };\r\n [$NAV_READ_HISTORY]: {\r\n in: number;\r\n out: NavContext;\r\n };\r\n [$FETCH]: {\r\n in: {\r\n url: string;\r\n params: RequestInit;\r\n };\r\n out: Response;\r\n };\r\n [$KV_STORE_GET]: {\r\n in: {\r\n key: string;\r\n useEncryption?: boolean;\r\n };\r\n out: string;\r\n };\r\n [$KV_STORE_SET]: {\r\n in: {\r\n key: string;\r\n value: any;\r\n useEncryption?: boolean;\r\n };\r\n out: void;\r\n };\r\n [$KV_STORE_REMOVE]: {\r\n in: {\r\n key: string;\r\n };\r\n out: void;\r\n };\r\n } & MsgStructBase\r\n >;\r\n\r\nexport type BaseApiConfig = {\r\n url?: string;\r\n versions?: string[];\r\n};\r\n\r\n// BaseApp(Domain)Config\r\nexport type BaseAppDomainConfig<\r\n TSecurityDomainConfig extends BaseSecurityDomainConfig = BaseSecurityDomainConfig,\r\n TApiConfig extends BaseApiConfig = BaseApiConfig\r\n> = {\r\n id: string;\r\n name?: string;\r\n baseUrl: string;\r\n security: TSecurityDomainConfig;\r\n apis: Record<string, TApiConfig>;\r\n // HATEOAS? (React Admin)\r\n};\r\n\r\nexport type BaseAppMsgChannels<TChannel extends keyof BaseAppMsgStruct | Array<keyof BaseAppMsgStruct>> = KeysOf<BaseAppMsgStruct, TChannel>;\r\n\r\nexport type BaseAppContext<TMsgStruct extends BaseAppMsgStruct = BaseAppMsgStruct> = ComponentRegistryContext<TMsgStruct> & {\r\n // securityProvider: SecurityProvider;\r\n};\r\n\r\nexport const useBaseAppContext = <TMsgStruct extends BaseAppMsgStruct = BaseAppMsgStruct>() => useComponentContext() as BaseAppContext<TMsgStruct>;"],"names":["$NAV_GOTO","$NAV_GET_CONTEXT","$NAV_CONTEXT_CHANGED","$NAV_READ_HISTORY","$NOTICE","$CONFIG_GET","$FETCH","$KV_STORE_GET","$KV_STORE_SET","$KV_STORE_REMOVE","useBaseAppContext","useComponentContext"],"mappings":";AAOO,MAAMA,IAAY,gBACZC,IAAmB,uBACnBC,IAAuB,2BACvBC,IAAoB,wBAEpBC,IAAU,cACVC,IAAc,kBAEdC,IAAS,aAETC,IAAgB,oBAChBC,IAAgB,oBAChBC,IAAmB,uBAqMnBC,IAAoB,MAA8DC,EAAA;"}
@@ -1,4 +1,4 @@
1
- import { ComponentParams, ComponentStruct } from './componentModel';
1
+ import { Component, ComponentParams, ComponentStruct } from './componentModel';
2
2
  import { default as React } from 'react';
3
3
  import { MsgStruct } from '@actdim/msgmesh/msgBusCore';
4
4
  export type DynamicContentStruct<TData = any, TMsgStruct extends MsgStruct = MsgStruct> = ComponentStruct<TMsgStruct, {
@@ -6,9 +6,6 @@ export type DynamicContentStruct<TData = any, TMsgStruct extends MsgStruct = Msg
6
6
  data: TData;
7
7
  render: () => React.ReactNode;
8
8
  };
9
- methods: {};
10
- children: {};
11
- msgScope: {};
12
9
  }>;
13
- export declare function useDynamicContent<TData = any>(params: ComponentParams<DynamicContentStruct<TData>>): any;
10
+ export declare function useDynamicContent<TData = any>(params: ComponentParams<DynamicContentStruct<TData>>): Component<DynamicContentStruct<TData, MsgStruct>>;
14
11
  //# sourceMappingURL=DynamicContent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DynamicContent.d.ts","sourceRoot":"","sources":["../../src/componentModel/DynamicContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEH,eAAe,EACf,eAAe,EAElB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,MAAM,oBAAoB,CAC5B,KAAK,GAAG,GAAG,EACX,UAAU,SAAS,SAAS,GAAG,SAAS,IACxC,eAAe,CACf,UAAU,EACV;IACI,KAAK,EAAE;QACH,IAAI,EAAE,KAAK,CAAC;QACZ,MAAM,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;KACjC,CAAC;IACF,OAAO,EAAE,EAAE,CAAC;IACZ,QAAQ,EAAE,EAAE,CAAC;IACb,QAAQ,EAAE,EAAE,CAAC;CAChB,CACJ,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,KAAK,GAAG,GAAG,EACzC,MAAM,EAAE,eAAe,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,OAcvD"}
1
+ {"version":3,"file":"DynamicContent.d.ts","sourceRoot":"","sources":["../../src/componentModel/DynamicContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EAGT,eAAe,EACf,eAAe,EAElB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,MAAM,oBAAoB,CAC5B,KAAK,GAAG,GAAG,EACX,UAAU,SAAS,SAAS,GAAG,SAAS,IACxC,eAAe,CACf,UAAU,EACV;IACI,KAAK,EAAE;QACH,IAAI,EAAE,KAAK,CAAC;QACZ,MAAM,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;KACjC,CAAC;CACL,CACJ,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,KAAK,GAAG,GAAG,EACzC,MAAM,EAAE,eAAe,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,qDAiBvD"}
@@ -1,14 +1,15 @@
1
- import { useComponent as e } from "./componentModel.es.js";
2
- function p(o) {
3
- return e({
1
+ import { useComponent as t } from "./componentModel.es.js";
2
+ function d(o) {
3
+ let e, n;
4
+ return e = t({
4
5
  props: {
5
6
  render: void 0,
6
7
  data: void 0
7
8
  },
8
- view: (m, n) => n.render()
9
- }, o);
9
+ view: (m, c) => n.render()
10
+ }, o), n = e.model, e;
10
11
  }
11
12
  export {
12
- p as useDynamicContent
13
+ d as useDynamicContent
13
14
  };
14
15
  //# sourceMappingURL=DynamicContent.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DynamicContent.es.js","sources":["../../src/componentModel/DynamicContent.tsx"],"sourcesContent":["import {\n Component,\n ComponentParams,\n ComponentStruct,\n useComponent,\n} from '@/componentModel/componentModel';\nimport React from 'react';\nimport { MsgStruct } from '@actdim/msgmesh/msgBusCore';\n\nexport type DynamicContentStruct<\n TData = any,\n TMsgStruct extends MsgStruct = MsgStruct,\n> = ComponentStruct<\n TMsgStruct,\n {\n props: {\n data: TData;\n render: () => React.ReactNode;\n };\n methods: {};\n children: {};\n msgScope: {};\n }\n>;\n\nexport function useDynamicContent<TData = any>(\n params: ComponentParams<DynamicContentStruct<TData>>,\n) {\n const component: Component<DynamicContentStruct<TData>> = {\n props: {\n render: undefined,\n data: undefined,\n },\n view: (_, m) => {\n return m.render();\n },\n };\n\n const model = useComponent(component, params);\n return model;\n}\n"],"names":["useDynamicContent","params","useComponent","_","m"],"mappings":";AAyBO,SAASA,EACZC,GACF;AAYE,SADcC,EAV4C;AAAA,IACtD,OAAO;AAAA,MACH,QAAQ;AAAA,MACR,MAAM;AAAA,IAAA;AAAA,IAEV,MAAM,CAACC,GAAGC,MACCA,EAAE,OAAA;AAAA,EACb,GAGkCH,CAAM;AAEhD;"}
1
+ {"version":3,"file":"DynamicContent.es.js","sources":["../../src/componentModel/DynamicContent.tsx"],"sourcesContent":["import {\n Component,\n ComponentDef,\n ComponentModel,\n ComponentParams,\n ComponentStruct,\n useComponent,\n} from '@/componentModel/componentModel';\nimport React from 'react';\nimport { MsgStruct } from '@actdim/msgmesh/msgBusCore';\n\nexport type DynamicContentStruct<\n TData = any,\n TMsgStruct extends MsgStruct = MsgStruct,\n> = ComponentStruct<\n TMsgStruct,\n {\n props: {\n data: TData;\n render: () => React.ReactNode;\n };\n }\n>;\n\nexport function useDynamicContent<TData = any>(\n params: ComponentParams<DynamicContentStruct<TData>>,\n) {\n let c: Component<DynamicContentStruct<TData>>;\n let m: ComponentModel<DynamicContentStruct<TData>>;\n const componentDef: ComponentDef<DynamicContentStruct<TData>> = {\n props: {\n render: undefined,\n data: undefined,\n },\n view: (_, c) => {\n return m.render();\n },\n };\n\n c = useComponent(componentDef, params);\n m = c.model;\n return c;\n}\n"],"names":["useDynamicContent","params","c","m","useComponent","_"],"mappings":";AAwBO,SAASA,EACZC,GACF;AACE,MAAIC,GACAC;AAWJ,SAAAD,IAAIE,EAV4D;AAAA,IAC5D,OAAO;AAAA,MACH,QAAQ;AAAA,MACR,MAAM;AAAA,IAAA;AAAA,IAEV,MAAM,CAACC,GAAGH,MACCC,EAAE,OAAA;AAAA,EACb,GAG2BF,CAAM,GACrCE,IAAID,EAAE,OACCA;AACX;"}
@@ -0,0 +1,13 @@
1
+ import { MsgBus, MsgStruct } from '@actdim/msgmesh/msgBusCore';
2
+ import { RemoveSuffix } from '@actdim/utico/typeCore';
3
+ export type MsgProviderAdapter = {
4
+ service: Disposable;
5
+ channelSelector: (service: any, methodName: string) => string;
6
+ };
7
+ export declare function registerAdapters<TMsgStruct extends MsgStruct = MsgStruct>(msgBus: MsgBus<TMsgStruct>, adapters: MsgProviderAdapter[], abortSignal?: AbortSignal): void;
8
+ export declare const BASE_API_CHANNEL_PREFIX: "API_";
9
+ type BaseApiChannelPrefix = typeof BASE_API_CHANNEL_PREFIX;
10
+ type BaseApiClientSuffix = 'CLIENT' | 'API';
11
+ export type ToApiChannelPrefix<T extends string, Prefix extends string = BaseApiChannelPrefix, Suffix extends string = BaseApiClientSuffix> = `${Prefix}${RemoveSuffix<Uppercase<T>, Suffix>}_`;
12
+ export {};
13
+ //# sourceMappingURL=adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/componentModel/adapters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAQ,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAY5D,MAAM,MAAM,kBAAkB,GAAG;IAC7B,OAAO,EAAE,UAAU,CAAC;IAEpB,eAAe,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;CACjE,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,UAAU,SAAS,SAAS,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,WAAW,CAAC,EAAE,WAAW,QAwB/J;AAED,eAAO,MAAM,uBAAuB,EAAG,MAAe,CAAC;AACvD,KAAK,oBAAoB,GAAG,OAAO,uBAAuB,CAAC;AAE3D,KAAK,mBAAmB,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE5C,MAAM,MAAM,kBAAkB,CAC1B,CAAC,SAAS,MAAM,EAChB,MAAM,SAAS,MAAM,GAAG,oBAAoB,EAC5C,MAAM,SAAS,MAAM,GAAG,mBAAmB,IAC3C,GAAG,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { ClientBase as s } from "../net/client.es.js";
2
+ const a = (t) => Object.getOwnPropertyNames(t).filter(
3
+ (e) => e !== "constructor" && typeof t[e] == "function"
4
+ );
5
+ a(s.prototype);
6
+ function d(t, e, f) {
7
+ if (e)
8
+ for (const i of e) {
9
+ const { service: o, channelSelector: r } = i;
10
+ if (!o || !r)
11
+ throw new Error("Service and channelSelector are required for an adapter");
12
+ for (const n of a(Object.getPrototypeOf(o))) {
13
+ const c = r?.(o, n);
14
+ c && t.provide({
15
+ channel: c,
16
+ topic: "/.*/",
17
+ callback: (p) => o[n](...p.payload || []),
18
+ config: {
19
+ abortSignal: f
20
+ }
21
+ });
22
+ }
23
+ }
24
+ }
25
+ const h = "API_";
26
+ export {
27
+ h as BASE_API_CHANNEL_PREFIX,
28
+ d as registerAdapters
29
+ };
30
+ //# sourceMappingURL=adapters.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.es.js","sources":["../../src/componentModel/adapters.ts"],"sourcesContent":["import { ClientBase } from \"@/net/client\";\r\nimport { MsgBus, MsgStruct } from \"@actdim/msgmesh/msgBusCore\";\r\nimport { Func, RemoveSuffix } from \"@actdim/utico/typeCore\";\r\n\r\nconst getMethodNames = (client: any) => {\r\n // return new Set(...)\r\n return Object.getOwnPropertyNames(client).filter(\r\n (name) => name !== 'constructor' && typeof client[name] === 'function',\r\n );\r\n};\r\n\r\nconst baseMethodNames = getMethodNames(ClientBase.prototype);\r\n\r\n// ServiceMsgDispatcher\r\nexport type MsgProviderAdapter = {\r\n service: Disposable;\r\n // channelResolver/channelMapper\r\n channelSelector: (service: any, methodName: string) => string;\r\n};\r\n\r\nexport function registerAdapters<TMsgStruct extends MsgStruct = MsgStruct>(msgBus: MsgBus<TMsgStruct>, adapters: MsgProviderAdapter[], abortSignal?: AbortSignal) {\r\n if (adapters) {\r\n for (const adapter of adapters) {\r\n const { service, channelSelector } = adapter;\r\n if (!service || !channelSelector) {\r\n throw new Error(\"Service and channelSelector are required for an adapter\")\r\n }\r\n for (const methodName of getMethodNames(Object.getPrototypeOf(service))) {\r\n const channel = channelSelector?.(service, methodName);\r\n if (channel) {\r\n msgBus.provide({\r\n channel: channel as keyof TMsgStruct,\r\n topic: '/.*/',\r\n callback: (msg) => {\r\n return (service[methodName] as Func)(...((msg.payload || []) as any[]));\r\n },\r\n config: {\r\n abortSignal: abortSignal\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport const BASE_API_CHANNEL_PREFIX = 'API_' as const;\r\ntype BaseApiChannelPrefix = typeof BASE_API_CHANNEL_PREFIX;\r\n\r\ntype BaseApiClientSuffix = 'CLIENT' | 'API';\r\n\r\nexport type ToApiChannelPrefix<\r\n T extends string,\r\n Prefix extends string = BaseApiChannelPrefix,\r\n Suffix extends string = BaseApiClientSuffix,\r\n> = `${Prefix}${RemoveSuffix<Uppercase<T>, Suffix>}_`;"],"names":["getMethodNames","client","name","ClientBase","registerAdapters","msgBus","adapters","abortSignal","adapter","service","channelSelector","methodName","channel","msg","BASE_API_CHANNEL_PREFIX"],"mappings":";AAIA,MAAMA,IAAiB,CAACC,MAEb,OAAO,oBAAoBA,CAAM,EAAE;AAAA,EACtC,CAACC,MAASA,MAAS,iBAAiB,OAAOD,EAAOC,CAAI,KAAM;AAAA;AAI5CF,EAAeG,EAAW,SAAS;AASpD,SAASC,EAA2DC,GAA4BC,GAAgCC,GAA2B;AAC9J,MAAID;AACA,eAAWE,KAAWF,GAAU;AAC5B,YAAM,EAAE,SAAAG,GAAS,iBAAAC,EAAA,IAAoBF;AACrC,UAAI,CAACC,KAAW,CAACC;AACb,cAAM,IAAI,MAAM,yDAAyD;AAE7E,iBAAWC,KAAcX,EAAe,OAAO,eAAeS,CAAO,CAAC,GAAG;AACrE,cAAMG,IAAUF,IAAkBD,GAASE,CAAU;AACrD,QAAIC,KACAP,EAAO,QAAQ;AAAA,UACX,SAAAO;AAAA,UACA,OAAO;AAAA,UACP,UAAU,CAACC,MACCJ,EAAQE,CAAU,EAAW,GAAKE,EAAI,WAAW,CAAA,CAAa;AAAA,UAE1E,QAAQ;AAAA,YACJ,aAAAN;AAAA,UAAA;AAAA,QACJ,CACH;AAAA,MAET;AAAA,IACJ;AAER;AAEO,MAAMO,IAA0B;"}
@@ -1,4 +1,4 @@
1
- import P, { createContext as R, useContext as k, useRef as i } from "react";
1
+ import P, { createContext as R, useRef as i, useContext as k } from "react";
2
2
  const f = R(void 0);
3
3
  function E(o) {
4
4
  let h;
@@ -1,6 +1,6 @@
1
1
  import { PropsWithChildren, FC, ReactNode } from 'react';
2
2
  import { $CG_IN, $CG_OUT, Msg, MsgBus, MsgProviderParams, MsgStruct, MsgSubscriberParams, OutStruct } from '@actdim/msgmesh/msgBusCore';
3
- import { MaybePromise, SafeKey, Skip } from '@actdim/utico/typeCore';
3
+ import { HasKeys, MaybeKeyOf, MaybePromise, Require, Skip } from '@actdim/utico/typeCore';
4
4
  import { ComponentMsgHeaders, TreeNode } from './contracts';
5
5
  export declare enum ComponentMsgFilter {
6
6
  None = 0,
@@ -29,26 +29,27 @@ export type ComponentRefStruct = {
29
29
  };
30
30
  export type ComponentStructBase<TMsgStruct extends MsgStruct = MsgStruct, TPropStruct extends ComponentPropStruct = ComponentPropStruct, TMsgScope extends MsgBrokerScope<TMsgStruct> = MsgBrokerScope<TMsgStruct>> = {
31
31
  props?: TPropStruct;
32
- methods?: ComponentMethodStruct;
32
+ actions?: ComponentMethodStruct;
33
+ effects?: string[] | string | undefined;
33
34
  children?: ComponentRefStruct;
34
35
  msgScope?: TMsgScope;
35
36
  };
36
37
  export type ComponentStruct<TMsgStruct extends MsgStruct = MsgStruct, T extends ComponentStructBase<TMsgStruct> = ComponentStructBase<TMsgStruct>> = T & {
37
- msgBus: TMsgStruct;
38
+ msg: TMsgStruct;
38
39
  };
39
- export type MsgBroker<TStructToProvide extends MsgStruct = MsgStruct, TStructToSubscribe extends MsgStruct = MsgStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders, TScope = any> = {
40
- provide?: {
40
+ export type MsgBroker<TStructToProvide extends MsgStruct = MsgStruct, TStructToSubscribe extends MsgStruct = MsgStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders, TScope = any> = Require<{
41
+ provide?: Require<{
41
42
  [TChannel in keyof TStructToProvide]: {
42
43
  [TGroup in keyof Skip<TStructToProvide[TChannel], typeof $CG_OUT>]?: MsgChannelGroupProviderParams<TStructToProvide, TChannel, TGroup, TMsgHeaders, TScope>;
43
44
  };
44
- };
45
- subscribe?: {
45
+ }, HasKeys<TStructToProvide>>;
46
+ subscribe?: Require<{
46
47
  [TChannel in keyof TStructToSubscribe]: {
47
48
  [TGroup in keyof TStructToSubscribe[TChannel]]?: MsgChannelGroupSubscriberParams<TStructToSubscribe, TChannel, TGroup, TMsgHeaders, TScope>;
48
49
  };
49
- };
50
+ }, HasKeys<TStructToSubscribe>>;
50
51
  abortController?: AbortController;
51
- };
52
+ }, HasKeys<TStructToProvide & TStructToSubscribe>>;
52
53
  type ValueConverter<TTo, TFrom> = {
53
54
  convert(value: TFrom): TTo;
54
55
  convertBack(value: TTo): TFrom;
@@ -83,19 +84,19 @@ export type ComponentPropParams<TPropStruct extends ComponentPropStruct> = {
83
84
  declare const $ON_GET = "onGet";
84
85
  declare const $ON_CHANGING = "onChanging";
85
86
  declare const $ON_CHANGE = "onChange";
86
- type PropValueChangingHandler<TProp = PropKey> = (prop: TProp, oldValue: any, newValue: any) => boolean;
87
- type PropValueChangeHandler<TProp = PropKey> = (prop: TProp, value: any) => void;
87
+ type PropValueChangingHandler<TProp = PropertyKey> = (prop: TProp, oldValue: any, newValue: any) => boolean;
88
+ type PropValueChangeHandler<TProp = PropertyKey> = (prop: TProp, value: any) => void;
88
89
  type ValueChangingHandler<T = any> = (oldValue: T, newValue: T) => boolean;
89
90
  type ValueChangeHandler<T = any> = (value: T) => void;
90
91
  type ComponentEvents<TStruct extends ComponentStruct = ComponentStruct> = {
91
92
  onPropChanging?: PropValueChangingHandler<keyof TStruct['props']>;
92
93
  onPropChange?: PropValueChangeHandler<keyof TStruct['props']>;
93
- onInit?: (model: ComponentModel<TStruct>) => void;
94
- onLayout?: (model: ComponentModel<TStruct>) => void;
95
- onReady?: (model: ComponentModel<TStruct>) => void;
96
- onLayoutDestroy?: (model: ComponentModel<TStruct>) => void;
97
- onDestroy?: (model: ComponentModel<TStruct>) => void;
98
- onError?: (model: ComponentModel<TStruct>, error: any) => void;
94
+ onInit?: (component: Component<TStruct>) => void;
95
+ onLayout?: (component: Component<TStruct>) => void;
96
+ onReady?: (component: Component<TStruct>) => void;
97
+ onLayoutDestroy?: (component: Component<TStruct>) => void;
98
+ onDestroy?: (component: Component<TStruct>) => void;
99
+ onError?: (component: Component<TStruct>, error: any) => void;
99
100
  } & {
100
101
  [P in keyof TStruct['props'] as `${typeof $ON_GET}${Capitalize<P & string>}`]?: () => TStruct['props'][P];
101
102
  } & {
@@ -106,48 +107,59 @@ type ComponentEvents<TStruct extends ComponentStruct = ComponentStruct> = {
106
107
  type ComponentViewProps = {
107
108
  render?: boolean;
108
109
  } & PropsWithChildren;
109
- type ComponentViewImplFn<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = (props: ComponentViewProps, model?: ComponentModel<TStruct, TMsgHeaders>) => ReactNode;
110
+ type ComponentViewImplFn<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = (props: ComponentViewProps, component?: Component<TStruct, TMsgHeaders>) => ReactNode;
110
111
  type ComponentViewFn = (props: ComponentViewProps) => ReactNode;
111
- export type ComponentMsgBroker<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = MsgBroker<Pick<TStruct['msgBus'], SafeKey<TStruct['msgBus'], TStruct['msgScope']['provide']>>, Pick<TStruct['msgBus'], SafeKey<TStruct['msgBus'], TStruct['msgScope']['subscribe']>>, TMsgHeaders, ComponentModel<TStruct, TMsgHeaders>>;
112
- export type Component<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = {
112
+ export type ComponentMsgBroker<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = MsgBroker<Pick<TStruct['msg'], TStruct['msgScope']['provide']>, Pick<TStruct['msg'], TStruct['msgScope']['subscribe']>, TMsgHeaders, Component<TStruct, TMsgHeaders>>;
113
+ export type EffectFn<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = (component: Component<TStruct, TMsgHeaders>) => void | (() => void);
114
+ export type ComponentDef<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = {
113
115
  name?: string;
114
- props?: TStruct['props'];
115
- methods?: TStruct['methods'];
116
- children?: ComponentChildren<TStruct['children']>;
116
+ props?: Require<TStruct['props'], HasKeys<TStruct['props']>>;
117
+ actions?: Require<TStruct['actions'], HasKeys<TStruct['actions']>>;
118
+ effects?: keyof TStruct['effects'] extends never ? never : Record<TStruct['effects'] extends string ? TStruct['effects'] : TStruct['effects'][number], EffectFn<TStruct, TMsgHeaders>>;
119
+ children?: ComponentDefChildren<TStruct['children']>;
117
120
  events?: ComponentEvents<TStruct>;
118
121
  msgBroker?: ComponentMsgBroker<TStruct, TMsgHeaders>;
119
- msgBus?: MsgBus<TStruct['msgBus'], TMsgHeaders>;
122
+ msgBus?: MsgBus<TStruct['msg'], TMsgHeaders>;
120
123
  view?: ComponentViewImplFn<TStruct, TMsgHeaders>;
121
124
  };
125
+ type ComponentDefChildren<TRefStruct extends ComponentRefStruct> = Require<{
126
+ [P in keyof TRefStruct]: TRefStruct[P] extends (params: infer TParams) => infer T ? T extends ComponentStruct ? (params: TParams) => Component<T> : never : TRefStruct[P] extends ComponentStruct ? Component<TRefStruct[P]> : never;
127
+ }, HasKeys<TRefStruct>>;
122
128
  type ComponentChildren<TRefStruct extends ComponentRefStruct> = {
123
- [P in keyof TRefStruct]: TRefStruct[P] extends (params: infer TParams) => infer T ? T extends ComponentStruct ? (params: TParams) => ComponentModel<T> : never : TRefStruct[P] extends ComponentStruct ? ComponentModel<TRefStruct[P]> : never;
129
+ [P in keyof TRefStruct as TRefStruct[P] extends Function ? `${Capitalize<P & string>}` : P]: TRefStruct[P] extends (params: infer TParams) => infer T ? T extends ComponentStruct ? FC<ComponentParams<T> & TParams> : never : TRefStruct[P] extends ComponentStruct ? Component<TRefStruct[P]> : never;
124
130
  };
125
- type ComponentModelChildren<TRefStruct extends ComponentRefStruct> = {
126
- [P in keyof TRefStruct as TRefStruct[P] extends Function ? `${Capitalize<P & string>}` : P]: TRefStruct[P] extends (params: infer TParams) => infer T ? T extends ComponentStruct ? FC<ComponentParams<T> & TParams> : never : TRefStruct[P] extends ComponentStruct ? ComponentModel<TRefStruct[P]> : never;
127
- };
128
- export type ComponentModelContext = {
129
- bindings?: Map<PropKey, Binding>;
131
+ export type ComponentMsgStruct<TStruct extends ComponentStruct = ComponentStruct> = Pick<TStruct['msg'], MaybeKeyOf<TStruct['msg'], TStruct['msgScope']['provide']> | MaybeKeyOf<TStruct['msg'], TStruct['msgScope']['subscribe']> | MaybeKeyOf<TStruct['msg'], TStruct['msgScope']['publish']>>;
132
+ export type ComponentBase<TStruct extends ComponentStruct = ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = {
130
133
  id: string;
131
134
  parentId: string;
132
135
  getHierarchyId(): string;
133
- getParent: () => string | undefined;
134
- getChildren: () => string[];
135
- getChainUp: () => string[];
136
- getChainDown: () => string[];
137
- getNodeMap: () => Map<string, TreeNode>;
138
- };
139
- export type ComponentMsgStruct<TStruct extends ComponentStruct = ComponentStruct> = Pick<TStruct['msgBus'], SafeKey<TStruct['msgBus'], TStruct['msgScope']['provide']> | SafeKey<TStruct['msgBus'], TStruct['msgScope']['subscribe']> | SafeKey<TStruct['msgBus'], TStruct['msgScope']['publish']>>;
140
- export type ComponentModelBase<TStruct extends ComponentStruct = ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = {
136
+ getParent(): string | undefined;
137
+ getChildren(): string[];
138
+ getChainUp(): string[];
139
+ getChainDown(): string[];
140
+ getNodeMap(): Map<string, TreeNode>;
141
+ bindings: Map<PropertyKey, Binding>;
141
142
  msgBus: MsgBus<ComponentMsgStruct<TStruct>, TMsgHeaders>;
142
143
  msgBroker: ComponentMsgBroker<TStruct>;
144
+ effects: Record<string, EffectController>;
143
145
  View: ComponentViewFn;
144
- $: Readonly<ComponentModelContext>;
145
146
  };
146
- export type ComponentModel<TStruct extends ComponentStruct = ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = TStruct['props'] & Readonly<TStruct['methods']> & Readonly<ComponentModelChildren<TStruct['children']>> & Readonly<ComponentModelBase<TStruct, TMsgHeaders>>;
147
- type PropKey = string | symbol;
147
+ export type ComponentModel<TStruct extends ComponentStruct = ComponentStruct> = TStruct['props'] & Readonly<TStruct['actions']>;
148
+ export type Component<TStruct extends ComponentStruct = ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders> = {
149
+ readonly model: ComponentModel<TStruct>;
150
+ readonly children: Readonly<ComponentChildren<TStruct['children']>>;
151
+ } & Readonly<ComponentBase<TStruct, TMsgHeaders>>;
148
152
  export type ComponentParams<TStruct extends ComponentStruct = ComponentStruct> = ComponentPropParams<TStruct['props']> & ComponentEvents<TStruct>;
149
153
  export declare function toHtmlId(url: string, segmentsCount?: number): string;
150
- export declare function useComponent<TStruct extends ComponentStruct = ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders>(component: Component<TStruct, TMsgHeaders>, params: ComponentParams<TStruct>): any;
151
- export declare function getFC<TStruct extends ComponentStruct>(factory: (params: ComponentParams<TStruct>) => ComponentModel<TStruct>): FC<ComponentParams<TStruct>>;
154
+ export type EffectController = {
155
+ start: () => void;
156
+ pause: () => void;
157
+ resume: () => void;
158
+ stop: () => void;
159
+ restart: () => void;
160
+ };
161
+ export declare function createEffect<TStruct extends ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders>(component: Component<TStruct, TMsgHeaders>, name: string, fn: EffectFn<TStruct, TMsgHeaders>): EffectController;
162
+ export declare function useComponent<TStruct extends ComponentStruct = ComponentStruct, TMsgHeaders extends ComponentMsgHeaders = ComponentMsgHeaders>(componentDef: ComponentDef<TStruct, TMsgHeaders>, params: ComponentParams<TStruct>): any;
163
+ export declare function getFC<TStruct extends ComponentStruct>(factory: (params: ComponentParams<TStruct>) => Component<TStruct>): FC<ComponentParams<TStruct>>;
152
164
  export {};
153
165
  //# sourceMappingURL=componentModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"componentModel.d.ts","sourceRoot":"","sources":["../../src/componentModel/componentModel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"componentModel.d.ts","sourceRoot":"","sources":["../../src/componentModel/componentModel.tsx"],"names":[],"mappings":"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"}