@araminix/platform 0.0.0-stage → 1.7.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 (175) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +282 -2
  3. package/dist/index.d.ts +15 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +15 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/src/Platform.d.ts +59 -0
  8. package/dist/src/Platform.d.ts.map +1 -0
  9. package/dist/src/Platform.js +415 -0
  10. package/dist/src/Platform.js.map +1 -0
  11. package/dist/src/agent/AgentController.d.ts +41 -0
  12. package/dist/src/agent/AgentController.d.ts.map +1 -0
  13. package/dist/src/agent/AgentController.js +332 -0
  14. package/dist/src/agent/AgentController.js.map +1 -0
  15. package/dist/src/agent/agentWorkerDriver.d.ts +11 -0
  16. package/dist/src/agent/agentWorkerDriver.d.ts.map +1 -0
  17. package/dist/src/agent/agentWorkerDriver.js +20 -0
  18. package/dist/src/agent/agentWorkerDriver.js.map +1 -0
  19. package/dist/src/agent/d.d.ts +39 -0
  20. package/dist/src/agent/d.d.ts.map +1 -0
  21. package/dist/src/agent/d.js +91 -0
  22. package/dist/src/agent/d.js.map +1 -0
  23. package/dist/src/agent/worker.d.ts +2 -0
  24. package/dist/src/agent/worker.d.ts.map +1 -0
  25. package/dist/src/agent/worker.js +72 -0
  26. package/dist/src/agent/worker.js.map +1 -0
  27. package/dist/src/builder/Fragment.d.ts +40 -0
  28. package/dist/src/builder/Fragment.d.ts.map +1 -0
  29. package/dist/src/builder/Fragment.js +87 -0
  30. package/dist/src/builder/Fragment.js.map +1 -0
  31. package/dist/src/builder/Panel.d.ts +30 -0
  32. package/dist/src/builder/Panel.d.ts.map +1 -0
  33. package/dist/src/builder/Panel.js +45 -0
  34. package/dist/src/builder/Panel.js.map +1 -0
  35. package/dist/src/builder/builder.d.ts +31 -0
  36. package/dist/src/builder/builder.d.ts.map +1 -0
  37. package/dist/src/builder/builder.js +43 -0
  38. package/dist/src/builder/builder.js.map +1 -0
  39. package/dist/src/executor/ActivityInstance.d.ts +98 -0
  40. package/dist/src/executor/ActivityInstance.d.ts.map +1 -0
  41. package/dist/src/executor/ActivityInstance.js +389 -0
  42. package/dist/src/executor/ActivityInstance.js.map +1 -0
  43. package/dist/src/executor/AppInstance.d.ts +73 -0
  44. package/dist/src/executor/AppInstance.d.ts.map +1 -0
  45. package/dist/src/executor/AppInstance.js +399 -0
  46. package/dist/src/executor/AppInstance.js.map +1 -0
  47. package/dist/src/executor/Instance.d.ts +43 -0
  48. package/dist/src/executor/Instance.d.ts.map +1 -0
  49. package/dist/src/executor/Instance.js +415 -0
  50. package/dist/src/executor/Instance.js.map +1 -0
  51. package/dist/src/executor/index.d.ts +4 -0
  52. package/dist/src/executor/index.d.ts.map +1 -0
  53. package/dist/src/executor/index.js +3 -0
  54. package/dist/src/executor/index.js.map +1 -0
  55. package/dist/src/executor/proto.d.ts +120 -0
  56. package/dist/src/executor/proto.d.ts.map +1 -0
  57. package/dist/src/executor/proto.js +207 -0
  58. package/dist/src/executor/proto.js.map +1 -0
  59. package/dist/src/executor/worker.d.ts +2 -0
  60. package/dist/src/executor/worker.d.ts.map +1 -0
  61. package/dist/src/executor/worker.js +154 -0
  62. package/dist/src/executor/worker.js.map +1 -0
  63. package/dist/src/executor/workerDriver.d.ts +14 -0
  64. package/dist/src/executor/workerDriver.d.ts.map +1 -0
  65. package/dist/src/executor/workerDriver.js +26 -0
  66. package/dist/src/executor/workerDriver.js.map +1 -0
  67. package/dist/src/lib/actors.d.ts +94 -0
  68. package/dist/src/lib/actors.d.ts.map +1 -0
  69. package/dist/src/lib/actors.js +139 -0
  70. package/dist/src/lib/actors.js.map +1 -0
  71. package/dist/src/lib/d.d.ts +145 -0
  72. package/dist/src/lib/d.d.ts.map +1 -0
  73. package/dist/src/lib/d.js +296 -0
  74. package/dist/src/lib/d.js.map +1 -0
  75. package/dist/src/lib/worker_socket.d.ts +56 -0
  76. package/dist/src/lib/worker_socket.d.ts.map +1 -0
  77. package/dist/src/lib/worker_socket.js +161 -0
  78. package/dist/src/lib/worker_socket.js.map +1 -0
  79. package/dist/src/server/AuthProvider.d.ts +199 -0
  80. package/dist/src/server/AuthProvider.d.ts.map +1 -0
  81. package/dist/src/server/AuthProvider.js +69 -0
  82. package/dist/src/server/AuthProvider.js.map +1 -0
  83. package/dist/src/server/ConnectRequest.d.ts +15 -0
  84. package/dist/src/server/ConnectRequest.d.ts.map +1 -0
  85. package/dist/src/server/ConnectRequest.js +36 -0
  86. package/dist/src/server/ConnectRequest.js.map +1 -0
  87. package/dist/src/server/Endpoint.d.ts +78 -0
  88. package/dist/src/server/Endpoint.d.ts.map +1 -0
  89. package/dist/src/server/Endpoint.js +809 -0
  90. package/dist/src/server/Endpoint.js.map +1 -0
  91. package/dist/src/server/EndpointController.d.ts +15 -0
  92. package/dist/src/server/EndpointController.d.ts.map +1 -0
  93. package/dist/src/server/EndpointController.js +92 -0
  94. package/dist/src/server/EndpointController.js.map +1 -0
  95. package/dist/src/server/index.d.ts +8 -0
  96. package/dist/src/server/index.d.ts.map +1 -0
  97. package/dist/src/server/index.js +8 -0
  98. package/dist/src/server/index.js.map +1 -0
  99. package/dist/src/utils/i18n.d.ts +20 -0
  100. package/dist/src/utils/i18n.d.ts.map +1 -0
  101. package/dist/src/utils/i18n.js +41 -0
  102. package/dist/src/utils/i18n.js.map +1 -0
  103. package/dist/src/utils/index.d.ts +4 -0
  104. package/dist/src/utils/index.d.ts.map +1 -0
  105. package/dist/src/utils/index.js +4 -0
  106. package/dist/src/utils/index.js.map +1 -0
  107. package/dist/src/utils/log_middleware.d.ts +3 -0
  108. package/dist/src/utils/log_middleware.d.ts.map +1 -0
  109. package/dist/src/utils/log_middleware.js +38 -0
  110. package/dist/src/utils/log_middleware.js.map +1 -0
  111. package/dist/src/utils/minioService.d.ts +54 -0
  112. package/dist/src/utils/minioService.d.ts.map +1 -0
  113. package/dist/src/utils/minioService.js +166 -0
  114. package/dist/src/utils/minioService.js.map +1 -0
  115. package/dist/tests/actors.test.d.ts +2 -0
  116. package/dist/tests/actors.test.d.ts.map +1 -0
  117. package/dist/tests/actors.test.js +45 -0
  118. package/dist/tests/actors.test.js.map +1 -0
  119. package/dist/tests/agentWorker.test.d.ts +2 -0
  120. package/dist/tests/agentWorker.test.d.ts.map +1 -0
  121. package/dist/tests/agentWorker.test.js +225 -0
  122. package/dist/tests/agentWorker.test.js.map +1 -0
  123. package/dist/tests/authProvider.test.d.ts +2 -0
  124. package/dist/tests/authProvider.test.d.ts.map +1 -0
  125. package/dist/tests/authProvider.test.js +39 -0
  126. package/dist/tests/authProvider.test.js.map +1 -0
  127. package/dist/tests/builder.test.d.ts +2 -0
  128. package/dist/tests/builder.test.d.ts.map +1 -0
  129. package/dist/tests/builder.test.js +37 -0
  130. package/dist/tests/builder.test.js.map +1 -0
  131. package/dist/tests/connectRequest.test.d.ts +2 -0
  132. package/dist/tests/connectRequest.test.d.ts.map +1 -0
  133. package/dist/tests/connectRequest.test.js +55 -0
  134. package/dist/tests/connectRequest.test.js.map +1 -0
  135. package/dist/tests/endpointController.test.d.ts +2 -0
  136. package/dist/tests/endpointController.test.d.ts.map +1 -0
  137. package/dist/tests/endpointController.test.js +28 -0
  138. package/dist/tests/endpointController.test.js.map +1 -0
  139. package/dist/tests/endpointSecurity.test.d.ts +2 -0
  140. package/dist/tests/endpointSecurity.test.d.ts.map +1 -0
  141. package/dist/tests/endpointSecurity.test.js +1007 -0
  142. package/dist/tests/endpointSecurity.test.js.map +1 -0
  143. package/dist/tests/i18n.test.d.ts +2 -0
  144. package/dist/tests/i18n.test.d.ts.map +1 -0
  145. package/dist/tests/i18n.test.js +25 -0
  146. package/dist/tests/i18n.test.js.map +1 -0
  147. package/dist/tests/logMiddleware.test.d.ts +2 -0
  148. package/dist/tests/logMiddleware.test.d.ts.map +1 -0
  149. package/dist/tests/logMiddleware.test.js +60 -0
  150. package/dist/tests/logMiddleware.test.js.map +1 -0
  151. package/dist/tests/minioService.test.d.ts +2 -0
  152. package/dist/tests/minioService.test.d.ts.map +1 -0
  153. package/dist/tests/minioService.test.js +206 -0
  154. package/dist/tests/minioService.test.js.map +1 -0
  155. package/dist/tests/platform.test.d.ts +2 -0
  156. package/dist/tests/platform.test.d.ts.map +1 -0
  157. package/dist/tests/platform.test.js +288 -0
  158. package/dist/tests/platform.test.js.map +1 -0
  159. package/dist/tests/proto.test.d.ts +2 -0
  160. package/dist/tests/proto.test.d.ts.map +1 -0
  161. package/dist/tests/proto.test.js +37 -0
  162. package/dist/tests/proto.test.js.map +1 -0
  163. package/dist/tests/unhandledRejections.test.d.ts +2 -0
  164. package/dist/tests/unhandledRejections.test.d.ts.map +1 -0
  165. package/dist/tests/unhandledRejections.test.js +204 -0
  166. package/dist/tests/unhandledRejections.test.js.map +1 -0
  167. package/dist/tests/uploadSecurity.test.d.ts +2 -0
  168. package/dist/tests/uploadSecurity.test.d.ts.map +1 -0
  169. package/dist/tests/uploadSecurity.test.js +219 -0
  170. package/dist/tests/uploadSecurity.test.js.map +1 -0
  171. package/dist/tests/workerSocket.test.d.ts +2 -0
  172. package/dist/tests/workerSocket.test.d.ts.map +1 -0
  173. package/dist/tests/workerSocket.test.js +53 -0
  174. package/dist/tests/workerSocket.test.js.map +1 -0
  175. package/package.json +70 -3
@@ -0,0 +1,139 @@
1
+ export class Close {
2
+ activity;
3
+ constructor(activity) {
4
+ this.activity = activity;
5
+ }
6
+ }
7
+ export class Prev {
8
+ activity;
9
+ constructor(activity) {
10
+ this.activity = activity;
11
+ }
12
+ }
13
+ export class Destroy {
14
+ app;
15
+ constructor(app) {
16
+ this.app = app;
17
+ }
18
+ }
19
+ export class WizardDetached {
20
+ mainStage;
21
+ ctx;
22
+ on;
23
+ constructor(mainStage, ctx, on) {
24
+ this.mainStage = mainStage;
25
+ this.ctx = ctx;
26
+ this.on = on;
27
+ }
28
+ }
29
+ export class WizardAttached {
30
+ mainStage;
31
+ ctx;
32
+ on;
33
+ constructor(mainStage, ctx, on) {
34
+ this.mainStage = mainStage;
35
+ this.ctx = ctx;
36
+ this.on = on;
37
+ }
38
+ }
39
+ export class WizardPop {
40
+ mainStage;
41
+ ctx;
42
+ on;
43
+ constructor(mainStage, ctx, on) {
44
+ this.mainStage = mainStage;
45
+ this.ctx = ctx;
46
+ this.on = on;
47
+ }
48
+ }
49
+ export class WizardDone {
50
+ wizard;
51
+ result;
52
+ constructor(wizard, result) {
53
+ this.wizard = wizard;
54
+ this.result = result;
55
+ }
56
+ }
57
+ export class WizardNext {
58
+ stage;
59
+ ctx;
60
+ constructor(stage, ctx) {
61
+ this.stage = stage;
62
+ this.ctx = ctx;
63
+ }
64
+ }
65
+ export class WizardNextReplace {
66
+ stage;
67
+ ctx;
68
+ constructor(stage, ctx) {
69
+ this.stage = stage;
70
+ this.ctx = ctx;
71
+ }
72
+ }
73
+ export class OpenPage {
74
+ page;
75
+ ctx;
76
+ constructor(page, ctx) {
77
+ this.page = page;
78
+ this.ctx = ctx;
79
+ }
80
+ }
81
+ export class PopPage {
82
+ page;
83
+ ctx;
84
+ constructor(page, ctx) {
85
+ this.page = page;
86
+ this.ctx = ctx;
87
+ }
88
+ }
89
+ export class NextPage {
90
+ page;
91
+ ctx;
92
+ constructor(page, ctx) {
93
+ this.page = page;
94
+ this.ctx = ctx;
95
+ }
96
+ }
97
+ export class ReplacePage {
98
+ page;
99
+ ctx;
100
+ constructor(page, ctx) {
101
+ this.page = page;
102
+ this.ctx = ctx;
103
+ }
104
+ }
105
+ export class Refresh {
106
+ activity;
107
+ ctx;
108
+ constructor(activity, ctx) {
109
+ this.activity = activity;
110
+ this.ctx = ctx;
111
+ }
112
+ }
113
+ export class Reload {
114
+ constructor() { }
115
+ }
116
+ export var UpdateTypes;
117
+ (function (UpdateTypes) {
118
+ UpdateTypes["Full"] = "Full";
119
+ UpdateTypes["Patch"] = "Patch";
120
+ })(UpdateTypes || (UpdateTypes = {}));
121
+ export class UpdateFragment {
122
+ fragmentId;
123
+ type;
124
+ data;
125
+ constructor(fragmentId, type, data) {
126
+ this.fragmentId = fragmentId;
127
+ this.type = type;
128
+ this.data = data;
129
+ }
130
+ }
131
+ export class ReloadFragment {
132
+ fragmentId;
133
+ constructor(fragmentId) {
134
+ this.fragmentId = fragmentId;
135
+ }
136
+ }
137
+ export class Nothing {
138
+ }
139
+ //# sourceMappingURL=actors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actors.js","sourceRoot":"","sources":["../../../src/lib/actors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,145 @@
1
+ import { Result } from '@araminix/lib';
2
+ import { AgentIndex } from '../agent/d.js';
3
+ import { ActivityDriver, ActivityInterface } from '../executor/ActivityInstance.js';
4
+ import { AppResult } from '../executor/AppInstance.js';
5
+ import { I18nService } from '../utils/i18n.js';
6
+ import { Actor, Close, Destroy, NextPage, Nothing, OpenPage, PopPage, Prev, Refresh, Reload, ReplacePage, WizardAttached, WizardDetached, WizardDone, WizardNext, WizardNextReplace, WizardPop } from './actors.js';
7
+ export type AppEntry = {
8
+ name: string;
9
+ title: string;
10
+ category: string;
11
+ hidden: boolean;
12
+ widget: boolean;
13
+ multiInstance: boolean;
14
+ description: string;
15
+ profiles: Array<string | null>;
16
+ };
17
+ export type AppListing = {
18
+ category: string;
19
+ apps: Array<AppEntry>;
20
+ };
21
+ export declare abstract class AppIndex<AGENT_INDEX extends AgentIndex = AgentIndex> {
22
+ protected i18n: I18nService<any, any>;
23
+ abstract agents: AGENT_INDEX;
24
+ private _appList?;
25
+ constructor();
26
+ protected abstract _getUserApps(userId: string): Promise<Result<Array<{
27
+ name: string;
28
+ profiles: Array<string | null>;
29
+ title: string;
30
+ }>, unknown>>;
31
+ get appList(): Array<{
32
+ appName: string;
33
+ app: App<any, any>;
34
+ }>;
35
+ private getAppsList;
36
+ userApps<TErr = unknown>(userId: string): Promise<Result<Array<AppListing>, TErr>>;
37
+ }
38
+ export declare abstract class App<SETTINGS = unknown, APP_INDEX extends AppIndex<any> = AppIndex<any>> {
39
+ readonly index: APP_INDEX;
40
+ name: string;
41
+ abstract readonly title: string | (() => Promise<string>);
42
+ description: string;
43
+ category: string;
44
+ hidden: boolean;
45
+ widget: boolean;
46
+ multiInstance: boolean;
47
+ abstract main: MainPage<any, App<SETTINGS, APP_INDEX>> | void;
48
+ abstract setupWizard: SetupWizard<SETTINGS, App<SETTINGS, APP_INDEX>> | void;
49
+ constructor(index: APP_INDEX);
50
+ protected get profile(): string | null;
51
+ dispatch(_action: string, _args: unknown): (void | MainPage<any, App<SETTINGS, APP_INDEX>>)[];
52
+ getSettings<TErr = unknown>(): Promise<Result<SETTINGS, TErr>>;
53
+ protected abstract _getSettings(userId: string, profile: string | null): Promise<Result<SETTINGS, unknown>>;
54
+ getUnits<TErr = unknown>(): Promise<Result<string[], TErr>>;
55
+ protected abstract _getUnits(userId: string): Promise<Result<string[], unknown>>;
56
+ }
57
+ export declare abstract class Activity<CONTEXT = unknown> {
58
+ protected ctx: CONTEXT;
59
+ private driver;
60
+ private cleanUp?;
61
+ _init(ctx: CONTEXT, driver: ActivityDriver): ActivityInterface;
62
+ _init2(ctx: CONTEXT, driver: ActivityDriver): ActivityInterface;
63
+ abstract title(ctx: CONTEXT): Promise<string> | string;
64
+ protected get userId(): string;
65
+ protected abstract new(): Activity<CONTEXT>;
66
+ protected beforeRender(): Promise<Actor> | Actor;
67
+ private _afterWake;
68
+ private _cleanUp;
69
+ protected afterWake(): (() => void) | void;
70
+ protected abstract render(): Promise<void>;
71
+ protected $nothing(): Nothing;
72
+ protected $refresh(ctx: CONTEXT): Refresh<CONTEXT>;
73
+ protected $reload(): Reload;
74
+ push<TData = unknown>(data: TData): Promise<AppResult>;
75
+ trigger(actor: Actor): Promise<AppResult>;
76
+ }
77
+ export declare abstract class Page<CONTEXT = unknown, APP extends App<any, any> = App<any, any>> extends Activity<CONTEXT> {
78
+ app: APP;
79
+ constructor(app: APP);
80
+ protected new(): Activity<CONTEXT>;
81
+ protected get profile(): string | null;
82
+ $pop(ctx: CONTEXT): PopPage<CONTEXT>;
83
+ $open(ctx: CONTEXT): OpenPage<CONTEXT>;
84
+ $replace(ctx: CONTEXT): ReplacePage<CONTEXT>;
85
+ $next(ctx: CONTEXT): NextPage<CONTEXT>;
86
+ protected $close(): Close<CONTEXT>;
87
+ protected $destroy(): Destroy;
88
+ }
89
+ export declare abstract class Wizard<CONTEXT = unknown, OUTPUT = unknown, PAGE extends Page<any, any> = Page<any, any>> {
90
+ protected abstract main: Stage<CONTEXT, OUTPUT, Wizard<CONTEXT, OUTPUT, PAGE>>;
91
+ readonly page: PAGE;
92
+ constructor(page: PAGE);
93
+ abstract title(ctx: CONTEXT): Promise<string> | string;
94
+ $detached<R = unknown>(ctx: CONTEXT, on?: (result: Result<OUTPUT, unknown> | undefined) => Promise<R> | R): WizardDetached<CONTEXT, OUTPUT, this, R>;
95
+ $attached(ctx: CONTEXT, on?: (result: Result<OUTPUT, unknown> | undefined) => Promise<Actor> | Actor): WizardAttached<CONTEXT, OUTPUT, this>;
96
+ $pop(ctx: CONTEXT, on?: (result: Result<OUTPUT, unknown> | undefined) => Promise<Actor> | Actor): WizardPop<CONTEXT, OUTPUT, this>;
97
+ }
98
+ export declare abstract class SetupWizard<SETTINGS = unknown, APP extends App<SETTINGS, any> = App<SETTINGS, any>> extends Wizard<SETTINGS | null, SETTINGS, PhantomPage<APP>> {
99
+ abstract main: Stage<SETTINGS | null, SETTINGS, SetupWizard<SETTINGS, APP>>;
100
+ constructor(app: APP);
101
+ title(_ctx: SETTINGS | null): Promise<string>;
102
+ }
103
+ export declare abstract class Stage<CONTEXT = unknown, OUTPUT = unknown, WIZARD extends Wizard<any, OUTPUT, any> = Wizard<any, OUTPUT, any>> extends Activity<CONTEXT> {
104
+ readonly wizard: WIZARD;
105
+ constructor(wizard: WIZARD);
106
+ protected new(): Activity<CONTEXT>;
107
+ protected get profile(): string | null;
108
+ get index(): any;
109
+ title(ctx: CONTEXT): Promise<string>;
110
+ protected $ok(v: OUTPUT): WizardDone<OUTPUT, unknown>;
111
+ protected $err<E = unknown>(e: E): WizardDone<OUTPUT, E>;
112
+ protected $cancel(): WizardDone<OUTPUT, unknown>;
113
+ protected $back(): Prev<CONTEXT>;
114
+ $next(ctx: CONTEXT): WizardNext<CONTEXT, OUTPUT, WIZARD>;
115
+ $nextReplace(ctx: CONTEXT): WizardNextReplace<CONTEXT, OUTPUT, WIZARD>;
116
+ protected $destroy(): Destroy;
117
+ }
118
+ export declare abstract class MainPage<CONTEXT = unknown, APP extends App<any, any> = App<any, any>> extends Page<CONTEXT | void, APP> {
119
+ }
120
+ export declare class PhantomAgentIndex extends AgentIndex {
121
+ }
122
+ export declare class PhantomAppIndex extends AppIndex<PhantomAgentIndex> {
123
+ protected _getUser(_userId: string): Promise<Result<void, unknown>>;
124
+ agents: PhantomAgentIndex;
125
+ protected _getUserApps(_userId: string): Promise<Result<Array<{
126
+ name: string;
127
+ profiles: Array<string | null>;
128
+ title: string;
129
+ }>, unknown>>;
130
+ }
131
+ export declare class PhantomApp extends App<void, PhantomAppIndex> {
132
+ protected _getSettings(_userId: string, _profile: string | null): Promise<Result<void, unknown>>;
133
+ protected _getUnits(_userId: string): Promise<Result<string[], unknown>>;
134
+ main: undefined;
135
+ setupWizard: undefined;
136
+ readonly title = "";
137
+ }
138
+ export declare class PhantomPage<APP extends App<any, any> = App<any, any>> extends Page<any, APP> {
139
+ title(_ctx: unknown): string;
140
+ protected render(): Promise<void>;
141
+ protected new(): Activity<any>;
142
+ }
143
+ export declare const phantomApp: PhantomApp;
144
+ export declare const phantomPage: PhantomPage<PhantomApp>;
145
+ //# sourceMappingURL=d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d.d.ts","sourceRoot":"","sources":["../../../src/lib/d.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,296 @@
1
+ import { Err, Ok } from '@araminix/lib';
2
+ import { AgentIndex } from '../agent/d.js';
3
+ import { ActivityInterface } from '../executor/ActivityInstance.js';
4
+ import workerDriver from '../executor/workerDriver.js';
5
+ import { Close, Destroy, NextPage, Nothing, OpenPage, PopPage, Prev, Refresh, Reload, ReplacePage, WizardAttached, WizardDetached, WizardDone, WizardNext, WizardNextReplace, WizardPop, } from './actors.js';
6
+ export class AppIndex {
7
+ i18n;
8
+ _appList = undefined;
9
+ constructor() { }
10
+ get appList() {
11
+ if (!this._appList) {
12
+ if (this.agents) {
13
+ this.agents.agentTypeList; // init agent names
14
+ }
15
+ this._appList = this.getAppsList();
16
+ }
17
+ return this._appList;
18
+ }
19
+ getAppsList() {
20
+ const arr = [];
21
+ for (const key of Object.getOwnPropertyNames(this)) {
22
+ const prop = this[key];
23
+ if (!(prop instanceof App)) {
24
+ continue;
25
+ }
26
+ if (prop.main === undefined) {
27
+ continue;
28
+ }
29
+ const name = key;
30
+ const app = prop;
31
+ app.name = name;
32
+ arr.push({ appName: name, app: app });
33
+ }
34
+ return arr;
35
+ }
36
+ async userApps(userId) {
37
+ const result = await this._getUserApps(userId);
38
+ if (result.isErr()) {
39
+ return new Err(result.e);
40
+ }
41
+ const userApps = result.unwrap();
42
+ const listing = [];
43
+ for (const entry of this.appList) {
44
+ const name = entry.appName;
45
+ const app = entry.app;
46
+ const userApp = userApps.find((a) => a.name === name);
47
+ if (userApp) {
48
+ listing.push({
49
+ name: name,
50
+ title: userApp.title,
51
+ category: app.category,
52
+ hidden: app.hidden,
53
+ widget: app.widget,
54
+ multiInstance: app.multiInstance,
55
+ description: app.description,
56
+ profiles: [...new Set(userApp.profiles)],
57
+ });
58
+ }
59
+ }
60
+ const byCategory = listing.reduce((acc, item) => {
61
+ if (!acc[item.category]) {
62
+ acc[item.category] = { category: item.category, apps: [] };
63
+ }
64
+ const appDesc = {
65
+ name: item.name,
66
+ title: item.title,
67
+ hidden: item.hidden,
68
+ widget: item.widget,
69
+ multiInstance: item.multiInstance,
70
+ category: item.category,
71
+ profiles: item.profiles,
72
+ description: item.description,
73
+ };
74
+ acc[item.category].apps.push(appDesc);
75
+ return acc;
76
+ }, {});
77
+ return new Ok(Object.values(byCategory));
78
+ }
79
+ }
80
+ export class App {
81
+ index;
82
+ name = '';
83
+ description = '';
84
+ category = 'Other';
85
+ hidden = false;
86
+ widget = false;
87
+ multiInstance = false;
88
+ constructor(index) {
89
+ this.index = index;
90
+ }
91
+ get profile() {
92
+ const launchedApp = workerDriver()?.appName;
93
+ const profile = workerDriver()?.profile;
94
+ if (launchedApp !== this.name) {
95
+ return null;
96
+ }
97
+ return profile;
98
+ }
99
+ dispatch(_action, _args) {
100
+ return [this.main, undefined];
101
+ }
102
+ async getSettings() {
103
+ return (await this._getSettings(workerDriver().userId, this.profile));
104
+ }
105
+ async getUnits() {
106
+ return (await this._getUnits(workerDriver().userId));
107
+ }
108
+ }
109
+ export class Activity {
110
+ ctx;
111
+ driver;
112
+ cleanUp = undefined;
113
+ _init(ctx, driver) {
114
+ const instance = this.new();
115
+ instance.ctx = ctx;
116
+ instance.driver = driver;
117
+ return new ActivityInterface(instance, () => instance.beforeRender(), () => instance._afterWake(), () => instance._cleanUp(), () => instance.render(), () => instance.title(instance.ctx), (c) => (instance.ctx = c));
118
+ }
119
+ _init2(ctx, driver) {
120
+ this.ctx = ctx;
121
+ this.driver = driver;
122
+ return new ActivityInterface(this, () => this.beforeRender(), () => this._afterWake(), () => this._cleanUp(), () => this.render(), () => this.title(this.ctx), (c) => (this.ctx = c));
123
+ }
124
+ get userId() {
125
+ return workerDriver().userId;
126
+ }
127
+ beforeRender() {
128
+ return this.$nothing();
129
+ }
130
+ _afterWake() {
131
+ this.cleanUp = this.afterWake();
132
+ }
133
+ _cleanUp() {
134
+ if (this.cleanUp) {
135
+ this.cleanUp();
136
+ this.cleanUp = undefined;
137
+ }
138
+ }
139
+ afterWake() { }
140
+ $nothing() {
141
+ return new Nothing();
142
+ }
143
+ $refresh(ctx) {
144
+ return new Refresh(this, ctx);
145
+ }
146
+ $reload() {
147
+ return new Reload();
148
+ }
149
+ async push(data) {
150
+ return await this.driver.push(data);
151
+ }
152
+ async trigger(actor) {
153
+ return await this.driver.trigger(actor);
154
+ }
155
+ }
156
+ export class Page extends Activity {
157
+ app;
158
+ constructor(app) {
159
+ super();
160
+ this.app = app;
161
+ }
162
+ new() {
163
+ return new this.constructor(this.app);
164
+ }
165
+ get profile() {
166
+ const launchedApp = workerDriver()?.appName;
167
+ const profile = workerDriver()?.profile;
168
+ if (launchedApp !== this.app.name) {
169
+ return null;
170
+ }
171
+ return profile;
172
+ }
173
+ $pop(ctx) {
174
+ return new PopPage(this, ctx);
175
+ }
176
+ $open(ctx) {
177
+ return new OpenPage(this, ctx);
178
+ }
179
+ $replace(ctx) {
180
+ return new ReplacePage(this, ctx);
181
+ }
182
+ $next(ctx) {
183
+ return new NextPage(this, ctx);
184
+ }
185
+ $close() {
186
+ return new Close(this);
187
+ }
188
+ $destroy() {
189
+ return new Destroy(this.app);
190
+ }
191
+ }
192
+ export class Wizard {
193
+ page;
194
+ constructor(page) {
195
+ this.page = page;
196
+ }
197
+ $detached(ctx, on) {
198
+ return new WizardDetached(this.main, ctx, on);
199
+ }
200
+ $attached(ctx, on) {
201
+ return new WizardAttached(this.main, ctx, on);
202
+ }
203
+ $pop(ctx, on) {
204
+ return new WizardPop(this.main, ctx, on);
205
+ }
206
+ }
207
+ export class SetupWizard extends Wizard {
208
+ constructor(app) {
209
+ super(new PhantomPage(app));
210
+ }
211
+ async title(_ctx) {
212
+ const title = typeof this.page.app.title === 'string' ? this.page.app.title : await this.page.app.title();
213
+ return `Setup ${title} `;
214
+ }
215
+ }
216
+ export class Stage extends Activity {
217
+ wizard;
218
+ constructor(wizard) {
219
+ super();
220
+ this.wizard = wizard;
221
+ }
222
+ new() {
223
+ return new this.constructor(this.wizard);
224
+ }
225
+ get profile() {
226
+ const launchedApp = workerDriver()?.appName;
227
+ const profile = workerDriver()?.profile;
228
+ if (launchedApp !== this.wizard.page.app.name) {
229
+ return null;
230
+ }
231
+ return profile;
232
+ }
233
+ get index() {
234
+ return this.wizard.page.app.index;
235
+ }
236
+ async title(ctx) {
237
+ return this.wizard.title(ctx);
238
+ }
239
+ $ok(v) {
240
+ return new WizardDone(this.wizard, new Ok(v));
241
+ }
242
+ $err(e) {
243
+ return new WizardDone(this.wizard, new Err(e));
244
+ }
245
+ $cancel() {
246
+ return new WizardDone(this.wizard, undefined);
247
+ }
248
+ $back() {
249
+ return new Prev(this);
250
+ }
251
+ $next(ctx) {
252
+ return new WizardNext(this, ctx);
253
+ }
254
+ $nextReplace(ctx) {
255
+ return new WizardNextReplace(this, ctx);
256
+ }
257
+ $destroy() {
258
+ return new Destroy(this.wizard.page.app);
259
+ }
260
+ }
261
+ export class MainPage extends Page {
262
+ }
263
+ export class PhantomAgentIndex extends AgentIndex {
264
+ }
265
+ export class PhantomAppIndex extends AppIndex {
266
+ _getUser(_userId) {
267
+ return Promise.resolve(new Err(undefined));
268
+ }
269
+ agents = new PhantomAgentIndex();
270
+ _getUserApps(_userId) {
271
+ return Promise.resolve(new Err(undefined));
272
+ }
273
+ }
274
+ export class PhantomApp extends App {
275
+ _getSettings(_userId, _profile) {
276
+ return Promise.resolve(new Err(undefined));
277
+ }
278
+ _getUnits(_userId) {
279
+ return Promise.resolve(new Err(undefined));
280
+ }
281
+ main = undefined;
282
+ setupWizard = undefined;
283
+ title = '';
284
+ }
285
+ export class PhantomPage extends Page {
286
+ title(_ctx) {
287
+ return '';
288
+ }
289
+ async render() { }
290
+ new() {
291
+ return new PhantomPage(this.app);
292
+ }
293
+ }
294
+ export const phantomApp = new PhantomApp(new PhantomAppIndex());
295
+ export const phantomPage = new PhantomPage(phantomApp);
296
+ //# sourceMappingURL=d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d.js","sourceRoot":"","sources":["../../../src/lib/d.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { Result } from '@araminix/lib';
2
+ import type { MessagePort } from 'worker_threads';
3
+ export declare enum MessageRole {
4
+ Request = 0,
5
+ Resolve = 1,
6
+ Reject = 2
7
+ }
8
+ declare abstract class Message {
9
+ readonly _type: string;
10
+ abstract readonly _role: MessageRole;
11
+ }
12
+ export declare abstract class Req extends Message {
13
+ readonly _role = MessageRole.Request;
14
+ }
15
+ export declare class Res extends Message {
16
+ readonly _role = MessageRole.Resolve;
17
+ }
18
+ export declare class Rej extends Message {
19
+ readonly _role = MessageRole.Reject;
20
+ }
21
+ declare abstract class WorkerSocket {
22
+ private port;
23
+ private _active;
24
+ constructor(port: MessagePort);
25
+ get active(): boolean;
26
+ protected send<T = unknown>(data: T): Result<void, unknown>;
27
+ close(): void;
28
+ protected abstract onMessage(data: unknown): void;
29
+ protected abstract onClose(): void;
30
+ protected abstract onMessageError(error: Error): void;
31
+ }
32
+ export declare class RequestSocket extends WorkerSocket {
33
+ private deserialize;
34
+ private blockPromise;
35
+ private readPromise?;
36
+ constructor(port: MessagePort, deserialize: (data: unknown) => Req | Res | Rej | undefined);
37
+ protected onMessage(data: unknown): void;
38
+ protected onClose(): void;
39
+ protected onMessageError(_error: Error): void;
40
+ writeRead<TReq extends Req = Req, TRes extends Res = Res, TRej extends Rej = Rej>(input: TReq): Promise<Result<TRes, TRej | undefined>>;
41
+ }
42
+ export declare class ResponseSocket extends WorkerSocket {
43
+ private deserialize;
44
+ private readPromise?;
45
+ private latestMessage?;
46
+ constructor(port: MessagePort, deserialize: (data: unknown) => Req | Res | Rej | undefined);
47
+ protected onMessage(data: unknown): void;
48
+ protected onClose(): void;
49
+ protected onMessageError(_error: Error): void;
50
+ write<T = unknown>(response: (Res | Rej) | undefined): Result<void, T>;
51
+ resolve<TRes extends Res = Res, TErr = unknown>(response?: TRes): Result<void, TErr>;
52
+ reject<TRej extends Rej = Rej, TErr = unknown>(response?: TRej): Result<void, TErr>;
53
+ read<TReq extends Req = Req>(): Promise<Result<TReq, undefined>>;
54
+ }
55
+ export {};
56
+ //# sourceMappingURL=worker_socket.d.ts.map