@ixo/editor 6.18.0 → 6.20.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/dist/action-manifest.json +574 -0
- package/dist/{chunk-N7J2JFCX.js → chunk-2WSXLAX5.js} +250 -1
- package/dist/chunk-2WSXLAX5.js.map +1 -0
- package/dist/{chunk-KIRDKAO3.js → chunk-EO2K4IDP.js} +2 -2
- package/dist/{chunk-LMNQ5HT6.js → chunk-VDSKJX74.js} +1696 -1594
- package/dist/chunk-VDSKJX74.js.map +1 -0
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.js +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -3
- package/dist/mantine/index.js +2 -2
- package/dist/{store-DeTFI0Ah.d.ts → store-Ba-HGtSG.d.ts} +13 -0
- package/package.json +1 -1
- package/dist/chunk-LMNQ5HT6.js.map +0 -1
- package/dist/chunk-N7J2JFCX.js.map +0 -1
- /package/dist/{chunk-KIRDKAO3.js.map → chunk-EO2K4IDP.js.map} +0 -0
|
@@ -742,6 +742,18 @@ var CAN_TO_TYPE = {
|
|
|
742
742
|
"pod/governance-config": "qi/pod.governance-config",
|
|
743
743
|
"pod/member-multi-select": "qi/pod.member-multi-select",
|
|
744
744
|
"pod/list-domain-flows": "qi/pod.list-domain-flows",
|
|
745
|
+
"blueprint/workspace-start": "qi/blueprint.workspace-start",
|
|
746
|
+
"blueprint/journey-resume": "qi/blueprint.journey-resume",
|
|
747
|
+
"blueprint/guided-authoring": "qi/blueprint.guided-authoring",
|
|
748
|
+
"blueprint/artifact-preview": "qi/blueprint.artifact-preview",
|
|
749
|
+
"blueprint/artifact-save": "qi/blueprint.artifact-save",
|
|
750
|
+
"blueprint/checklist-update": "qi/blueprint.checklist-update",
|
|
751
|
+
"blueprint/phase-confirm": "qi/blueprint.phase-confirm",
|
|
752
|
+
"blueprint/reviewer-assign": "qi/blueprint.reviewer-assign",
|
|
753
|
+
"blueprint/review-submit": "qi/blueprint.review-submit",
|
|
754
|
+
"blueprint/review-respond": "qi/blueprint.review-respond",
|
|
755
|
+
"blueprint/release-compile": "qi/blueprint.release-compile",
|
|
756
|
+
"blueprint/publish": "qi/blueprint.publish",
|
|
745
757
|
// Delegated integrations (author connects once, runners execute on their behalf)
|
|
746
758
|
"gmail.email/send": "qi/gmail.email.send",
|
|
747
759
|
"outlook.email/send": "qi/outlook.email.send",
|
|
@@ -840,6 +852,9 @@ function warnPartialServiceGroups(handlers) {
|
|
|
840
852
|
function buildServicesFromHandlers(handlers) {
|
|
841
853
|
warnPartialServiceGroups(handlers);
|
|
842
854
|
return {
|
|
855
|
+
blueprint: handlers?.blueprint?.execute ? {
|
|
856
|
+
execute: async (params) => handlers.blueprint.execute(params)
|
|
857
|
+
} : void 0,
|
|
843
858
|
http: {
|
|
844
859
|
request: async (params) => {
|
|
845
860
|
const fetchOptions = {
|
|
@@ -1653,6 +1668,240 @@ registerAction({
|
|
|
1653
1668
|
}
|
|
1654
1669
|
});
|
|
1655
1670
|
|
|
1671
|
+
// src/core/lib/actionRegistry/actions/blueprint.ts
|
|
1672
|
+
var OUTPUT_SCHEMA = [
|
|
1673
|
+
{
|
|
1674
|
+
path: "receiptRef",
|
|
1675
|
+
displayName: "Runtime receipt",
|
|
1676
|
+
type: "string",
|
|
1677
|
+
description: "Immutable Blueprint Runtime reference proving the governed operation completed."
|
|
1678
|
+
},
|
|
1679
|
+
{
|
|
1680
|
+
path: "result",
|
|
1681
|
+
displayName: "Result",
|
|
1682
|
+
type: "object",
|
|
1683
|
+
description: "The governed Blueprint Runtime result."
|
|
1684
|
+
}
|
|
1685
|
+
];
|
|
1686
|
+
var WORKSPACE_ID = {
|
|
1687
|
+
type: "string",
|
|
1688
|
+
description: "Opaque Blueprint workspace reference supplied by Portal."
|
|
1689
|
+
};
|
|
1690
|
+
var ACTIONS = [
|
|
1691
|
+
{
|
|
1692
|
+
type: "qi/blueprint.workspace-start",
|
|
1693
|
+
can: "blueprint/workspace-start",
|
|
1694
|
+
sideEffect: true,
|
|
1695
|
+
confirmation: true,
|
|
1696
|
+
required: ["name"],
|
|
1697
|
+
properties: {
|
|
1698
|
+
name: {
|
|
1699
|
+
type: "string",
|
|
1700
|
+
description: "Plain-language name for the professional Service POD."
|
|
1701
|
+
}
|
|
1702
|
+
}
|
|
1703
|
+
},
|
|
1704
|
+
{
|
|
1705
|
+
type: "qi/blueprint.journey-resume",
|
|
1706
|
+
can: "blueprint/journey-resume",
|
|
1707
|
+
sideEffect: false,
|
|
1708
|
+
confirmation: false,
|
|
1709
|
+
required: ["workspaceId"],
|
|
1710
|
+
properties: { workspaceId: WORKSPACE_ID }
|
|
1711
|
+
},
|
|
1712
|
+
{
|
|
1713
|
+
type: "qi/blueprint.guided-authoring",
|
|
1714
|
+
can: "blueprint/guided-authoring",
|
|
1715
|
+
sideEffect: false,
|
|
1716
|
+
confirmation: false,
|
|
1717
|
+
required: ["workspaceId", "phase"],
|
|
1718
|
+
properties: {
|
|
1719
|
+
workspaceId: WORKSPACE_ID,
|
|
1720
|
+
phase: {
|
|
1721
|
+
type: "string",
|
|
1722
|
+
description: "The current product phase: discovery, design, validation, testing, or deployment."
|
|
1723
|
+
}
|
|
1724
|
+
}
|
|
1725
|
+
},
|
|
1726
|
+
{
|
|
1727
|
+
type: "qi/blueprint.artifact-preview",
|
|
1728
|
+
can: "blueprint/artifact-preview",
|
|
1729
|
+
sideEffect: false,
|
|
1730
|
+
confirmation: false,
|
|
1731
|
+
required: ["workspaceId", "stage", "content"],
|
|
1732
|
+
properties: {
|
|
1733
|
+
workspaceId: WORKSPACE_ID,
|
|
1734
|
+
stage: {
|
|
1735
|
+
type: "string",
|
|
1736
|
+
description: "Internal Blueprint control receiving the draft."
|
|
1737
|
+
},
|
|
1738
|
+
content: {
|
|
1739
|
+
type: "object",
|
|
1740
|
+
description: "Draft artifact content to validate without saving."
|
|
1741
|
+
}
|
|
1742
|
+
}
|
|
1743
|
+
},
|
|
1744
|
+
{
|
|
1745
|
+
type: "qi/blueprint.artifact-save",
|
|
1746
|
+
can: "blueprint/artifact-save",
|
|
1747
|
+
sideEffect: true,
|
|
1748
|
+
confirmation: true,
|
|
1749
|
+
required: ["workspaceId", "stage", "content"],
|
|
1750
|
+
properties: {
|
|
1751
|
+
workspaceId: WORKSPACE_ID,
|
|
1752
|
+
stage: {
|
|
1753
|
+
type: "string",
|
|
1754
|
+
description: "Internal Blueprint control receiving the approved draft."
|
|
1755
|
+
},
|
|
1756
|
+
content: {
|
|
1757
|
+
type: "object",
|
|
1758
|
+
description: "User-confirmed artifact content to save."
|
|
1759
|
+
}
|
|
1760
|
+
}
|
|
1761
|
+
},
|
|
1762
|
+
{
|
|
1763
|
+
type: "qi/blueprint.checklist-update",
|
|
1764
|
+
can: "blueprint/checklist-update",
|
|
1765
|
+
sideEffect: true,
|
|
1766
|
+
confirmation: true,
|
|
1767
|
+
required: ["workspaceId", "operation"],
|
|
1768
|
+
properties: {
|
|
1769
|
+
workspaceId: WORKSPACE_ID,
|
|
1770
|
+
operation: {
|
|
1771
|
+
type: "string",
|
|
1772
|
+
description: "Add, accept for later, or resolve a checklist item."
|
|
1773
|
+
},
|
|
1774
|
+
item: {
|
|
1775
|
+
type: "object",
|
|
1776
|
+
description: "Checklist proposal or disposition selected by the user."
|
|
1777
|
+
}
|
|
1778
|
+
}
|
|
1779
|
+
},
|
|
1780
|
+
{
|
|
1781
|
+
type: "qi/blueprint.phase-confirm",
|
|
1782
|
+
can: "blueprint/phase-confirm",
|
|
1783
|
+
sideEffect: true,
|
|
1784
|
+
confirmation: true,
|
|
1785
|
+
required: ["workspaceId", "phase"],
|
|
1786
|
+
properties: {
|
|
1787
|
+
workspaceId: WORKSPACE_ID,
|
|
1788
|
+
phase: {
|
|
1789
|
+
type: "string",
|
|
1790
|
+
description: "Discovery, design, validation, testing, or deployment."
|
|
1791
|
+
}
|
|
1792
|
+
}
|
|
1793
|
+
},
|
|
1794
|
+
{
|
|
1795
|
+
type: "qi/blueprint.reviewer-assign",
|
|
1796
|
+
can: "blueprint/reviewer-assign",
|
|
1797
|
+
sideEffect: true,
|
|
1798
|
+
confirmation: true,
|
|
1799
|
+
required: ["workspaceId"],
|
|
1800
|
+
properties: {
|
|
1801
|
+
workspaceId: WORKSPACE_ID,
|
|
1802
|
+
reviewer: {
|
|
1803
|
+
type: "object",
|
|
1804
|
+
description: "Portal-selected independent reviewer or IXO-supported review request."
|
|
1805
|
+
}
|
|
1806
|
+
}
|
|
1807
|
+
},
|
|
1808
|
+
{
|
|
1809
|
+
type: "qi/blueprint.review-submit",
|
|
1810
|
+
can: "blueprint/review-submit",
|
|
1811
|
+
sideEffect: true,
|
|
1812
|
+
confirmation: true,
|
|
1813
|
+
required: ["workspaceId"],
|
|
1814
|
+
properties: { workspaceId: WORKSPACE_ID }
|
|
1815
|
+
},
|
|
1816
|
+
{
|
|
1817
|
+
type: "qi/blueprint.review-respond",
|
|
1818
|
+
can: "blueprint/review-respond",
|
|
1819
|
+
sideEffect: true,
|
|
1820
|
+
confirmation: true,
|
|
1821
|
+
required: ["workspaceId", "response"],
|
|
1822
|
+
properties: {
|
|
1823
|
+
workspaceId: WORKSPACE_ID,
|
|
1824
|
+
response: {
|
|
1825
|
+
type: "object",
|
|
1826
|
+
description: "Reviewer decision or provider response bound to the complete revision set."
|
|
1827
|
+
}
|
|
1828
|
+
}
|
|
1829
|
+
},
|
|
1830
|
+
{
|
|
1831
|
+
type: "qi/blueprint.release-compile",
|
|
1832
|
+
can: "blueprint/release-compile",
|
|
1833
|
+
sideEffect: true,
|
|
1834
|
+
confirmation: true,
|
|
1835
|
+
required: ["workspaceId"],
|
|
1836
|
+
properties: { workspaceId: WORKSPACE_ID }
|
|
1837
|
+
},
|
|
1838
|
+
{
|
|
1839
|
+
type: "qi/blueprint.publish",
|
|
1840
|
+
can: "blueprint/publish",
|
|
1841
|
+
sideEffect: true,
|
|
1842
|
+
confirmation: true,
|
|
1843
|
+
required: ["workspaceId", "releaseRef", "network"],
|
|
1844
|
+
properties: {
|
|
1845
|
+
workspaceId: WORKSPACE_ID,
|
|
1846
|
+
releaseRef: {
|
|
1847
|
+
type: "string",
|
|
1848
|
+
description: "Exact approved release to publish."
|
|
1849
|
+
},
|
|
1850
|
+
network: {
|
|
1851
|
+
type: "string",
|
|
1852
|
+
description: "Target IXO network selected by the user."
|
|
1853
|
+
}
|
|
1854
|
+
}
|
|
1855
|
+
}
|
|
1856
|
+
];
|
|
1857
|
+
function requireInputs(inputs, required) {
|
|
1858
|
+
for (const field of required) {
|
|
1859
|
+
const value = inputs[field];
|
|
1860
|
+
if (value === void 0 || value === null || typeof value === "string" && value.trim().length === 0) {
|
|
1861
|
+
throw new Error(`${field} is required`);
|
|
1862
|
+
}
|
|
1863
|
+
}
|
|
1864
|
+
}
|
|
1865
|
+
async function executeBlueprintAction(spec, inputs, ctx) {
|
|
1866
|
+
requireInputs(inputs, spec.required);
|
|
1867
|
+
const execute = ctx.services.blueprint?.execute;
|
|
1868
|
+
if (!execute) {
|
|
1869
|
+
throw new Error(`${spec.type} handler not available`);
|
|
1870
|
+
}
|
|
1871
|
+
const response = await execute({
|
|
1872
|
+
action: spec.type,
|
|
1873
|
+
inputs,
|
|
1874
|
+
actorDid: ctx.actorDid,
|
|
1875
|
+
flowId: ctx.flowId,
|
|
1876
|
+
nodeId: ctx.nodeId
|
|
1877
|
+
});
|
|
1878
|
+
if (!response.receiptRef) {
|
|
1879
|
+
throw new Error(`${spec.type} returned no Blueprint Runtime receipt`);
|
|
1880
|
+
}
|
|
1881
|
+
return {
|
|
1882
|
+
output: {
|
|
1883
|
+
receiptRef: response.receiptRef,
|
|
1884
|
+
result: response.result ?? {}
|
|
1885
|
+
}
|
|
1886
|
+
};
|
|
1887
|
+
}
|
|
1888
|
+
for (const spec of ACTIONS) {
|
|
1889
|
+
registerAction({
|
|
1890
|
+
type: spec.type,
|
|
1891
|
+
can: spec.can,
|
|
1892
|
+
sideEffect: spec.sideEffect,
|
|
1893
|
+
defaultRequiresConfirmation: spec.confirmation,
|
|
1894
|
+
proof: { fields: ["receiptRef"] },
|
|
1895
|
+
inputSchema: {
|
|
1896
|
+
type: "object",
|
|
1897
|
+
required: spec.required,
|
|
1898
|
+
properties: spec.properties
|
|
1899
|
+
},
|
|
1900
|
+
outputSchema: OUTPUT_SCHEMA,
|
|
1901
|
+
run: async (inputs, ctx) => executeBlueprintAction(spec, inputs, ctx)
|
|
1902
|
+
});
|
|
1903
|
+
}
|
|
1904
|
+
|
|
1656
1905
|
// src/core/lib/actionRegistry/actions/governance/memberProposal.ts
|
|
1657
1906
|
var VALID_OPERATIONS = ["add", "remove", "update-weight"];
|
|
1658
1907
|
function defaultTitle(operation, count) {
|
|
@@ -15302,4 +15551,4 @@ export {
|
|
|
15302
15551
|
executeQueuedFlowAgentCoreCommands,
|
|
15303
15552
|
FlowAgentService
|
|
15304
15553
|
};
|
|
15305
|
-
//# sourceMappingURL=chunk-
|
|
15554
|
+
//# sourceMappingURL=chunk-2WSXLAX5.js.map
|