@kosdev-code/kos-ui-sdk 2.0.45 → 2.0.46
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/common/events/eventBus.d.ts +0 -30
- package/common/events/eventBus.d.ts.map +1 -1
- package/common/events/eventBus.functional.d.ts +0 -48
- package/common/events/eventBus.functional.d.ts.map +1 -1
- package/common/events/eventBus.state.d.ts +0 -33
- package/common/events/eventBus.state.d.ts.map +1 -1
- package/core/core/decorators/index.d.ts +0 -11
- package/core/core/decorators/index.d.ts.map +1 -1
- package/core/core/decorators/kos-child.d.ts +0 -2
- package/core/core/decorators/kos-child.d.ts.map +1 -1
- package/core/core/decorators/kos-companion.d.ts +8 -158
- package/core/core/decorators/kos-companion.d.ts.map +1 -1
- package/core/core/decorators/kos-context.d.ts +0 -6
- package/core/core/decorators/kos-context.d.ts.map +1 -1
- package/core/core/decorators/kos-http-decorators.d.ts +0 -15
- package/core/core/decorators/kos-http-decorators.d.ts.map +1 -1
- package/core/core/decorators/kos-log.d.ts +0 -4
- package/core/core/decorators/kos-log.d.ts.map +1 -1
- package/core/core/decorators/kos-model-effect.d.ts +0 -9
- package/core/core/decorators/kos-model-effect.d.ts.map +1 -1
- package/core/core/decorators/kos-parent.d.ts +0 -4
- package/core/core/decorators/kos-parent.d.ts.map +1 -1
- package/core/core/decorators/kos-reference.d.ts +0 -9
- package/core/core/decorators/kos-reference.d.ts.map +1 -1
- package/core/core/decorators/kos-topic-handler-flow-control.d.ts +1 -17
- package/core/core/decorators/kos-topic-handler-flow-control.d.ts.map +1 -1
- package/core/core/decorators/kosDependency.d.ts +1 -4
- package/core/core/decorators/kosDependency.d.ts.map +1 -1
- package/core/core/decorators/kosModel.d.ts +2 -17
- package/core/core/decorators/kosModel.d.ts.map +1 -1
- package/core/core/decorators/kosSubscribe.d.ts +0 -9
- package/core/core/decorators/kosSubscribe.d.ts.map +1 -1
- package/core/core/decorators/kosTopicHandler.d.ts +5 -87
- package/core/core/decorators/kosTopicHandler.d.ts.map +1 -1
- package/core/core/decorators/propKeys.d.ts +0 -14
- package/core/core/decorators/propKeys.d.ts.map +1 -1
- package/core/core/decorators/resolve-parameters.d.ts.map +1 -1
- package/core/core/extension/extension-manager.d.ts +4 -64
- package/core/core/extension/extension-manager.d.ts.map +1 -1
- package/core/core/extension/initialize-extension.d.ts +0 -24
- package/core/core/extension/initialize-extension.d.ts.map +1 -1
- package/core/core/extension/plugin-extension-manager.d.ts +0 -11
- package/core/core/extension/plugin-extension-manager.d.ts.map +1 -1
- package/core/core/kos-container-model.d.ts +0 -188
- package/core/core/kos-container-model.d.ts.map +1 -1
- package/core/core/kos-data-container.d.ts +1 -93
- package/core/core/kos-data-container.d.ts.map +1 -1
- package/core/core/kos-registration.d.ts.map +1 -1
- package/core/core/kos-singleton-registration.d.ts.map +1 -1
- package/core/core/kosCore.d.ts.map +1 -1
- package/core/core/kosModel.d.ts +2 -55
- package/core/core/kosModel.d.ts.map +1 -1
- package/core/core/kosModelManager.d.ts +1 -11
- package/core/core/kosModelManager.d.ts.map +1 -1
- package/core/core/log/log.d.ts.map +1 -1
- package/core/core/model/apply-kos-dev-tool-support.d.ts.map +1 -1
- package/core/core/model/kos-fsm-manager.d.ts +4 -1
- package/core/core/model/kos-fsm-manager.d.ts.map +1 -1
- package/core/core/model/kos-model-component-factory.d.ts +0 -4
- package/core/core/model/kos-model-component-factory.d.ts.map +1 -1
- package/core/core/model/kos-offline-queue.d.ts +1 -78
- package/core/core/model/kos-offline-queue.d.ts.map +1 -1
- package/core/core/model/kos-online-lifecycle-manager.d.ts.map +1 -1
- package/core/core/model/kos-subscription-manager.d.ts +0 -20
- package/core/core/model/kos-subscription-manager.d.ts.map +1 -1
- package/core/core/model/model-introspection-utils.d.ts +0 -1
- package/core/core/model/model-introspection-utils.d.ts.map +1 -1
- package/core/core/model-instantiator.d.ts +0 -19
- package/core/core/model-instantiator.d.ts.map +1 -1
- package/core/core/registration/index.d.ts +0 -1
- package/core/core/registration/index.d.ts.map +1 -1
- package/core/core/services/browser-router.d.ts.map +1 -1
- package/core/core/transport/webSocketTransport.d.ts +1 -2
- package/core/core/transport/webSocketTransport.d.ts.map +1 -1
- package/core/core/types/registration.d.ts +0 -7
- package/core/core/types/registration.d.ts.map +1 -1
- package/core/index.d.ts +1 -2
- package/core/index.d.ts.map +1 -1
- package/core/types/index.d.ts +0 -1
- package/core/types/index.d.ts.map +1 -1
- package/core/types/kos-dependency.d.ts +1 -48
- package/core/types/kos-dependency.d.ts.map +1 -1
- package/core/types/utils/kos-fetch.d.ts +0 -121
- package/core/types/utils/kos-fetch.d.ts.map +1 -1
- package/core/util/api-request-id.d.ts +0 -4
- package/core/util/api-request-id.d.ts.map +1 -1
- package/core/util/apply-mixins.d.ts +0 -4
- package/core/util/apply-mixins.d.ts.map +1 -1
- package/core/util/array-utils.d.ts +0 -4
- package/core/util/array-utils.d.ts.map +1 -1
- package/core/util/container-utils.d.ts +11 -264
- package/core/util/container-utils.d.ts.map +1 -1
- package/core/util/date-utils.d.ts +0 -29
- package/core/util/date-utils.d.ts.map +1 -1
- package/core/util/debounce.d.ts +0 -3
- package/core/util/debounce.d.ts.map +1 -1
- package/core/util/feature-flags.d.ts +0 -19
- package/core/util/feature-flags.d.ts.map +1 -1
- package/core/util/get-query-params.d.ts +0 -4
- package/core/util/get-query-params.d.ts.map +1 -1
- package/core/util/hsl-to-hex.d.ts +0 -16
- package/core/util/hsl-to-hex.d.ts.map +1 -1
- package/core/util/index.d.ts +0 -3
- package/core/util/index.d.ts.map +1 -1
- package/core/util/kos-config-init.d.ts +0 -37
- package/core/util/kos-config-init.d.ts.map +1 -1
- package/core/util/kos-data-mapper-utils.d.ts +0 -9
- package/core/util/kos-data-mapper-utils.d.ts.map +1 -1
- package/core/util/kos-fetch.d.ts +0 -12
- package/core/util/kos-fetch.d.ts.map +1 -1
- package/core/util/kos-message-utils.d.ts +0 -88
- package/core/util/kos-message-utils.d.ts.map +1 -1
- package/core/util/kos-model-utils.d.ts +0 -46
- package/core/util/kos-model-utils.d.ts.map +1 -1
- package/core/util/kos-model-visitor.d.ts +0 -2
- package/core/util/kos-model-visitor.d.ts.map +1 -1
- package/core/util/kos-service-request.d.ts +3 -43
- package/core/util/kos-service-request.d.ts.map +1 -1
- package/core/util/log-utils.d.ts +0 -12
- package/core/util/log-utils.d.ts.map +1 -1
- package/core/util/middleware.d.ts +0 -15
- package/core/util/middleware.d.ts.map +1 -1
- package/core/util/model-attribute-utils.d.ts +0 -7
- package/core/util/model-attribute-utils.d.ts.map +1 -1
- package/core/util/model-factory.d.ts +0 -4
- package/core/util/model-factory.d.ts.map +1 -1
- package/core/util/model-registration-utils.d.ts +0 -8
- package/core/util/model-registration-utils.d.ts.map +1 -1
- package/core/util/model-utils.d.ts +29 -40
- package/core/util/model-utils.d.ts.map +1 -1
- package/core/util/observable-proxy-map.d.ts +0 -11
- package/core/util/observable-proxy-map.d.ts.map +1 -1
- package/core/util/paired-client-heartbeat.d.ts +0 -2
- package/core/util/paired-client-heartbeat.d.ts.map +1 -1
- package/core/util/pipe.d.ts +0 -4
- package/core/util/pipe.d.ts.map +1 -1
- package/core/util/retry-with-exponential-backoff.d.ts +0 -3
- package/core/util/retry-with-exponential-backoff.d.ts.map +1 -1
- package/core/util/service-factory.d.ts +0 -10
- package/core/util/service-factory.d.ts.map +1 -1
- package/core/util/session-utils.d.ts +0 -8
- package/core/util/session-utils.d.ts.map +1 -1
- package/core/util/wait-for-request.d.ts +0 -16
- package/core/util/wait-for-request.d.ts.map +1 -1
- package/core/util/when-ready.d.ts +0 -3
- package/core/util/when-ready.d.ts.map +1 -1
- package/index.cjs +123 -26909
- package/index.cjs.map +1 -1
- package/index.d.cts +3 -6
- package/index.d.ts +3 -6
- package/index.d.ts.map +1 -1
- package/index.js +13460 -25275
- package/index.js.map +1 -1
- package/models/constants/index.d.ts +1 -3
- package/models/constants/index.d.ts.map +1 -1
- package/models/decorators/future-service.d.ts +2 -27
- package/models/decorators/future-service.d.ts.map +1 -1
- package/models/models/browser-router/browser-router-model.d.ts +1 -80
- package/models/models/browser-router/browser-router-model.d.ts.map +1 -1
- package/models/models/browser-router/types/index.d.ts +1 -26
- package/models/models/canvas-dispatcher/types/index.d.ts +0 -5
- package/models/models/canvas-renderer/types/index.d.ts +0 -5
- package/models/models/config-bean/config-bean-model-builder.d.ts +2 -4
- package/models/models/config-bean/config-bean-model-builder.d.ts.map +1 -1
- package/models/models/config-bean/config-bean-model.d.ts +13 -117
- package/models/models/config-bean/config-bean-model.d.ts.map +1 -1
- package/models/models/config-bean/config-bean-types.d.ts +3 -6
- package/models/models/config-bean/config-bean-types.d.ts.map +1 -1
- package/models/models/config-bean-prop/config-bean-prop-model.d.ts +1 -112
- package/models/models/config-bean-prop/config-bean-prop-model.d.ts.map +1 -1
- package/models/models/config-bean-prop/types/index.d.ts +19 -301
- package/models/models/device/device-model.d.ts +9 -219
- package/models/models/device/device-model.d.ts.map +1 -1
- package/models/models/device/device-registration.d.ts +48 -61
- package/models/models/device/device-registration.d.ts.map +1 -1
- package/models/models/device/types/index.d.ts +0 -42
- package/models/models/future/future-aware.d.ts +0 -82
- package/models/models/future/future-aware.d.ts.map +1 -1
- package/models/models/future/future-model.d.ts +5 -34
- package/models/models/future/future-model.d.ts.map +1 -1
- package/models/models/future/future-types.d.ts +9 -202
- package/models/models/future/future-types.d.ts.map +1 -1
- package/models/models/future-container/future-container-model.d.ts +2 -2
- package/models/models/index.d.ts +0 -1
- package/models/models/index.d.ts.map +1 -1
- package/models/models/key-value/index.d.ts +0 -4
- package/models/models/key-value/index.d.ts.map +1 -1
- package/models/models/key-value/key-value-model.d.ts +0 -111
- package/models/models/key-value/key-value-model.d.ts.map +1 -1
- package/models/models/key-value/services/key-value-services.d.ts +2 -124
- package/models/models/key-value/services/key-value-services.d.ts.map +1 -1
- package/models/models/key-value/types/index.d.ts +0 -57
- package/models/models/kos-log-manager/kos-log-manager-model.d.ts +14 -61
- package/models/models/kos-log-manager/kos-log-manager-model.d.ts.map +1 -1
- package/models/models/kos-log-manager/types/index.d.ts +0 -191
- package/models/models/kos-time/kos-time-model.d.ts +0 -64
- package/models/models/kos-time/kos-time-model.d.ts.map +1 -1
- package/models/models/kos-time/types/index.d.ts +0 -83
- package/models/models/log-block/log-block-container-model.d.ts +0 -132
- package/models/models/log-block/log-block-container-model.d.ts.map +1 -1
- package/models/models/log-block/log-block-model.d.ts +0 -185
- package/models/models/log-block/log-block-model.d.ts.map +1 -1
- package/models/models/log-block/types/index.d.ts +0 -133
- package/models/models/log-stream/index.d.ts +2 -6
- package/models/models/log-stream/index.d.ts.map +1 -1
- package/models/models/log-stream/log-stream-container-model.d.ts +0 -62
- package/models/models/log-stream/log-stream-container-model.d.ts.map +1 -1
- package/models/models/log-stream/log-stream-model.d.ts +0 -55
- package/models/models/log-stream/log-stream-model.d.ts.map +1 -1
- package/models/models/log-stream/services/log-stream-services.d.ts +1 -2
- package/models/models/log-stream/services/log-stream-services.d.ts.map +1 -1
- package/models/models/log-stream/types/index.d.ts +0 -79
- package/models/models/network-interface/index.d.ts +2 -6
- package/models/models/network-interface/index.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-container-model.d.ts +0 -62
- package/models/models/network-interface/network-interface-container-model.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-container-registration.d.ts +1 -2
- package/models/models/network-interface/network-interface-container-registration.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-model.d.ts +0 -77
- package/models/models/network-interface/network-interface-model.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-registration.d.ts +1 -2
- package/models/models/network-interface/network-interface-registration.d.ts.map +1 -1
- package/models/models/network-interface/services/network-interface-services.d.ts +0 -54
- package/models/models/network-interface/services/network-interface-services.d.ts.map +1 -1
- package/models/models/network-interface/types/index.d.ts +0 -22
- package/models/models/ota/ota-model.d.ts +0 -79
- package/models/models/ota/ota-model.d.ts.map +1 -1
- package/models/models/ota/types/index.d.ts +0 -177
- package/models/models/region-info/region-info-model.d.ts +3 -8
- package/models/models/region-info/region-info-model.d.ts.map +1 -1
- package/models/models/region-info/services/region-info-services.d.ts +2 -2
- package/models/models/region-info/services/region-info-services.d.ts.map +1 -1
- package/models/models/region-info/types/index.d.ts +13 -191
- package/models/models/region-info/types/index.d.ts.map +1 -1
- package/models/models/region-info/utils/unit-system-utils.d.ts.map +1 -1
- package/models/models/software-info/services/software-info-services.d.ts.map +1 -1
- package/models/models/software-info/software-info-model.d.ts +2 -74
- package/models/models/software-info/software-info-model.d.ts.map +1 -1
- package/models/models/software-info/types/index.d.ts +17 -52
- package/models/models/state-bean/state-bean-model.d.ts +9 -86
- package/models/models/state-bean/state-bean-model.d.ts.map +1 -1
- package/models/models/state-bean/types/index.d.ts +6 -117
- package/models/models/state-prop/state-prop-model.d.ts +1 -78
- package/models/models/state-prop/state-prop-model.d.ts.map +1 -1
- package/models/models/state-prop/types/index.d.ts +7 -57
- package/models/models/storage-device/services/storage-device-services.d.ts +0 -1
- package/models/models/storage-device/services/storage-device-services.d.ts.map +1 -1
- package/models/models/storage-device/storage-device-container-model.d.ts +2 -289
- package/models/models/storage-device/storage-device-container-model.d.ts.map +1 -1
- package/models/models/storage-device/storage-device-model.d.ts +2 -84
- package/models/models/storage-device/storage-device-model.d.ts.map +1 -1
- package/models/models/storage-device/types/index.d.ts +0 -114
- package/models/models/studio-properties/studio-properties-model.d.ts +0 -75
- package/models/models/studio-properties/studio-properties-model.d.ts.map +1 -1
- package/models/models/studio-properties/types/index.d.ts +0 -29
- package/models/models/translation/services/translation-services.d.ts +2 -128
- package/models/models/translation/services/translation-services.d.ts.map +1 -1
- package/models/models/translation/translation-container-model.d.ts +10 -100
- package/models/models/translation/translation-container-model.d.ts.map +1 -1
- package/models/models/translation/translation-container-registration.d.ts +1 -2
- package/models/models/translation/translation-container-registration.d.ts.map +1 -1
- package/models/models/translation/translation-context.d.ts +16 -1
- package/models/models/translation/translation-context.d.ts.map +1 -1
- package/models/models/translation/translation-model.d.ts +1 -113
- package/models/models/translation/translation-model.d.ts.map +1 -1
- package/models/models/translation/types/index.d.ts +0 -343
- package/models/models/trouble/index.d.ts +1 -2
- package/models/models/trouble/index.d.ts.map +1 -1
- package/models/models/trouble/services/trouble-services.d.ts +4 -6
- package/models/models/trouble/services/trouble-services.d.ts.map +1 -1
- package/models/models/trouble/trouble-model.d.ts +1 -4
- package/models/models/trouble/trouble-model.d.ts.map +1 -1
- package/models/models/trouble/types/index.d.ts +93 -34
- package/models/models/trouble/utils/is-trouble-aware.d.ts +2 -2
- package/models/models/trouble/utils/is-trouble-aware.d.ts.map +1 -1
- package/models/models/trouble-container/index.d.ts +3 -4
- package/models/models/trouble-container/index.d.ts.map +1 -1
- package/models/models/trouble-container/trouble-container-model.d.ts +6 -10
- package/models/models/trouble-container/trouble-container-model.d.ts.map +1 -1
- package/models/models/trouble-container/trouble-container-registration.d.ts +5 -0
- package/models/models/trouble-container/trouble-container-registration.d.ts.map +1 -0
- package/models/models/trouble-container/types/index.d.ts +15 -6
- package/models/models/usb-update/types/index.d.ts +0 -10
- package/models/services/config-bean/index.d.ts +2 -2
- package/models/services/config-bean/index.d.ts.map +1 -1
- package/models/utils/client.d.ts +12 -16
- package/models/utils/client.d.ts.map +1 -1
- package/models/utils/core-registration-manager.d.ts +1 -1
- package/models/utils/core-registration-manager.d.ts.map +1 -1
- package/models/utils/extension-manager.d.ts +13 -54
- package/models/utils/extension-manager.d.ts.map +1 -1
- package/models/utils/index.d.ts +2 -3
- package/models/utils/index.d.ts.map +1 -1
- package/models/utils/kosmodel-compatible-future-mixin.d.ts +142 -0
- package/models/utils/kosmodel-compatible-future-mixin.d.ts.map +1 -0
- package/models/utils/kosmodel-interface-companion-mixin.d.ts +83 -0
- package/models/utils/kosmodel-interface-companion-mixin.d.ts.map +1 -0
- package/models/utils/service.d.ts +13 -91
- package/models/utils/service.d.ts.map +1 -1
- package/package.json +2 -16
- package/ui/contexts/kos-core-context.d.ts.map +1 -1
- package/ui/contexts/state-bean/state-bean-provider.d.ts.map +1 -1
- package/ui/hooks/device/use-device.d.ts +0 -6
- package/ui/hooks/device/use-device.d.ts.map +1 -1
- package/ui/hooks/index.d.ts +0 -1
- package/ui/hooks/index.d.ts.map +1 -1
- package/ui/hooks/kos-time/use-kos-time.d.ts +0 -6
- package/ui/hooks/kos-time/use-kos-time.d.ts.map +1 -1
- package/ui/hooks/network-interface-container/use-network-interface-container.d.ts +0 -6
- package/ui/hooks/network-interface-container/use-network-interface-container.d.ts.map +1 -1
- package/ui/hooks/ota/use-ota.d.ts +0 -6
- package/ui/hooks/ota/use-ota.d.ts.map +1 -1
- package/ui/hooks/software-info/use-software-info.d.ts +0 -6
- package/ui/hooks/software-info/use-software-info.d.ts.map +1 -1
- package/ui/hooks/state-bean/use-state-bean.d.ts +2 -2
- package/ui/hooks/state-bean/use-state-bean.d.ts.map +1 -1
- package/ui/hooks/state-bean/with-state-bean.d.ts.map +1 -1
- package/ui/hooks/storage-device-container/use-storage-device-container.d.ts +0 -6
- package/ui/hooks/storage-device-container/use-storage-device-container.d.ts.map +1 -1
- package/ui/hooks/translation-container/trans.d.ts +0 -6
- package/ui/hooks/translation-container/trans.d.ts.map +1 -1
- package/ui/hooks/translation-container/use-translation-container.d.ts +33 -10
- package/ui/hooks/translation-container/use-translation-container.d.ts.map +1 -1
- package/ui/hooks/translation-container/use-translation.d.ts +0 -7
- package/ui/hooks/translation-container/use-translation.d.ts.map +1 -1
- package/ui/hooks/translation-container/with-translation-container.d.ts +0 -6
- package/ui/hooks/translation-container/with-translation-container.d.ts.map +1 -1
- package/ui/hooks/usb-update-container/use-usb-update-container.d.ts +0 -6
- package/ui/hooks/usb-update-container/use-usb-update-container.d.ts.map +1 -1
- package/ui/hooks/use-config-bean.d.ts +0 -6
- package/ui/hooks/use-config-bean.d.ts.map +1 -1
- package/ui/hooks/use-config-property.d.ts +0 -6
- package/ui/hooks/use-config-property.d.ts.map +1 -1
- package/ui/hooks/use-kos-model.d.ts +0 -7
- package/ui/hooks/use-kos-model.d.ts.map +1 -1
- package/ui/hooks/use-kos-regions.d.ts.map +1 -1
- package/core/constants/model-constants.d.ts +0 -9
- package/core/constants/model-constants.d.ts.map +0 -1
- package/core/core/companion-instantiator.d.ts +0 -71
- package/core/core/companion-instantiator.d.ts.map +0 -1
- package/core/core/decorators/fsm-injection-utils.d.ts +0 -16
- package/core/core/decorators/fsm-injection-utils.d.ts.map +0 -1
- package/core/core/decorators/kos-container-aware.d.ts +0 -619
- package/core/core/decorators/kos-container-aware.d.ts.map +0 -1
- package/core/core/decorators/kos-execution-context.d.ts +0 -63
- package/core/core/decorators/kos-execution-context.d.ts.map +0 -1
- package/core/core/decorators/kos-future-aware.d.ts +0 -162
- package/core/core/decorators/kos-future-aware.d.ts.map +0 -1
- package/core/core/decorators/kos-logger-aware.d.ts +0 -105
- package/core/core/decorators/kos-logger-aware.d.ts.map +0 -1
- package/core/core/decorators/kos-multiple-future-aware.d.ts +0 -217
- package/core/core/decorators/kos-multiple-future-aware.d.ts.map +0 -1
- package/core/core/decorators/kos-service-request-helpers.d.ts +0 -60
- package/core/core/decorators/kos-service-request-helpers.d.ts.map +0 -1
- package/core/core/decorators/kos-service-request.d.ts +0 -498
- package/core/core/decorators/kos-service-request.d.ts.map +0 -1
- package/core/core/decorators/kos-state-machine.d.ts +0 -534
- package/core/core/decorators/kos-state-machine.d.ts.map +0 -1
- package/core/core/decorators/kos-trouble-aware.d.ts +0 -77
- package/core/core/decorators/kos-trouble-aware.d.ts.map +0 -1
- package/core/core/decorators/kos-view-model.d.ts +0 -176
- package/core/core/decorators/kos-view-model.d.ts.map +0 -1
- package/core/core/model/kos-service-request-manager.d.ts +0 -102
- package/core/core/model/kos-service-request-manager.d.ts.map +0 -1
- package/core/core/model/service-response-store.d.ts +0 -164
- package/core/core/model/service-response-store.d.ts.map +0 -1
- package/core/types/service-response-store.d.ts +0 -162
- package/core/types/service-response-store.d.ts.map +0 -1
- package/core/util/ancestor-path-visitor.d.ts +0 -60
- package/core/util/ancestor-path-visitor.d.ts.map +0 -1
- package/core/util/error-logger.d.ts +0 -16
- package/core/util/error-logger.d.ts.map +0 -1
- package/core/util/model-error-utils.d.ts +0 -61
- package/core/util/model-error-utils.d.ts.map +0 -1
- package/core/util/model-transition-utils.d.ts +0 -41
- package/core/util/model-transition-utils.d.ts.map +0 -1
- package/core/util/model-type-guards.d.ts +0 -26
- package/core/util/model-type-guards.d.ts.map +0 -1
- package/core/util/promise-utils.d.ts +0 -58
- package/core/util/promise-utils.d.ts.map +0 -1
- package/core/util/service-request-error.d.ts +0 -60
- package/core/util/service-request-error.d.ts.map +0 -1
- package/core/util/service-response.d.ts +0 -125
- package/core/util/service-response.d.ts.map +0 -1
- package/kos-models.json +0 -426
- package/models/models/config-bean/types/index.d.ts +0 -34
- package/models/models/gpio-chip/gpio-chip-container-model.d.ts +0 -25
- package/models/models/gpio-chip/gpio-chip-container-model.d.ts.map +0 -1
- package/models/models/gpio-chip/gpio-chip-model.d.ts +0 -30
- package/models/models/gpio-chip/gpio-chip-model.d.ts.map +0 -1
- package/models/models/gpio-chip/index.d.ts +0 -7
- package/models/models/gpio-chip/index.d.ts.map +0 -1
- package/models/models/gpio-chip/services/gpio-chip-services.d.ts +0 -86
- package/models/models/gpio-chip/services/gpio-chip-services.d.ts.map +0 -1
- package/models/models/gpio-chip/services/index.d.ts +0 -2
- package/models/models/gpio-chip/services/index.d.ts.map +0 -1
- package/models/models/gpio-chip/types/index.d.ts +0 -24
- package/models/models/gpio-pin/gpio-pin-container-model.d.ts +0 -23
- package/models/models/gpio-pin/gpio-pin-container-model.d.ts.map +0 -1
- package/models/models/gpio-pin/gpio-pin-model.d.ts +0 -26
- package/models/models/gpio-pin/gpio-pin-model.d.ts.map +0 -1
- package/models/models/gpio-pin/index.d.ts +0 -6
- package/models/models/gpio-pin/index.d.ts.map +0 -1
- package/models/models/gpio-pin/types/index.d.ts +0 -23
- package/models/models/kos-expression-evaluator/index.d.ts +0 -4
- package/models/models/kos-expression-evaluator/index.d.ts.map +0 -1
- package/models/models/kos-expression-evaluator/kos-expression-evaluator-model.d.ts +0 -209
- package/models/models/kos-expression-evaluator/kos-expression-evaluator-model.d.ts.map +0 -1
- package/models/models/kos-expression-evaluator/services/index.d.ts +0 -6
- package/models/models/kos-expression-evaluator/services/index.d.ts.map +0 -1
- package/models/models/kos-expression-evaluator/services/kos-expression-evaluator-services.d.ts +0 -15
- package/models/models/kos-expression-evaluator/services/kos-expression-evaluator-services.d.ts.map +0 -1
- package/models/models/kos-expression-evaluator/types/index.d.ts +0 -6
- package/models/utils/get-kos-connection-id.d.ts +0 -2
- package/models/utils/get-kos-connection-id.d.ts.map +0 -1
- package/models/utils/openapi-index.d.ts +0 -3
- package/models/utils/openapi-index.d.ts.map +0 -1
- package/models/utils/service-accessor.d.ts +0 -86
- package/models/utils/service-accessor.d.ts.map +0 -1
- package/models/utils/services/kos/1.6.5/openapi.d.ts +0 -3809
- package/models/utils/services/kos/1.6.5/service.d.ts +0 -124
- package/models/utils/services/kos/1.6.5/service.d.ts.map +0 -1
- package/models/utils/services/kos/1.8.1/openapi.d.ts +0 -4344
- package/models/utils/services/kos/1.8.1/service.d.ts +0 -124
- package/models/utils/services/kos/1.8.1/service.d.ts.map +0 -1
- package/models/utils/services/kos/1.9.x/openapi.d.ts +0 -4597
- package/models/utils/services/kos/1.9.x/service.d.ts +0 -124
- package/models/utils/services/kos/1.9.x/service.d.ts.map +0 -1
- package/models/utils/services/kos/daily/openapi.d.ts +0 -4349
- package/models/utils/services/kos/daily/service.d.ts +0 -124
- package/models/utils/services/kos/daily/service.d.ts.map +0 -1
- package/models/utils/services/vfs/1.6.5/openapi.d.ts +0 -51
- package/models/utils/services/vfs/1.6.5/service.d.ts +0 -124
- package/models/utils/services/vfs/1.6.5/service.d.ts.map +0 -1
- package/models/utils/services/vfs/1.8.1/openapi.d.ts +0 -51
- package/models/utils/services/vfs/1.8.1/service.d.ts +0 -124
- package/models/utils/services/vfs/1.8.1/service.d.ts.map +0 -1
- package/models/utils/services/vfs/1.9.x/openapi.d.ts +0 -51
- package/models/utils/services/vfs/1.9.x/service.d.ts +0 -124
- package/models/utils/services/vfs/1.9.x/service.d.ts.map +0 -1
- package/models/utils/services/vfs/daily/openapi.d.ts +0 -51
- package/models/utils/services/vfs/daily/service.d.ts +0 -124
- package/models/utils/services/vfs/daily/service.d.ts.map +0 -1
- package/models/utils/services-index.d.ts +0 -9
- package/models/utils/services-index.d.ts.map +0 -1
- package/ui/hooks/view-model/index.d.ts +0 -2
- package/ui/hooks/view-model/index.d.ts.map +0 -1
- package/ui/hooks/view-model/use-view-model.d.ts +0 -80
- package/ui/hooks/view-model/use-view-model.d.ts.map +0 -1
|
@@ -1,498 +0,0 @@
|
|
|
1
|
-
import { KosExecutionContext } from './kos-execution-context';
|
|
2
|
-
import { KosModelRegistrationType } from '../registration/model-registration';
|
|
3
|
-
import { IKosDataModel } from '../kosModel';
|
|
4
|
-
import { ServiceRequestError } from '../../util/service-request-error';
|
|
5
|
-
import { ClientBody, ClientParams } from '../../util/kos-service-request';
|
|
6
|
-
import { KosFetchOptions } from '../../types/utils/kos-fetch';
|
|
7
|
-
import { ResponseCacheConfig } from '../../types/service-response-store';
|
|
8
|
-
import { DependencyLifecycle } from '../../types';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @kosService core.service-request
|
|
12
|
-
*/
|
|
13
|
-
export type RequestOptions = Omit<KosFetchOptions, "method" | "body">;
|
|
14
|
-
export type { KosExecutionContext };
|
|
15
|
-
/**
|
|
16
|
-
* Symbol for storing service request handlers metadata on model instances
|
|
17
|
-
* @internal
|
|
18
|
-
*/
|
|
19
|
-
export declare const ServiceRequestHandlers: unique symbol;
|
|
20
|
-
/**
|
|
21
|
-
* HTTP methods supported by kosServiceRequest
|
|
22
|
-
*
|
|
23
|
-
* @kosService core.service-request
|
|
24
|
-
*/
|
|
25
|
-
export type HttpMethod = "get" | "GET" | "post" | "POST" | "put" | "PUT" | "delete" | "DELETE" | "patch" | "PATCH";
|
|
26
|
-
/**
|
|
27
|
-
* API path type - string representing an API endpoint
|
|
28
|
-
*
|
|
29
|
-
* @kosService core.service-request
|
|
30
|
-
*/
|
|
31
|
-
export type ApiPath = string;
|
|
32
|
-
/**
|
|
33
|
-
* Configuration for field mapping in data transformation
|
|
34
|
-
*
|
|
35
|
-
* @kosService core.service-request
|
|
36
|
-
* @kosApiLevel 15
|
|
37
|
-
*/
|
|
38
|
-
export interface FieldMapping {
|
|
39
|
-
/**
|
|
40
|
-
* Source field path (dot notation supported, e.g., 'data.user.name')
|
|
41
|
-
*/
|
|
42
|
-
from: string;
|
|
43
|
-
/**
|
|
44
|
-
* Target field name in the model
|
|
45
|
-
*/
|
|
46
|
-
to: string;
|
|
47
|
-
/**
|
|
48
|
-
* Optional transformation to apply
|
|
49
|
-
* Built-in: 'string', 'number', 'boolean', 'date', 'json'
|
|
50
|
-
* Custom: function name or transformer function
|
|
51
|
-
*/
|
|
52
|
-
transform?: string | ((value: any) => any);
|
|
53
|
-
/**
|
|
54
|
-
* Whether this field is required
|
|
55
|
-
*/
|
|
56
|
-
required?: boolean;
|
|
57
|
-
/**
|
|
58
|
-
* Default value if field is missing
|
|
59
|
-
*/
|
|
60
|
-
default?: any;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Configuration for extension points during transformation
|
|
64
|
-
*
|
|
65
|
-
* @kosService core.service-request
|
|
66
|
-
* @kosApiLevel 15
|
|
67
|
-
*/
|
|
68
|
-
export interface ExtensionConfig {
|
|
69
|
-
/**
|
|
70
|
-
* Type of extension point
|
|
71
|
-
*/
|
|
72
|
-
type: "loader" | "data-mapper" | "validator";
|
|
73
|
-
/**
|
|
74
|
-
* Extension identifier (e.g., ExtensionType.IngredientMapper)
|
|
75
|
-
*/
|
|
76
|
-
extension: any;
|
|
77
|
-
/**
|
|
78
|
-
* When to execute the extension
|
|
79
|
-
*/
|
|
80
|
-
phase?: "before" | "after" | "transform";
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Configuration for error handling in service requests.
|
|
84
|
-
*
|
|
85
|
-
* Provides multiple strategies for handling request failures, enabling soft failures
|
|
86
|
-
* with cached default values and error-first parameter patterns.
|
|
87
|
-
*
|
|
88
|
-
* @remarks
|
|
89
|
-
* All strategies except 'throw' cache defaultValue in the response store, ensuring
|
|
90
|
-
* consistency across model lifecycle. Lifecycle-triggered handlers receive error-first
|
|
91
|
-
* parameters: (error, data), while method-driven requests use $request executor
|
|
92
|
-
* returning tuple: [error, data].
|
|
93
|
-
*
|
|
94
|
-
* @example
|
|
95
|
-
* ```typescript
|
|
96
|
-
* // Soft failure with logging
|
|
97
|
-
* @kosServiceRequest({
|
|
98
|
-
* path: '/api/data',
|
|
99
|
-
* errorHandler: {
|
|
100
|
-
* strategy: 'log',
|
|
101
|
-
* defaultValue: []
|
|
102
|
-
* }
|
|
103
|
-
* })
|
|
104
|
-
* async loadData(error: string | null, data: DataType[]): Promise<void> {
|
|
105
|
-
* if (error) {
|
|
106
|
-
* this.logger.error(`Load failed: ${error}`);
|
|
107
|
-
* }
|
|
108
|
-
* this.processData(data); // Either real data or defaultValue
|
|
109
|
-
* }
|
|
110
|
-
* ```
|
|
111
|
-
*
|
|
112
|
-
* @category Service Request
|
|
113
|
-
* @see {@link KosServiceRequestConfig} for complete decorator configuration
|
|
114
|
-
* @kosService core.service-request
|
|
115
|
-
* @kosApiLevel 15
|
|
116
|
-
*/
|
|
117
|
-
export interface ErrorHandlerConfig {
|
|
118
|
-
/**
|
|
119
|
-
* How to handle errors:
|
|
120
|
-
*
|
|
121
|
-
* - 'throw': Re-throw error (default) - handler not called, no caching
|
|
122
|
-
*
|
|
123
|
-
* - 'log': Log error, cache defaultValue, and call handler with (error, defaultValue)
|
|
124
|
-
* Enables soft failure - log the error but continue processing with default data
|
|
125
|
-
*
|
|
126
|
-
* - 'ignore': Cache defaultValue and call handler with (error, defaultValue)
|
|
127
|
-
* Soft failure without logging - silent recovery
|
|
128
|
-
*
|
|
129
|
-
* - 'default': Same as 'ignore' - cache defaultValue and call handler
|
|
130
|
-
* (Kept for backward compatibility, behaves identically to 'ignore')
|
|
131
|
-
*
|
|
132
|
-
* All strategies except 'throw' cache defaultValue in response store for consistency.
|
|
133
|
-
*
|
|
134
|
-
* Note: For lifecycle requests, handler receives error-first parameters: (error, data)
|
|
135
|
-
* For method-driven requests, $request executor returns tuple: [error, data]
|
|
136
|
-
*/
|
|
137
|
-
strategy: "throw" | "log" | "ignore" | "default";
|
|
138
|
-
/**
|
|
139
|
-
* Default value to use when an error occurs.
|
|
140
|
-
* Used with 'log', 'ignore', or 'default' strategies.
|
|
141
|
-
* - Stored in response cache for subsequent access
|
|
142
|
-
* - Passed to handler as second parameter: handler(errorMessage, defaultValue)
|
|
143
|
-
*/
|
|
144
|
-
defaultValue?: any;
|
|
145
|
-
/**
|
|
146
|
-
* Custom error handler function called when a request fails.
|
|
147
|
-
*
|
|
148
|
-
* When the failure is an HTTP error response, `error` will be a
|
|
149
|
-
* {@link ServiceRequestError} instance with `status`, `statusText`,
|
|
150
|
-
* `responseBody`, and `responseHeaders` properties.
|
|
151
|
-
*
|
|
152
|
-
* For non-HTTP failures (network errors, timeouts), `error` is a
|
|
153
|
-
* plain `Error`.
|
|
154
|
-
*
|
|
155
|
-
* @example
|
|
156
|
-
* ```typescript
|
|
157
|
-
* onError: (error, model) => {
|
|
158
|
-
* if (error instanceof ServiceRequestError) {
|
|
159
|
-
* console.error(`HTTP ${error.status}`, error.responseBody, error.responseHeaders);
|
|
160
|
-
* }
|
|
161
|
-
* }
|
|
162
|
-
* ```
|
|
163
|
-
*/
|
|
164
|
-
onError?: (error: Error | ServiceRequestError, model: IKosDataModel) => void;
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Configuration parameters for @kosServiceRequest decorator
|
|
168
|
-
* Enables lifecycle-driven HTTP requests with declarative data transformation
|
|
169
|
-
*
|
|
170
|
-
* @typeparam Paths - The OpenAPI paths type (from your OpenAPI schema)
|
|
171
|
-
* @typeparam Path - The specific API path being requested
|
|
172
|
-
* @typeparam Method - The HTTP method type
|
|
173
|
-
* @typeparam Response - The raw response type from the API
|
|
174
|
-
* @typeparam TransformedResponse - The transformed response type after mappings
|
|
175
|
-
*
|
|
176
|
-
* @kosService core.service-request
|
|
177
|
-
* @kosApiLevel 15
|
|
178
|
-
*/
|
|
179
|
-
export interface IKosServiceRequestParams<Paths extends Record<string, any> = Record<string, any>, Path extends keyof Paths = string, Method extends HttpMethod = "get", Response = any, TransformedResponse = Response> {
|
|
180
|
-
/**
|
|
181
|
-
* API path to request
|
|
182
|
-
*
|
|
183
|
-
* @example
|
|
184
|
-
* path: '/api/kos/ingredients'
|
|
185
|
-
* path: `/api/devices/${PROP_DEVICE_ID}/status` // with PropKey
|
|
186
|
-
*/
|
|
187
|
-
path: Path;
|
|
188
|
-
/**
|
|
189
|
-
* HTTP method
|
|
190
|
-
*
|
|
191
|
-
* @default 'get'
|
|
192
|
-
*/
|
|
193
|
-
method?: Method;
|
|
194
|
-
/**
|
|
195
|
-
* When to execute this request during model lifecycle
|
|
196
|
-
*
|
|
197
|
-
* If omitted, the request executes when the decorated method is called (method-driven).
|
|
198
|
-
* If specified, the request executes automatically during the given lifecycle phase (lifecycle-driven).
|
|
199
|
-
*
|
|
200
|
-
* @example
|
|
201
|
-
* // Lifecycle-driven (auto-execute during LOAD phase)
|
|
202
|
-
* lifecycle: DependencyLifecycle.LOAD
|
|
203
|
-
*
|
|
204
|
-
* @example
|
|
205
|
-
* // Method-driven (execute when method is called)
|
|
206
|
-
* lifecycle: undefined // or omit entirely
|
|
207
|
-
*/
|
|
208
|
-
lifecycle?: DependencyLifecycle;
|
|
209
|
-
/**
|
|
210
|
-
* Path parameters to expand in the URL
|
|
211
|
-
* Strongly typed from OpenAPI schema
|
|
212
|
-
* Can be static values or PropKey references
|
|
213
|
-
*
|
|
214
|
-
* @example
|
|
215
|
-
* // Static value
|
|
216
|
-
* pathParams: { deviceId: 'device-123' }
|
|
217
|
-
*
|
|
218
|
-
* @example
|
|
219
|
-
* // PropKey reference (use PROP_ prefix)
|
|
220
|
-
* pathParams: { deviceId: PROP_DEVICE_ID }
|
|
221
|
-
*
|
|
222
|
-
* @example
|
|
223
|
-
* // Dynamic from method arguments
|
|
224
|
-
* pathParams: (model, deviceId, status) => ({ deviceId })
|
|
225
|
-
*/
|
|
226
|
-
pathParams?: (ClientParams<Paths, Path, Method> extends {
|
|
227
|
-
path?: infer P;
|
|
228
|
-
} ? P : never) | ((model: IKosDataModel, ...args: any[]) => ClientParams<Paths, Path, Method> extends {
|
|
229
|
-
path?: infer P;
|
|
230
|
-
} ? P : never);
|
|
231
|
-
/**
|
|
232
|
-
* Query parameters
|
|
233
|
-
* Strongly typed from OpenAPI schema
|
|
234
|
-
*
|
|
235
|
-
* @example
|
|
236
|
-
* // Static
|
|
237
|
-
* queryParams: { includeMetadata: true, format: 'json' }
|
|
238
|
-
*
|
|
239
|
-
* @example
|
|
240
|
-
* // Dynamic from method arguments
|
|
241
|
-
* queryParams: (model, deviceId, debug) => ({ debug })
|
|
242
|
-
*/
|
|
243
|
-
queryParams?: (ClientParams<Paths, Path, Method> extends {
|
|
244
|
-
query?: infer Q;
|
|
245
|
-
} ? Q : never) | ((model: IKosDataModel, ...args: any[]) => ClientParams<Paths, Path, Method> extends {
|
|
246
|
-
query?: infer Q;
|
|
247
|
-
} ? Q : never);
|
|
248
|
-
/**
|
|
249
|
-
* Request body (for POST/PUT/PATCH)
|
|
250
|
-
* Strongly typed from OpenAPI schema
|
|
251
|
-
*
|
|
252
|
-
* @example
|
|
253
|
-
* // Static body
|
|
254
|
-
* body: { action: 'start' }
|
|
255
|
-
*
|
|
256
|
-
* @example
|
|
257
|
-
* // Dynamic from method arguments
|
|
258
|
-
* body: (model, vehicleType, speed) => ({ vehicleType, speed })
|
|
259
|
-
*/
|
|
260
|
-
body?: ClientBody<Paths, Path, Method> | ((model: IKosDataModel, ...args: any[]) => ClientBody<Paths, Path, Method>);
|
|
261
|
-
/**
|
|
262
|
-
* JSON path to iterate over in response
|
|
263
|
-
* Creates models for each item in the array
|
|
264
|
-
*
|
|
265
|
-
* @example
|
|
266
|
-
* iterateOver: 'data.ingredients' // Iterates response.data.ingredients array
|
|
267
|
-
*/
|
|
268
|
-
iterateOver?: string;
|
|
269
|
-
/**
|
|
270
|
-
* Model registration object for creating instances from array items
|
|
271
|
-
* Used with iterateOver to create child models using the builder pattern
|
|
272
|
-
*
|
|
273
|
-
* @example
|
|
274
|
-
* modelFactory: IngredientModel // The registration object itself
|
|
275
|
-
*
|
|
276
|
-
* deprecated The old curried function signature is deprecated:
|
|
277
|
-
* modelFactory?: (id: string) => (options: any) => IKosDataModel
|
|
278
|
-
*/
|
|
279
|
-
modelFactory?: KosModelRegistrationType<IKosDataModel, Record<string, unknown>> | ((id: string) => (options: unknown) => IKosDataModel);
|
|
280
|
-
/**
|
|
281
|
-
* Function to extract the model ID from response data items
|
|
282
|
-
* Required when using modelFactory if items don't have an 'id' field
|
|
283
|
-
*
|
|
284
|
-
* @example
|
|
285
|
-
* idExtractor: (item) => item.ingredientId
|
|
286
|
-
* idExtractor: (item) => `${item.type}-${item.index}`
|
|
287
|
-
*/
|
|
288
|
-
idExtractor?: (item: any) => string;
|
|
289
|
-
/**
|
|
290
|
-
* Field mappings for data transformation
|
|
291
|
-
* Same format as @kosTopicHandler mappings
|
|
292
|
-
*
|
|
293
|
-
* @example
|
|
294
|
-
* mappings: [
|
|
295
|
-
* { from: 'id', to: 'id' },
|
|
296
|
-
* { from: 'ingredientId', to: 'ingredientId' },
|
|
297
|
-
* { from: 'metadata.calories', to: 'calories', transform: 'number' }
|
|
298
|
-
* ]
|
|
299
|
-
*/
|
|
300
|
-
mappings?: FieldMapping[];
|
|
301
|
-
/**
|
|
302
|
-
* Extension points to execute during transformation
|
|
303
|
-
*
|
|
304
|
-
* @example
|
|
305
|
-
* extensions: [
|
|
306
|
-
* { type: 'data-mapper', extension: ExtensionType.IngredientMapper }
|
|
307
|
-
* ]
|
|
308
|
-
*/
|
|
309
|
-
extensions?: ExtensionConfig[];
|
|
310
|
-
/**
|
|
311
|
-
* Transformation function for response data
|
|
312
|
-
* Applied before mappings
|
|
313
|
-
*
|
|
314
|
-
* @example
|
|
315
|
-
* transform: (response) => response.data
|
|
316
|
-
*/
|
|
317
|
-
transform?: (response: Response) => TransformedResponse;
|
|
318
|
-
/**
|
|
319
|
-
* Condition to determine if request should execute
|
|
320
|
-
*
|
|
321
|
-
* @example
|
|
322
|
-
* condition: (model) => model.isInitialized
|
|
323
|
-
*/
|
|
324
|
-
condition?: (model: IKosDataModel) => boolean;
|
|
325
|
-
/**
|
|
326
|
-
* Error handling strategy
|
|
327
|
-
*
|
|
328
|
-
* @example
|
|
329
|
-
* errorHandler: {
|
|
330
|
-
* strategy: 'default',
|
|
331
|
-
* defaultValue: [],
|
|
332
|
-
* onError: (error, model) => model.logger.error('Failed to load', error)
|
|
333
|
-
* }
|
|
334
|
-
*/
|
|
335
|
-
errorHandler?: ErrorHandlerConfig;
|
|
336
|
-
/**
|
|
337
|
-
* Response caching configuration
|
|
338
|
-
* Controls how long responses are stored and when they're cleaned up
|
|
339
|
-
*
|
|
340
|
-
* @default { retention: ResponseRetention.SINGLE }
|
|
341
|
-
*
|
|
342
|
-
* @example
|
|
343
|
-
* // No caching - clear immediately after handler
|
|
344
|
-
* cache: { retention: ResponseRetention.IMMEDIATE }
|
|
345
|
-
*
|
|
346
|
-
* @example
|
|
347
|
-
* // Cache for 5 minutes
|
|
348
|
-
* cache: { retention: ResponseRetention.TTL, ttl: 5 * 60 * 1000 }
|
|
349
|
-
*
|
|
350
|
-
* @example
|
|
351
|
-
* // Keep for model lifetime
|
|
352
|
-
* cache: { retention: ResponseRetention.PERMANENT }
|
|
353
|
-
*/
|
|
354
|
-
cache?: ResponseCacheConfig;
|
|
355
|
-
/**
|
|
356
|
-
* Request options for controlling fetch behavior
|
|
357
|
-
* These are merged with runtime options passed to ctx.$request()
|
|
358
|
-
* Runtime options take precedence over decorator options
|
|
359
|
-
*
|
|
360
|
-
* @example
|
|
361
|
-
* // Set default timeout and destination for all requests
|
|
362
|
-
* requestOptions: {
|
|
363
|
-
* destinationAddress: 'device-123',
|
|
364
|
-
* timeout: 10000
|
|
365
|
-
* }
|
|
366
|
-
*
|
|
367
|
-
* @example
|
|
368
|
-
* // Dynamic from method arguments
|
|
369
|
-
* requestOptions: (model, ...args) => ({
|
|
370
|
-
* destinationAddress: model.deviceId,
|
|
371
|
-
* headers: { 'X-Session': model.sessionId }
|
|
372
|
-
* })
|
|
373
|
-
* @kosApiLevel 18
|
|
374
|
-
*/
|
|
375
|
-
requestOptions?: RequestOptions | ((model: IKosDataModel, ...args: any[]) => RequestOptions);
|
|
376
|
-
}
|
|
377
|
-
/**
|
|
378
|
-
* Metadata stored for each service request handler
|
|
379
|
-
* @internal
|
|
380
|
-
*/
|
|
381
|
-
export interface ServiceRequestMetadata<Paths extends Record<string, any> = Record<string, any>, Path extends keyof Paths = string, Method extends HttpMethod = "get", Response = any, TransformedResponse = Response> extends IKosServiceRequestParams<Paths, Path, Method, Response, TransformedResponse> {
|
|
382
|
-
/**
|
|
383
|
-
* The method name that handles the response
|
|
384
|
-
*/
|
|
385
|
-
handlerMethod: string;
|
|
386
|
-
/**
|
|
387
|
-
* The original handler function
|
|
388
|
-
*/
|
|
389
|
-
originalHandler: Function;
|
|
390
|
-
}
|
|
391
|
-
/**
|
|
392
|
-
* Runtime service request executor injected into method context
|
|
393
|
-
* Allows imperative execution of the service request defined by the decorator
|
|
394
|
-
*
|
|
395
|
-
* @kosService core.service-request
|
|
396
|
-
*/
|
|
397
|
-
export interface ServiceRequestExecutor<Paths extends Record<string, any> = Record<string, any>, Path extends keyof Paths = string, Method extends HttpMethod = "get"> {
|
|
398
|
-
(options?: {
|
|
399
|
-
pathParams?: ClientParams<Paths, Path, Method> extends {
|
|
400
|
-
path?: infer P;
|
|
401
|
-
} ? P : never;
|
|
402
|
-
queryParams?: ClientParams<Paths, Path, Method> extends {
|
|
403
|
-
query?: infer Q;
|
|
404
|
-
} ? Q : never;
|
|
405
|
-
body?: ClientBody<Paths, Path, Method>;
|
|
406
|
-
requestOptions?: RequestOptions;
|
|
407
|
-
}): Promise<[string | null, any]>;
|
|
408
|
-
}
|
|
409
|
-
/**
|
|
410
|
-
* Type alias for the service request executor function signature.
|
|
411
|
-
* This executor is automatically passed as the last parameter to methods
|
|
412
|
-
* decorated with @kosServiceRequest (without lifecycle).
|
|
413
|
-
*
|
|
414
|
-
* @example
|
|
415
|
-
* ```typescript
|
|
416
|
-
* type CreateReleaseExecutor = ServiceRequestExecutor<paths, typeof PATH_VM_INSTALL, 'post'>;
|
|
417
|
-
* ```
|
|
418
|
-
*
|
|
419
|
-
* @kosService core.service-request
|
|
420
|
-
*/
|
|
421
|
-
export type ServiceRequestExecutorFn<Paths extends Record<string, any> = Record<string, any>, Path extends keyof Paths = string, Method extends HttpMethod = "get"> = ServiceRequestExecutor<Paths, Path, Method>;
|
|
422
|
-
/**
|
|
423
|
-
* Decorator for lifecycle-driven service requests within KOS models
|
|
424
|
-
*
|
|
425
|
-
* Eliminates service boilerplate by integrating HTTP requests directly into
|
|
426
|
-
* the model lifecycle. Responses are cached in ServiceResponseStore for access
|
|
427
|
-
* via utility functions, avoiding "magic last parameter" patterns.
|
|
428
|
-
*
|
|
429
|
-
* @param params - Configuration for the service request
|
|
430
|
-
* @returns Method decorator
|
|
431
|
-
*
|
|
432
|
-
* @example Basic GET request during LOAD
|
|
433
|
-
* ```typescript
|
|
434
|
-
* @kosServiceRequest({
|
|
435
|
-
* path: PATH_DEVICE_STATUS,
|
|
436
|
-
* method: 'get',
|
|
437
|
-
* lifecycle: DependencyLifecycle.LOAD,
|
|
438
|
-
* cache: { retention: ResponseRetention.SINGLE }
|
|
439
|
-
* })
|
|
440
|
-
* private onStatusLoaded(): void {
|
|
441
|
-
* const response = getServiceResponse(this, PATH_DEVICE_STATUS, 'get');
|
|
442
|
-
* this.status = response?.status;
|
|
443
|
-
* }
|
|
444
|
-
* ```
|
|
445
|
-
*
|
|
446
|
-
* @example Method-driven request with execution context
|
|
447
|
-
* ```typescript
|
|
448
|
-
* @kosServiceRequest({
|
|
449
|
-
* path: PATH_VM_INSTALL,
|
|
450
|
-
* method: 'post',
|
|
451
|
-
* requestOptions: {
|
|
452
|
-
* timeout: 10000 // Decorator-level default timeout
|
|
453
|
-
* }
|
|
454
|
-
* })
|
|
455
|
-
* async createRelease(
|
|
456
|
-
* path: string,
|
|
457
|
-
* keysetId?: string,
|
|
458
|
-
* ctx: KosExecutionContext<paths, typeof PATH_VM_INSTALL, 'post'>
|
|
459
|
-
* ): Promise<void> {
|
|
460
|
-
* const [error, response] = await ctx.$request({
|
|
461
|
-
* queryParams: { keySetId: keysetId },
|
|
462
|
-
* body: { path },
|
|
463
|
-
* requestOptions: {
|
|
464
|
-
* destinationAddress: 'device-123', // Runtime options merged with decorator options
|
|
465
|
-
* headers: { 'X-Custom-Header': 'value' }
|
|
466
|
-
* }
|
|
467
|
-
* });
|
|
468
|
-
* if (error) throw new Error(error);
|
|
469
|
-
* return response?.data;
|
|
470
|
-
* }
|
|
471
|
-
* ```
|
|
472
|
-
*
|
|
473
|
-
* @example Container model with iteration
|
|
474
|
-
* ```typescript
|
|
475
|
-
* @kosServiceRequest({
|
|
476
|
-
* path: PATH_INGREDIENTS,
|
|
477
|
-
* method: 'get',
|
|
478
|
-
* lifecycle: DependencyLifecycle.LOAD,
|
|
479
|
-
* iterateOver: 'data.ingredients',
|
|
480
|
-
* modelFactory: Ingredient.factory,
|
|
481
|
-
* mappings: [
|
|
482
|
-
* { from: 'id', to: 'id' },
|
|
483
|
-
* { from: 'name', to: 'name' }
|
|
484
|
-
* ]
|
|
485
|
-
* })
|
|
486
|
-
* private onIngredientsLoaded(): void {
|
|
487
|
-
* const response = getServiceResponse(this, PATH_INGREDIENTS, 'get');
|
|
488
|
-
* // Mappings already applied to response data
|
|
489
|
-
* response?.forEach(i => this.ingredients.addModel(i));
|
|
490
|
-
* }
|
|
491
|
-
* ```
|
|
492
|
-
*
|
|
493
|
-
* @category KOS Model Decorator
|
|
494
|
-
* @kosService core.service-request
|
|
495
|
-
* @kosApiLevel 15
|
|
496
|
-
*/
|
|
497
|
-
export declare function kosServiceRequest<Paths extends Record<string, any> = Record<string, any>, Path extends keyof Paths = string, Method extends HttpMethod = "get", Response = any, TransformedResponse = Response>(params: IKosServiceRequestParams<Paths, Path, Method, Response, TransformedResponse>): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
|
|
498
|
-
//# sourceMappingURL=kos-service-request.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kos-service-request.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/core/core/decorators/kos-service-request.ts"],"names":[],"mappings":"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"}
|