@wcstack/state 1.3.11
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.ja.md +1078 -0
- package/README.md +1078 -0
- package/dist/address/AbsolutePathInfo.d.ts +4 -0
- package/dist/address/AbsolutePathInfo.d.ts.map +1 -0
- package/dist/address/AbsolutePathInfo.js +33 -0
- package/dist/address/AbsolutePathInfo.js.map +1 -0
- package/dist/address/AbsoluteStateAddress.d.ts +4 -0
- package/dist/address/AbsoluteStateAddress.d.ts.map +1 -0
- package/dist/address/AbsoluteStateAddress.js +56 -0
- package/dist/address/AbsoluteStateAddress.js.map +1 -0
- package/dist/address/PathInfo.d.ts +3 -0
- package/dist/address/PathInfo.d.ts.map +1 -0
- package/dist/address/PathInfo.js +104 -0
- package/dist/address/PathInfo.js.map +1 -0
- package/dist/address/ResolvedAddress.d.ts +31 -0
- package/dist/address/ResolvedAddress.d.ts.map +1 -0
- package/dist/address/ResolvedAddress.js +110 -0
- package/dist/address/ResolvedAddress.js.map +1 -0
- package/dist/address/StateAddress.d.ts +4 -0
- package/dist/address/StateAddress.d.ts.map +1 -0
- package/dist/address/StateAddress.js +56 -0
- package/dist/address/StateAddress.js.map +1 -0
- package/dist/address/calcWildcardLen.d.ts +3 -0
- package/dist/address/calcWildcardLen.d.ts.map +1 -0
- package/dist/address/calcWildcardLen.js +31 -0
- package/dist/address/calcWildcardLen.js.map +1 -0
- package/dist/address/types.d.ts +54 -0
- package/dist/address/types.d.ts.map +1 -0
- package/dist/address/types.js +2 -0
- package/dist/address/types.js.map +1 -0
- package/dist/apply/applyChange.d.ts +4 -0
- package/dist/apply/applyChange.d.ts.map +1 -0
- package/dist/apply/applyChange.js +105 -0
- package/dist/apply/applyChange.js.map +1 -0
- package/dist/apply/applyChangeFromBindings.d.ts +9 -0
- package/dist/apply/applyChangeFromBindings.d.ts.map +1 -0
- package/dist/apply/applyChangeFromBindings.js +74 -0
- package/dist/apply/applyChangeFromBindings.js.map +1 -0
- package/dist/apply/applyChangeToAttribute.d.ts +4 -0
- package/dist/apply/applyChangeToAttribute.d.ts.map +1 -0
- package/dist/apply/applyChangeToAttribute.js +8 -0
- package/dist/apply/applyChangeToAttribute.js.map +1 -0
- package/dist/apply/applyChangeToCheckbox.d.ts +4 -0
- package/dist/apply/applyChangeToCheckbox.d.ts.map +1 -0
- package/dist/apply/applyChangeToCheckbox.js +11 -0
- package/dist/apply/applyChangeToCheckbox.js.map +1 -0
- package/dist/apply/applyChangeToClass.d.ts +4 -0
- package/dist/apply/applyChangeToClass.d.ts.map +1 -0
- package/dist/apply/applyChangeToClass.js +10 -0
- package/dist/apply/applyChangeToClass.js.map +1 -0
- package/dist/apply/applyChangeToFor.d.ts +9 -0
- package/dist/apply/applyChangeToFor.d.ts.map +1 -0
- package/dist/apply/applyChangeToFor.js +186 -0
- package/dist/apply/applyChangeToFor.js.map +1 -0
- package/dist/apply/applyChangeToIf.d.ts +4 -0
- package/dist/apply/applyChangeToIf.d.ts.map +1 -0
- package/dist/apply/applyChangeToIf.js +42 -0
- package/dist/apply/applyChangeToIf.js.map +1 -0
- package/dist/apply/applyChangeToProperty.d.ts +4 -0
- package/dist/apply/applyChangeToProperty.d.ts.map +1 -0
- package/dist/apply/applyChangeToProperty.js +37 -0
- package/dist/apply/applyChangeToProperty.js.map +1 -0
- package/dist/apply/applyChangeToRadio.d.ts +4 -0
- package/dist/apply/applyChangeToRadio.d.ts.map +1 -0
- package/dist/apply/applyChangeToRadio.js +8 -0
- package/dist/apply/applyChangeToRadio.js.map +1 -0
- package/dist/apply/applyChangeToStyle.d.ts +4 -0
- package/dist/apply/applyChangeToStyle.d.ts.map +1 -0
- package/dist/apply/applyChangeToStyle.js +9 -0
- package/dist/apply/applyChangeToStyle.js.map +1 -0
- package/dist/apply/applyChangeToText.d.ts +4 -0
- package/dist/apply/applyChangeToText.d.ts.map +1 -0
- package/dist/apply/applyChangeToText.js +6 -0
- package/dist/apply/applyChangeToText.js.map +1 -0
- package/dist/apply/applyChangeToWebComponent.d.ts +4 -0
- package/dist/apply/applyChangeToWebComponent.d.ts.map +1 -0
- package/dist/apply/applyChangeToWebComponent.js +15 -0
- package/dist/apply/applyChangeToWebComponent.js.map +1 -0
- package/dist/apply/getFilteredValue.d.ts +3 -0
- package/dist/apply/getFilteredValue.d.ts.map +1 -0
- package/dist/apply/getFilteredValue.js +8 -0
- package/dist/apply/getFilteredValue.js.map +1 -0
- package/dist/apply/getValue.d.ts +4 -0
- package/dist/apply/getValue.d.ts.map +1 -0
- package/dist/apply/getValue.js +20 -0
- package/dist/apply/getValue.js.map +1 -0
- package/dist/apply/rootNodeByFragment.d.ts +3 -0
- package/dist/apply/rootNodeByFragment.d.ts.map +1 -0
- package/dist/apply/rootNodeByFragment.js +13 -0
- package/dist/apply/rootNodeByFragment.js.map +1 -0
- package/dist/apply/types.d.ts +15 -0
- package/dist/apply/types.d.ts.map +1 -0
- package/dist/apply/types.js +2 -0
- package/dist/apply/types.js.map +1 -0
- package/dist/applyChangeToNode.d.ts +2 -0
- package/dist/applyChangeToNode.d.ts.map +1 -0
- package/dist/applyChangeToNode.js +38 -0
- package/dist/applyChangeToNode.js.map +1 -0
- package/dist/auto.js +3 -0
- package/dist/auto.min.js +3 -0
- package/dist/bindTextParser/parseBindTextForEmbeddedNode.d.ts +3 -0
- package/dist/bindTextParser/parseBindTextForEmbeddedNode.d.ts.map +1 -0
- package/dist/bindTextParser/parseBindTextForEmbeddedNode.js +13 -0
- package/dist/bindTextParser/parseBindTextForEmbeddedNode.js.map +1 -0
- package/dist/bindTextParser/parseBindTextsForElement.d.ts +3 -0
- package/dist/bindTextParser/parseBindTextsForElement.d.ts.map +1 -0
- package/dist/bindTextParser/parseBindTextsForElement.js +80 -0
- package/dist/bindTextParser/parseBindTextsForElement.js.map +1 -0
- package/dist/bindTextParser/parseFilterArgs.d.ts +2 -0
- package/dist/bindTextParser/parseFilterArgs.d.ts.map +1 -0
- package/dist/bindTextParser/parseFilterArgs.js +31 -0
- package/dist/bindTextParser/parseFilterArgs.js.map +1 -0
- package/dist/bindTextParser/parseFilters.d.ts +4 -0
- package/dist/bindTextParser/parseFilters.d.ts.map +1 -0
- package/dist/bindTextParser/parseFilters.js +52 -0
- package/dist/bindTextParser/parseFilters.js.map +1 -0
- package/dist/bindTextParser/parsePropPart.d.ts +5 -0
- package/dist/bindTextParser/parsePropPart.d.ts.map +1 -0
- package/dist/bindTextParser/parsePropPart.js +44 -0
- package/dist/bindTextParser/parsePropPart.js.map +1 -0
- package/dist/bindTextParser/parseStatePart.d.ts +5 -0
- package/dist/bindTextParser/parseStatePart.d.ts.map +1 -0
- package/dist/bindTextParser/parseStatePart.js +39 -0
- package/dist/bindTextParser/parseStatePart.js.map +1 -0
- package/dist/bindTextParser/types.d.ts +3 -0
- package/dist/bindTextParser/types.d.ts.map +1 -0
- package/dist/bindTextParser/types.js +2 -0
- package/dist/bindTextParser/types.js.map +1 -0
- package/dist/bindTextParser/utils.d.ts +2 -0
- package/dist/bindTextParser/utils.d.ts.map +1 -0
- package/dist/bindTextParser/utils.js +2 -0
- package/dist/bindTextParser/utils.js.map +1 -0
- package/dist/binding/getAbsoluteStateAddressByBinding.d.ts +5 -0
- package/dist/binding/getAbsoluteStateAddressByBinding.d.ts.map +1 -0
- package/dist/binding/getAbsoluteStateAddressByBinding.js +41 -0
- package/dist/binding/getAbsoluteStateAddressByBinding.js.map +1 -0
- package/dist/binding/getBindingSetByAbsoluteStateAddress.d.ts +7 -0
- package/dist/binding/getBindingSetByAbsoluteStateAddress.d.ts.map +1 -0
- package/dist/binding/getBindingSetByAbsoluteStateAddress.js +22 -0
- package/dist/binding/getBindingSetByAbsoluteStateAddress.js.map +1 -0
- package/dist/binding/getStateAddressByBindingInfo.d.ts +5 -0
- package/dist/binding/getStateAddressByBindingInfo.d.ts.map +1 -0
- package/dist/binding/getStateAddressByBindingInfo.js +28 -0
- package/dist/binding/getStateAddressByBindingInfo.js.map +1 -0
- package/dist/binding/types.d.ts +23 -0
- package/dist/binding/types.d.ts.map +1 -0
- package/dist/binding/types.js +2 -0
- package/dist/binding/types.js.map +1 -0
- package/dist/bindings/bindLoopContextToContent.d.ts +5 -0
- package/dist/bindings/bindLoopContextToContent.d.ts.map +1 -0
- package/dist/bindings/bindLoopContextToContent.js +15 -0
- package/dist/bindings/bindLoopContextToContent.js.map +1 -0
- package/dist/bindings/bindingsByContent.d.ts +5 -0
- package/dist/bindings/bindingsByContent.d.ts.map +1 -0
- package/dist/bindings/bindingsByContent.js +8 -0
- package/dist/bindings/bindingsByContent.js.map +1 -0
- package/dist/bindings/collectNodesAndBindingInfos.d.ts +6 -0
- package/dist/bindings/collectNodesAndBindingInfos.d.ts.map +1 -0
- package/dist/bindings/collectNodesAndBindingInfos.js +46 -0
- package/dist/bindings/collectNodesAndBindingInfos.js.map +1 -0
- package/dist/bindings/getBindingInfos.d.ts +4 -0
- package/dist/bindings/getBindingInfos.d.ts.map +1 -0
- package/dist/bindings/getBindingInfos.js +22 -0
- package/dist/bindings/getBindingInfos.js.map +1 -0
- package/dist/bindings/getBindingsByNode.d.ts +5 -0
- package/dist/bindings/getBindingsByNode.d.ts.map +1 -0
- package/dist/bindings/getBindingsByNode.js +17 -0
- package/dist/bindings/getBindingsByNode.js.map +1 -0
- package/dist/bindings/getParseBindTextResults.d.ts +3 -0
- package/dist/bindings/getParseBindTextResults.d.ts.map +1 -0
- package/dist/bindings/getParseBindTextResults.js +36 -0
- package/dist/bindings/getParseBindTextResults.js.map +1 -0
- package/dist/bindings/getSubscriberNodes.d.ts +7 -0
- package/dist/bindings/getSubscriberNodes.d.ts.map +1 -0
- package/dist/bindings/getSubscriberNodes.js +32 -0
- package/dist/bindings/getSubscriberNodes.js.map +1 -0
- package/dist/bindings/indexBindingsByContent.d.ts +5 -0
- package/dist/bindings/indexBindingsByContent.d.ts.map +1 -0
- package/dist/bindings/indexBindingsByContent.js +8 -0
- package/dist/bindings/indexBindingsByContent.js.map +1 -0
- package/dist/bindings/initializeBindingPromiseByNode.d.ts +5 -0
- package/dist/bindings/initializeBindingPromiseByNode.d.ts.map +1 -0
- package/dist/bindings/initializeBindingPromiseByNode.js +28 -0
- package/dist/bindings/initializeBindingPromiseByNode.js.map +1 -0
- package/dist/bindings/initializeBindings.d.ts +6 -0
- package/dist/bindings/initializeBindings.d.ts.map +1 -0
- package/dist/bindings/initializeBindings.js +59 -0
- package/dist/bindings/initializeBindings.js.map +1 -0
- package/dist/bindings/nodesByContent.d.ts +4 -0
- package/dist/bindings/nodesByContent.d.ts.map +1 -0
- package/dist/bindings/nodesByContent.js +8 -0
- package/dist/bindings/nodesByContent.js.map +1 -0
- package/dist/bindings/parseCommentNode.d.ts +3 -0
- package/dist/bindings/parseCommentNode.d.ts.map +1 -0
- package/dist/bindings/parseCommentNode.js +47 -0
- package/dist/bindings/parseCommentNode.js.map +1 -0
- package/dist/bindings/replaceToReplaceNode.d.ts +3 -0
- package/dist/bindings/replaceToReplaceNode.d.ts.map +1 -0
- package/dist/bindings/replaceToReplaceNode.js +13 -0
- package/dist/bindings/replaceToReplaceNode.js.map +1 -0
- package/dist/bindings/types.d.ts +11 -0
- package/dist/bindings/types.d.ts.map +1 -0
- package/dist/bindings/types.js +2 -0
- package/dist/bindings/types.js.map +1 -0
- package/dist/bootstrapState.d.ts +3 -0
- package/dist/bootstrapState.d.ts.map +1 -0
- package/dist/bootstrapState.js +9 -0
- package/dist/bootstrapState.js.map +1 -0
- package/dist/buildBindings.d.ts +2 -0
- package/dist/buildBindings.d.ts.map +1 -0
- package/dist/buildBindings.js +30 -0
- package/dist/buildBindings.js.map +1 -0
- package/dist/cache/cacheEntryByAbsoluteStateAddress.d.ts +6 -0
- package/dist/cache/cacheEntryByAbsoluteStateAddress.d.ts.map +1 -0
- package/dist/cache/cacheEntryByAbsoluteStateAddress.js +19 -0
- package/dist/cache/cacheEntryByAbsoluteStateAddress.js.map +1 -0
- package/dist/cache/types.d.ts +5 -0
- package/dist/cache/types.d.ts.map +1 -0
- package/dist/cache/types.js +2 -0
- package/dist/cache/types.js.map +1 -0
- package/dist/components/State.d.ts +83 -0
- package/dist/components/State.d.ts.map +1 -0
- package/dist/components/State.js +340 -0
- package/dist/components/State.js.map +1 -0
- package/dist/components/types.d.ts +26 -0
- package/dist/components/types.d.ts.map +1 -0
- package/dist/components/types.js +2 -0
- package/dist/components/types.js.map +1 -0
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +49 -0
- package/dist/config.js.map +1 -0
- package/dist/createEmptyArray.d.ts +2 -0
- package/dist/createEmptyArray.d.ts.map +1 -0
- package/dist/createEmptyArray.js +4 -0
- package/dist/createEmptyArray.js.map +1 -0
- package/dist/createEmptySet.d.ts +2 -0
- package/dist/createEmptySet.d.ts.map +1 -0
- package/dist/createEmptySet.js +4 -0
- package/dist/createEmptySet.js.map +1 -0
- package/dist/define.d.ts +14 -0
- package/dist/define.d.ts.map +1 -0
- package/dist/define.js +25 -0
- package/dist/define.js.map +1 -0
- package/dist/dependency/types.d.ts +2 -0
- package/dist/dependency/types.d.ts.map +1 -0
- package/dist/dependency/types.js +2 -0
- package/dist/dependency/types.js.map +1 -0
- package/dist/dependency/walkDependency.d.ts +6 -0
- package/dist/dependency/walkDependency.d.ts.map +1 -0
- package/dist/dependency/walkDependency.js +194 -0
- package/dist/dependency/walkDependency.js.map +1 -0
- package/dist/event/checkboxHandler.d.ts +14 -0
- package/dist/event/checkboxHandler.d.ts.map +1 -0
- package/dist/event/checkboxHandler.js +120 -0
- package/dist/event/checkboxHandler.js.map +1 -0
- package/dist/event/handler.d.ts +8 -0
- package/dist/event/handler.d.ts.map +1 -0
- package/dist/event/handler.js +81 -0
- package/dist/event/handler.js.map +1 -0
- package/dist/event/isPossibleTwoWay.d.ts +2 -0
- package/dist/event/isPossibleTwoWay.d.ts.map +1 -0
- package/dist/event/isPossibleTwoWay.js +29 -0
- package/dist/event/isPossibleTwoWay.js.map +1 -0
- package/dist/event/radioHandler.d.ts +14 -0
- package/dist/event/radioHandler.d.ts.map +1 -0
- package/dist/event/radioHandler.js +101 -0
- package/dist/event/radioHandler.js.map +1 -0
- package/dist/event/twowayHandler.d.ts +14 -0
- package/dist/event/twowayHandler.d.ts.map +1 -0
- package/dist/event/twowayHandler.js +100 -0
- package/dist/event/twowayHandler.js.map +1 -0
- package/dist/exports.d.ts +3 -0
- package/dist/exports.d.ts.map +1 -0
- package/dist/exports.js +2 -0
- package/dist/exports.js.map +1 -0
- package/dist/filters/builtinFilters.d.ts +16 -0
- package/dist/filters/builtinFilters.d.ts.map +1 -0
- package/dist/filters/builtinFilters.js +716 -0
- package/dist/filters/builtinFilters.js.map +1 -0
- package/dist/filters/errorMessages.d.ts +43 -0
- package/dist/filters/errorMessages.d.ts.map +1 -0
- package/dist/filters/errorMessages.js +72 -0
- package/dist/filters/errorMessages.js.map +1 -0
- package/dist/filters/types.d.ts +23 -0
- package/dist/filters/types.d.ts.map +1 -0
- package/dist/filters/types.js +2 -0
- package/dist/filters/types.js.map +1 -0
- package/dist/getUUID.d.ts +2 -0
- package/dist/getUUID.d.ts.map +1 -0
- package/dist/getUUID.js +5 -0
- package/dist/getUUID.js.map +1 -0
- package/dist/hydrater/hydrate.d.ts +1 -0
- package/dist/hydrater/hydrate.d.ts.map +1 -0
- package/dist/hydrater/hydrate.js +2 -0
- package/dist/hydrater/hydrate.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.esm.js +5677 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/index.esm.min.js +2 -0
- package/dist/index.esm.min.js.map +1 -0
- package/dist/isCustomElement.d.ts +2 -0
- package/dist/isCustomElement.d.ts.map +1 -0
- package/dist/isCustomElement.js +26 -0
- package/dist/isCustomElement.js.map +1 -0
- package/dist/list/createListDiff.d.ts +13 -0
- package/dist/list/createListDiff.d.ts.map +1 -0
- package/dist/list/createListDiff.js +181 -0
- package/dist/list/createListDiff.js.map +1 -0
- package/dist/list/createListIndex.d.ts +10 -0
- package/dist/list/createListIndex.d.ts.map +1 -0
- package/dist/list/createListIndex.js +136 -0
- package/dist/list/createListIndex.js.map +1 -0
- package/dist/list/getIndexValueByLoopContext.d.ts +3 -0
- package/dist/list/getIndexValueByLoopContext.d.ts.map +1 -0
- package/dist/list/getIndexValueByLoopContext.js +18 -0
- package/dist/list/getIndexValueByLoopContext.js.map +1 -0
- package/dist/list/getListIndexByBindingInfo.d.ts +4 -0
- package/dist/list/getListIndexByBindingInfo.d.ts.map +1 -0
- package/dist/list/getListIndexByBindingInfo.js +32 -0
- package/dist/list/getListIndexByBindingInfo.js.map +1 -0
- package/dist/list/lastListValueByAbsoluteStateAddress.d.ts +6 -0
- package/dist/list/lastListValueByAbsoluteStateAddress.d.ts.map +1 -0
- package/dist/list/lastListValueByAbsoluteStateAddress.js +14 -0
- package/dist/list/lastListValueByAbsoluteStateAddress.js.map +1 -0
- package/dist/list/listIndexesByList.d.ts +4 -0
- package/dist/list/listIndexesByList.d.ts.map +1 -0
- package/dist/list/listIndexesByList.js +12 -0
- package/dist/list/listIndexesByList.js.map +1 -0
- package/dist/list/loopContext.d.ts +3 -0
- package/dist/list/loopContext.d.ts.map +1 -0
- package/dist/list/loopContext.js +54 -0
- package/dist/list/loopContext.js.map +1 -0
- package/dist/list/loopContextByNode.d.ts +4 -0
- package/dist/list/loopContextByNode.d.ts.map +1 -0
- package/dist/list/loopContextByNode.js +20 -0
- package/dist/list/loopContextByNode.js.map +1 -0
- package/dist/list/types.d.ts +38 -0
- package/dist/list/types.d.ts.map +1 -0
- package/dist/list/types.js +2 -0
- package/dist/list/types.js.map +1 -0
- package/dist/mustache/convertMustacheToComments.d.ts +2 -0
- package/dist/mustache/convertMustacheToComments.d.ts.map +1 -0
- package/dist/mustache/convertMustacheToComments.js +66 -0
- package/dist/mustache/convertMustacheToComments.js.map +1 -0
- package/dist/polyfills.d.ts +8 -0
- package/dist/polyfills.d.ts.map +1 -0
- package/dist/polyfills.js +22 -0
- package/dist/polyfills.js.map +1 -0
- package/dist/proxy/StateHandler.d.ts +32 -0
- package/dist/proxy/StateHandler.d.ts.map +1 -0
- package/dist/proxy/StateHandler.js +91 -0
- package/dist/proxy/StateHandler.js.map +1 -0
- package/dist/proxy/apis/connectedCallback.d.ts +18 -0
- package/dist/proxy/apis/connectedCallback.d.ts.map +1 -0
- package/dist/proxy/apis/connectedCallback.js +23 -0
- package/dist/proxy/apis/connectedCallback.js.map +1 -0
- package/dist/proxy/apis/disconnectedCallback.d.ts +17 -0
- package/dist/proxy/apis/disconnectedCallback.d.ts.map +1 -0
- package/dist/proxy/apis/disconnectedCallback.js +22 -0
- package/dist/proxy/apis/disconnectedCallback.js.map +1 -0
- package/dist/proxy/apis/getAll.d.ts +11 -0
- package/dist/proxy/apis/getAll.d.ts.map +1 -0
- package/dist/proxy/apis/getAll.js +87 -0
- package/dist/proxy/apis/getAll.js.map +1 -0
- package/dist/proxy/apis/postUpdate.d.ts +5 -0
- package/dist/proxy/apis/postUpdate.d.ts.map +1 -0
- package/dist/proxy/apis/postUpdate.js +30 -0
- package/dist/proxy/apis/postUpdate.js.map +1 -0
- package/dist/proxy/apis/resolve.d.ts +22 -0
- package/dist/proxy/apis/resolve.d.ts.map +1 -0
- package/dist/proxy/apis/resolve.js +65 -0
- package/dist/proxy/apis/resolve.js.map +1 -0
- package/dist/proxy/apis/trackDependency.d.ts +34 -0
- package/dist/proxy/apis/trackDependency.d.ts.map +1 -0
- package/dist/proxy/apis/trackDependency.js +32 -0
- package/dist/proxy/apis/trackDependency.js.map +1 -0
- package/dist/proxy/apis/updatedCallback.d.ts +28 -0
- package/dist/proxy/apis/updatedCallback.d.ts.map +1 -0
- package/dist/proxy/apis/updatedCallback.js +56 -0
- package/dist/proxy/apis/updatedCallback.js.map +1 -0
- package/dist/proxy/methods/checkDependency.d.ts +4 -0
- package/dist/proxy/methods/checkDependency.d.ts.map +1 -0
- package/dist/proxy/methods/checkDependency.js +16 -0
- package/dist/proxy/methods/checkDependency.js.map +1 -0
- package/dist/proxy/methods/getByAddress.d.ts +23 -0
- package/dist/proxy/methods/getByAddress.d.ts.map +1 -0
- package/dist/proxy/methods/getByAddress.js +81 -0
- package/dist/proxy/methods/getByAddress.js.map +1 -0
- package/dist/proxy/methods/getContextListIndex.d.ts +21 -0
- package/dist/proxy/methods/getContextListIndex.d.ts.map +1 -0
- package/dist/proxy/methods/getContextListIndex.js +32 -0
- package/dist/proxy/methods/getContextListIndex.js.map +1 -0
- package/dist/proxy/methods/getListIndex.d.ts +22 -0
- package/dist/proxy/methods/getListIndex.d.ts.map +1 -0
- package/dist/proxy/methods/getListIndex.js +55 -0
- package/dist/proxy/methods/getListIndex.js.map +1 -0
- package/dist/proxy/methods/setByAddress.d.ts +21 -0
- package/dist/proxy/methods/setByAddress.d.ts.map +1 -0
- package/dist/proxy/methods/setByAddress.js +135 -0
- package/dist/proxy/methods/setByAddress.js.map +1 -0
- package/dist/proxy/methods/setLoopContext.d.ts +22 -0
- package/dist/proxy/methods/setLoopContext.d.ts.map +1 -0
- package/dist/proxy/methods/setLoopContext.js +43 -0
- package/dist/proxy/methods/setLoopContext.js.map +1 -0
- package/dist/proxy/methods/swapInfo.d.ts +5 -0
- package/dist/proxy/methods/swapInfo.d.ts.map +1 -0
- package/dist/proxy/methods/swapInfo.js +13 -0
- package/dist/proxy/methods/swapInfo.js.map +1 -0
- package/dist/proxy/methods/types.d.ts +6 -0
- package/dist/proxy/methods/types.d.ts.map +1 -0
- package/dist/proxy/methods/types.js +2 -0
- package/dist/proxy/methods/types.js.map +1 -0
- package/dist/proxy/symbols.d.ts +8 -0
- package/dist/proxy/symbols.d.ts.map +1 -0
- package/dist/proxy/symbols.js +8 -0
- package/dist/proxy/symbols.js.map +1 -0
- package/dist/proxy/traps/get.d.ts +21 -0
- package/dist/proxy/traps/get.d.ts.map +1 -0
- package/dist/proxy/traps/get.js +120 -0
- package/dist/proxy/traps/get.js.map +1 -0
- package/dist/proxy/traps/set.d.ts +18 -0
- package/dist/proxy/traps/set.d.ts.map +1 -0
- package/dist/proxy/traps/set.js +31 -0
- package/dist/proxy/traps/set.js.map +1 -0
- package/dist/proxy/types.d.ts +27 -0
- package/dist/proxy/types.d.ts.map +1 -0
- package/dist/proxy/types.js +2 -0
- package/dist/proxy/types.js.map +1 -0
- package/dist/raiseError.d.ts +2 -0
- package/dist/raiseError.d.ts.map +1 -0
- package/dist/raiseError.js +4 -0
- package/dist/raiseError.js.map +1 -0
- package/dist/registerComponents.d.ts +2 -0
- package/dist/registerComponents.d.ts.map +1 -0
- package/dist/registerComponents.js +9 -0
- package/dist/registerComponents.js.map +1 -0
- package/dist/stateElementByName.d.ts +4 -0
- package/dist/stateElementByName.d.ts.map +1 -0
- package/dist/stateElementByName.js +53 -0
- package/dist/stateElementByName.js.map +1 -0
- package/dist/stateLoader/loadFromInnerScript.d.ts +3 -0
- package/dist/stateLoader/loadFromInnerScript.d.ts.map +1 -0
- package/dist/stateLoader/loadFromInnerScript.js +24 -0
- package/dist/stateLoader/loadFromInnerScript.js.map +1 -0
- package/dist/stateLoader/loadFromJsonFile.d.ts +3 -0
- package/dist/stateLoader/loadFromJsonFile.d.ts.map +1 -0
- package/dist/stateLoader/loadFromJsonFile.js +16 -0
- package/dist/stateLoader/loadFromJsonFile.js.map +1 -0
- package/dist/stateLoader/loadFromScriptFile.d.ts +3 -0
- package/dist/stateLoader/loadFromScriptFile.d.ts.map +1 -0
- package/dist/stateLoader/loadFromScriptFile.js +11 -0
- package/dist/stateLoader/loadFromScriptFile.js.map +1 -0
- package/dist/stateLoader/loadFromScriptJson.d.ts +3 -0
- package/dist/stateLoader/loadFromScriptJson.d.ts.map +1 -0
- package/dist/stateLoader/loadFromScriptJson.js +15 -0
- package/dist/stateLoader/loadFromScriptJson.js.map +1 -0
- package/dist/structural/activateContent.d.ts +6 -0
- package/dist/structural/activateContent.d.ts.map +1 -0
- package/dist/structural/activateContent.js +29 -0
- package/dist/structural/activateContent.js.map +1 -0
- package/dist/structural/collectStructuralFragments.d.ts +2 -0
- package/dist/structural/collectStructuralFragments.d.ts.map +1 -0
- package/dist/structural/collectStructuralFragments.js +160 -0
- package/dist/structural/collectStructuralFragments.js.map +1 -0
- package/dist/structural/contentsByNode.d.ts +5 -0
- package/dist/structural/contentsByNode.d.ts.map +1 -0
- package/dist/structural/contentsByNode.js +29 -0
- package/dist/structural/contentsByNode.js.map +1 -0
- package/dist/structural/createContent.d.ts +4 -0
- package/dist/structural/createContent.d.ts.map +1 -0
- package/dist/structural/createContent.js +92 -0
- package/dist/structural/createContent.js.map +1 -0
- package/dist/structural/createNotFilter.d.ts +3 -0
- package/dist/structural/createNotFilter.d.ts.map +1 -0
- package/dist/structural/createNotFilter.js +17 -0
- package/dist/structural/createNotFilter.js.map +1 -0
- package/dist/structural/define.d.ts +3 -0
- package/dist/structural/define.d.ts.map +1 -0
- package/dist/structural/define.js +7 -0
- package/dist/structural/define.js.map +1 -0
- package/dist/structural/expandShorthandPaths.d.ts +3 -0
- package/dist/structural/expandShorthandPaths.d.ts.map +1 -0
- package/dist/structural/expandShorthandPaths.js +96 -0
- package/dist/structural/expandShorthandPaths.js.map +1 -0
- package/dist/structural/fragmentInfoByUUID.d.ts +4 -0
- package/dist/structural/fragmentInfoByUUID.d.ts.map +1 -0
- package/dist/structural/fragmentInfoByUUID.js +30 -0
- package/dist/structural/fragmentInfoByUUID.js.map +1 -0
- package/dist/structural/getFragmentNodeInfos.d.ts +3 -0
- package/dist/structural/getFragmentNodeInfos.d.ts.map +1 -0
- package/dist/structural/getFragmentNodeInfos.js +16 -0
- package/dist/structural/getFragmentNodeInfos.js.map +1 -0
- package/dist/structural/getNodePath.d.ts +2 -0
- package/dist/structural/getNodePath.d.ts.map +1 -0
- package/dist/structural/getNodePath.js +12 -0
- package/dist/structural/getNodePath.js.map +1 -0
- package/dist/structural/optimizeFragment.d.ts +2 -0
- package/dist/structural/optimizeFragment.d.ts.map +1 -0
- package/dist/structural/optimizeFragment.js +13 -0
- package/dist/structural/optimizeFragment.js.map +1 -0
- package/dist/structural/resolveNodePath.d.ts +2 -0
- package/dist/structural/resolveNodePath.d.ts.map +1 -0
- package/dist/structural/resolveNodePath.js +13 -0
- package/dist/structural/resolveNodePath.js.map +1 -0
- package/dist/structural/types.d.ts +19 -0
- package/dist/structural/types.d.ts.map +1 -0
- package/dist/structural/types.js +2 -0
- package/dist/structural/types.js.map +1 -0
- package/dist/types.d.ts +35 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/updater/types.d.ts +7 -0
- package/dist/updater/types.d.ts.map +1 -0
- package/dist/updater/types.js +2 -0
- package/dist/updater/types.js.map +1 -0
- package/dist/updater/updater.d.ts +14 -0
- package/dist/updater/updater.d.ts.map +1 -0
- package/dist/updater/updater.js +49 -0
- package/dist/updater/updater.js.map +1 -0
- package/dist/version/types.d.ts +5 -0
- package/dist/version/types.d.ts.map +1 -0
- package/dist/version/types.js +2 -0
- package/dist/version/types.js.map +1 -0
- package/dist/version/version.d.ts +3 -0
- package/dist/version/version.d.ts.map +1 -0
- package/dist/version/version.js +9 -0
- package/dist/version/version.js.map +1 -0
- package/dist/waitForStateInitialize.d.ts +2 -0
- package/dist/waitForStateInitialize.d.ts.map +1 -0
- package/dist/waitForStateInitialize.js +12 -0
- package/dist/waitForStateInitialize.js.map +1 -0
- package/dist/webComponent/MappingRule.d.ts +10 -0
- package/dist/webComponent/MappingRule.d.ts.map +1 -0
- package/dist/webComponent/MappingRule.js +120 -0
- package/dist/webComponent/MappingRule.js.map +1 -0
- package/dist/webComponent/bindWebComponent.d.ts +3 -0
- package/dist/webComponent/bindWebComponent.d.ts.map +1 -0
- package/dist/webComponent/bindWebComponent.js +49 -0
- package/dist/webComponent/bindWebComponent.js.map +1 -0
- package/dist/webComponent/completeWebComponent.d.ts +4 -0
- package/dist/webComponent/completeWebComponent.d.ts.map +1 -0
- package/dist/webComponent/completeWebComponent.js +17 -0
- package/dist/webComponent/completeWebComponent.js.map +1 -0
- package/dist/webComponent/innerState.d.ts +3 -0
- package/dist/webComponent/innerState.d.ts.map +1 -0
- package/dist/webComponent/innerState.js +120 -0
- package/dist/webComponent/innerState.js.map +1 -0
- package/dist/webComponent/lastValueByAbsoluteStateAddress.d.ts +4 -0
- package/dist/webComponent/lastValueByAbsoluteStateAddress.d.ts.map +1 -0
- package/dist/webComponent/lastValueByAbsoluteStateAddress.js +10 -0
- package/dist/webComponent/lastValueByAbsoluteStateAddress.js.map +1 -0
- package/dist/webComponent/meltFrozenObject.d.ts +2 -0
- package/dist/webComponent/meltFrozenObject.d.ts.map +1 -0
- package/dist/webComponent/meltFrozenObject.js +17 -0
- package/dist/webComponent/meltFrozenObject.js.map +1 -0
- package/dist/webComponent/outerState.d.ts +3 -0
- package/dist/webComponent/outerState.d.ts.map +1 -0
- package/dist/webComponent/outerState.js +41 -0
- package/dist/webComponent/outerState.js.map +1 -0
- package/dist/webComponent/plainOuterState.d.ts +3 -0
- package/dist/webComponent/plainOuterState.d.ts.map +1 -0
- package/dist/webComponent/plainOuterState.js +36 -0
- package/dist/webComponent/plainOuterState.js.map +1 -0
- package/dist/webComponent/stateElementByWebComponent.d.ts +4 -0
- package/dist/webComponent/stateElementByWebComponent.d.ts.map +1 -0
- package/dist/webComponent/stateElementByWebComponent.js +17 -0
- package/dist/webComponent/stateElementByWebComponent.js.map +1 -0
- package/dist/webComponent/types.d.ts +3 -0
- package/dist/webComponent/types.d.ts.map +1 -0
- package/dist/webComponent/types.js +2 -0
- package/dist/webComponent/types.js.map +1 -0
- package/package.json +70 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkDependency.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/checkDependency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,aAAa,GACrB,IAAI,CAcN"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export function checkDependency(handler, address) {
|
|
2
|
+
// 動的依存関係の登録
|
|
3
|
+
if (handler.addressStackLength > 0) {
|
|
4
|
+
const lastInfo = handler.lastAddressStack?.pathInfo ?? null;
|
|
5
|
+
const stateElement = handler.stateElement;
|
|
6
|
+
if (lastInfo !== null) {
|
|
7
|
+
if (stateElement.getterPaths.has(lastInfo.path) &&
|
|
8
|
+
lastInfo.path !== address.pathInfo.path) {
|
|
9
|
+
// lastInfo.pathはgetterの名前であり、address.pathInfo.pathは
|
|
10
|
+
// そのgetterが参照している値のパスである
|
|
11
|
+
stateElement.addDynamicDependency(address.pathInfo.path, lastInfo.path);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=checkDependency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkDependency.js","sourceRoot":"","sources":["../../../src/proxy/methods/checkDependency.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,eAAe,CAC7B,OAAsB,EACtB,OAAsB;IAEtB,YAAY;IACZ,IAAI,OAAO,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,EAAE,QAAQ,IAAI,IAAI,CAAC;QAC5D,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAC1C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,IAAI,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7C,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC1C,oDAAoD;gBACpD,yBAAyB;gBACzB,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* getByAddress.ts
|
|
3
|
+
*
|
|
4
|
+
* StateClassの内部APIとして、構造化パス情報(IStructuredPathInfo)とリストインデックス(IListIndex)を指定して
|
|
5
|
+
* 状態オブジェクト(target)から値を取得するための関数(getByAddress)の実装です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - 指定されたパス・インデックスに対応するState値を取得(多重ループやワイルドカードにも対応)
|
|
9
|
+
* - 依存関係の自動登録(checkDependencyで登録)
|
|
10
|
+
* - キャッシュ機構(リストもキャッシュ対象)
|
|
11
|
+
* - getter経由で値取得時はpushAddressでスコープを一時設定
|
|
12
|
+
* - 存在しない場合は親pathAddressやlistIndexを辿って再帰的に値を取得
|
|
13
|
+
*
|
|
14
|
+
* 設計ポイント:
|
|
15
|
+
* - checkDependencyで依存追跡を実行
|
|
16
|
+
* - キャッシュ有効時はstateAddressで値をキャッシュし、取得・再利用を最適化
|
|
17
|
+
* - ワイルドカードや多重ループにも柔軟に対応し、再帰的な値取得を実現
|
|
18
|
+
* - finallyでキャッシュへの格納を保証
|
|
19
|
+
*/
|
|
20
|
+
import { IStateAddress } from "../../address/types";
|
|
21
|
+
import { IStateHandler } from "../types";
|
|
22
|
+
export declare function getByAddress(target: object, address: IStateAddress, receiver: any, handler: IStateHandler): any;
|
|
23
|
+
//# sourceMappingURL=getByAddress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getByAddress.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/getByAddress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKpD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAwDzC,wBAAgB,YAAY,CAC1B,MAAM,EAAK,MAAM,EACjB,OAAO,EAAI,aAAa,EACxB,QAAQ,EAAG,GAAG,EACd,OAAO,EAAI,aAAa,GACvB,GAAG,CAUL"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* getByAddress.ts
|
|
3
|
+
*
|
|
4
|
+
* StateClassの内部APIとして、構造化パス情報(IStructuredPathInfo)とリストインデックス(IListIndex)を指定して
|
|
5
|
+
* 状態オブジェクト(target)から値を取得するための関数(getByAddress)の実装です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - 指定されたパス・インデックスに対応するState値を取得(多重ループやワイルドカードにも対応)
|
|
9
|
+
* - 依存関係の自動登録(checkDependencyで登録)
|
|
10
|
+
* - キャッシュ機構(リストもキャッシュ対象)
|
|
11
|
+
* - getter経由で値取得時はpushAddressでスコープを一時設定
|
|
12
|
+
* - 存在しない場合は親pathAddressやlistIndexを辿って再帰的に値を取得
|
|
13
|
+
*
|
|
14
|
+
* 設計ポイント:
|
|
15
|
+
* - checkDependencyで依存追跡を実行
|
|
16
|
+
* - キャッシュ有効時はstateAddressで値をキャッシュし、取得・再利用を最適化
|
|
17
|
+
* - ワイルドカードや多重ループにも柔軟に対応し、再帰的な値取得を実現
|
|
18
|
+
* - finallyでキャッシュへの格納を保証
|
|
19
|
+
*/
|
|
20
|
+
import { getAbsolutePathInfo } from "../../address/AbsolutePathInfo";
|
|
21
|
+
import { createAbsoluteStateAddress } from "../../address/AbsoluteStateAddress";
|
|
22
|
+
import { getCacheEntryByAbsoluteStateAddress, setCacheEntryByAbsoluteStateAddress } from "../../cache/cacheEntryByAbsoluteStateAddress";
|
|
23
|
+
import { WILDCARD } from "../../define";
|
|
24
|
+
import { raiseError } from "../../raiseError";
|
|
25
|
+
import { checkDependency } from "./checkDependency";
|
|
26
|
+
function _getByAddress(target, address, receiver, handler, stateElement) {
|
|
27
|
+
if (address.pathInfo.path in target) {
|
|
28
|
+
// getterの中で参照の可能性があるので、addressをプッシュする
|
|
29
|
+
if (stateElement.getterPaths.has(address.pathInfo.path)) {
|
|
30
|
+
handler.pushAddress(address);
|
|
31
|
+
try {
|
|
32
|
+
return Reflect.get(target, address.pathInfo.path, receiver);
|
|
33
|
+
}
|
|
34
|
+
finally {
|
|
35
|
+
handler.popAddress();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return Reflect.get(target, address.pathInfo.path);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
const parentAddress = address.parentAddress ?? raiseError(`address.parentAddress is undefined path: ${address.pathInfo.path}`);
|
|
44
|
+
const parentValue = getByAddress(target, parentAddress, receiver, handler);
|
|
45
|
+
const lastSegment = address.pathInfo.segments[address.pathInfo.segments.length - 1];
|
|
46
|
+
if (lastSegment === WILDCARD) {
|
|
47
|
+
const index = address.listIndex?.index ?? raiseError(`address.listIndex?.index is undefined path: ${address.pathInfo.path}`);
|
|
48
|
+
return Reflect.get(parentValue, index);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
return Reflect.get(parentValue, lastSegment);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
function _getByAddressWithCache(target, address, receiver, handler, stateElement) {
|
|
56
|
+
const absPathInfo = getAbsolutePathInfo(stateElement, address.pathInfo);
|
|
57
|
+
const absAddress = createAbsoluteStateAddress(absPathInfo, address.listIndex);
|
|
58
|
+
const cacheEntry = getCacheEntryByAbsoluteStateAddress(absAddress);
|
|
59
|
+
if (cacheEntry !== null && cacheEntry.dirty === false) {
|
|
60
|
+
return cacheEntry.value;
|
|
61
|
+
}
|
|
62
|
+
const value = _getByAddress(target, address, receiver, handler, stateElement);
|
|
63
|
+
setCacheEntryByAbsoluteStateAddress(absAddress, {
|
|
64
|
+
value: value,
|
|
65
|
+
dirty: false
|
|
66
|
+
});
|
|
67
|
+
return value;
|
|
68
|
+
}
|
|
69
|
+
export function getByAddress(target, address, receiver, handler) {
|
|
70
|
+
checkDependency(handler, address);
|
|
71
|
+
const stateElement = handler.stateElement;
|
|
72
|
+
const cacheable = address.pathInfo.wildcardCount > 0 ||
|
|
73
|
+
stateElement.getterPaths.has(address.pathInfo.path);
|
|
74
|
+
if (cacheable) {
|
|
75
|
+
return _getByAddressWithCache(target, address, receiver, handler, stateElement);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
return _getByAddress(target, address, receiver, handler, stateElement);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=getByAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getByAddress.js","sourceRoot":"","sources":["../../../src/proxy/methods/getByAddress.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* getContextListIndex.ts
|
|
3
|
+
*
|
|
4
|
+
* Stateの内部APIとして、現在のプロパティ参照スコープにおける
|
|
5
|
+
* 指定したstructuredPath(ワイルドカード付きプロパティパス)に対応する
|
|
6
|
+
* リストインデックス(IListIndex)を取得する関数です。
|
|
7
|
+
*
|
|
8
|
+
* 主な役割:
|
|
9
|
+
* - handlerの最後にアクセスされたAddressから、指定パスに対応するリストインデックスを取得
|
|
10
|
+
* - ワイルドカード階層に対応し、多重ループやネストした配列バインディングにも利用可能
|
|
11
|
+
*
|
|
12
|
+
* 設計ポイント:
|
|
13
|
+
* - 直近のプロパティ参照情報を取得
|
|
14
|
+
* - info.indexByWildcardPathからstructuredPathのインデックスを特定
|
|
15
|
+
* - listIndex.at(index)で該当階層のリストインデックスを取得
|
|
16
|
+
* - パスが一致しない場合や参照が存在しない場合はnullを返す
|
|
17
|
+
*/
|
|
18
|
+
import { IListIndex } from "../../list/types";
|
|
19
|
+
import { IStateHandler } from "../types";
|
|
20
|
+
export declare function getContextListIndex(handler: IStateHandler, structuredPath: string): IListIndex | null;
|
|
21
|
+
//# sourceMappingURL=getContextListIndex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getContextListIndex.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/getContextListIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,aAAa,EACtB,cAAc,EAAE,MAAM,GACrB,UAAU,GAAG,IAAI,CAanB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* getContextListIndex.ts
|
|
3
|
+
*
|
|
4
|
+
* Stateの内部APIとして、現在のプロパティ参照スコープにおける
|
|
5
|
+
* 指定したstructuredPath(ワイルドカード付きプロパティパス)に対応する
|
|
6
|
+
* リストインデックス(IListIndex)を取得する関数です。
|
|
7
|
+
*
|
|
8
|
+
* 主な役割:
|
|
9
|
+
* - handlerの最後にアクセスされたAddressから、指定パスに対応するリストインデックスを取得
|
|
10
|
+
* - ワイルドカード階層に対応し、多重ループやネストした配列バインディングにも利用可能
|
|
11
|
+
*
|
|
12
|
+
* 設計ポイント:
|
|
13
|
+
* - 直近のプロパティ参照情報を取得
|
|
14
|
+
* - info.indexByWildcardPathからstructuredPathのインデックスを特定
|
|
15
|
+
* - listIndex.at(index)で該当階層のリストインデックスを取得
|
|
16
|
+
* - パスが一致しない場合や参照が存在しない場合はnullを返す
|
|
17
|
+
*/
|
|
18
|
+
export function getContextListIndex(handler, structuredPath) {
|
|
19
|
+
if (handler.addressStackLength === 0) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
const address = handler.lastAddressStack;
|
|
23
|
+
if (address === null) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
const index = address.pathInfo.indexByWildcardPath[structuredPath];
|
|
27
|
+
if (typeof index === "undefined") {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
return address.listIndex?.at(index) ?? null;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=getContextListIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getContextListIndex.js","sourceRoot":"","sources":["../../../src/proxy/methods/getContextListIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,MAAM,UAAU,mBAAmB,CACjC,OAAsB,EACtB,cAAsB;IAEtB,IAAI,OAAO,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC;IACzC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAuB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACvF,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* getListIndex.ts
|
|
3
|
+
*
|
|
4
|
+
* StateClassの内部APIとして、パス情報(IResolvedAddress)から
|
|
5
|
+
* 対応するリストインデックス(IListIndex)を取得する関数です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - パスのワイルドカード種別(context/all/partial/none)に応じてリストインデックスを解決
|
|
9
|
+
* - context型は現在のループコンテキストからリストインデックスを取得
|
|
10
|
+
* - all型は各階層のリストインデックス集合からインデックスを辿って取得
|
|
11
|
+
* - partial型やnone型は未実装またはnullを返す
|
|
12
|
+
*
|
|
13
|
+
* 設計ポイント:
|
|
14
|
+
* - ワイルドカードや多重ループ、ネストした配列バインディングに柔軟に対応
|
|
15
|
+
* - getListIndexesByListで各階層のリストインデックス集合を取得
|
|
16
|
+
* - エラー時はraiseErrorで例外を投げる
|
|
17
|
+
*/
|
|
18
|
+
import { IResolvedAddress } from "../../address/types";
|
|
19
|
+
import { IListIndex } from "../../list/types";
|
|
20
|
+
import { IStateHandler } from "../types";
|
|
21
|
+
export declare function getListIndex(target: object, resolvedAddress: IResolvedAddress, receiver: any, handler: IStateHandler): IListIndex | null;
|
|
22
|
+
//# sourceMappingURL=getListIndex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getListIndex.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/getListIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAIzC,wBAAgB,YAAY,CAC1B,MAAM,EAAK,MAAM,EACjB,eAAe,EAAE,gBAAgB,EACjC,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,aAAa,GACrB,UAAU,GAAG,IAAI,CA+BnB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* getListIndex.ts
|
|
3
|
+
*
|
|
4
|
+
* StateClassの内部APIとして、パス情報(IResolvedAddress)から
|
|
5
|
+
* 対応するリストインデックス(IListIndex)を取得する関数です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - パスのワイルドカード種別(context/all/partial/none)に応じてリストインデックスを解決
|
|
9
|
+
* - context型は現在のループコンテキストからリストインデックスを取得
|
|
10
|
+
* - all型は各階層のリストインデックス集合からインデックスを辿って取得
|
|
11
|
+
* - partial型やnone型は未実装またはnullを返す
|
|
12
|
+
*
|
|
13
|
+
* 設計ポイント:
|
|
14
|
+
* - ワイルドカードや多重ループ、ネストした配列バインディングに柔軟に対応
|
|
15
|
+
* - getListIndexesByListで各階層のリストインデックス集合を取得
|
|
16
|
+
* - エラー時はraiseErrorで例外を投げる
|
|
17
|
+
*/
|
|
18
|
+
import { createStateAddress } from "../../address/StateAddress";
|
|
19
|
+
import { getListIndexesByList } from "../../list/listIndexesByList";
|
|
20
|
+
import { raiseError } from "../../raiseError";
|
|
21
|
+
import { getByAddress } from "./getByAddress";
|
|
22
|
+
import { getContextListIndex } from "./getContextListIndex";
|
|
23
|
+
export function getListIndex(target, resolvedAddress, receiver, handler) {
|
|
24
|
+
const pathInfo = resolvedAddress.pathInfo;
|
|
25
|
+
switch (resolvedAddress.wildcardType) {
|
|
26
|
+
case "none":
|
|
27
|
+
return null;
|
|
28
|
+
case "context": {
|
|
29
|
+
const lastWildcardPath = pathInfo.wildcardPaths.at(-1) ??
|
|
30
|
+
raiseError(`lastWildcardPath is null: ${resolvedAddress.pathInfo.path}`);
|
|
31
|
+
return getContextListIndex(handler, lastWildcardPath) ??
|
|
32
|
+
raiseError(`ListIndex not found: ${resolvedAddress.pathInfo.path}`);
|
|
33
|
+
}
|
|
34
|
+
case "all": {
|
|
35
|
+
let parentListIndex = null;
|
|
36
|
+
for (let i = 0; i < resolvedAddress.pathInfo.wildcardCount; i++) {
|
|
37
|
+
const wildcardParentPathInfo = resolvedAddress.pathInfo.wildcardParentPathInfos[i] ??
|
|
38
|
+
raiseError(`wildcardParentPathInfo is null: ${resolvedAddress.pathInfo.path}`);
|
|
39
|
+
const wildcardParentAddress = createStateAddress(wildcardParentPathInfo, parentListIndex);
|
|
40
|
+
const wildcardParentValue = getByAddress(target, wildcardParentAddress, receiver, handler);
|
|
41
|
+
const wildcardParentListIndexes = getListIndexesByList(wildcardParentValue) ??
|
|
42
|
+
raiseError(`ListIndex not found: ${wildcardParentPathInfo.path}`);
|
|
43
|
+
const wildcardIndex = resolvedAddress.wildcardIndexes[i] ??
|
|
44
|
+
raiseError(`wildcardIndex is null: ${resolvedAddress.pathInfo.path}`);
|
|
45
|
+
parentListIndex = wildcardParentListIndexes[wildcardIndex] ??
|
|
46
|
+
raiseError(`ListIndex not found: ${wildcardParentPathInfo.path}`);
|
|
47
|
+
}
|
|
48
|
+
return parentListIndex;
|
|
49
|
+
}
|
|
50
|
+
case "partial": {
|
|
51
|
+
raiseError(`Partial wildcard type is not supported yet: ${resolvedAddress.pathInfo.path}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=getListIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getListIndex.js","sourceRoot":"","sources":["../../../src/proxy/methods/getListIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,UAAU,YAAY,CAC1B,MAAiB,EACjB,eAAiC,EACjC,QAAa,EACb,OAAsB;IAEtB,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC;IAC1C,QAAQ,eAAe,CAAC,YAAY,EAAE,CAAC;QACrC,KAAK,MAAM;YACT,OAAO,IAAI,CAAC;QACd,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACpD,UAAU,CAAC,6BAA6B,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3E,OAAO,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC;gBACnD,UAAU,CAAC,wBAAwB,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,IAAI,eAAe,GAAsB,IAAI,CAAC;YAC9C,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/D,MAAM,sBAAsB,GAAG,eAAe,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC;oBAChF,UAAU,CAAC,mCAAmC,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjF,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAC;gBAC1F,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,EAAE,qBAAqB,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC3F,MAAM,yBAAyB,GAAiB,oBAAoB,CAAC,mBAAmB,CAAC;oBACvF,UAAU,CAAE,wBAAwB,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrE,MAAM,aAAa,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC;oBACtD,UAAU,CAAC,0BAA0B,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBACxE,eAAe,GAAG,yBAAyB,CAAC,aAAa,CAAC;oBACxD,UAAU,CAAC,wBAAwB,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,OAAO,eAAe,CAAC;QACzB,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,UAAU,CAAC,+CAA+C,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* setByAddress.ts
|
|
3
|
+
*
|
|
4
|
+
* Stateの内部APIとして、アドレス情報(IStateAddress)を指定して
|
|
5
|
+
* 状態オブジェクト(target)に値を設定するための関数(setByAddress)の実装です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - 指定されたパス・インデックスに対応するState値を設定(多重ループやワイルドカードにも対応)
|
|
9
|
+
* - getter/setter経由で値設定時はpushAddressでスコープを一時設定
|
|
10
|
+
* - 存在しない場合は親pathInfoやlistIndexを辿って再帰的に値を設定
|
|
11
|
+
* - 設定後はupdater.enqueueUpdateAddressで更新情報を登録
|
|
12
|
+
*
|
|
13
|
+
* 設計ポイント:
|
|
14
|
+
* - ワイルドカードや多重ループにも柔軟に対応し、再帰的な値設定を実現
|
|
15
|
+
* - finallyで必ず更新情報を登録し、再描画や依存解決に利用
|
|
16
|
+
* - getter/setter経由のスコープ切り替えも考慮した設計
|
|
17
|
+
*/
|
|
18
|
+
import { IStateAddress } from "../../address/types";
|
|
19
|
+
import { IStateHandler } from "../types";
|
|
20
|
+
export declare function setByAddress(target: object, address: IStateAddress, value: any, receiver: any, handler: IStateHandler): any;
|
|
21
|
+
//# sourceMappingURL=setByAddress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setByAddress.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/setByAddress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAyB,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAM3E,OAAO,EAAE,aAAa,EAAe,MAAM,UAAU,CAAC;AA4GtD,wBAAgB,YAAY,CACxB,MAAM,EAAK,MAAM,EACjB,OAAO,EAAI,aAAa,EACxB,KAAK,EAAM,GAAG,EACd,QAAQ,EAAG,GAAG,EACd,OAAO,EAAI,aAAa,GACzB,GAAG,CAqBL"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* setByAddress.ts
|
|
3
|
+
*
|
|
4
|
+
* Stateの内部APIとして、アドレス情報(IStateAddress)を指定して
|
|
5
|
+
* 状態オブジェクト(target)に値を設定するための関数(setByAddress)の実装です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - 指定されたパス・インデックスに対応するState値を設定(多重ループやワイルドカードにも対応)
|
|
9
|
+
* - getter/setter経由で値設定時はpushAddressでスコープを一時設定
|
|
10
|
+
* - 存在しない場合は親pathInfoやlistIndexを辿って再帰的に値を設定
|
|
11
|
+
* - 設定後はupdater.enqueueUpdateAddressで更新情報を登録
|
|
12
|
+
*
|
|
13
|
+
* 設計ポイント:
|
|
14
|
+
* - ワイルドカードや多重ループにも柔軟に対応し、再帰的な値設定を実現
|
|
15
|
+
* - finallyで必ず更新情報を登録し、再描画や依存解決に利用
|
|
16
|
+
* - getter/setter経由のスコープ切り替えも考慮した設計
|
|
17
|
+
*/
|
|
18
|
+
import { createAbsoluteStateAddress } from "../../address/AbsoluteStateAddress";
|
|
19
|
+
import { WILDCARD } from "../../define";
|
|
20
|
+
import { createListIndex } from "../../list/createListIndex";
|
|
21
|
+
import { getListIndexesByList } from "../../list/listIndexesByList";
|
|
22
|
+
import { raiseError } from "../../raiseError";
|
|
23
|
+
import { getUpdater } from "../../updater/updater";
|
|
24
|
+
import { getByAddress } from "./getByAddress";
|
|
25
|
+
import { getSwapInfoByAddress, setSwapInfoByAddress } from "./swapInfo";
|
|
26
|
+
import { walkDependency } from "../../dependency/walkDependency";
|
|
27
|
+
import { dirtyCacheEntryByAbsoluteStateAddress, setCacheEntryByAbsoluteStateAddress } from "../../cache/cacheEntryByAbsoluteStateAddress";
|
|
28
|
+
import { getAbsolutePathInfo } from "../../address/AbsolutePathInfo";
|
|
29
|
+
function _setByAddress(target, address, absAddress, value, receiver, handler) {
|
|
30
|
+
try {
|
|
31
|
+
if (address.pathInfo.path in target) {
|
|
32
|
+
if (handler.stateElement.setterPaths.has(address.pathInfo.path)) {
|
|
33
|
+
// setterの中で参照の可能性があるので、addressをプッシュする
|
|
34
|
+
handler.pushAddress(address);
|
|
35
|
+
try {
|
|
36
|
+
return Reflect.set(target, address.pathInfo.path, value, receiver);
|
|
37
|
+
}
|
|
38
|
+
finally {
|
|
39
|
+
handler.popAddress();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
return Reflect.set(target, address.pathInfo.path, value);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
const parentAddress = address.parentAddress ?? raiseError(`address.parentAddress is undefined path: ${address.pathInfo.path}`);
|
|
48
|
+
const parentValue = getByAddress(target, parentAddress, receiver, handler);
|
|
49
|
+
const lastSegment = address.pathInfo.segments[address.pathInfo.segments.length - 1];
|
|
50
|
+
if (lastSegment === WILDCARD) {
|
|
51
|
+
const index = address.listIndex?.index ?? raiseError(`address.listIndex?.index is undefined path: ${address.pathInfo.path}`);
|
|
52
|
+
return Reflect.set(parentValue, index, value);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
return Reflect.set(parentValue, lastSegment, value);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
finally {
|
|
60
|
+
const updater = getUpdater();
|
|
61
|
+
updater.enqueueAbsoluteAddress(absAddress);
|
|
62
|
+
// 依存関係のあるキャッシュを無効化(ダーティ)、更新対象として登録
|
|
63
|
+
walkDependency(handler.stateName, handler.stateElement, address, handler.stateElement.staticDependency, handler.stateElement.dynamicDependency, handler.stateElement.listPaths, receiver, "new", (depAddress) => {
|
|
64
|
+
// キャッシュを無効化(ダーティ)
|
|
65
|
+
if (depAddress === address)
|
|
66
|
+
return;
|
|
67
|
+
const absDepPathInfo = getAbsolutePathInfo(handler.stateElement, depAddress.pathInfo);
|
|
68
|
+
const absDepAddress = createAbsoluteStateAddress(absDepPathInfo, depAddress.listIndex);
|
|
69
|
+
dirtyCacheEntryByAbsoluteStateAddress(absDepAddress);
|
|
70
|
+
// 更新対象として登録
|
|
71
|
+
updater.enqueueAbsoluteAddress(absDepAddress);
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
function _setByAddressWithSwap(target, address, absAddress, value, receiver, handler) {
|
|
76
|
+
// elementsの場合はswapInfoを準備
|
|
77
|
+
let parentAddress = address.parentAddress ?? raiseError(`address.parentAddress is undefined path: ${address.pathInfo.path}`);
|
|
78
|
+
let swapInfo = getSwapInfoByAddress(parentAddress);
|
|
79
|
+
if (swapInfo === null) {
|
|
80
|
+
const parentValue = getByAddress(target, parentAddress, receiver, handler) ?? [];
|
|
81
|
+
const listIndexes = getListIndexesByList(parentValue) ?? [];
|
|
82
|
+
swapInfo = {
|
|
83
|
+
value: [...parentValue], listIndexes: [...listIndexes]
|
|
84
|
+
};
|
|
85
|
+
setSwapInfoByAddress(parentAddress, swapInfo);
|
|
86
|
+
}
|
|
87
|
+
try {
|
|
88
|
+
return _setByAddress(target, address, absAddress, value, receiver, handler);
|
|
89
|
+
}
|
|
90
|
+
finally {
|
|
91
|
+
const index = swapInfo.value.indexOf(value);
|
|
92
|
+
const currentParentValue = getByAddress(target, parentAddress, receiver, handler) ?? [];
|
|
93
|
+
const currentListIndexes = Array.isArray(currentParentValue) ? (getListIndexesByList(currentParentValue) ?? []) : [];
|
|
94
|
+
const curIndex = address.listIndex.index;
|
|
95
|
+
const listIndex = (index !== -1) ?
|
|
96
|
+
swapInfo.listIndexes[index] :
|
|
97
|
+
createListIndex(parentAddress.listIndex, -1);
|
|
98
|
+
currentListIndexes[curIndex] = listIndex;
|
|
99
|
+
// 重複チェック
|
|
100
|
+
// 重複していない場合、swapが完了したとみなし、インデックスを更新
|
|
101
|
+
const listValueSet = new Set(currentParentValue);
|
|
102
|
+
if (listValueSet.size === swapInfo.value.length) {
|
|
103
|
+
for (let i = 0; i < currentListIndexes.length; i++) {
|
|
104
|
+
currentListIndexes[i].index = i;
|
|
105
|
+
}
|
|
106
|
+
// 完了したのでswapInfoを削除
|
|
107
|
+
setSwapInfoByAddress(parentAddress, null);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
export function setByAddress(target, address, value, receiver, handler) {
|
|
112
|
+
const stateElement = handler.stateElement;
|
|
113
|
+
const isSwappable = stateElement.elementPaths.has(address.pathInfo.path);
|
|
114
|
+
const cacheable = address.pathInfo.wildcardCount > 0 ||
|
|
115
|
+
stateElement.getterPaths.has(address.pathInfo.path);
|
|
116
|
+
const absPathInfo = getAbsolutePathInfo(stateElement, address.pathInfo);
|
|
117
|
+
const absAddress = createAbsoluteStateAddress(absPathInfo, address.listIndex);
|
|
118
|
+
try {
|
|
119
|
+
if (isSwappable) {
|
|
120
|
+
return _setByAddressWithSwap(target, address, absAddress, value, receiver, handler);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
return _setByAddress(target, address, absAddress, value, receiver, handler);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
finally {
|
|
127
|
+
if (cacheable) {
|
|
128
|
+
setCacheEntryByAbsoluteStateAddress(absAddress, {
|
|
129
|
+
value: value,
|
|
130
|
+
dirty: false
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=setByAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setByAddress.js","sourceRoot":"","sources":["../../../src/proxy/methods/setByAddress.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* setLoopContext.ts
|
|
3
|
+
*
|
|
4
|
+
* StateClassの内部APIとして、ループコンテキスト(ILoopContext)を一時的に設定し、
|
|
5
|
+
* 指定した同期/非同期コールバックをそのスコープ内で実行するための関数です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - handler.loopContextにループコンテキストを一時的に設定
|
|
9
|
+
* - 既にループコンテキストが設定されている場合はエラーを投げる
|
|
10
|
+
* - 常にスコープを設定しコールバックを実行
|
|
11
|
+
* - finallyで必ずloopContextをnullに戻し、スコープ外への影響を防止
|
|
12
|
+
*
|
|
13
|
+
* 設計ポイント:
|
|
14
|
+
* - ループバインディングや多重ループ時のスコープ管理を安全に行う
|
|
15
|
+
* - finallyで状態復元を保証し、例外発生時も安全
|
|
16
|
+
* - 非同期処理にも対応
|
|
17
|
+
*/
|
|
18
|
+
import { ILoopContext } from "../../list/types";
|
|
19
|
+
import { IStateHandler } from "../types";
|
|
20
|
+
export declare function setLoopContext(handler: IStateHandler, loopContext: ILoopContext | null, callback: () => any): any;
|
|
21
|
+
export declare function setLoopContextAsync(handler: IStateHandler, loopContext: ILoopContext | null, callback: () => Promise<any>): Promise<any>;
|
|
22
|
+
//# sourceMappingURL=setLoopContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setLoopContext.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/setLoopContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAuBzC,wBAAgB,cAAc,CAC5B,OAAO,EAAE,aAAa,EACtB,WAAW,EAAE,YAAY,GAAG,IAAI,EAChC,QAAQ,EAAE,MAAM,GAAG,GAClB,GAAG,CAEL;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,EACtB,WAAW,EAAE,YAAY,GAAG,IAAI,EAChC,QAAQ,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GAC3B,OAAO,CAAC,GAAG,CAAC,CAEd"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* setLoopContext.ts
|
|
3
|
+
*
|
|
4
|
+
* StateClassの内部APIとして、ループコンテキスト(ILoopContext)を一時的に設定し、
|
|
5
|
+
* 指定した同期/非同期コールバックをそのスコープ内で実行するための関数です。
|
|
6
|
+
*
|
|
7
|
+
* 主な役割:
|
|
8
|
+
* - handler.loopContextにループコンテキストを一時的に設定
|
|
9
|
+
* - 既にループコンテキストが設定されている場合はエラーを投げる
|
|
10
|
+
* - 常にスコープを設定しコールバックを実行
|
|
11
|
+
* - finallyで必ずloopContextをnullに戻し、スコープ外への影響を防止
|
|
12
|
+
*
|
|
13
|
+
* 設計ポイント:
|
|
14
|
+
* - ループバインディングや多重ループ時のスコープ管理を安全に行う
|
|
15
|
+
* - finallyで状態復元を保証し、例外発生時も安全
|
|
16
|
+
* - 非同期処理にも対応
|
|
17
|
+
*/
|
|
18
|
+
import { raiseError } from "../../raiseError";
|
|
19
|
+
function _setLoopContext(handler, loopContext, callback) {
|
|
20
|
+
if (typeof handler.loopContext !== "undefined") {
|
|
21
|
+
raiseError('already in loop context');
|
|
22
|
+
}
|
|
23
|
+
handler.setLoopContext(loopContext);
|
|
24
|
+
try {
|
|
25
|
+
handler.pushAddress(loopContext);
|
|
26
|
+
try {
|
|
27
|
+
return callback();
|
|
28
|
+
}
|
|
29
|
+
finally {
|
|
30
|
+
handler.popAddress();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
finally {
|
|
34
|
+
handler.clearLoopContext();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
export function setLoopContext(handler, loopContext, callback) {
|
|
38
|
+
return _setLoopContext(handler, loopContext, callback);
|
|
39
|
+
}
|
|
40
|
+
export async function setLoopContextAsync(handler, loopContext, callback) {
|
|
41
|
+
return await _setLoopContext(handler, loopContext, callback);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=setLoopContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setLoopContext.js","sourceRoot":"","sources":["../../../src/proxy/methods/setLoopContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,SAAS,eAAe,CACtB,OAAsB,EACtB,WAAgC,EAChC,QAAiB;IAEjB,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;QAC/C,UAAU,CAAC,yBAAyB,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACpC,IAAI,CAAC;QACH,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,CAAC;YACH,OAAO,QAAQ,EAAE,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,OAAsB,EACtB,WAAgC,EAChC,QAAmB;IAEnB,OAAO,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAsB,EACtB,WAAgC,EAChC,QAA4B;IAE5B,OAAO,MAAM,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IStateAddress } from "../../address/types";
|
|
2
|
+
import { ISwapInfo } from "./types";
|
|
3
|
+
export declare function getSwapInfoByAddress(address: IStateAddress): ISwapInfo | null;
|
|
4
|
+
export declare function setSwapInfoByAddress(address: IStateAddress, swapInfo: ISwapInfo | null): void;
|
|
5
|
+
//# sourceMappingURL=swapInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swapInfo.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/swapInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAIpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,IAAI,CAE7E;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAM7F"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const swapInfoByStateAddress = new WeakMap();
|
|
2
|
+
export function getSwapInfoByAddress(address) {
|
|
3
|
+
return swapInfoByStateAddress.get(address) ?? null;
|
|
4
|
+
}
|
|
5
|
+
export function setSwapInfoByAddress(address, swapInfo) {
|
|
6
|
+
if (swapInfo === null) {
|
|
7
|
+
swapInfoByStateAddress.delete(address);
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
swapInfoByStateAddress.set(address, swapInfo);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=swapInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swapInfo.js","sourceRoot":"","sources":["../../../src/proxy/methods/swapInfo.ts"],"names":[],"mappings":"AAGA,MAAM,sBAAsB,GAAsC,IAAI,OAAO,EAAE,CAAC;AAEhF,MAAM,UAAU,oBAAoB,CAAC,OAAsB;IACzD,OAAO,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAsB,EAAE,QAA0B;IACrF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,sBAAsB,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/proxy/methods/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;CACpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/proxy/methods/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const setLoopContextAsyncSymbol: unique symbol;
|
|
2
|
+
export declare const setLoopContextSymbol: unique symbol;
|
|
3
|
+
export declare const getByAddressSymbol: unique symbol;
|
|
4
|
+
export declare const setByAddressSymbol: unique symbol;
|
|
5
|
+
export declare const connectedCallbackSymbol: unique symbol;
|
|
6
|
+
export declare const disconnectedCallbackSymbol: unique symbol;
|
|
7
|
+
export declare const updatedCallbackSymbol: unique symbol;
|
|
8
|
+
//# sourceMappingURL=symbols.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbols.d.ts","sourceRoot":"","sources":["../../src/proxy/symbols.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,yBAAyB,EAAE,OAAO,MAAwC,CAAC;AACxF,eAAO,MAAM,oBAAoB,EAAE,OAAO,MAAmC,CAAC;AAC9E,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAAiC,CAAC;AAC1E,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAAiC,CAAC;AAC1E,eAAO,MAAM,uBAAuB,EAAE,OAAO,MAAsC,CAAC;AACpF,eAAO,MAAM,0BAA0B,EAAE,OAAO,MAAyC,CAAC;AAC1F,eAAO,MAAM,qBAAqB,EAAE,OAAO,MAAoC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export const setLoopContextAsyncSymbol = Symbol("$$setLoopContextAsync");
|
|
2
|
+
export const setLoopContextSymbol = Symbol("$$setLoopContext");
|
|
3
|
+
export const getByAddressSymbol = Symbol("$$getByAddress");
|
|
4
|
+
export const setByAddressSymbol = Symbol("$$setByAddress");
|
|
5
|
+
export const connectedCallbackSymbol = Symbol("$$connectedCallback");
|
|
6
|
+
export const disconnectedCallbackSymbol = Symbol("$$disconnectedCallback");
|
|
7
|
+
export const updatedCallbackSymbol = Symbol("$$updatedCallback");
|
|
8
|
+
//# sourceMappingURL=symbols.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbols.js","sourceRoot":"","sources":["../../src/proxy/symbols.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,yBAAyB,GAAkB,MAAM,CAAC,uBAAuB,CAAC,CAAC;AACxF,MAAM,CAAC,MAAM,oBAAoB,GAAkB,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAC9E,MAAM,CAAC,MAAM,kBAAkB,GAAkB,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,kBAAkB,GAAkB,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,uBAAuB,GAAkB,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACpF,MAAM,CAAC,MAAM,0BAA0B,GAAkB,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAC1F,MAAM,CAAC,MAAM,qBAAqB,GAAkB,MAAM,CAAC,mBAAmB,CAAC,CAAC"}
|