@optique/core 1.0.0-dev.1695 → 1.0.0-dev.1699
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/constructs.cjs +25 -3
- package/dist/constructs.js +25 -3
- package/package.json +1 -1
package/dist/constructs.cjs
CHANGED
|
@@ -1627,9 +1627,18 @@ function object(labelOrParsers, maybeParsersOrOptions, maybeOptions) {
|
|
|
1627
1627
|
if (currentContext.buffer.length === 0) {
|
|
1628
1628
|
let allCanComplete = true;
|
|
1629
1629
|
const getFieldState = createFieldStateGetter(currentContext.state);
|
|
1630
|
+
const probeExec = currentContext.exec ? {
|
|
1631
|
+
...currentContext.exec,
|
|
1632
|
+
phase: "parse"
|
|
1633
|
+
} : {
|
|
1634
|
+
usage: [],
|
|
1635
|
+
path: [],
|
|
1636
|
+
trace: void 0,
|
|
1637
|
+
phase: "parse"
|
|
1638
|
+
};
|
|
1630
1639
|
for (const [field, parser] of parserPairs) {
|
|
1631
1640
|
const fieldState = getFieldState(field, parser);
|
|
1632
|
-
const completeResult = parser.complete(fieldState, withChildExecPath(
|
|
1641
|
+
const completeResult = parser.complete(fieldState, withChildExecPath(probeExec, field));
|
|
1633
1642
|
if (!completeResult.success) {
|
|
1634
1643
|
allCanComplete = false;
|
|
1635
1644
|
break;
|
|
@@ -1716,9 +1725,18 @@ function object(labelOrParsers, maybeParsersOrOptions, maybeOptions) {
|
|
|
1716
1725
|
if (currentContext.buffer.length === 0) {
|
|
1717
1726
|
let allCanComplete = true;
|
|
1718
1727
|
const getFieldState = createFieldStateGetter(currentContext.state);
|
|
1728
|
+
const probeExec = currentContext.exec ? {
|
|
1729
|
+
...currentContext.exec,
|
|
1730
|
+
phase: "parse"
|
|
1731
|
+
} : {
|
|
1732
|
+
usage: [],
|
|
1733
|
+
path: [],
|
|
1734
|
+
trace: void 0,
|
|
1735
|
+
phase: "parse"
|
|
1736
|
+
};
|
|
1719
1737
|
for (const [field, parser] of parserPairs) {
|
|
1720
1738
|
const fieldState = getFieldState(field, parser);
|
|
1721
|
-
const completeResult = await parser.complete(fieldState, withChildExecPath(
|
|
1739
|
+
const completeResult = await parser.complete(fieldState, withChildExecPath(probeExec, field));
|
|
1722
1740
|
if (!completeResult.success) {
|
|
1723
1741
|
allCanComplete = false;
|
|
1724
1742
|
break;
|
|
@@ -3860,6 +3878,7 @@ function conditional(discriminator, branches, defaultBranch, options) {
|
|
|
3860
3878
|
const discriminatorResult = await discriminator.parse({ ...withChildContext(context, "_discriminator", state.discriminatorState, discriminator) });
|
|
3861
3879
|
if (discriminatorResult.success) {
|
|
3862
3880
|
if (discriminatorResult.consumed.length === 0 && discriminator.$mode === "async") {
|
|
3881
|
+
let deferredBranchState = state.branchState;
|
|
3863
3882
|
if (defaultBranch !== void 0) {
|
|
3864
3883
|
const defaultResult = await defaultBranch.parse(withChildContext(context, "_branch", state.branchState ?? defaultBranch.initialState, defaultBranch, defaultBranch.usage));
|
|
3865
3884
|
if (defaultResult.success && defaultResult.consumed.length > 0) {
|
|
@@ -3881,6 +3900,8 @@ function conditional(discriminator, branches, defaultBranch, options) {
|
|
|
3881
3900
|
consumed: defaultResult.consumed
|
|
3882
3901
|
};
|
|
3883
3902
|
}
|
|
3903
|
+
if (!defaultResult.success && defaultResult.consumed > 0) return defaultResult;
|
|
3904
|
+
if (defaultResult.success && defaultResult.consumed.length === 0 && context.buffer.length === 0) deferredBranchState = getAnnotatedChildState(state, defaultResult.next.state, defaultBranch);
|
|
3884
3905
|
}
|
|
3885
3906
|
const annotatedDiscriminatorState$1 = getAnnotatedChildState(state, discriminatorResult.next.state, discriminator);
|
|
3886
3907
|
const mergedExec = mergeChildExec(context.exec, discriminatorResult.next.exec);
|
|
@@ -3891,7 +3912,8 @@ function conditional(discriminator, branches, defaultBranch, options) {
|
|
|
3891
3912
|
...context,
|
|
3892
3913
|
state: {
|
|
3893
3914
|
...state,
|
|
3894
|
-
discriminatorState: annotatedDiscriminatorState$1
|
|
3915
|
+
discriminatorState: annotatedDiscriminatorState$1,
|
|
3916
|
+
branchState: deferredBranchState
|
|
3895
3917
|
},
|
|
3896
3918
|
...mergedExec != null ? {
|
|
3897
3919
|
exec: mergedExec,
|
package/dist/constructs.js
CHANGED
|
@@ -1627,9 +1627,18 @@ function object(labelOrParsers, maybeParsersOrOptions, maybeOptions) {
|
|
|
1627
1627
|
if (currentContext.buffer.length === 0) {
|
|
1628
1628
|
let allCanComplete = true;
|
|
1629
1629
|
const getFieldState = createFieldStateGetter(currentContext.state);
|
|
1630
|
+
const probeExec = currentContext.exec ? {
|
|
1631
|
+
...currentContext.exec,
|
|
1632
|
+
phase: "parse"
|
|
1633
|
+
} : {
|
|
1634
|
+
usage: [],
|
|
1635
|
+
path: [],
|
|
1636
|
+
trace: void 0,
|
|
1637
|
+
phase: "parse"
|
|
1638
|
+
};
|
|
1630
1639
|
for (const [field, parser] of parserPairs) {
|
|
1631
1640
|
const fieldState = getFieldState(field, parser);
|
|
1632
|
-
const completeResult = parser.complete(fieldState, withChildExecPath(
|
|
1641
|
+
const completeResult = parser.complete(fieldState, withChildExecPath(probeExec, field));
|
|
1633
1642
|
if (!completeResult.success) {
|
|
1634
1643
|
allCanComplete = false;
|
|
1635
1644
|
break;
|
|
@@ -1716,9 +1725,18 @@ function object(labelOrParsers, maybeParsersOrOptions, maybeOptions) {
|
|
|
1716
1725
|
if (currentContext.buffer.length === 0) {
|
|
1717
1726
|
let allCanComplete = true;
|
|
1718
1727
|
const getFieldState = createFieldStateGetter(currentContext.state);
|
|
1728
|
+
const probeExec = currentContext.exec ? {
|
|
1729
|
+
...currentContext.exec,
|
|
1730
|
+
phase: "parse"
|
|
1731
|
+
} : {
|
|
1732
|
+
usage: [],
|
|
1733
|
+
path: [],
|
|
1734
|
+
trace: void 0,
|
|
1735
|
+
phase: "parse"
|
|
1736
|
+
};
|
|
1719
1737
|
for (const [field, parser] of parserPairs) {
|
|
1720
1738
|
const fieldState = getFieldState(field, parser);
|
|
1721
|
-
const completeResult = await parser.complete(fieldState, withChildExecPath(
|
|
1739
|
+
const completeResult = await parser.complete(fieldState, withChildExecPath(probeExec, field));
|
|
1722
1740
|
if (!completeResult.success) {
|
|
1723
1741
|
allCanComplete = false;
|
|
1724
1742
|
break;
|
|
@@ -3860,6 +3878,7 @@ function conditional(discriminator, branches, defaultBranch, options) {
|
|
|
3860
3878
|
const discriminatorResult = await discriminator.parse({ ...withChildContext(context, "_discriminator", state.discriminatorState, discriminator) });
|
|
3861
3879
|
if (discriminatorResult.success) {
|
|
3862
3880
|
if (discriminatorResult.consumed.length === 0 && discriminator.$mode === "async") {
|
|
3881
|
+
let deferredBranchState = state.branchState;
|
|
3863
3882
|
if (defaultBranch !== void 0) {
|
|
3864
3883
|
const defaultResult = await defaultBranch.parse(withChildContext(context, "_branch", state.branchState ?? defaultBranch.initialState, defaultBranch, defaultBranch.usage));
|
|
3865
3884
|
if (defaultResult.success && defaultResult.consumed.length > 0) {
|
|
@@ -3881,6 +3900,8 @@ function conditional(discriminator, branches, defaultBranch, options) {
|
|
|
3881
3900
|
consumed: defaultResult.consumed
|
|
3882
3901
|
};
|
|
3883
3902
|
}
|
|
3903
|
+
if (!defaultResult.success && defaultResult.consumed > 0) return defaultResult;
|
|
3904
|
+
if (defaultResult.success && defaultResult.consumed.length === 0 && context.buffer.length === 0) deferredBranchState = getAnnotatedChildState(state, defaultResult.next.state, defaultBranch);
|
|
3884
3905
|
}
|
|
3885
3906
|
const annotatedDiscriminatorState$1 = getAnnotatedChildState(state, discriminatorResult.next.state, discriminator);
|
|
3886
3907
|
const mergedExec = mergeChildExec(context.exec, discriminatorResult.next.exec);
|
|
@@ -3891,7 +3912,8 @@ function conditional(discriminator, branches, defaultBranch, options) {
|
|
|
3891
3912
|
...context,
|
|
3892
3913
|
state: {
|
|
3893
3914
|
...state,
|
|
3894
|
-
discriminatorState: annotatedDiscriminatorState$1
|
|
3915
|
+
discriminatorState: annotatedDiscriminatorState$1,
|
|
3916
|
+
branchState: deferredBranchState
|
|
3895
3917
|
},
|
|
3896
3918
|
...mergedExec != null ? {
|
|
3897
3919
|
exec: mergedExec,
|