flowengine-mcp-app 3.0.0 → 3.0.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/README.md +19 -270
- package/bin.js +12 -0
- package/package.json +8 -41
- package/LICENSE +0 -21
- package/build/cli/api.d.ts +0 -19
- package/build/cli/api.d.ts.map +0 -1
- package/build/cli/api.js +0 -62
- package/build/cli/api.js.map +0 -1
- package/build/cli/commands/delete.d.ts +0 -4
- package/build/cli/commands/delete.d.ts.map +0 -1
- package/build/cli/commands/delete.js +0 -16
- package/build/cli/commands/delete.js.map +0 -1
- package/build/cli/commands/deploy.d.ts +0 -24
- package/build/cli/commands/deploy.d.ts.map +0 -1
- package/build/cli/commands/deploy.js +0 -103
- package/build/cli/commands/deploy.js.map +0 -1
- package/build/cli/commands/domain.d.ts +0 -9
- package/build/cli/commands/domain.d.ts.map +0 -1
- package/build/cli/commands/domain.js +0 -27
- package/build/cli/commands/domain.js.map +0 -1
- package/build/cli/commands/env.d.ts +0 -13
- package/build/cli/commands/env.d.ts.map +0 -1
- package/build/cli/commands/env.js +0 -53
- package/build/cli/commands/env.js.map +0 -1
- package/build/cli/commands/list.d.ts +0 -4
- package/build/cli/commands/list.d.ts.map +0 -1
- package/build/cli/commands/list.js +0 -25
- package/build/cli/commands/list.js.map +0 -1
- package/build/cli/commands/login.d.ts +0 -4
- package/build/cli/commands/login.d.ts.map +0 -1
- package/build/cli/commands/login.js +0 -37
- package/build/cli/commands/login.js.map +0 -1
- package/build/cli/commands/logout.d.ts +0 -2
- package/build/cli/commands/logout.d.ts.map +0 -1
- package/build/cli/commands/logout.js +0 -8
- package/build/cli/commands/logout.js.map +0 -1
- package/build/cli/commands/logs.d.ts +0 -4
- package/build/cli/commands/logs.d.ts.map +0 -1
- package/build/cli/commands/logs.js +0 -40
- package/build/cli/commands/logs.js.map +0 -1
- package/build/cli/commands/show.d.ts +0 -4
- package/build/cli/commands/show.d.ts.map +0 -1
- package/build/cli/commands/show.js +0 -13
- package/build/cli/commands/show.js.map +0 -1
- package/build/cli/commands/usage.d.ts +0 -7
- package/build/cli/commands/usage.d.ts.map +0 -1
- package/build/cli/commands/usage.js +0 -16
- package/build/cli/commands/usage.js.map +0 -1
- package/build/cli/config.d.ts +0 -17
- package/build/cli/config.d.ts.map +0 -1
- package/build/cli/config.js +0 -42
- package/build/cli/config.js.map +0 -1
- package/build/cli/pack.d.ts +0 -25
- package/build/cli/pack.d.ts.map +0 -1
- package/build/cli/pack.js +0 -111
- package/build/cli/pack.js.map +0 -1
- package/build/cli/ui.d.ts +0 -23
- package/build/cli/ui.d.ts.map +0 -1
- package/build/cli/ui.js +0 -105
- package/build/cli/ui.js.map +0 -1
- package/build/cli.d.ts +0 -10
- package/build/cli.d.ts.map +0 -1
- package/build/cli.js +0 -251
- package/build/cli.js.map +0 -1
- package/build/client.d.ts +0 -94
- package/build/client.d.ts.map +0 -1
- package/build/client.js +0 -311
- package/build/client.js.map +0 -1
- package/build/index.d.ts +0 -12
- package/build/index.d.ts.map +0 -1
- package/build/index.js +0 -970
- package/build/index.js.map +0 -1
- package/build/tools/functions.d.ts +0 -14
- package/build/tools/functions.d.ts.map +0 -1
- package/build/tools/functions.js +0 -241
- package/build/tools/functions.js.map +0 -1
- package/build/types.d.ts +0 -155
- package/build/types.d.ts.map +0 -1
- package/build/types.js +0 -5
- package/build/types.js.map +0 -1
- package/build/ui/base.d.ts +0 -8
- package/build/ui/base.d.ts.map +0 -1
- package/build/ui/base.js +0 -425
- package/build/ui/base.js.map +0 -1
- package/build/ui/component-viewer.d.ts +0 -14
- package/build/ui/component-viewer.d.ts.map +0 -1
- package/build/ui/component-viewer.js +0 -678
- package/build/ui/component-viewer.js.map +0 -1
- package/build/ui/dashboard.d.ts +0 -21
- package/build/ui/dashboard.d.ts.map +0 -1
- package/build/ui/dashboard.js +0 -252
- package/build/ui/dashboard.js.map +0 -1
- package/build/ui/demo.d.ts +0 -14
- package/build/ui/demo.d.ts.map +0 -1
- package/build/ui/demo.js +0 -222
- package/build/ui/demo.js.map +0 -1
- package/build/ui/instances.d.ts +0 -17
- package/build/ui/instances.d.ts.map +0 -1
- package/build/ui/instances.js +0 -233
- package/build/ui/instances.js.map +0 -1
- package/build/ui/n8n-viewer.d.ts +0 -12
- package/build/ui/n8n-viewer.d.ts.map +0 -1
- package/build/ui/n8n-viewer.js +0 -371
- package/build/ui/n8n-viewer.js.map +0 -1
- package/build/ui/portals.d.ts +0 -14
- package/build/ui/portals.d.ts.map +0 -1
- package/build/ui/portals.js +0 -184
- package/build/ui/portals.js.map +0 -1
- package/build/ui/ui/components.html +0 -312
- package/build/ui/ui/n8n.html +0 -124
- package/build/ui/ui/portals.html +0 -211
- package/build/ui/widgets.d.ts +0 -17
- package/build/ui/widgets.d.ts.map +0 -1
- package/build/ui/widgets.js +0 -200
- package/build/ui/widgets.js.map +0 -1
- package/build/ui/workflows.d.ts +0 -17
- package/build/ui/workflows.d.ts.map +0 -1
- package/build/ui/workflows.js +0 -217
- package/build/ui/workflows.js.map +0 -1
package/build/ui/portals.js
DELETED
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Client Portals UI
|
|
3
|
-
*/
|
|
4
|
-
import { baseLayout, renderEmptyState } from './base.js';
|
|
5
|
-
export function renderPortalsDashboard(instances) {
|
|
6
|
-
if (!instances || instances.length === 0) {
|
|
7
|
-
return baseLayout('Client Portals', `
|
|
8
|
-
<div class="header">
|
|
9
|
-
<h1>🏢 Client Portals</h1>
|
|
10
|
-
<p>Manage your client instances and portals</p>
|
|
11
|
-
</div>
|
|
12
|
-
${renderEmptyState('No Portals Found', 'You don\'t have any client portals yet. Create your first instance to get started.')}
|
|
13
|
-
`);
|
|
14
|
-
}
|
|
15
|
-
const instanceCards = instances
|
|
16
|
-
.map((instance) => {
|
|
17
|
-
const statusBadge = getStatusBadge(instance.status, instance.subscription_status);
|
|
18
|
-
const storageUsed = Math.floor(Math.random() * instance.storage_limit_gb * 0.7); // Mock data
|
|
19
|
-
return `
|
|
20
|
-
<div class="card">
|
|
21
|
-
<div class="card-header">
|
|
22
|
-
<div>
|
|
23
|
-
<div class="card-title">${instance.instance_url}</div>
|
|
24
|
-
<div class="card-subtitle">ID: ${instance.id.slice(0, 8)}...</div>
|
|
25
|
-
</div>
|
|
26
|
-
${statusBadge}
|
|
27
|
-
</div>
|
|
28
|
-
|
|
29
|
-
<div>
|
|
30
|
-
<div class="stat">
|
|
31
|
-
<span class="stat-label">Storage</span>
|
|
32
|
-
<span class="stat-value">${storageUsed} GB / ${instance.storage_limit_gb} GB</span>
|
|
33
|
-
</div>
|
|
34
|
-
<div class="stat">
|
|
35
|
-
<span class="stat-label">Subscription</span>
|
|
36
|
-
<span class="stat-value">${instance.subscription_status || 'Active'}</span>
|
|
37
|
-
</div>
|
|
38
|
-
<div class="stat">
|
|
39
|
-
<span class="stat-label">Created</span>
|
|
40
|
-
<span class="stat-value">${new Date(instance.created_at).toLocaleDateString()}</span>
|
|
41
|
-
</div>
|
|
42
|
-
</div>
|
|
43
|
-
|
|
44
|
-
<div class="actions">
|
|
45
|
-
<a href="https://${instance.instance_url}" target="_blank" class="btn btn-primary">
|
|
46
|
-
Open Portal →
|
|
47
|
-
</a>
|
|
48
|
-
<button class="btn btn-secondary">Manage</button>
|
|
49
|
-
</div>
|
|
50
|
-
</div>
|
|
51
|
-
`;
|
|
52
|
-
})
|
|
53
|
-
.join('');
|
|
54
|
-
return baseLayout('Client Portals', `
|
|
55
|
-
<div class="header">
|
|
56
|
-
<h1>🏢 Client Portals</h1>
|
|
57
|
-
<p>Manage ${instances.length} client ${instances.length === 1 ? 'instance' : 'instances'}</p>
|
|
58
|
-
</div>
|
|
59
|
-
|
|
60
|
-
<div class="grid">
|
|
61
|
-
${instanceCards}
|
|
62
|
-
</div>
|
|
63
|
-
|
|
64
|
-
<div class="card">
|
|
65
|
-
<h3 style="margin-bottom: 12px;">Quick Actions</h3>
|
|
66
|
-
<div style="display: flex; gap: 12px;">
|
|
67
|
-
<button class="btn btn-primary">+ New Portal</button>
|
|
68
|
-
<button class="btn btn-secondary">View All Clients</button>
|
|
69
|
-
<button class="btn btn-secondary">Invite Client</button>
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
`);
|
|
73
|
-
}
|
|
74
|
-
function getStatusBadge(status, subscriptionStatus) {
|
|
75
|
-
const isActive = status === 'active' || status === 'running';
|
|
76
|
-
const isPaused = status === 'paused' || subscriptionStatus === 'paused';
|
|
77
|
-
const isError = status === 'error' || status === 'failed';
|
|
78
|
-
if (isActive) {
|
|
79
|
-
return '<span class="badge badge-success"><span class="dot dot-success"></span>Active</span>';
|
|
80
|
-
}
|
|
81
|
-
else if (isPaused) {
|
|
82
|
-
return '<span class="badge badge-warning"><span class="dot dot-warning"></span>Paused</span>';
|
|
83
|
-
}
|
|
84
|
-
else if (isError) {
|
|
85
|
-
return '<span class="badge badge-error"><span class="dot dot-error"></span>Error</span>';
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
return '<span class="badge badge-neutral"><span class="dot dot-neutral"></span>Inactive</span>';
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
export function renderPortalDetails(instanceId, workflows, widgets) {
|
|
92
|
-
return baseLayout('Portal Details', `
|
|
93
|
-
<div class="header">
|
|
94
|
-
<h1>📊 Portal Details</h1>
|
|
95
|
-
<p>Instance: <span class="code">${instanceId.slice(0, 8)}...</span></p>
|
|
96
|
-
</div>
|
|
97
|
-
|
|
98
|
-
<div class="card" style="margin-bottom: 24px;">
|
|
99
|
-
<h3 style="margin-bottom: 16px;">Overview</h3>
|
|
100
|
-
<div class="stat">
|
|
101
|
-
<span class="stat-label">Active Workflows</span>
|
|
102
|
-
<span class="stat-value">${workflows.filter((w) => w.active).length} / ${workflows.length}</span>
|
|
103
|
-
</div>
|
|
104
|
-
<div class="stat">
|
|
105
|
-
<span class="stat-label">Widgets</span>
|
|
106
|
-
<span class="stat-value">${widgets.length}</span>
|
|
107
|
-
</div>
|
|
108
|
-
<div class="stat">
|
|
109
|
-
<span class="stat-label">Status</span>
|
|
110
|
-
<span class="stat-value"><span class="badge badge-success">Active</span></span>
|
|
111
|
-
</div>
|
|
112
|
-
</div>
|
|
113
|
-
|
|
114
|
-
<h3 style="margin: 24px 0 16px;">Workflows</h3>
|
|
115
|
-
${renderWorkflowsList(workflows)}
|
|
116
|
-
|
|
117
|
-
<h3 style="margin: 24px 0 16px;">Widgets</h3>
|
|
118
|
-
${renderWidgetsList(widgets)}
|
|
119
|
-
|
|
120
|
-
<div class="actions">
|
|
121
|
-
<button class="btn btn-primary">Open Portal</button>
|
|
122
|
-
<button class="btn btn-secondary">Manage Settings</button>
|
|
123
|
-
</div>
|
|
124
|
-
`);
|
|
125
|
-
}
|
|
126
|
-
function renderWorkflowsList(workflows) {
|
|
127
|
-
if (!workflows || workflows.length === 0) {
|
|
128
|
-
return renderEmptyState('No Workflows', 'No workflows configured for this portal.');
|
|
129
|
-
}
|
|
130
|
-
const rows = workflows
|
|
131
|
-
.slice(0, 5)
|
|
132
|
-
.map((w) => `
|
|
133
|
-
<tr>
|
|
134
|
-
<td>${w.name}</td>
|
|
135
|
-
<td>${w.active ? '<span class="badge badge-success">Active</span>' : '<span class="badge badge-neutral">Inactive</span>'}</td>
|
|
136
|
-
<td>${w.executions_count || 0} runs</td>
|
|
137
|
-
</tr>
|
|
138
|
-
`)
|
|
139
|
-
.join('');
|
|
140
|
-
return `
|
|
141
|
-
<table class="table">
|
|
142
|
-
<thead>
|
|
143
|
-
<tr>
|
|
144
|
-
<th>Workflow</th>
|
|
145
|
-
<th>Status</th>
|
|
146
|
-
<th>Executions</th>
|
|
147
|
-
</tr>
|
|
148
|
-
</thead>
|
|
149
|
-
<tbody>
|
|
150
|
-
${rows}
|
|
151
|
-
</tbody>
|
|
152
|
-
</table>
|
|
153
|
-
`;
|
|
154
|
-
}
|
|
155
|
-
function renderWidgetsList(widgets) {
|
|
156
|
-
if (!widgets || widgets.length === 0) {
|
|
157
|
-
return renderEmptyState('No Widgets', 'No widgets configured for this portal.');
|
|
158
|
-
}
|
|
159
|
-
const rows = widgets
|
|
160
|
-
.slice(0, 5)
|
|
161
|
-
.map((w) => `
|
|
162
|
-
<tr>
|
|
163
|
-
<td>${w.name}</td>
|
|
164
|
-
<td><span class="code">${w.widget_type}</span></td>
|
|
165
|
-
<td>${w.is_active ? '<span class="badge badge-success">Active</span>' : '<span class="badge badge-neutral">Inactive</span>'}</td>
|
|
166
|
-
</tr>
|
|
167
|
-
`)
|
|
168
|
-
.join('');
|
|
169
|
-
return `
|
|
170
|
-
<table class="table">
|
|
171
|
-
<thead>
|
|
172
|
-
<tr>
|
|
173
|
-
<th>Widget</th>
|
|
174
|
-
<th>Type</th>
|
|
175
|
-
<th>Status</th>
|
|
176
|
-
</tr>
|
|
177
|
-
</thead>
|
|
178
|
-
<tbody>
|
|
179
|
-
${rows}
|
|
180
|
-
</tbody>
|
|
181
|
-
</table>
|
|
182
|
-
`;
|
|
183
|
-
}
|
|
184
|
-
//# sourceMappingURL=portals.js.map
|
package/build/ui/portals.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"portals.js","sourceRoot":"","sources":["../../src/ui/portals.ts"],"names":[],"mappings":"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"}
|