@kosdev-code/kos-ui-sdk 2.0.44 → 2.0.45
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 +30 -0
- package/common/events/eventBus.d.ts.map +1 -1
- package/common/events/eventBus.functional.d.ts +48 -0
- package/common/events/eventBus.functional.d.ts.map +1 -1
- package/common/events/eventBus.state.d.ts +33 -0
- package/common/events/eventBus.state.d.ts.map +1 -1
- package/core/constants/model-constants.d.ts +9 -0
- package/core/constants/model-constants.d.ts.map +1 -0
- package/core/core/companion-instantiator.d.ts +71 -0
- package/core/core/companion-instantiator.d.ts.map +1 -0
- package/core/core/decorators/fsm-injection-utils.d.ts +16 -0
- package/core/core/decorators/fsm-injection-utils.d.ts.map +1 -0
- package/core/core/decorators/index.d.ts +11 -0
- package/core/core/decorators/index.d.ts.map +1 -1
- package/core/core/decorators/kos-child.d.ts +2 -0
- package/core/core/decorators/kos-child.d.ts.map +1 -1
- package/core/core/decorators/kos-companion.d.ts +158 -8
- package/core/core/decorators/kos-companion.d.ts.map +1 -1
- package/core/core/decorators/kos-container-aware.d.ts +619 -0
- package/core/core/decorators/kos-container-aware.d.ts.map +1 -0
- package/core/core/decorators/kos-context.d.ts +6 -0
- package/core/core/decorators/kos-context.d.ts.map +1 -1
- package/core/core/decorators/kos-execution-context.d.ts +63 -0
- package/core/core/decorators/kos-execution-context.d.ts.map +1 -0
- package/core/core/decorators/kos-future-aware.d.ts +162 -0
- package/core/core/decorators/kos-future-aware.d.ts.map +1 -0
- package/core/core/decorators/kos-http-decorators.d.ts +15 -0
- package/core/core/decorators/kos-http-decorators.d.ts.map +1 -1
- package/core/core/decorators/kos-log.d.ts +4 -0
- package/core/core/decorators/kos-log.d.ts.map +1 -1
- package/core/core/decorators/kos-logger-aware.d.ts +105 -0
- package/core/core/decorators/kos-logger-aware.d.ts.map +1 -0
- package/core/core/decorators/kos-model-effect.d.ts +9 -0
- package/core/core/decorators/kos-model-effect.d.ts.map +1 -1
- package/core/core/decorators/kos-multiple-future-aware.d.ts +217 -0
- package/core/core/decorators/kos-multiple-future-aware.d.ts.map +1 -0
- package/core/core/decorators/kos-parent.d.ts +4 -0
- package/core/core/decorators/kos-parent.d.ts.map +1 -1
- package/core/core/decorators/kos-reference.d.ts +9 -0
- package/core/core/decorators/kos-reference.d.ts.map +1 -1
- package/core/core/decorators/kos-service-request-helpers.d.ts +60 -0
- package/core/core/decorators/kos-service-request-helpers.d.ts.map +1 -0
- package/core/core/decorators/kos-service-request.d.ts +498 -0
- package/core/core/decorators/kos-service-request.d.ts.map +1 -0
- package/core/core/decorators/kos-state-machine.d.ts +534 -0
- package/core/core/decorators/kos-state-machine.d.ts.map +1 -0
- package/core/core/decorators/kos-topic-handler-flow-control.d.ts +17 -1
- package/core/core/decorators/kos-topic-handler-flow-control.d.ts.map +1 -1
- package/core/core/decorators/kos-trouble-aware.d.ts +77 -0
- package/core/core/decorators/kos-trouble-aware.d.ts.map +1 -0
- package/core/core/decorators/kos-view-model.d.ts +176 -0
- package/core/core/decorators/kos-view-model.d.ts.map +1 -0
- package/core/core/decorators/kosDependency.d.ts +4 -1
- package/core/core/decorators/kosDependency.d.ts.map +1 -1
- package/core/core/decorators/kosModel.d.ts +17 -2
- package/core/core/decorators/kosModel.d.ts.map +1 -1
- package/core/core/decorators/kosSubscribe.d.ts +9 -0
- package/core/core/decorators/kosSubscribe.d.ts.map +1 -1
- package/core/core/decorators/kosTopicHandler.d.ts +87 -5
- package/core/core/decorators/kosTopicHandler.d.ts.map +1 -1
- package/core/core/decorators/propKeys.d.ts +14 -0
- 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 +64 -4
- package/core/core/extension/extension-manager.d.ts.map +1 -1
- package/core/core/extension/initialize-extension.d.ts +24 -0
- package/core/core/extension/initialize-extension.d.ts.map +1 -1
- package/core/core/extension/plugin-extension-manager.d.ts +11 -0
- package/core/core/extension/plugin-extension-manager.d.ts.map +1 -1
- package/core/core/kos-container-model.d.ts +188 -0
- package/core/core/kos-container-model.d.ts.map +1 -1
- package/core/core/kos-data-container.d.ts +93 -1
- 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 +55 -2
- package/core/core/kosModel.d.ts.map +1 -1
- package/core/core/kosModelManager.d.ts +11 -1
- 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 +1 -4
- package/core/core/model/kos-fsm-manager.d.ts.map +1 -1
- package/core/core/model/kos-model-component-factory.d.ts +4 -0
- package/core/core/model/kos-model-component-factory.d.ts.map +1 -1
- package/core/core/model/kos-offline-queue.d.ts +78 -1
- 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-service-request-manager.d.ts +102 -0
- package/core/core/model/kos-service-request-manager.d.ts.map +1 -0
- package/core/core/model/kos-subscription-manager.d.ts +20 -0
- package/core/core/model/kos-subscription-manager.d.ts.map +1 -1
- package/core/core/model/model-introspection-utils.d.ts +1 -0
- package/core/core/model/model-introspection-utils.d.ts.map +1 -1
- package/core/core/model/service-response-store.d.ts +164 -0
- package/core/core/model/service-response-store.d.ts.map +1 -0
- package/core/core/model-instantiator.d.ts +19 -0
- package/core/core/model-instantiator.d.ts.map +1 -1
- package/core/core/registration/index.d.ts +1 -0
- 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 +2 -1
- package/core/core/transport/webSocketTransport.d.ts.map +1 -1
- package/core/core/types/registration.d.ts +7 -0
- package/core/core/types/registration.d.ts.map +1 -1
- package/core/index.d.ts +2 -1
- package/core/index.d.ts.map +1 -1
- package/core/types/index.d.ts +1 -0
- package/core/types/index.d.ts.map +1 -1
- package/core/types/kos-dependency.d.ts +48 -1
- package/core/types/kos-dependency.d.ts.map +1 -1
- package/core/types/service-response-store.d.ts +162 -0
- package/core/types/service-response-store.d.ts.map +1 -0
- package/core/types/utils/kos-fetch.d.ts +121 -0
- package/core/types/utils/kos-fetch.d.ts.map +1 -1
- package/core/util/ancestor-path-visitor.d.ts +60 -0
- package/core/util/ancestor-path-visitor.d.ts.map +1 -0
- package/core/util/api-request-id.d.ts +4 -0
- package/core/util/api-request-id.d.ts.map +1 -1
- package/core/util/apply-mixins.d.ts +4 -0
- package/core/util/apply-mixins.d.ts.map +1 -1
- package/core/util/array-utils.d.ts +4 -0
- package/core/util/array-utils.d.ts.map +1 -1
- package/core/util/container-utils.d.ts +264 -11
- package/core/util/container-utils.d.ts.map +1 -1
- package/core/util/date-utils.d.ts +29 -0
- package/core/util/date-utils.d.ts.map +1 -1
- package/core/util/debounce.d.ts +3 -0
- package/core/util/debounce.d.ts.map +1 -1
- package/core/util/error-logger.d.ts +16 -0
- package/core/util/error-logger.d.ts.map +1 -0
- package/core/util/feature-flags.d.ts +19 -0
- package/core/util/feature-flags.d.ts.map +1 -1
- package/core/util/get-query-params.d.ts +4 -0
- package/core/util/get-query-params.d.ts.map +1 -1
- package/core/util/hsl-to-hex.d.ts +16 -0
- package/core/util/hsl-to-hex.d.ts.map +1 -1
- package/core/util/index.d.ts +3 -0
- package/core/util/index.d.ts.map +1 -1
- package/core/util/kos-config-init.d.ts +37 -0
- package/core/util/kos-config-init.d.ts.map +1 -1
- package/core/util/kos-data-mapper-utils.d.ts +9 -0
- package/core/util/kos-data-mapper-utils.d.ts.map +1 -1
- package/core/util/kos-fetch.d.ts +12 -0
- package/core/util/kos-fetch.d.ts.map +1 -1
- package/core/util/kos-message-utils.d.ts +88 -0
- package/core/util/kos-message-utils.d.ts.map +1 -1
- package/core/util/kos-model-utils.d.ts +46 -0
- package/core/util/kos-model-utils.d.ts.map +1 -1
- package/core/util/kos-model-visitor.d.ts +2 -0
- package/core/util/kos-model-visitor.d.ts.map +1 -1
- package/core/util/kos-service-request.d.ts +43 -3
- package/core/util/kos-service-request.d.ts.map +1 -1
- package/core/util/log-utils.d.ts +12 -0
- package/core/util/log-utils.d.ts.map +1 -1
- package/core/util/middleware.d.ts +15 -0
- package/core/util/middleware.d.ts.map +1 -1
- package/core/util/model-attribute-utils.d.ts +7 -0
- package/core/util/model-attribute-utils.d.ts.map +1 -1
- package/core/util/model-error-utils.d.ts +61 -0
- package/core/util/model-error-utils.d.ts.map +1 -0
- package/core/util/model-factory.d.ts +4 -0
- package/core/util/model-factory.d.ts.map +1 -1
- package/core/util/model-registration-utils.d.ts +8 -0
- package/core/util/model-registration-utils.d.ts.map +1 -1
- package/core/util/model-transition-utils.d.ts +41 -0
- package/core/util/model-transition-utils.d.ts.map +1 -0
- package/core/util/model-type-guards.d.ts +26 -0
- package/core/util/model-type-guards.d.ts.map +1 -0
- package/core/util/model-utils.d.ts +40 -29
- package/core/util/model-utils.d.ts.map +1 -1
- package/core/util/observable-proxy-map.d.ts +11 -0
- package/core/util/observable-proxy-map.d.ts.map +1 -1
- package/core/util/paired-client-heartbeat.d.ts +2 -0
- package/core/util/paired-client-heartbeat.d.ts.map +1 -1
- package/core/util/pipe.d.ts +4 -0
- package/core/util/pipe.d.ts.map +1 -1
- package/core/util/promise-utils.d.ts +58 -0
- package/core/util/promise-utils.d.ts.map +1 -0
- package/core/util/retry-with-exponential-backoff.d.ts +3 -0
- package/core/util/retry-with-exponential-backoff.d.ts.map +1 -1
- package/core/util/service-factory.d.ts +10 -0
- package/core/util/service-factory.d.ts.map +1 -1
- package/core/util/service-request-error.d.ts +60 -0
- package/core/util/service-request-error.d.ts.map +1 -0
- package/core/util/service-response.d.ts +125 -0
- package/core/util/service-response.d.ts.map +1 -0
- package/core/util/session-utils.d.ts +8 -0
- package/core/util/session-utils.d.ts.map +1 -1
- package/core/util/wait-for-request.d.ts +16 -0
- package/core/util/wait-for-request.d.ts.map +1 -1
- package/core/util/when-ready.d.ts +3 -0
- package/core/util/when-ready.d.ts.map +1 -1
- package/index.cjs +26904 -118
- package/index.cjs.map +1 -1
- package/index.d.cts +6 -3
- package/index.d.ts +6 -3
- package/index.d.ts.map +1 -1
- package/index.js +25305 -13476
- package/index.js.map +1 -1
- package/kos-models.json +426 -0
- package/models/constants/index.d.ts +3 -1
- package/models/constants/index.d.ts.map +1 -1
- package/models/decorators/future-service.d.ts +27 -2
- package/models/decorators/future-service.d.ts.map +1 -1
- package/models/models/browser-router/browser-router-model.d.ts +80 -1
- package/models/models/browser-router/browser-router-model.d.ts.map +1 -1
- package/models/models/browser-router/types/index.d.ts +26 -1
- package/models/models/canvas-dispatcher/types/index.d.ts +5 -0
- package/models/models/canvas-renderer/types/index.d.ts +5 -0
- package/models/models/config-bean/config-bean-model-builder.d.ts +4 -2
- package/models/models/config-bean/config-bean-model-builder.d.ts.map +1 -1
- package/models/models/config-bean/config-bean-model.d.ts +117 -13
- package/models/models/config-bean/config-bean-model.d.ts.map +1 -1
- package/models/models/config-bean/config-bean-types.d.ts +6 -3
- package/models/models/config-bean/config-bean-types.d.ts.map +1 -1
- package/models/models/config-bean/types/index.d.ts +34 -0
- package/models/models/config-bean-prop/config-bean-prop-model.d.ts +112 -1
- 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 +301 -19
- package/models/models/device/device-model.d.ts +219 -9
- package/models/models/device/device-model.d.ts.map +1 -1
- package/models/models/device/device-registration.d.ts +61 -48
- package/models/models/device/device-registration.d.ts.map +1 -1
- package/models/models/device/types/index.d.ts +42 -0
- package/models/models/future/future-aware.d.ts +82 -0
- package/models/models/future/future-aware.d.ts.map +1 -1
- package/models/models/future/future-model.d.ts +34 -5
- package/models/models/future/future-model.d.ts.map +1 -1
- package/models/models/future/future-types.d.ts +202 -9
- 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/gpio-chip/gpio-chip-container-model.d.ts +25 -0
- package/models/models/gpio-chip/gpio-chip-container-model.d.ts.map +1 -0
- package/models/models/gpio-chip/gpio-chip-model.d.ts +30 -0
- package/models/models/gpio-chip/gpio-chip-model.d.ts.map +1 -0
- package/models/models/gpio-chip/index.d.ts +7 -0
- package/models/models/gpio-chip/index.d.ts.map +1 -0
- package/models/models/gpio-chip/services/gpio-chip-services.d.ts +86 -0
- package/models/models/gpio-chip/services/gpio-chip-services.d.ts.map +1 -0
- package/models/models/gpio-chip/services/index.d.ts +2 -0
- package/models/models/gpio-chip/services/index.d.ts.map +1 -0
- package/models/models/gpio-chip/types/index.d.ts +24 -0
- package/models/models/gpio-pin/gpio-pin-container-model.d.ts +23 -0
- package/models/models/gpio-pin/gpio-pin-container-model.d.ts.map +1 -0
- package/models/models/gpio-pin/gpio-pin-model.d.ts +26 -0
- package/models/models/gpio-pin/gpio-pin-model.d.ts.map +1 -0
- package/models/models/gpio-pin/index.d.ts +6 -0
- package/models/models/gpio-pin/index.d.ts.map +1 -0
- package/models/models/gpio-pin/types/index.d.ts +23 -0
- package/models/models/index.d.ts +1 -0
- package/models/models/index.d.ts.map +1 -1
- package/models/models/key-value/index.d.ts +4 -0
- package/models/models/key-value/index.d.ts.map +1 -1
- package/models/models/key-value/key-value-model.d.ts +111 -0
- package/models/models/key-value/key-value-model.d.ts.map +1 -1
- package/models/models/key-value/services/key-value-services.d.ts +124 -2
- package/models/models/key-value/services/key-value-services.d.ts.map +1 -1
- package/models/models/key-value/types/index.d.ts +57 -0
- package/models/models/kos-expression-evaluator/index.d.ts +4 -0
- package/models/models/kos-expression-evaluator/index.d.ts.map +1 -0
- package/models/models/kos-expression-evaluator/kos-expression-evaluator-model.d.ts +209 -0
- package/models/models/kos-expression-evaluator/kos-expression-evaluator-model.d.ts.map +1 -0
- package/models/models/kos-expression-evaluator/services/index.d.ts +6 -0
- package/models/models/kos-expression-evaluator/services/index.d.ts.map +1 -0
- package/models/models/kos-expression-evaluator/services/kos-expression-evaluator-services.d.ts +15 -0
- package/models/models/kos-expression-evaluator/services/kos-expression-evaluator-services.d.ts.map +1 -0
- package/models/models/kos-expression-evaluator/types/index.d.ts +6 -0
- package/models/models/kos-log-manager/kos-log-manager-model.d.ts +61 -14
- 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 +191 -0
- package/models/models/kos-time/kos-time-model.d.ts +64 -0
- package/models/models/kos-time/kos-time-model.d.ts.map +1 -1
- package/models/models/kos-time/types/index.d.ts +83 -0
- package/models/models/log-block/log-block-container-model.d.ts +132 -0
- package/models/models/log-block/log-block-container-model.d.ts.map +1 -1
- package/models/models/log-block/log-block-model.d.ts +185 -0
- package/models/models/log-block/log-block-model.d.ts.map +1 -1
- package/models/models/log-block/types/index.d.ts +133 -0
- package/models/models/log-stream/index.d.ts +6 -2
- package/models/models/log-stream/index.d.ts.map +1 -1
- package/models/models/log-stream/log-stream-container-model.d.ts +62 -0
- package/models/models/log-stream/log-stream-container-model.d.ts.map +1 -1
- package/models/models/log-stream/log-stream-model.d.ts +55 -0
- package/models/models/log-stream/log-stream-model.d.ts.map +1 -1
- package/models/models/log-stream/services/log-stream-services.d.ts +2 -1
- package/models/models/log-stream/services/log-stream-services.d.ts.map +1 -1
- package/models/models/log-stream/types/index.d.ts +79 -0
- package/models/models/network-interface/index.d.ts +6 -2
- package/models/models/network-interface/index.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-container-model.d.ts +62 -0
- 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 +2 -1
- package/models/models/network-interface/network-interface-container-registration.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-model.d.ts +77 -0
- package/models/models/network-interface/network-interface-model.d.ts.map +1 -1
- package/models/models/network-interface/network-interface-registration.d.ts +2 -1
- package/models/models/network-interface/network-interface-registration.d.ts.map +1 -1
- package/models/models/network-interface/services/network-interface-services.d.ts +54 -0
- package/models/models/network-interface/services/network-interface-services.d.ts.map +1 -1
- package/models/models/network-interface/types/index.d.ts +22 -0
- package/models/models/ota/ota-model.d.ts +82 -3
- package/models/models/ota/ota-model.d.ts.map +1 -1
- package/models/models/ota/types/index.d.ts +177 -0
- package/models/models/region-info/region-info-model.d.ts +8 -3
- 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 +191 -13
- 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 +74 -2
- package/models/models/software-info/software-info-model.d.ts.map +1 -1
- package/models/models/software-info/types/index.d.ts +52 -17
- package/models/models/state-bean/state-bean-model.d.ts +86 -9
- package/models/models/state-bean/state-bean-model.d.ts.map +1 -1
- package/models/models/state-bean/types/index.d.ts +117 -6
- package/models/models/state-prop/state-prop-model.d.ts +78 -1
- package/models/models/state-prop/state-prop-model.d.ts.map +1 -1
- package/models/models/state-prop/types/index.d.ts +57 -7
- package/models/models/storage-device/services/storage-device-services.d.ts +1 -0
- 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 +289 -2
- package/models/models/storage-device/storage-device-container-model.d.ts.map +1 -1
- package/models/models/storage-device/storage-device-model.d.ts +84 -2
- package/models/models/storage-device/storage-device-model.d.ts.map +1 -1
- package/models/models/storage-device/types/index.d.ts +114 -0
- package/models/models/studio-properties/studio-properties-model.d.ts +75 -0
- package/models/models/studio-properties/studio-properties-model.d.ts.map +1 -1
- package/models/models/studio-properties/types/index.d.ts +29 -0
- package/models/models/translation/services/translation-services.d.ts +128 -2
- package/models/models/translation/services/translation-services.d.ts.map +1 -1
- package/models/models/translation/translation-container-model.d.ts +100 -10
- package/models/models/translation/translation-container-model.d.ts.map +1 -1
- package/models/models/translation/translation-container-registration.d.ts +2 -1
- package/models/models/translation/translation-container-registration.d.ts.map +1 -1
- package/models/models/translation/translation-context.d.ts +1 -16
- package/models/models/translation/translation-context.d.ts.map +1 -1
- package/models/models/translation/translation-model.d.ts +113 -1
- package/models/models/translation/translation-model.d.ts.map +1 -1
- package/models/models/translation/types/index.d.ts +343 -0
- package/models/models/trouble/index.d.ts +2 -1
- package/models/models/trouble/index.d.ts.map +1 -1
- package/models/models/trouble/services/trouble-services.d.ts +6 -4
- package/models/models/trouble/services/trouble-services.d.ts.map +1 -1
- package/models/models/trouble/trouble-model.d.ts +4 -1
- package/models/models/trouble/trouble-model.d.ts.map +1 -1
- package/models/models/trouble/types/index.d.ts +34 -93
- 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 +4 -3
- package/models/models/trouble-container/index.d.ts.map +1 -1
- package/models/models/trouble-container/trouble-container-model.d.ts +10 -5
- package/models/models/trouble-container/trouble-container-model.d.ts.map +1 -1
- package/models/models/trouble-container/types/index.d.ts +6 -14
- package/models/models/usb-update/types/index.d.ts +10 -0
- 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 +16 -12
- 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 +54 -13
- package/models/utils/extension-manager.d.ts.map +1 -1
- package/models/utils/get-kos-connection-id.d.ts +2 -0
- package/models/utils/get-kos-connection-id.d.ts.map +1 -0
- package/models/utils/index.d.ts +3 -2
- package/models/utils/index.d.ts.map +1 -1
- package/models/utils/openapi-index.d.ts +3 -0
- package/models/utils/openapi-index.d.ts.map +1 -0
- package/models/utils/service-accessor.d.ts +86 -0
- package/models/utils/service-accessor.d.ts.map +1 -0
- package/models/utils/service.d.ts +91 -13
- package/models/utils/service.d.ts.map +1 -1
- package/models/utils/services/kos/1.6.5/openapi.d.ts +3809 -0
- package/models/utils/services/kos/1.6.5/service.d.ts +124 -0
- package/models/utils/services/kos/1.6.5/service.d.ts.map +1 -0
- package/models/utils/services/kos/1.8.1/openapi.d.ts +4344 -0
- package/models/utils/services/kos/1.8.1/service.d.ts +124 -0
- package/models/utils/services/kos/1.8.1/service.d.ts.map +1 -0
- package/models/utils/services/kos/1.9.x/openapi.d.ts +4597 -0
- package/models/utils/services/kos/1.9.x/service.d.ts +124 -0
- package/models/utils/services/kos/1.9.x/service.d.ts.map +1 -0
- package/models/utils/services/kos/daily/openapi.d.ts +4349 -0
- package/models/utils/services/kos/daily/service.d.ts +124 -0
- package/models/utils/services/kos/daily/service.d.ts.map +1 -0
- package/models/utils/services/vfs/1.6.5/openapi.d.ts +51 -0
- package/models/utils/services/vfs/1.6.5/service.d.ts +124 -0
- package/models/utils/services/vfs/1.6.5/service.d.ts.map +1 -0
- package/models/utils/services/vfs/1.8.1/openapi.d.ts +51 -0
- package/models/utils/services/vfs/1.8.1/service.d.ts +124 -0
- package/models/utils/services/vfs/1.8.1/service.d.ts.map +1 -0
- package/models/utils/services/vfs/1.9.x/openapi.d.ts +51 -0
- package/models/utils/services/vfs/1.9.x/service.d.ts +124 -0
- package/models/utils/services/vfs/1.9.x/service.d.ts.map +1 -0
- package/models/utils/services/vfs/daily/openapi.d.ts +51 -0
- package/models/utils/services/vfs/daily/service.d.ts +124 -0
- package/models/utils/services/vfs/daily/service.d.ts.map +1 -0
- package/models/utils/services-index.d.ts +9 -0
- package/models/utils/services-index.d.ts.map +1 -0
- package/package.json +16 -2
- 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 +6 -0
- package/ui/hooks/device/use-device.d.ts.map +1 -1
- package/ui/hooks/index.d.ts +1 -0
- package/ui/hooks/index.d.ts.map +1 -1
- package/ui/hooks/kos-time/use-kos-time.d.ts +6 -0
- 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 +6 -0
- package/ui/hooks/network-interface-container/use-network-interface-container.d.ts.map +1 -1
- package/ui/hooks/ota/use-ota.d.ts +6 -0
- package/ui/hooks/ota/use-ota.d.ts.map +1 -1
- package/ui/hooks/software-info/use-software-info.d.ts +6 -0
- 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 +6 -0
- package/ui/hooks/storage-device-container/use-storage-device-container.d.ts.map +1 -1
- package/ui/hooks/translation-container/trans.d.ts +6 -0
- package/ui/hooks/translation-container/trans.d.ts.map +1 -1
- package/ui/hooks/translation-container/use-translation-container.d.ts +10 -33
- package/ui/hooks/translation-container/use-translation-container.d.ts.map +1 -1
- package/ui/hooks/translation-container/use-translation.d.ts +7 -0
- package/ui/hooks/translation-container/use-translation.d.ts.map +1 -1
- package/ui/hooks/translation-container/with-translation-container.d.ts +6 -0
- 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 +6 -0
- package/ui/hooks/usb-update-container/use-usb-update-container.d.ts.map +1 -1
- package/ui/hooks/use-config-bean.d.ts +6 -0
- package/ui/hooks/use-config-bean.d.ts.map +1 -1
- package/ui/hooks/use-config-property.d.ts +6 -0
- package/ui/hooks/use-config-property.d.ts.map +1 -1
- package/ui/hooks/use-kos-model.d.ts +7 -0
- package/ui/hooks/use-kos-model.d.ts.map +1 -1
- package/ui/hooks/use-kos-regions.d.ts.map +1 -1
- package/ui/hooks/view-model/index.d.ts +2 -0
- package/ui/hooks/view-model/index.d.ts.map +1 -0
- package/ui/hooks/view-model/use-view-model.d.ts +80 -0
- package/ui/hooks/view-model/use-view-model.d.ts.map +1 -0
- package/models/models/trouble-container/trouble-container-registration.d.ts +0 -5
- package/models/models/trouble-container/trouble-container-registration.d.ts.map +0 -1
- package/models/utils/kosmodel-compatible-future-mixin.d.ts +0 -142
- package/models/utils/kosmodel-compatible-future-mixin.d.ts.map +0 -1
- package/models/utils/kosmodel-interface-companion-mixin.d.ts +0 -83
- package/models/utils/kosmodel-interface-companion-mixin.d.ts.map +0 -1
|
@@ -3,6 +3,10 @@ import { IKosDataModel } from '../kosModel';
|
|
|
3
3
|
interface DecoratedKosModel<T extends IKosDataModel = IKosDataModel> {
|
|
4
4
|
new (...args: any[]): T;
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* @kosService core.parent
|
|
8
|
+
* @kosApiLevel 2
|
|
9
|
+
*/
|
|
6
10
|
export interface KosParentProps {
|
|
7
11
|
parentId?: string;
|
|
8
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kos-parent.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/core/core/decorators/kos-parent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,UAAU,iBAAiB,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa;IACjE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;
|
|
1
|
+
{"version":3,"file":"kos-parent.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/core/core/decorators/kos-parent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,UAAU,iBAAiB,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa;IACjE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAeD,eAAO,MAAM,cAAc,sCACW,cAAc,mBACpC,kBAAkB,CAAC,CAAC,KAAG,GAOpC,CAAC"}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @kosService core.reference
|
|
3
|
+
* @kosApiLevel 2
|
|
4
|
+
*/
|
|
1
5
|
interface ReferenceProps {
|
|
2
6
|
modelType: string;
|
|
3
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* @kosService core.reference
|
|
10
|
+
* @kosApiLevel 2
|
|
11
|
+
* @kosDeprecated {replacement: @kosDependency, removeAt: 3}
|
|
12
|
+
*/
|
|
4
13
|
export declare const kosReference: (props: ReferenceProps) => (target: {} | any, name: PropertyKey) => any;
|
|
5
14
|
export {};
|
|
6
15
|
//# sourceMappingURL=kos-reference.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kos-reference.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/core/core/decorators/kos-reference.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kos-reference.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/core/core/decorators/kos-reference.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,UACf,cAAc,cACb,EAAE,GAAG,GAAG,QAAQ,WAAW,KAAG,GAItC,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { ErrorResponseContext } from '../../util/service-request-error';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Helper functions for kosServiceRequest decorator.
|
|
5
|
+
*
|
|
6
|
+
* These functions are extracted to reduce complexity and improve maintainability
|
|
7
|
+
* of the service request decorator implementation.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Resolves all parameters for a service request.
|
|
11
|
+
*
|
|
12
|
+
* This helper function handles the complex parameter resolution logic including:
|
|
13
|
+
* - Resolving PropKeys in path
|
|
14
|
+
* - Merging decorator-defined params with runtime params
|
|
15
|
+
* - Building the final API params object
|
|
16
|
+
*
|
|
17
|
+
* @param metadata - Service request metadata
|
|
18
|
+
* @param modelInstance - The model instance (this context)
|
|
19
|
+
* @param args - Original method arguments
|
|
20
|
+
* @param runtimeOptions - Runtime execution options
|
|
21
|
+
* @returns Resolved parameters for the API request
|
|
22
|
+
*/
|
|
23
|
+
export declare function resolveServiceRequestParameters(metadata: any, modelInstance: any, args: any[], runtimeOptions: any): {
|
|
24
|
+
resolvedPath: string;
|
|
25
|
+
apiParams: any;
|
|
26
|
+
finalBody: any;
|
|
27
|
+
finalRequestOptions: any;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Executes an API method with the appropriate HTTP verb.
|
|
31
|
+
*
|
|
32
|
+
* This helper function handles the complexity of method selection and execution,
|
|
33
|
+
* supporting GET, POST, PUT, and DELETE operations with proper parameter passing.
|
|
34
|
+
*
|
|
35
|
+
* @param API - The API client instance
|
|
36
|
+
* @param method - HTTP method (get, post, put, delete)
|
|
37
|
+
* @param path - Resolved API path
|
|
38
|
+
* @param params - API parameters (path, query)
|
|
39
|
+
* @param body - Request body (for POST, PUT, DELETE)
|
|
40
|
+
* @param requestOptions - Additional request options
|
|
41
|
+
* @returns Error-first tuple with response
|
|
42
|
+
*/
|
|
43
|
+
export declare function executeApiMethod(API: any, method: string | undefined, path: string, params: any, body: any, requestOptions: any): Promise<[string | null, any, ErrorResponseContext?]>;
|
|
44
|
+
/**
|
|
45
|
+
* Handles service request errors according to the configured error handling strategy.
|
|
46
|
+
*
|
|
47
|
+
* This helper function implements the error handling strategies defined in metadata:
|
|
48
|
+
* - "throw": Return error tuple for caller to handle
|
|
49
|
+
* - "log": Log error and return default value
|
|
50
|
+
* - "ignore": Silently return default value
|
|
51
|
+
* - "default": Return default value
|
|
52
|
+
*
|
|
53
|
+
* @param error - Error message from API call
|
|
54
|
+
* @param response - API response (may contain status code)
|
|
55
|
+
* @param errorHandler - Error handler configuration from metadata
|
|
56
|
+
* @param modelInstance - The model instance (this context)
|
|
57
|
+
* @returns Error-first tuple with default value or error
|
|
58
|
+
*/
|
|
59
|
+
export declare function handleServiceRequestError(error: string, response: any, errorHandler: any, modelInstance: any, errorContext?: ErrorResponseContext): [string | null, any];
|
|
60
|
+
//# sourceMappingURL=kos-service-request-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kos-service-request-helpers.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-ui-sdk/src/core/core/decorators/kos-service-request-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAM7E;;;;;GAKG;AAEH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,GAAG,EACb,aAAa,EAAE,GAAG,EAClB,IAAI,EAAE,GAAG,EAAE,EACX,cAAc,EAAE,GAAG;;;;;EAgEpB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,GAAG,EACX,IAAI,EAAE,GAAG,EACT,cAAc,EAAE,GAAG,GAClB,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAgBtD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,GAAG,EACb,YAAY,EAAE,GAAG,EACjB,aAAa,EAAE,GAAG,EAClB,YAAY,CAAC,EAAE,oBAAoB,GAClC,CAAC,MAAM,GAAG,IAAI,EAAE,GAAG,CAAC,CAqCtB"}
|
|
@@ -0,0 +1,498 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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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"}
|