@semics-tech/emdash-esign-pro 0.0.0-bootstrap.0 → 1.0.0-rc.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.
- package/LICENSE +95 -5
- package/dist/index.d.mts +5 -0
- package/dist/index.mjs +561 -0
- package/dist/manifest.json +569 -0
- package/dist/plugin.d.mts +7 -0
- package/dist/plugin.mjs +57 -0
- package/emdash-plugin.jsonc +254 -0
- package/package.json +47 -10
- package/README.md +0 -3
|
@@ -0,0 +1,569 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "semics-esign",
|
|
3
|
+
"version": "1.0.0-rc.0",
|
|
4
|
+
"declaredAccess": {
|
|
5
|
+
"media": {
|
|
6
|
+
"read": {},
|
|
7
|
+
"bytesRead": {}
|
|
8
|
+
},
|
|
9
|
+
"network": {
|
|
10
|
+
"request": {
|
|
11
|
+
"allowedHosts": [
|
|
12
|
+
"challenges.cloudflare.com"
|
|
13
|
+
]
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"email": {
|
|
17
|
+
"send": {}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"capabilities": [
|
|
21
|
+
"media:read",
|
|
22
|
+
"media:bytes:read",
|
|
23
|
+
"network:request",
|
|
24
|
+
"email:send"
|
|
25
|
+
],
|
|
26
|
+
"allowedHosts": [
|
|
27
|
+
"challenges.cloudflare.com"
|
|
28
|
+
],
|
|
29
|
+
"storage": {
|
|
30
|
+
"templates": {
|
|
31
|
+
"indexes": [
|
|
32
|
+
"status",
|
|
33
|
+
"kind",
|
|
34
|
+
"public"
|
|
35
|
+
]
|
|
36
|
+
},
|
|
37
|
+
"envelopes": {
|
|
38
|
+
"indexes": [
|
|
39
|
+
"status",
|
|
40
|
+
"expiresAt",
|
|
41
|
+
"createdAt",
|
|
42
|
+
"clientId",
|
|
43
|
+
"externalRef",
|
|
44
|
+
"pdfSha256",
|
|
45
|
+
"signerEmail",
|
|
46
|
+
[
|
|
47
|
+
"status",
|
|
48
|
+
"expiresAt"
|
|
49
|
+
]
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
"signers": {
|
|
53
|
+
"indexes": [
|
|
54
|
+
"envelopeId",
|
|
55
|
+
"email",
|
|
56
|
+
"copyTokenHash"
|
|
57
|
+
],
|
|
58
|
+
"uniqueIndexes": [
|
|
59
|
+
"tokenHash"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
"snapshots": {
|
|
63
|
+
"indexes": [
|
|
64
|
+
"envelopeId"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
"artifacts": {
|
|
68
|
+
"indexes": [
|
|
69
|
+
"envelopeId",
|
|
70
|
+
[
|
|
71
|
+
"envelopeId",
|
|
72
|
+
"kind"
|
|
73
|
+
]
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
"audit_events": {
|
|
77
|
+
"indexes": [
|
|
78
|
+
"envelopeId",
|
|
79
|
+
[
|
|
80
|
+
"envelopeId",
|
|
81
|
+
"seq"
|
|
82
|
+
]
|
|
83
|
+
]
|
|
84
|
+
},
|
|
85
|
+
"clients": {
|
|
86
|
+
"indexes": [
|
|
87
|
+
"createdAt"
|
|
88
|
+
],
|
|
89
|
+
"uniqueIndexes": [
|
|
90
|
+
"clientId"
|
|
91
|
+
]
|
|
92
|
+
},
|
|
93
|
+
"nonces": {
|
|
94
|
+
"indexes": [
|
|
95
|
+
"expiresAt"
|
|
96
|
+
],
|
|
97
|
+
"uniqueIndexes": [
|
|
98
|
+
"nonce"
|
|
99
|
+
]
|
|
100
|
+
},
|
|
101
|
+
"outbox": {
|
|
102
|
+
"indexes": [
|
|
103
|
+
[
|
|
104
|
+
"status",
|
|
105
|
+
"nextAttemptAt"
|
|
106
|
+
]
|
|
107
|
+
]
|
|
108
|
+
},
|
|
109
|
+
"bulk": {
|
|
110
|
+
"indexes": [
|
|
111
|
+
[
|
|
112
|
+
"kind",
|
|
113
|
+
"createdAt"
|
|
114
|
+
]
|
|
115
|
+
]
|
|
116
|
+
},
|
|
117
|
+
"pdf_templates": {
|
|
118
|
+
"indexes": [
|
|
119
|
+
"status"
|
|
120
|
+
]
|
|
121
|
+
},
|
|
122
|
+
"pdf_files": {
|
|
123
|
+
"indexes": [
|
|
124
|
+
"sha256"
|
|
125
|
+
]
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"hooks": [
|
|
129
|
+
"plugin:activate",
|
|
130
|
+
"cron"
|
|
131
|
+
],
|
|
132
|
+
"routes": [
|
|
133
|
+
{
|
|
134
|
+
"name": "public/envelopes/from-intent",
|
|
135
|
+
"methods": [
|
|
136
|
+
"POST"
|
|
137
|
+
],
|
|
138
|
+
"request": {
|
|
139
|
+
"body": "json",
|
|
140
|
+
"maxBytes": 16384
|
|
141
|
+
},
|
|
142
|
+
"public": true
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"name": "public/session",
|
|
146
|
+
"methods": [
|
|
147
|
+
"POST"
|
|
148
|
+
],
|
|
149
|
+
"request": {
|
|
150
|
+
"body": "json",
|
|
151
|
+
"maxBytes": 8192
|
|
152
|
+
},
|
|
153
|
+
"public": true
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"name": "public/otp/send",
|
|
157
|
+
"methods": [
|
|
158
|
+
"POST"
|
|
159
|
+
],
|
|
160
|
+
"request": {
|
|
161
|
+
"body": "json",
|
|
162
|
+
"maxBytes": 8192
|
|
163
|
+
},
|
|
164
|
+
"public": true
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"name": "public/otp/verify",
|
|
168
|
+
"methods": [
|
|
169
|
+
"POST"
|
|
170
|
+
],
|
|
171
|
+
"request": {
|
|
172
|
+
"body": "json",
|
|
173
|
+
"maxBytes": 8192
|
|
174
|
+
},
|
|
175
|
+
"public": true
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"name": "public/submit",
|
|
179
|
+
"methods": [
|
|
180
|
+
"POST"
|
|
181
|
+
],
|
|
182
|
+
"request": {
|
|
183
|
+
"body": "json",
|
|
184
|
+
"maxBytes": 262144
|
|
185
|
+
},
|
|
186
|
+
"public": true
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"name": "public/decline",
|
|
190
|
+
"methods": [
|
|
191
|
+
"POST"
|
|
192
|
+
],
|
|
193
|
+
"request": {
|
|
194
|
+
"body": "json",
|
|
195
|
+
"maxBytes": 8192
|
|
196
|
+
},
|
|
197
|
+
"public": true
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"name": "public/download",
|
|
201
|
+
"methods": [
|
|
202
|
+
"GET"
|
|
203
|
+
],
|
|
204
|
+
"request": {
|
|
205
|
+
"body": "none"
|
|
206
|
+
},
|
|
207
|
+
"response": "raw",
|
|
208
|
+
"public": true
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"name": "public/verify",
|
|
212
|
+
"methods": [
|
|
213
|
+
"POST"
|
|
214
|
+
],
|
|
215
|
+
"request": {
|
|
216
|
+
"body": "json",
|
|
217
|
+
"maxBytes": 8192
|
|
218
|
+
},
|
|
219
|
+
"public": true
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
"name": "public/receipts/lookup",
|
|
223
|
+
"methods": [
|
|
224
|
+
"POST"
|
|
225
|
+
],
|
|
226
|
+
"request": {
|
|
227
|
+
"body": "json",
|
|
228
|
+
"maxBytes": 8192
|
|
229
|
+
},
|
|
230
|
+
"public": true
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"name": "public/templates/catalog",
|
|
234
|
+
"methods": [
|
|
235
|
+
"POST"
|
|
236
|
+
],
|
|
237
|
+
"request": {
|
|
238
|
+
"body": "json",
|
|
239
|
+
"maxBytes": 65536
|
|
240
|
+
},
|
|
241
|
+
"public": true
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"name": "public/self-serve/start",
|
|
245
|
+
"methods": [
|
|
246
|
+
"POST"
|
|
247
|
+
],
|
|
248
|
+
"request": {
|
|
249
|
+
"body": "json",
|
|
250
|
+
"maxBytes": 65536
|
|
251
|
+
},
|
|
252
|
+
"public": true
|
|
253
|
+
},
|
|
254
|
+
"admin",
|
|
255
|
+
"templates/create",
|
|
256
|
+
"templates/update",
|
|
257
|
+
"templates/get",
|
|
258
|
+
"templates/list",
|
|
259
|
+
"templates/archive",
|
|
260
|
+
"envelopes/create",
|
|
261
|
+
"envelopes/send",
|
|
262
|
+
"envelopes/get",
|
|
263
|
+
"envelopes/list",
|
|
264
|
+
"envelopes/resend",
|
|
265
|
+
"envelopes/void",
|
|
266
|
+
"outbox/status",
|
|
267
|
+
"pro/licence",
|
|
268
|
+
"pro/envelopes/send",
|
|
269
|
+
"pro/templates/self-serve",
|
|
270
|
+
"pro/bulk/start",
|
|
271
|
+
"pro/pdf-templates/upload",
|
|
272
|
+
"pro/pdf-templates/update",
|
|
273
|
+
"pro/pdf-templates/send",
|
|
274
|
+
{
|
|
275
|
+
"name": "pro/mcp/templates",
|
|
276
|
+
"permission": "plugins:manage"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"name": "pro/mcp/send",
|
|
280
|
+
"permission": "plugins:manage"
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
"name": "pro/mcp/status",
|
|
284
|
+
"permission": "plugins:manage"
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"name": "pro/mcp/remind",
|
|
288
|
+
"permission": "plugins:manage"
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"name": "pro/mcp/void",
|
|
292
|
+
"permission": "plugins:manage"
|
|
293
|
+
}
|
|
294
|
+
],
|
|
295
|
+
"mcp": {
|
|
296
|
+
"tools": [
|
|
297
|
+
{
|
|
298
|
+
"name": "listTemplates",
|
|
299
|
+
"description": "List the e-sign templates by name: id, name, current version and status. Pass status \"archived\" for archived ones.",
|
|
300
|
+
"route": "pro/mcp/templates",
|
|
301
|
+
"permission": "plugins:manage",
|
|
302
|
+
"destructive": false,
|
|
303
|
+
"inputSchema": {
|
|
304
|
+
"type": "object",
|
|
305
|
+
"properties": {
|
|
306
|
+
"status": {
|
|
307
|
+
"type": "string",
|
|
308
|
+
"enum": [
|
|
309
|
+
"active",
|
|
310
|
+
"archived"
|
|
311
|
+
]
|
|
312
|
+
}
|
|
313
|
+
},
|
|
314
|
+
"additionalProperties": false
|
|
315
|
+
}
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"name": "sendForSignature",
|
|
319
|
+
"description": "Send a template for signature. Each signer is emailed a signing link. One signer: the envelope is created as a draft and sent within a minute. 2-10 signers sign in parallel (default) or in order (routing \"sequential\").",
|
|
320
|
+
"route": "pro/mcp/send",
|
|
321
|
+
"permission": "plugins:manage",
|
|
322
|
+
"destructive": false,
|
|
323
|
+
"inputSchema": {
|
|
324
|
+
"type": "object",
|
|
325
|
+
"properties": {
|
|
326
|
+
"templateId": {
|
|
327
|
+
"type": "string",
|
|
328
|
+
"description": "From listTemplates."
|
|
329
|
+
},
|
|
330
|
+
"templateVersion": {
|
|
331
|
+
"type": "integer",
|
|
332
|
+
"minimum": 1,
|
|
333
|
+
"description": "A pinned version; default the current one."
|
|
334
|
+
},
|
|
335
|
+
"title": {
|
|
336
|
+
"type": "string",
|
|
337
|
+
"description": "Envelope title (optional)."
|
|
338
|
+
},
|
|
339
|
+
"fields": {
|
|
340
|
+
"type": "object",
|
|
341
|
+
"additionalProperties": {
|
|
342
|
+
"type": "string"
|
|
343
|
+
},
|
|
344
|
+
"description": "Values for the template's {{placeholders}}."
|
|
345
|
+
},
|
|
346
|
+
"signers": {
|
|
347
|
+
"type": "array",
|
|
348
|
+
"minItems": 1,
|
|
349
|
+
"maxItems": 10,
|
|
350
|
+
"items": {
|
|
351
|
+
"type": "object",
|
|
352
|
+
"properties": {
|
|
353
|
+
"name": {
|
|
354
|
+
"type": "string"
|
|
355
|
+
},
|
|
356
|
+
"email": {
|
|
357
|
+
"type": "string"
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
"required": [
|
|
361
|
+
"name",
|
|
362
|
+
"email"
|
|
363
|
+
],
|
|
364
|
+
"additionalProperties": false
|
|
365
|
+
}
|
|
366
|
+
},
|
|
367
|
+
"routing": {
|
|
368
|
+
"type": "string",
|
|
369
|
+
"enum": [
|
|
370
|
+
"parallel",
|
|
371
|
+
"sequential"
|
|
372
|
+
]
|
|
373
|
+
}
|
|
374
|
+
},
|
|
375
|
+
"required": [
|
|
376
|
+
"templateId",
|
|
377
|
+
"signers"
|
|
378
|
+
],
|
|
379
|
+
"additionalProperties": false
|
|
380
|
+
}
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"name": "getEnvelopeStatus",
|
|
384
|
+
"description": "An envelope's status (draft, sent, in_progress, completed, declined, voided, expired), dates and each signer's status, with a short-lived signed PDF link once completed.",
|
|
385
|
+
"route": "pro/mcp/status",
|
|
386
|
+
"permission": "plugins:manage",
|
|
387
|
+
"destructive": false,
|
|
388
|
+
"inputSchema": {
|
|
389
|
+
"type": "object",
|
|
390
|
+
"properties": {
|
|
391
|
+
"id": {
|
|
392
|
+
"type": "string",
|
|
393
|
+
"minLength": 1,
|
|
394
|
+
"maxLength": 100,
|
|
395
|
+
"description": "The envelope id."
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
"required": [
|
|
399
|
+
"id"
|
|
400
|
+
],
|
|
401
|
+
"additionalProperties": false
|
|
402
|
+
}
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
"name": "remindSigners",
|
|
406
|
+
"description": "Email the next pending signer a reminder with a fresh signing link (the old link stops working). One signer per call; `remaining` says how many more are due. A signer is reminded at most once an hour.",
|
|
407
|
+
"route": "pro/mcp/remind",
|
|
408
|
+
"permission": "plugins:manage",
|
|
409
|
+
"destructive": false,
|
|
410
|
+
"inputSchema": {
|
|
411
|
+
"type": "object",
|
|
412
|
+
"properties": {
|
|
413
|
+
"id": {
|
|
414
|
+
"type": "string",
|
|
415
|
+
"minLength": 1,
|
|
416
|
+
"maxLength": 100,
|
|
417
|
+
"description": "The envelope id."
|
|
418
|
+
}
|
|
419
|
+
},
|
|
420
|
+
"required": [
|
|
421
|
+
"id"
|
|
422
|
+
],
|
|
423
|
+
"additionalProperties": false
|
|
424
|
+
}
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
"name": "voidEnvelope",
|
|
428
|
+
"description": "Void an open envelope: its signing links stop working at once. This cannot be undone.",
|
|
429
|
+
"route": "pro/mcp/void",
|
|
430
|
+
"permission": "plugins:manage",
|
|
431
|
+
"destructive": true,
|
|
432
|
+
"inputSchema": {
|
|
433
|
+
"type": "object",
|
|
434
|
+
"properties": {
|
|
435
|
+
"id": {
|
|
436
|
+
"type": "string",
|
|
437
|
+
"minLength": 1,
|
|
438
|
+
"maxLength": 100,
|
|
439
|
+
"description": "The envelope id."
|
|
440
|
+
}
|
|
441
|
+
},
|
|
442
|
+
"required": [
|
|
443
|
+
"id"
|
|
444
|
+
],
|
|
445
|
+
"additionalProperties": false
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
]
|
|
449
|
+
},
|
|
450
|
+
"admin": {
|
|
451
|
+
"settingsSchema": {
|
|
452
|
+
"senderName": {
|
|
453
|
+
"label": "Sender name",
|
|
454
|
+
"description": "Shown as the sender of signing emails.",
|
|
455
|
+
"type": "string"
|
|
456
|
+
},
|
|
457
|
+
"consentVersion": {
|
|
458
|
+
"label": "Consent version",
|
|
459
|
+
"description": "Recorded with every signature; bump when the wording changes.",
|
|
460
|
+
"type": "string",
|
|
461
|
+
"default": "1"
|
|
462
|
+
},
|
|
463
|
+
"consentWording": {
|
|
464
|
+
"label": "Consent wording",
|
|
465
|
+
"description": "Shown to signers before they sign.",
|
|
466
|
+
"type": "string",
|
|
467
|
+
"default": "I agree to use electronic records and an electronic signature for this document.",
|
|
468
|
+
"multiline": true
|
|
469
|
+
},
|
|
470
|
+
"expiryDays": {
|
|
471
|
+
"label": "Envelope expiry (days)",
|
|
472
|
+
"type": "number",
|
|
473
|
+
"default": 30,
|
|
474
|
+
"min": 1,
|
|
475
|
+
"max": 365
|
|
476
|
+
},
|
|
477
|
+
"reminderCadenceDays": {
|
|
478
|
+
"label": "Reminder cadence (days)",
|
|
479
|
+
"description": "Pro: automatic reminders.",
|
|
480
|
+
"type": "number",
|
|
481
|
+
"default": 3,
|
|
482
|
+
"min": 1,
|
|
483
|
+
"max": 30
|
|
484
|
+
},
|
|
485
|
+
"otpDefault": {
|
|
486
|
+
"label": "Require email code by default",
|
|
487
|
+
"description": "Pro: one-time code before signing.",
|
|
488
|
+
"type": "boolean",
|
|
489
|
+
"default": false
|
|
490
|
+
},
|
|
491
|
+
"otpContractTemplates": {
|
|
492
|
+
"label": "Require email code for contract templates",
|
|
493
|
+
"description": "Pro.",
|
|
494
|
+
"type": "boolean",
|
|
495
|
+
"default": true
|
|
496
|
+
},
|
|
497
|
+
"retentionPersonalDataMonths": {
|
|
498
|
+
"label": "Keep personal data (months)",
|
|
499
|
+
"type": "number",
|
|
500
|
+
"default": 12,
|
|
501
|
+
"min": 1,
|
|
502
|
+
"max": 120
|
|
503
|
+
},
|
|
504
|
+
"retentionSignedRecordsYears": {
|
|
505
|
+
"label": "Keep signed records (years)",
|
|
506
|
+
"type": "number",
|
|
507
|
+
"default": 7,
|
|
508
|
+
"min": 1,
|
|
509
|
+
"max": 50
|
|
510
|
+
},
|
|
511
|
+
"turnstileSiteKey": {
|
|
512
|
+
"label": "Turnstile site key",
|
|
513
|
+
"type": "string"
|
|
514
|
+
},
|
|
515
|
+
"turnstileSecretKey": {
|
|
516
|
+
"label": "Turnstile secret key",
|
|
517
|
+
"type": "secret"
|
|
518
|
+
},
|
|
519
|
+
"integrationMasterKey": {
|
|
520
|
+
"label": "Integration master key",
|
|
521
|
+
"description": "Client secrets are derived from this key; it is never shown again.",
|
|
522
|
+
"type": "secret"
|
|
523
|
+
},
|
|
524
|
+
"licenceKey": {
|
|
525
|
+
"label": "Pro licence key",
|
|
526
|
+
"description": "The semics1. key from your purchase email. Not needed on local or preview hosts. Stored encrypted.",
|
|
527
|
+
"type": "secret"
|
|
528
|
+
}
|
|
529
|
+
},
|
|
530
|
+
"pages": [
|
|
531
|
+
{
|
|
532
|
+
"path": "/envelopes",
|
|
533
|
+
"label": "Envelopes",
|
|
534
|
+
"icon": "file"
|
|
535
|
+
},
|
|
536
|
+
{
|
|
537
|
+
"path": "/templates",
|
|
538
|
+
"label": "Templates",
|
|
539
|
+
"icon": "file-text"
|
|
540
|
+
},
|
|
541
|
+
{
|
|
542
|
+
"path": "/integrations",
|
|
543
|
+
"label": "Integrations",
|
|
544
|
+
"icon": "link"
|
|
545
|
+
},
|
|
546
|
+
{
|
|
547
|
+
"path": "/settings",
|
|
548
|
+
"label": "Settings",
|
|
549
|
+
"icon": "gear"
|
|
550
|
+
},
|
|
551
|
+
{
|
|
552
|
+
"path": "/bulk",
|
|
553
|
+
"label": "Bulk send",
|
|
554
|
+
"icon": "users"
|
|
555
|
+
},
|
|
556
|
+
{
|
|
557
|
+
"path": "/self-serve",
|
|
558
|
+
"label": "Self-serve forms",
|
|
559
|
+
"icon": "globe"
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"path": "/pdf-templates",
|
|
563
|
+
"label": "PDF templates",
|
|
564
|
+
"icon": "file"
|
|
565
|
+
}
|
|
566
|
+
],
|
|
567
|
+
"widgets": []
|
|
568
|
+
}
|
|
569
|
+
}
|