@apergrex/n8n-nodes-franklab 0.1.2 → 0.2.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.
Files changed (126) hide show
  1. package/README.md +144 -7
  2. package/dist/nodes/Alibaba/Alibaba.node.json +10 -0
  3. package/dist/nodes/Alibaba/FrankLabAlibaba.node.d.ts +5 -0
  4. package/dist/nodes/Alibaba/FrankLabAlibaba.node.js +167 -0
  5. package/dist/nodes/Alibaba/FrankLabAlibaba.node.js.map +1 -0
  6. package/dist/nodes/Alibaba/alibaba.svg +4 -0
  7. package/dist/nodes/Aries/Aries.node.json +10 -0
  8. package/dist/nodes/Aries/FrankLabAries.node.d.ts +5 -0
  9. package/dist/nodes/Aries/FrankLabAries.node.js +48 -0
  10. package/dist/nodes/Aries/FrankLabAries.node.js.map +1 -0
  11. package/dist/nodes/Aries/aries.svg +6 -0
  12. package/dist/nodes/C2pa/FrankLabC2pa.node.js +1 -0
  13. package/dist/nodes/C2pa/FrankLabC2pa.node.js.map +1 -1
  14. package/dist/nodes/Dola/Dola.node.json +10 -0
  15. package/dist/nodes/Dola/FrankLabDola.node.d.ts +5 -0
  16. package/dist/nodes/Dola/FrankLabDola.node.js +155 -0
  17. package/dist/nodes/Dola/FrankLabDola.node.js.map +1 -0
  18. package/dist/nodes/Dola/dola.svg +6 -0
  19. package/dist/nodes/Holst/FrankLabHolst.node.js +9 -12
  20. package/dist/nodes/Holst/FrankLabHolst.node.js.map +1 -1
  21. package/dist/nodes/HotCoffe/FrankLabHotCoffe.node.d.ts +5 -0
  22. package/dist/nodes/HotCoffe/FrankLabHotCoffe.node.js +129 -0
  23. package/dist/nodes/HotCoffe/FrankLabHotCoffe.node.js.map +1 -0
  24. package/dist/nodes/HotCoffe/HotCoffe.node.json +10 -0
  25. package/dist/nodes/HotCoffe/hotcoffe.svg +6 -0
  26. package/dist/nodes/Jupiter/FrankLabJupiter.node.d.ts +5 -0
  27. package/dist/nodes/Jupiter/FrankLabJupiter.node.js +132 -0
  28. package/dist/nodes/Jupiter/FrankLabJupiter.node.js.map +1 -0
  29. package/dist/nodes/Jupiter/Jupiter.node.json +10 -0
  30. package/dist/nodes/Jupiter/jupiter.svg +7 -0
  31. package/dist/nodes/Kley/FrankLabKley.node.js +1 -0
  32. package/dist/nodes/Kley/FrankLabKley.node.js.map +1 -1
  33. package/dist/nodes/Kusok/FrankLabKusok.node.d.ts +5 -0
  34. package/dist/nodes/Kusok/FrankLabKusok.node.js +188 -0
  35. package/dist/nodes/Kusok/FrankLabKusok.node.js.map +1 -0
  36. package/dist/nodes/Kusok/Kusok.node.json +10 -0
  37. package/dist/nodes/Kusok/kusok.svg +7 -0
  38. package/dist/nodes/Mars/FrankLabMars.node.d.ts +5 -0
  39. package/dist/nodes/Mars/FrankLabMars.node.js +178 -0
  40. package/dist/nodes/Mars/FrankLabMars.node.js.map +1 -0
  41. package/dist/nodes/Mars/Mars.node.json +10 -0
  42. package/dist/nodes/Mars/mars.svg +6 -0
  43. package/dist/nodes/Mercury/FrankLabMercury.node.d.ts +5 -0
  44. package/dist/nodes/Mercury/FrankLabMercury.node.js +84 -0
  45. package/dist/nodes/Mercury/FrankLabMercury.node.js.map +1 -0
  46. package/dist/nodes/Mercury/Mercury.node.json +10 -0
  47. package/dist/nodes/Mercury/mercury.svg +6 -0
  48. package/dist/nodes/Minimax/FrankLabMinimax.node.d.ts +5 -0
  49. package/dist/nodes/Minimax/FrankLabMinimax.node.js +157 -0
  50. package/dist/nodes/Minimax/FrankLabMinimax.node.js.map +1 -0
  51. package/dist/nodes/Minimax/Minimax.node.json +10 -0
  52. package/dist/nodes/Minimax/minimax.svg +5 -0
  53. package/dist/nodes/Moon/FrankLabMoon.node.d.ts +5 -0
  54. package/dist/nodes/Moon/FrankLabMoon.node.js +132 -0
  55. package/dist/nodes/Moon/FrankLabMoon.node.js.map +1 -0
  56. package/dist/nodes/Moon/Moon.node.json +10 -0
  57. package/dist/nodes/Moon/moon.svg +5 -0
  58. package/dist/nodes/Neptune/FrankLabNeptune.node.d.ts +5 -0
  59. package/dist/nodes/Neptune/FrankLabNeptune.node.js +80 -0
  60. package/dist/nodes/Neptune/FrankLabNeptune.node.js.map +1 -0
  61. package/dist/nodes/Neptune/Neptune.node.json +10 -0
  62. package/dist/nodes/Neptune/neptune.svg +5 -0
  63. package/dist/nodes/Omni/FrankLabOmni.node.d.ts +5 -0
  64. package/dist/nodes/Omni/FrankLabOmni.node.js +194 -0
  65. package/dist/nodes/Omni/FrankLabOmni.node.js.map +1 -0
  66. package/dist/nodes/Omni/Omni.node.json +10 -0
  67. package/dist/nodes/Omni/omni.svg +6 -0
  68. package/dist/nodes/Orkestr/FrankLabOrkestr.node.d.ts +5 -0
  69. package/dist/nodes/Orkestr/FrankLabOrkestr.node.js +243 -0
  70. package/dist/nodes/Orkestr/FrankLabOrkestr.node.js.map +1 -0
  71. package/dist/nodes/Orkestr/Orkestr.node.json +10 -0
  72. package/dist/nodes/Orkestr/orkestr.svg +6 -0
  73. package/dist/nodes/Plastinka/FrankLabPlastinka.node.js +1 -0
  74. package/dist/nodes/Plastinka/FrankLabPlastinka.node.js.map +1 -1
  75. package/dist/nodes/Pluto/FrankLabPluto.node.d.ts +5 -0
  76. package/dist/nodes/Pluto/FrankLabPluto.node.js +74 -0
  77. package/dist/nodes/Pluto/FrankLabPluto.node.js.map +1 -0
  78. package/dist/nodes/Pluto/Pluto.node.json +10 -0
  79. package/dist/nodes/Pluto/pluto.svg +6 -0
  80. package/dist/nodes/Saturn/FrankLabSaturn.node.d.ts +5 -0
  81. package/dist/nodes/Saturn/FrankLabSaturn.node.js +117 -0
  82. package/dist/nodes/Saturn/FrankLabSaturn.node.js.map +1 -0
  83. package/dist/nodes/Saturn/Saturn.node.json +10 -0
  84. package/dist/nodes/Saturn/saturn.svg +5 -0
  85. package/dist/nodes/Sufler/FrankLabSufler.node.d.ts +5 -0
  86. package/dist/nodes/Sufler/FrankLabSufler.node.js +129 -0
  87. package/dist/nodes/Sufler/FrankLabSufler.node.js.map +1 -0
  88. package/dist/nodes/Sufler/Sufler.node.json +10 -0
  89. package/dist/nodes/Sufler/sufler.svg +6 -0
  90. package/dist/nodes/TextSticker/FrankLabTextSticker.node.d.ts +5 -0
  91. package/dist/nodes/TextSticker/FrankLabTextSticker.node.js +89 -0
  92. package/dist/nodes/TextSticker/FrankLabTextSticker.node.js.map +1 -0
  93. package/dist/nodes/TextSticker/TextSticker.node.json +10 -0
  94. package/dist/nodes/TextSticker/textsticker.svg +8 -0
  95. package/dist/nodes/Titan/FrankLabTitan.node.d.ts +5 -0
  96. package/dist/nodes/Titan/FrankLabTitan.node.js +85 -0
  97. package/dist/nodes/Titan/FrankLabTitan.node.js.map +1 -0
  98. package/dist/nodes/Titan/Titan.node.json +10 -0
  99. package/dist/nodes/Titan/titan.svg +7 -0
  100. package/dist/nodes/Venus/FrankLabVenus.node.d.ts +5 -0
  101. package/dist/nodes/Venus/FrankLabVenus.node.js +95 -0
  102. package/dist/nodes/Venus/FrankLabVenus.node.js.map +1 -0
  103. package/dist/nodes/Venus/Venus.node.json +10 -0
  104. package/dist/nodes/Venus/venus.svg +7 -0
  105. package/dist/nodes/Volna/FrankLabVolna.node.js +1 -0
  106. package/dist/nodes/Volna/FrankLabVolna.node.js.map +1 -1
  107. package/dist/nodes/X/FrankLabX.node.d.ts +5 -0
  108. package/dist/nodes/X/FrankLabX.node.js +133 -0
  109. package/dist/nodes/X/FrankLabX.node.js.map +1 -0
  110. package/dist/nodes/X/X.node.json +10 -0
  111. package/dist/nodes/X/x.svg +4 -0
  112. package/dist/nodes/shared/client.js +36 -11
  113. package/dist/nodes/shared/client.js.map +1 -1
  114. package/dist/nodes/shared/node-utils.d.ts +1 -0
  115. package/dist/nodes/shared/node-utils.js +233 -21
  116. package/dist/nodes/shared/node-utils.js.map +1 -1
  117. package/dist/nodes/shared/registry.d.ts +5 -3
  118. package/dist/nodes/shared/registry.js +356 -31
  119. package/dist/nodes/shared/registry.js.map +1 -1
  120. package/dist/nodes/shared/url.d.ts +1 -1
  121. package/dist/nodes/shared/url.js +20 -9
  122. package/dist/nodes/shared/url.js.map +1 -1
  123. package/dist/package.json +52 -15
  124. package/examples/moon-text-to-video.workflow.json +21 -0
  125. package/examples/saturn-turbo-video.workflow.json +20 -0
  126. package/package.json +52 -15
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FrankLabMinimax = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const node_utils_1 = require("../shared/node-utils");
6
+ const videoFields = [
7
+ {
8
+ displayName: 'Prompt',
9
+ name: 'prompt',
10
+ type: 'string',
11
+ typeOptions: { rows: 4 },
12
+ default: '',
13
+ required: true,
14
+ displayOptions: { show: { operation: ['createVideo'] } },
15
+ },
16
+ {
17
+ displayName: 'Scenario',
18
+ name: 'scenario',
19
+ type: 'options',
20
+ noDataExpression: true,
21
+ default: 'text_to_video',
22
+ options: [
23
+ { name: 'First and Last Frame to Video', value: 'first_last_frame_to_video', action: 'Use first and last frames' },
24
+ { name: 'First Frame to Video', value: 'first_frame_to_video', action: 'Use a first frame' },
25
+ { name: 'Last Frame to Video', value: 'last_frame_to_video', action: 'Use a last frame' },
26
+ { name: 'Reference to Video', value: 'reference_to_video', action: 'Use reference media' },
27
+ { name: 'Text to Video', value: 'text_to_video', action: 'Generate from text' },
28
+ ],
29
+ required: true,
30
+ displayOptions: { show: { operation: ['createVideo'] } },
31
+ },
32
+ {
33
+ displayName: 'Resolution',
34
+ name: 'resolution',
35
+ type: 'options',
36
+ noDataExpression: true,
37
+ default: '768P',
38
+ options: [
39
+ { name: '768P', value: '768P', action: 'Render at 768P' },
40
+ { name: '2K', value: '2K', action: 'Render at 2K' },
41
+ ],
42
+ displayOptions: { show: { operation: ['createVideo'] } },
43
+ },
44
+ {
45
+ displayName: 'Duration',
46
+ name: 'duration',
47
+ type: 'number',
48
+ default: '',
49
+ required: true,
50
+ description: 'Video duration in seconds (4-15)',
51
+ displayOptions: { show: { operation: ['createVideo'] } },
52
+ },
53
+ {
54
+ displayName: 'Ratio',
55
+ name: 'ratio',
56
+ type: 'string',
57
+ default: '',
58
+ description: 'Concrete aspect ratio for text_to_video (for example 16:9) or adaptive for frame-based scenarios',
59
+ displayOptions: { show: { operation: ['createVideo'] } },
60
+ },
61
+ {
62
+ displayName: 'Idempotency Key',
63
+ name: 'idempotency_key',
64
+ type: 'string',
65
+ default: '',
66
+ required: true,
67
+ description: 'Idempotency key (mint one with the Idempotency Key operation)',
68
+ displayOptions: { show: { operation: ['createVideo'] } },
69
+ },
70
+ {
71
+ displayName: 'First Frame Stored File ID',
72
+ name: 'first_frame_stored_file_id',
73
+ type: 'string',
74
+ default: '',
75
+ description: 'Optional partner-scoped stored file ID for the first frame',
76
+ displayOptions: { show: { operation: ['createVideo'] } },
77
+ },
78
+ {
79
+ displayName: 'Action',
80
+ name: 'action',
81
+ type: 'options',
82
+ noDataExpression: true,
83
+ default: 'cancel',
84
+ options: [
85
+ { name: 'Cancel', value: 'cancel', action: 'Cancel the task' },
86
+ { name: 'Delete', value: 'delete', action: 'Delete the task' },
87
+ ],
88
+ required: true,
89
+ displayOptions: { show: { operation: ['taskAction'] } },
90
+ },
91
+ {
92
+ displayName: 'Page Number',
93
+ name: 'page_num',
94
+ type: 'number',
95
+ default: '',
96
+ description: 'Optional results page for List Videos',
97
+ displayOptions: { show: { operation: ['listVideos'] } },
98
+ },
99
+ {
100
+ displayName: 'Page Size',
101
+ name: 'page_size',
102
+ type: 'number',
103
+ default: '',
104
+ description: 'Optional page size for List Videos',
105
+ displayOptions: { show: { operation: ['listVideos'] } },
106
+ },
107
+ ];
108
+ class FrankLabMinimax {
109
+ constructor() {
110
+ this.description = {
111
+ displayName: 'FrankLab MiniMax',
112
+ name: 'frankLabMinimax',
113
+ icon: 'file:minimax.svg',
114
+ subtitle: '={{$parameter["operation"]}}',
115
+ group: ['transform'],
116
+ version: 1,
117
+ description: 'Generate MiniMax H3 videos, mint idempotency keys, list tasks, and cancel or delete them.',
118
+ defaults: {
119
+ name: 'FrankLab MiniMax',
120
+ },
121
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
122
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
123
+ credentials: [
124
+ {
125
+ name: 'frankLabApi',
126
+ required: true,
127
+ },
128
+ ],
129
+ usableAsTool: true,
130
+ properties: [
131
+ {
132
+ displayName: 'Operation',
133
+ name: 'operation',
134
+ type: 'options',
135
+ noDataExpression: true,
136
+ default: 'createVideo',
137
+ options: [
138
+ { name: 'Create Video', value: 'createVideo', action: 'Submit a mini max h3 video task' },
139
+ { name: 'Get Task', value: 'getTask', action: 'Get a mini max task' },
140
+ { name: 'Idempotency Key', value: 'idempotencyKey', action: 'Mint an idempotency key' },
141
+ { name: 'List Videos', value: 'listVideos', action: 'List mini max video tasks' },
142
+ { name: 'Task Action', value: 'taskAction', action: 'Cancel or delete a mini max task' },
143
+ ],
144
+ },
145
+ ...videoFields,
146
+ node_utils_1.jobIdProperty,
147
+ node_utils_1.payloadProperty,
148
+ node_utils_1.waitProperty,
149
+ ],
150
+ };
151
+ }
152
+ async execute() {
153
+ return (0, node_utils_1.executeFrankLabModule)(this, 'minimax', 'getTask');
154
+ }
155
+ }
156
+ exports.FrankLabMinimax = FrankLabMinimax;
157
+ //# sourceMappingURL=FrankLabMinimax.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrankLabMinimax.node.js","sourceRoot":"","sources":["../../../nodes/Minimax/FrankLabMinimax.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ {
2
+ "node": "n8n-nodes-base.frankLabMinimax",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Marketing & Content"],
6
+ "resources": {
7
+ "credentialDocumentation": [{ "url": "https://github.com/d906090-rgb/n8n-nodes-franklab#credentials" }],
8
+ "primaryDocumentation": [{ "url": "https://github.com/d906090-rgb/n8n-nodes-franklab#minimax" }]
9
+ }
10
+ }
@@ -0,0 +1,5 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="FrankLab MINIMAX">
2
+ <rect width="64" height="64" rx="8" fill="#111827"/>
3
+ <rect x="12" y="14" width="40" height="36" rx="6" fill="none" stroke="#f8fafc" stroke-width="3"/>
4
+ <text x="32" y="40" font-family="monospace" font-size="18" font-weight="bold" fill="#22c55e" text-anchor="middle">H3</text>
5
+ </svg>
@@ -0,0 +1,5 @@
1
+ import type { IExecuteFunctions, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class FrankLabMoon implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<import("n8n-workflow").INodeExecutionData[][]>;
5
+ }
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FrankLabMoon = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const node_utils_1 = require("../shared/node-utils");
6
+ const videoFields = [
7
+ {
8
+ displayName: 'Prompt',
9
+ name: 'prompt',
10
+ type: 'string',
11
+ typeOptions: { rows: 4 },
12
+ default: '',
13
+ required: true,
14
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
15
+ },
16
+ {
17
+ displayName: 'Moon Operation',
18
+ name: 'operationMode',
19
+ type: 'options',
20
+ noDataExpression: true,
21
+ default: 'text_to_video',
22
+ options: [
23
+ { name: 'Image to Video', value: 'image_to_video', action: 'Generate a video from an image' },
24
+ { name: 'Reference to Video', value: 'reference_to_video', action: 'Generate a video from references' },
25
+ { name: 'Text to Video', value: 'text_to_video', action: 'Generate a video from text' },
26
+ { name: 'Video Edit', value: 'video_edit', action: 'Edit an existing video' },
27
+ { name: 'Video Extend', value: 'video_extend', action: 'Extend an existing video' },
28
+ ],
29
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
30
+ },
31
+ {
32
+ displayName: 'Moon Model',
33
+ name: 'moonModel',
34
+ type: 'options',
35
+ noDataExpression: true,
36
+ default: 'moon_base',
37
+ options: [
38
+ { name: 'Moon 2.0 Mini', value: 'moon_2_0_mini', action: 'Use moon_2_0_mini' },
39
+ { name: 'Moon Base', value: 'moon_base', action: 'Use moon_base' },
40
+ { name: 'Moon Fast', value: 'moon_fast', action: 'Use moon_fast' },
41
+ { name: 'Moon Mini', value: 'moon_mini', action: 'Use moon_mini' },
42
+ { name: 'Moon Pro', value: 'moon_pro', action: 'Use moon_pro' },
43
+ ],
44
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
45
+ },
46
+ {
47
+ displayName: 'Duration',
48
+ name: 'duration',
49
+ type: 'number',
50
+ default: '',
51
+ description: 'Optional video duration in seconds',
52
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
53
+ },
54
+ {
55
+ displayName: 'Ratio',
56
+ name: 'ratio',
57
+ type: 'string',
58
+ default: '',
59
+ description: 'Optional aspect ratio, for example 16:9',
60
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
61
+ },
62
+ {
63
+ displayName: 'Resolution',
64
+ name: 'resolution',
65
+ type: 'options',
66
+ noDataExpression: true,
67
+ default: '720p',
68
+ options: [
69
+ { name: '480p', value: '480p', action: 'Render at 480p' },
70
+ { name: '720p', value: '720p', action: 'Render at 720p' },
71
+ { name: '1080p', value: '1080p', action: 'Render at 1080p' },
72
+ { name: '4K', value: '4k', action: 'Render at 4K' },
73
+ ],
74
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
75
+ },
76
+ {
77
+ displayName: 'Reference Image URL',
78
+ name: 'reference_image_url',
79
+ type: 'string',
80
+ default: '',
81
+ description: 'Public http(s) URL of the reference image',
82
+ displayOptions: { show: { operation: ['createVideo', 'estimate'] } },
83
+ },
84
+ ];
85
+ class FrankLabMoon {
86
+ constructor() {
87
+ this.description = {
88
+ displayName: 'FrankLab MOON',
89
+ name: 'frankLabMoon',
90
+ icon: 'file:moon.svg',
91
+ subtitle: '={{$parameter["operation"]}}',
92
+ group: ['transform'],
93
+ version: 1,
94
+ description: 'Generate cinematic videos with FrankLab MOON, with cost estimates before submitting.',
95
+ defaults: {
96
+ name: 'FrankLab MOON',
97
+ },
98
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
99
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
100
+ credentials: [
101
+ {
102
+ name: 'frankLabApi',
103
+ required: true,
104
+ },
105
+ ],
106
+ usableAsTool: true,
107
+ properties: [
108
+ {
109
+ displayName: 'Operation',
110
+ name: 'operation',
111
+ type: 'options',
112
+ noDataExpression: true,
113
+ default: 'createVideo',
114
+ options: [
115
+ { name: 'Create Video', value: 'createVideo', action: 'Submit a moon video task' },
116
+ { name: 'Estimate Cost', value: 'estimate', action: 'Estimate the cost of a moon video task' },
117
+ { name: 'Get Status', value: 'getStatus', action: 'Get a moon video task status' },
118
+ ],
119
+ },
120
+ ...videoFields,
121
+ node_utils_1.jobIdProperty,
122
+ node_utils_1.payloadProperty,
123
+ node_utils_1.waitProperty,
124
+ ],
125
+ };
126
+ }
127
+ async execute() {
128
+ return (0, node_utils_1.executeFrankLabModule)(this, 'moon', { default: 'getStatus', estimate: '' });
129
+ }
130
+ }
131
+ exports.FrankLabMoon = FrankLabMoon;
132
+ //# sourceMappingURL=FrankLabMoon.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrankLabMoon.node.js","sourceRoot":"","sources":["../../../nodes/Moon/FrankLabMoon.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ {
2
+ "node": "n8n-nodes-base.frankLabMoon",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Marketing & Content"],
6
+ "resources": {
7
+ "credentialDocumentation": [{ "url": "https://github.com/d906090-rgb/n8n-nodes-franklab#credentials" }],
8
+ "primaryDocumentation": [{ "url": "https://github.com/d906090-rgb/n8n-nodes-franklab#moon" }]
9
+ }
10
+ }
@@ -0,0 +1,5 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="FrankLab MOON">
2
+ <rect width="64" height="64" rx="8" fill="#111827"/>
3
+ <path d="M40 12a20 20 0 1 0 12 34A22 22 0 0 1 40 12z" fill="#f8fafc"/>
4
+ <circle cx="46" cy="24" r="3" fill="#111827"/>
5
+ </svg>
@@ -0,0 +1,5 @@
1
+ import type { IExecuteFunctions, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class FrankLabNeptune implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<import("n8n-workflow").INodeExecutionData[][]>;
5
+ }
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FrankLabNeptune = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const node_utils_1 = require("../shared/node-utils");
6
+ const ttsFields = [
7
+ {
8
+ displayName: 'Text',
9
+ name: 'text',
10
+ type: 'string',
11
+ typeOptions: { rows: 4 },
12
+ default: '',
13
+ required: true,
14
+ displayOptions: { show: { operation: ['textToSpeech'] } },
15
+ },
16
+ {
17
+ displayName: 'Voice',
18
+ name: 'voice',
19
+ type: 'string',
20
+ default: '',
21
+ description: 'Optional voice identifier (see List Voices)',
22
+ displayOptions: { show: { operation: ['textToSpeech'] } },
23
+ },
24
+ {
25
+ displayName: 'Model',
26
+ name: 'model',
27
+ type: 'string',
28
+ default: '',
29
+ description: 'Optional model identifier',
30
+ displayOptions: { show: { operation: ['textToSpeech'] } },
31
+ },
32
+ ];
33
+ class FrankLabNeptune {
34
+ constructor() {
35
+ this.description = {
36
+ displayName: 'FrankLab NEPTUNE',
37
+ name: 'frankLabNeptune',
38
+ icon: 'file:neptune.svg',
39
+ subtitle: '={{$parameter["operation"]}}',
40
+ group: ['transform'],
41
+ version: 1,
42
+ description: 'Generate speech from text with FrankLab NEPTUNE.',
43
+ defaults: {
44
+ name: 'FrankLab NEPTUNE',
45
+ },
46
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
47
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
48
+ credentials: [
49
+ {
50
+ name: 'frankLabApi',
51
+ required: true,
52
+ },
53
+ ],
54
+ usableAsTool: true,
55
+ properties: [
56
+ {
57
+ displayName: 'Operation',
58
+ name: 'operation',
59
+ type: 'options',
60
+ noDataExpression: true,
61
+ default: 'textToSpeech',
62
+ options: [
63
+ { name: 'Get Task', value: 'getTask', action: 'Get a TTS task' },
64
+ { name: 'List Voices', value: 'listVoices', action: 'List TTS voices' },
65
+ { name: 'Text to Speech', value: 'textToSpeech', action: 'Generate speech from text' },
66
+ ],
67
+ },
68
+ ...ttsFields,
69
+ node_utils_1.jobIdProperty,
70
+ node_utils_1.payloadProperty,
71
+ node_utils_1.waitProperty,
72
+ ],
73
+ };
74
+ }
75
+ async execute() {
76
+ return (0, node_utils_1.executeFrankLabModule)(this, 'neptune', 'getTask');
77
+ }
78
+ }
79
+ exports.FrankLabNeptune = FrankLabNeptune;
80
+ //# sourceMappingURL=FrankLabNeptune.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrankLabNeptune.node.js","sourceRoot":"","sources":["../../../nodes/Neptune/FrankLabNeptune.node.ts"],"names":[],"mappings":";;;AACA,+CAAmD;AACnD,qDAA2G;AAE3G,MAAM,SAAS,GAAsB;IACpC;QACC,WAAW,EAAE,MAAM;QACnB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;QACxB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE;KACzD;IACD;QACC,WAAW,EAAE,OAAO;QACpB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,6CAA6C;QAC1D,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE;KACzD;IACD;QACC,WAAW,EAAE,OAAO;QACpB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,2BAA2B;QACxC,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE;KACzD;CACD,CAAC;AAEF,MAAa,eAAe;IAA5B;QAEC,gBAAW,GAAyB;YACnC,WAAW,EAAE,kBAAkB;YAC/B,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,kBAAkB;YACxB,QAAQ,EAAE,8BAA8B;YACxC,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE;gBACT,IAAI,EAAE,kBAAkB;aACxB;YACD,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YACnC,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,aAAa;oBACnB,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,WAAW;oBACxB,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,SAAS;oBACf,gBAAgB,EAAE,IAAI;oBACtB,OAAO,EAAE,cAAc;oBACvB,OAAO,EAAE;wBACR,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE;wBAChE,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE;wBACvE,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,2BAA2B,EAAE;qBACtF;iBACD;gBACD,GAAG,SAAS;gBACZ,0BAAa;gBACb,4BAAe;gBACf,yBAAY;aACZ;SACD,CAAC;IAKH,CAAC;IAHA,KAAK,CAAC,OAAO;QACZ,OAAO,IAAA,kCAAqB,EAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1D,CAAC;CACD;AA7CD,0CA6CC"}
@@ -0,0 +1,10 @@
1
+ {
2
+ "node": "n8n-nodes-base.frankLabNeptune",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Marketing & Content", "Communication"],
6
+ "resources": {
7
+ "credentialDocumentation": [{ "url": "https://github.com/d906090-rgb/n8n-nodes-franklab#credentials" }],
8
+ "primaryDocumentation": [{ "url": "https://github.com/d906090-rgb/n8n-nodes-franklab#neptune" }]
9
+ }
10
+ }
@@ -0,0 +1,5 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="FrankLab NEPTUNE">
2
+ <rect width="64" height="64" rx="8" fill="#111827"/>
3
+ <circle cx="32" cy="32" r="13" fill="none" stroke="#3b82f6" stroke-width="3"/>
4
+ <path d="M6 32c8-6 12 6 20 0s12 6 20 0 8-4 12-2" stroke="#60a5fa" stroke-width="2" fill="none"/>
5
+ </svg>
@@ -0,0 +1,5 @@
1
+ import type { IExecuteFunctions, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class FrankLabOmni implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<import("n8n-workflow").INodeExecutionData[][]>;
5
+ }