@rippling/rippling-sdk 0.2.0-alpha.82 → 0.2.0-alpha.83
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/client.d.mts +4 -4
- package/client.d.mts.map +1 -1
- package/client.d.ts +4 -4
- package/client.d.ts.map +1 -1
- package/client.js.map +1 -1
- package/client.mjs.map +1 -1
- package/core/platform/custom-objects/category.d.mts +125 -0
- package/core/platform/custom-objects/category.d.mts.map +1 -0
- package/core/platform/custom-objects/category.d.ts +125 -0
- package/core/platform/custom-objects/category.d.ts.map +1 -0
- package/core/platform/custom-objects/category.js +188 -0
- package/core/platform/custom-objects/category.js.map +1 -0
- package/core/platform/custom-objects/category.mjs +178 -0
- package/core/platform/custom-objects/category.mjs.map +1 -0
- package/core/platform/custom-objects/definition.d.mts +147 -0
- package/core/platform/custom-objects/definition.d.mts.map +1 -0
- package/core/platform/custom-objects/definition.d.ts +147 -0
- package/core/platform/custom-objects/definition.d.ts.map +1 -0
- package/core/platform/custom-objects/definition.js +200 -0
- package/core/platform/custom-objects/definition.js.map +1 -0
- package/core/platform/custom-objects/definition.mjs +190 -0
- package/core/platform/custom-objects/definition.mjs.map +1 -0
- package/core/platform/custom-objects/fields.d.mts +302 -0
- package/core/platform/custom-objects/fields.d.mts.map +1 -0
- package/core/platform/custom-objects/fields.d.ts +302 -0
- package/core/platform/custom-objects/fields.d.ts.map +1 -0
- package/core/platform/custom-objects/fields.js +369 -0
- package/core/platform/custom-objects/fields.js.map +1 -0
- package/core/platform/custom-objects/fields.mjs +347 -0
- package/core/platform/custom-objects/fields.mjs.map +1 -0
- package/core/platform/custom-objects/function-runtime.d.mts +42 -0
- package/core/platform/custom-objects/function-runtime.d.mts.map +1 -0
- package/core/platform/custom-objects/function-runtime.d.ts +42 -0
- package/core/platform/custom-objects/function-runtime.d.ts.map +1 -0
- package/core/platform/custom-objects/function-runtime.js +38 -0
- package/core/platform/custom-objects/function-runtime.js.map +1 -0
- package/core/platform/custom-objects/function-runtime.mjs +35 -0
- package/core/platform/custom-objects/function-runtime.mjs.map +1 -0
- package/core/platform/custom-objects/lifecycle.d.mts +83 -0
- package/core/platform/custom-objects/lifecycle.d.mts.map +1 -0
- package/core/platform/custom-objects/lifecycle.d.ts +83 -0
- package/core/platform/custom-objects/lifecycle.d.ts.map +1 -0
- package/core/platform/custom-objects/lifecycle.js +372 -0
- package/core/platform/custom-objects/lifecycle.js.map +1 -0
- package/core/platform/custom-objects/lifecycle.mjs +367 -0
- package/core/platform/custom-objects/lifecycle.mjs.map +1 -0
- package/core/platform/custom-objects/manager.d.mts +354 -0
- package/core/platform/custom-objects/manager.d.mts.map +1 -0
- package/core/platform/custom-objects/manager.d.ts +354 -0
- package/core/platform/custom-objects/manager.d.ts.map +1 -0
- package/core/platform/custom-objects/manager.js +646 -0
- package/core/platform/custom-objects/manager.js.map +1 -0
- package/core/platform/custom-objects/manager.mjs +637 -0
- package/core/platform/custom-objects/manager.mjs.map +1 -0
- package/core/platform/custom-objects/provisioning.d.mts +138 -0
- package/core/platform/custom-objects/provisioning.d.mts.map +1 -0
- package/core/platform/custom-objects/provisioning.d.ts +138 -0
- package/core/platform/custom-objects/provisioning.d.ts.map +1 -0
- package/core/platform/custom-objects/provisioning.js +455 -0
- package/core/platform/custom-objects/provisioning.js.map +1 -0
- package/core/platform/custom-objects/provisioning.mjs +447 -0
- package/core/platform/custom-objects/provisioning.mjs.map +1 -0
- package/core/platform/custom-objects/rql.d.mts +122 -0
- package/core/platform/custom-objects/rql.d.mts.map +1 -0
- package/core/platform/custom-objects/rql.d.ts +122 -0
- package/core/platform/custom-objects/rql.d.ts.map +1 -0
- package/core/platform/custom-objects/rql.js +225 -0
- package/core/platform/custom-objects/rql.js.map +1 -0
- package/core/platform/custom-objects/rql.mjs +222 -0
- package/core/platform/custom-objects/rql.mjs.map +1 -0
- package/core/platform/custom-objects/schema-manager.d.mts +203 -0
- package/core/platform/custom-objects/schema-manager.d.mts.map +1 -0
- package/core/platform/custom-objects/schema-manager.d.ts +203 -0
- package/core/platform/custom-objects/schema-manager.d.ts.map +1 -0
- package/core/platform/custom-objects/schema-manager.js +256 -0
- package/core/platform/custom-objects/schema-manager.js.map +1 -0
- package/core/platform/custom-objects/schema-manager.mjs +249 -0
- package/core/platform/custom-objects/schema-manager.mjs.map +1 -0
- package/core/platform/custom-objects/typed-rql.d.mts +157 -0
- package/core/platform/custom-objects/typed-rql.d.mts.map +1 -0
- package/core/platform/custom-objects/typed-rql.d.ts +157 -0
- package/core/platform/custom-objects/typed-rql.d.ts.map +1 -0
- package/core/platform/custom-objects/typed-rql.js +583 -0
- package/core/platform/custom-objects/typed-rql.js.map +1 -0
- package/core/platform/custom-objects/typed-rql.mjs +580 -0
- package/core/platform/custom-objects/typed-rql.mjs.map +1 -0
- package/core/platform/custom-objects/types.d.mts +549 -0
- package/core/platform/custom-objects/types.d.mts.map +1 -0
- package/core/platform/custom-objects/types.d.ts +549 -0
- package/core/platform/custom-objects/types.d.ts.map +1 -0
- package/core/platform/custom-objects/types.js +20 -0
- package/core/platform/custom-objects/types.js.map +1 -0
- package/core/platform/custom-objects/types.mjs +17 -0
- package/core/platform/custom-objects/types.mjs.map +1 -0
- package/core/platform/custom-objects/validation.d.mts +97 -0
- package/core/platform/custom-objects/validation.d.mts.map +1 -0
- package/core/platform/custom-objects/validation.d.ts +97 -0
- package/core/platform/custom-objects/validation.d.ts.map +1 -0
- package/core/platform/custom-objects/validation.js +477 -0
- package/core/platform/custom-objects/validation.js.map +1 -0
- package/core/platform/custom-objects/validation.mjs +465 -0
- package/core/platform/custom-objects/validation.mjs.map +1 -0
- package/core/platform/custom-objects.d.mts +67 -0
- package/core/platform/custom-objects.d.mts.map +1 -0
- package/core/platform/custom-objects.d.ts +67 -0
- package/core/platform/custom-objects.d.ts.map +1 -0
- package/core/platform/custom-objects.js +118 -0
- package/core/platform/custom-objects.js.map +1 -0
- package/core/platform/custom-objects.mjs +45 -0
- package/core/platform/custom-objects.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/action.d.mts +58 -0
- package/core/platform/manifest/custom-objects/action.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/action.d.ts +58 -0
- package/core/platform/manifest/custom-objects/action.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/action.js +44 -0
- package/core/platform/manifest/custom-objects/action.js.map +1 -0
- package/core/platform/manifest/custom-objects/action.mjs +40 -0
- package/core/platform/manifest/custom-objects/action.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/conditions.d.mts +240 -0
- package/core/platform/manifest/custom-objects/conditions.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/conditions.d.ts +240 -0
- package/core/platform/manifest/custom-objects/conditions.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/conditions.js +326 -0
- package/core/platform/manifest/custom-objects/conditions.js.map +1 -0
- package/core/platform/manifest/custom-objects/conditions.mjs +321 -0
- package/core/platform/manifest/custom-objects/conditions.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/existing.d.mts +87 -0
- package/core/platform/manifest/custom-objects/existing.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/existing.d.ts +87 -0
- package/core/platform/manifest/custom-objects/existing.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/existing.js +113 -0
- package/core/platform/manifest/custom-objects/existing.js.map +1 -0
- package/core/platform/manifest/custom-objects/existing.mjs +109 -0
- package/core/platform/manifest/custom-objects/existing.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/field-resolution.d.mts +48 -0
- package/core/platform/manifest/custom-objects/field-resolution.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/field-resolution.d.ts +48 -0
- package/core/platform/manifest/custom-objects/field-resolution.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/field-resolution.js +61 -0
- package/core/platform/manifest/custom-objects/field-resolution.js.map +1 -0
- package/core/platform/manifest/custom-objects/field-resolution.mjs +58 -0
- package/core/platform/manifest/custom-objects/field-resolution.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/function-file.d.mts +87 -0
- package/core/platform/manifest/custom-objects/function-file.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/function-file.d.ts +87 -0
- package/core/platform/manifest/custom-objects/function-file.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/function-file.js +76 -0
- package/core/platform/manifest/custom-objects/function-file.js.map +1 -0
- package/core/platform/manifest/custom-objects/function-file.mjs +69 -0
- package/core/platform/manifest/custom-objects/function-file.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/list-view.d.mts +65 -0
- package/core/platform/manifest/custom-objects/list-view.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/list-view.d.ts +65 -0
- package/core/platform/manifest/custom-objects/list-view.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/list-view.js +33 -0
- package/core/platform/manifest/custom-objects/list-view.js.map +1 -0
- package/core/platform/manifest/custom-objects/list-view.mjs +30 -0
- package/core/platform/manifest/custom-objects/list-view.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/object-list-page.d.mts +43 -0
- package/core/platform/manifest/custom-objects/object-list-page.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/object-list-page.d.ts +43 -0
- package/core/platform/manifest/custom-objects/object-list-page.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/object-list-page.js +54 -0
- package/core/platform/manifest/custom-objects/object-list-page.js.map +1 -0
- package/core/platform/manifest/custom-objects/object-list-page.mjs +50 -0
- package/core/platform/manifest/custom-objects/object-list-page.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/page-layout.d.mts +142 -0
- package/core/platform/manifest/custom-objects/page-layout.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/page-layout.d.ts +142 -0
- package/core/platform/manifest/custom-objects/page-layout.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/page-layout.js +184 -0
- package/core/platform/manifest/custom-objects/page-layout.js.map +1 -0
- package/core/platform/manifest/custom-objects/page-layout.mjs +180 -0
- package/core/platform/manifest/custom-objects/page-layout.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/register.d.mts +87 -0
- package/core/platform/manifest/custom-objects/register.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/register.d.ts +87 -0
- package/core/platform/manifest/custom-objects/register.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/register.js +395 -0
- package/core/platform/manifest/custom-objects/register.js.map +1 -0
- package/core/platform/manifest/custom-objects/register.mjs +391 -0
- package/core/platform/manifest/custom-objects/register.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/rule.d.mts +113 -0
- package/core/platform/manifest/custom-objects/rule.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/rule.d.ts +113 -0
- package/core/platform/manifest/custom-objects/rule.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/rule.js +49 -0
- package/core/platform/manifest/custom-objects/rule.js.map +1 -0
- package/core/platform/manifest/custom-objects/rule.mjs +45 -0
- package/core/platform/manifest/custom-objects/rule.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/sdui-page.d.mts +214 -0
- package/core/platform/manifest/custom-objects/sdui-page.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/sdui-page.d.ts +214 -0
- package/core/platform/manifest/custom-objects/sdui-page.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/sdui-page.js +194 -0
- package/core/platform/manifest/custom-objects/sdui-page.js.map +1 -0
- package/core/platform/manifest/custom-objects/sdui-page.mjs +182 -0
- package/core/platform/manifest/custom-objects/sdui-page.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/typed-condition.d.mts +28 -0
- package/core/platform/manifest/custom-objects/typed-condition.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/typed-condition.d.ts +28 -0
- package/core/platform/manifest/custom-objects/typed-condition.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/typed-condition.js +434 -0
- package/core/platform/manifest/custom-objects/typed-condition.js.map +1 -0
- package/core/platform/manifest/custom-objects/typed-condition.mjs +431 -0
- package/core/platform/manifest/custom-objects/typed-condition.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/types.d.mts +29 -0
- package/core/platform/manifest/custom-objects/types.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/types.d.ts +29 -0
- package/core/platform/manifest/custom-objects/types.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/types.js +3 -0
- package/core/platform/manifest/custom-objects/types.js.map +1 -0
- package/core/platform/manifest/custom-objects/types.mjs +2 -0
- package/core/platform/manifest/custom-objects/types.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/validation.d.mts +44 -0
- package/core/platform/manifest/custom-objects/validation.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/validation.d.ts +44 -0
- package/core/platform/manifest/custom-objects/validation.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/validation.js +30 -0
- package/core/platform/manifest/custom-objects/validation.js.map +1 -0
- package/core/platform/manifest/custom-objects/validation.mjs +27 -0
- package/core/platform/manifest/custom-objects/validation.mjs.map +1 -0
- package/core/platform/manifest/custom-objects/workflow.d.mts +47 -0
- package/core/platform/manifest/custom-objects/workflow.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects/workflow.d.ts +47 -0
- package/core/platform/manifest/custom-objects/workflow.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects/workflow.js +38 -0
- package/core/platform/manifest/custom-objects/workflow.js.map +1 -0
- package/core/platform/manifest/custom-objects/workflow.mjs +34 -0
- package/core/platform/manifest/custom-objects/workflow.mjs.map +1 -0
- package/core/platform/manifest/custom-objects.d.mts +85 -0
- package/core/platform/manifest/custom-objects.d.mts.map +1 -0
- package/core/platform/manifest/custom-objects.d.ts +85 -0
- package/core/platform/manifest/custom-objects.d.ts.map +1 -0
- package/core/platform/manifest/custom-objects.js +84 -0
- package/core/platform/manifest/custom-objects.js.map +1 -0
- package/core/platform/manifest/custom-objects.mjs +55 -0
- package/core/platform/manifest/custom-objects.mjs.map +1 -0
- package/examples/manifest/custom-object-creation-workflow/custom-object-creation-workflow.ts +26 -44
- package/examples/manifest/custom-object-creation-workflow/functions/intake-request-created.ts +20 -0
- package/examples/manifest/custom-object-creation-workflow/schema.ts +29 -0
- package/examples/manifest/dental-practice-management/dental-practice-management.ts +142 -470
- package/examples/manifest/dental-practice-management/functions/chair-schedule.ts +13 -23
- package/examples/manifest/dental-practice-management/functions/complete-visit.ts +32 -55
- package/examples/manifest/dental-practice-management/functions/operatory-list.ts +13 -23
- package/examples/manifest/dental-practice-management/functions/patient-list.ts +13 -23
- package/examples/manifest/dental-practice-management/functions/treatment-plan-list.ts +13 -23
- package/examples/manifest/dental-practice-management/schema.ts +298 -0
- package/examples/manifest/existing-manifest-mutations/existing-manifest-mutations.ts +68 -23
- package/examples/manifest/field-service-dispatch/field-service-dispatch.ts +102 -375
- package/examples/manifest/field-service-dispatch/schema.ts +248 -0
- package/examples/manifest/grant-program-management/grant-program-management.ts +125 -419
- package/examples/manifest/grant-program-management/schema.ts +269 -0
- package/examples/manifest/gym-membership-management/functions/check-in-desk.ts +13 -23
- package/examples/manifest/gym-membership-management/functions/member-list.ts +13 -23
- package/examples/manifest/gym-membership-management/functions/today-schedule.ts +13 -23
- package/examples/manifest/gym-membership-management/functions/trainer-list.ts +13 -23
- package/examples/manifest/gym-membership-management/gym-membership-management.ts +92 -442
- package/examples/manifest/gym-membership-management/schema.ts +266 -0
- package/examples/manifest/procurement-approval-hub/functions/route-purchase-request.ts +20 -0
- package/examples/manifest/procurement-approval-hub/procurement-approval-hub.ts +122 -408
- package/examples/manifest/procurement-approval-hub/schema.ts +256 -0
- package/examples/manifest/simple-todo-app/functions/mark-done.ts +16 -12
- package/examples/manifest/simple-todo-app/functions/todo-list.ts +13 -23
- package/examples/manifest/simple-todo-app/schema.ts +60 -0
- package/examples/manifest/simple-todo-app/simple-todo-app.ts +40 -109
- package/examples/manifest/todo-app-without-object-list-view/functions/todo-page.ts +166 -193
- package/examples/manifest/todo-app-without-object-list-view/schema.ts +28 -0
- package/examples/manifest/todo-app-without-object-list-view/todo-app-without-object-list-view.ts +24 -47
- package/package.json +7 -13
- package/resources/custom-objects/custom-objects.d.mts +7 -0
- package/resources/custom-objects/custom-objects.d.mts.map +1 -1
- package/resources/custom-objects/custom-objects.d.ts +7 -0
- package/resources/custom-objects/custom-objects.d.ts.map +1 -1
- package/resources/custom-objects/custom-objects.js.map +1 -1
- package/resources/custom-objects/custom-objects.mjs.map +1 -1
- package/resources/custom-objects/fields.d.mts +170 -15
- package/resources/custom-objects/fields.d.mts.map +1 -1
- package/resources/custom-objects/fields.d.ts +170 -15
- package/resources/custom-objects/fields.d.ts.map +1 -1
- package/resources/index.d.mts +2 -2
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +2 -2
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/leave-program-evaluations.d.mts +510 -3
- package/resources/leave-program-evaluations.d.mts.map +1 -1
- package/resources/leave-program-evaluations.d.ts +510 -3
- package/resources/leave-program-evaluations.d.ts.map +1 -1
- package/resources/levels.d.mts +64 -2
- package/resources/levels.d.mts.map +1 -1
- package/resources/levels.d.ts +64 -2
- package/resources/levels.d.ts.map +1 -1
- package/resources/levels.js +22 -0
- package/resources/levels.js.map +1 -1
- package/resources/levels.mjs +22 -0
- package/resources/levels.mjs.map +1 -1
- package/resources/tracks.d.mts +45 -1
- package/resources/tracks.d.mts.map +1 -1
- package/resources/tracks.d.ts +45 -1
- package/resources/tracks.d.ts.map +1 -1
- package/resources/tracks.js +22 -0
- package/resources/tracks.js.map +1 -1
- package/resources/tracks.mjs +22 -0
- package/resources/tracks.mjs.map +1 -1
- package/src/client.ts +8 -0
- package/src/core/platform/README.md +20 -0
- package/src/core/platform/custom-objects/category.ts +294 -0
- package/src/core/platform/custom-objects/definition.ts +373 -0
- package/src/core/platform/custom-objects/fields.ts +653 -0
- package/src/core/platform/custom-objects/function-runtime.ts +76 -0
- package/src/core/platform/custom-objects/lifecycle.ts +557 -0
- package/src/core/platform/custom-objects/manager.ts +959 -0
- package/src/core/platform/custom-objects/provisioning.ts +672 -0
- package/src/core/platform/custom-objects/rql.ts +375 -0
- package/src/core/platform/custom-objects/schema-manager.ts +351 -0
- package/src/core/platform/custom-objects/typed-rql.ts +1273 -0
- package/src/core/platform/custom-objects/types.ts +753 -0
- package/src/core/platform/custom-objects/validation.ts +573 -0
- package/src/core/platform/custom-objects.ts +269 -0
- package/src/core/platform/manifest/README.md +26 -0
- package/src/core/platform/manifest/custom-objects/action.ts +87 -0
- package/src/core/platform/manifest/custom-objects/conditions.ts +762 -0
- package/src/core/platform/manifest/custom-objects/existing.ts +221 -0
- package/src/core/platform/manifest/custom-objects/field-resolution.ts +116 -0
- package/src/core/platform/manifest/custom-objects/function-file.ts +149 -0
- package/src/core/platform/manifest/custom-objects/list-view.ts +95 -0
- package/src/core/platform/manifest/custom-objects/object-list-page.ts +87 -0
- package/src/core/platform/manifest/custom-objects/page-layout.ts +380 -0
- package/src/core/platform/manifest/custom-objects/register.ts +555 -0
- package/src/core/platform/manifest/custom-objects/rule.ts +192 -0
- package/src/core/platform/manifest/custom-objects/sdui-page.ts +515 -0
- package/src/core/platform/manifest/custom-objects/typed-condition.ts +617 -0
- package/src/core/platform/manifest/custom-objects/types.ts +92 -0
- package/src/core/platform/manifest/custom-objects/validation.ts +70 -0
- package/src/core/platform/manifest/custom-objects/workflow.ts +71 -0
- package/src/core/platform/manifest/custom-objects.ts +203 -0
- package/src/pebble-sdui-web-custom-apps-shim.d.ts +3 -0
- package/src/resources/custom-objects/custom-objects.ts +8 -0
- package/src/resources/custom-objects/fields.ts +239 -14
- package/src/resources/index.ts +4 -0
- package/src/resources/leave-program-evaluations.ts +610 -3
- package/src/resources/levels.ts +93 -1
- package/src/resources/tracks.ts +70 -0
- package/src/tsconfig.json +1 -1
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTypedRuleHelpers = createTypedRuleHelpers;
|
|
4
|
+
exports.defineTypedRule = defineTypedRule;
|
|
5
|
+
const manifest_1 = require("../../../../lib/manifest.js");
|
|
6
|
+
const conditions_1 = require("./conditions.js");
|
|
7
|
+
const field_resolution_1 = require("./field-resolution.js");
|
|
8
|
+
/**
|
|
9
|
+
* Creates typed rule-action helpers for one manifest registration.
|
|
10
|
+
*
|
|
11
|
+
* @param registration - Manifest registration produced from the typed object definition.
|
|
12
|
+
* @returns Immutable rule-action helper family.
|
|
13
|
+
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
14
|
+
*/
|
|
15
|
+
function createTypedRuleHelpers(registration) {
|
|
16
|
+
function createSetter(field) {
|
|
17
|
+
return Object.freeze({
|
|
18
|
+
toValue(value) {
|
|
19
|
+
return Object.freeze({ targetField: field, fixedValue: value });
|
|
20
|
+
},
|
|
21
|
+
toFormula(formula) {
|
|
22
|
+
return Object.freeze({ targetField: field, rqlFormula: formula });
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return Object.freeze({
|
|
27
|
+
setField(field) {
|
|
28
|
+
return createSetter((0, field_resolution_1.resolveTypedManifestField)(registration, field));
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Defines a record-triggered rule using typed field names and manifest-condition fragments.
|
|
34
|
+
*
|
|
35
|
+
* @param registration - Manifest registration produced from the typed object definition.
|
|
36
|
+
* @param props - Typed rule properties.
|
|
37
|
+
* @returns Low-level rule manifest instance.
|
|
38
|
+
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
39
|
+
*/
|
|
40
|
+
function defineTypedRule(registration, props) {
|
|
41
|
+
const { when, actions, ...rest } = props;
|
|
42
|
+
const resolvedActions = typeof actions === 'function' ? actions(createTypedRuleHelpers(registration)) : actions;
|
|
43
|
+
return new manifest_1.Rule(registration.object, {
|
|
44
|
+
...rest,
|
|
45
|
+
...(when != null ? { rqlCondition: (0, conditions_1.resolveManifestConditionInput)(registration, when) } : {}),
|
|
46
|
+
...(resolvedActions != null ? { actions: [...resolvedActions] } : {}),
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule.js","sourceRoot":"","sources":["../../../../src/core/platform/manifest/custom-objects/rule.ts"],"names":[],"mappings":";;AAmJA,wDAqBC;AAUD,0CAaC;AA/LD,0DAAiF;AASjF,gDAA6D;AAM7D,4DAA+D;AA6H/D;;;;;;GAMG;AACH,SAAgB,sBAAsB,CACpC,YAA+C;IAE/C,SAAS,YAAY,CAAC,KAAY;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,OAAO,CAAC,KAAc;gBACpB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAiC,CAAC;YAClG,CAAC;YACD,SAAS,CAAC,OAAe;gBACvB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAiC,CAAC;YACpG,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,CAAC,KAAmD;YAC1D,OAAO,YAAY,CACjB,IAAA,4CAAyB,EAAC,YAAY,EAAE,KAA6C,CAAC,CACvF,CAAC;QACJ,CAAC;KACF,CAAkC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,eAAe,CAC7B,YAA+C,EAC/C,KAAkC;IAElC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACzC,MAAM,eAAe,GACnB,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAE1F,OAAO,IAAI,eAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACnC,GAAG,IAAI;QACP,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAA,0CAA6B,EAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtE,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Rule } from "../../../../lib/manifest.mjs";
|
|
2
|
+
import { resolveManifestConditionInput } from "./conditions.mjs";
|
|
3
|
+
import { resolveTypedManifestField } from "./field-resolution.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* Creates typed rule-action helpers for one manifest registration.
|
|
6
|
+
*
|
|
7
|
+
* @param registration - Manifest registration produced from the typed object definition.
|
|
8
|
+
* @returns Immutable rule-action helper family.
|
|
9
|
+
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
10
|
+
*/
|
|
11
|
+
export function createTypedRuleHelpers(registration) {
|
|
12
|
+
function createSetter(field) {
|
|
13
|
+
return Object.freeze({
|
|
14
|
+
toValue(value) {
|
|
15
|
+
return Object.freeze({ targetField: field, fixedValue: value });
|
|
16
|
+
},
|
|
17
|
+
toFormula(formula) {
|
|
18
|
+
return Object.freeze({ targetField: field, rqlFormula: formula });
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return Object.freeze({
|
|
23
|
+
setField(field) {
|
|
24
|
+
return createSetter(resolveTypedManifestField(registration, field));
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Defines a record-triggered rule using typed field names and manifest-condition fragments.
|
|
30
|
+
*
|
|
31
|
+
* @param registration - Manifest registration produced from the typed object definition.
|
|
32
|
+
* @param props - Typed rule properties.
|
|
33
|
+
* @returns Low-level rule manifest instance.
|
|
34
|
+
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
35
|
+
*/
|
|
36
|
+
export function defineTypedRule(registration, props) {
|
|
37
|
+
const { when, actions, ...rest } = props;
|
|
38
|
+
const resolvedActions = typeof actions === 'function' ? actions(createTypedRuleHelpers(registration)) : actions;
|
|
39
|
+
return new Rule(registration.object, {
|
|
40
|
+
...rest,
|
|
41
|
+
...(when != null ? { rqlCondition: resolveManifestConditionInput(registration, when) } : {}),
|
|
42
|
+
...(resolvedActions != null ? { actions: [...resolvedActions] } : {}),
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=rule.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule.mjs","sourceRoot":"","sources":["../../../../src/core/platform/manifest/custom-objects/rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmC,qCAAiC;AASjF,OAAO,EAAE,6BAA6B,EAAE,yBAAqB;AAM7D,OAAO,EAAE,yBAAyB,EAAE,+BAA2B;AA6H/D;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAA+C;IAE/C,SAAS,YAAY,CAAC,KAAY;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,OAAO,CAAC,KAAc;gBACpB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAiC,CAAC;YAClG,CAAC;YACD,SAAS,CAAC,OAAe;gBACvB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAiC,CAAC;YACpG,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,CAAC,KAAmD;YAC1D,OAAO,YAAY,CACjB,yBAAyB,CAAC,YAAY,EAAE,KAA6C,CAAC,CACvF,CAAC;QACJ,CAAC;KACF,CAAkC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,YAA+C,EAC/C,KAAkC;IAElC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACzC,MAAM,eAAe,GACnB,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAE1F,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACnC,GAAG,IAAI;QACP,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,6BAA6B,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtE,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { type ActionBinding } from '@rippling/pebble-sdui-web';
|
|
2
|
+
import { FunctionResponse, type FunctionContext, type FunctionResponseOptions, type SduiPageFunctionEvent } from "../../../../functions.mjs";
|
|
3
|
+
type TypedSduiStatePathPrefix<TPrefix extends string, TKey extends string> = `${TPrefix}/${TKey}`;
|
|
4
|
+
type TypedSduiPathKeys<TValue> = Extract<keyof TValue, string>;
|
|
5
|
+
type TypedSduiStatePathInner<TValue, TPrefix extends string> = {
|
|
6
|
+
readonly [TKey in TypedSduiPathKeys<TValue>]: TValue[TKey] extends readonly unknown[] ? TypedSduiStatePathPrefix<TPrefix, TKey> : TValue[TKey] extends Record<string, unknown> ? TypedSduiStatePathPrefix<TPrefix, TKey> | TypedSduiStatePathInner<TValue[TKey], TypedSduiStatePathPrefix<TPrefix, TKey>> : TypedSduiStatePathPrefix<TPrefix, TKey>;
|
|
7
|
+
}[TypedSduiPathKeys<TValue>];
|
|
8
|
+
type TypedSduiStatePathValueInner<TValue, TSegments extends string> = TSegments extends (`${infer THead}/${infer TRest}`) ? THead extends TypedSduiPathKeys<TValue> ? TypedSduiStatePathValueInner<TValue[THead], TRest> : never : TSegments extends TypedSduiPathKeys<TValue> ? TValue[TSegments] : never;
|
|
9
|
+
/** JSON-pointer-like state path derived from one SDUI page-state shape. */
|
|
10
|
+
export type TypedSduiStatePath<TState> = TypedSduiStatePathInner<TState, ''>;
|
|
11
|
+
/** Value type stored at one typed SDUI page-state path. */
|
|
12
|
+
export type TypedSduiStatePathValue<TState, TPath extends TypedSduiStatePath<TState>> = TPath extends (`/${infer TSegments}`) ? TypedSduiStatePathValueInner<TState, TSegments> : never;
|
|
13
|
+
/** Typed SDUI page-state paths whose values accept `TValue`. */
|
|
14
|
+
export type TypedSduiStatePathForValue<TState, TValue> = {
|
|
15
|
+
readonly [TPath in TypedSduiStatePath<TState>]: TValue extends TypedSduiStatePathValue<TState, TPath> ? TPath : never;
|
|
16
|
+
}[TypedSduiStatePath<TState>];
|
|
17
|
+
/** State assignments applied by common SDUI helper actions. */
|
|
18
|
+
export type TypedSduiStateAssignments<TState> = Partial<{
|
|
19
|
+
readonly [TPath in TypedSduiStatePath<TState>]: TypedSduiStatePathValue<TState, TPath>;
|
|
20
|
+
}>;
|
|
21
|
+
/** Returns a typed SDUI page-state path resolver that preserves literal path inference. */
|
|
22
|
+
export declare function resolveTypedSduiStatePath<TState>(): <TPath extends TypedSduiStatePath<TState>>(path: TPath) => TPath;
|
|
23
|
+
/** Returns one typed SDUI page-state assignment map as-is while preserving compile-time validation. */
|
|
24
|
+
export declare function defineTypedSduiStateAssignments<TState>(assignments: TypedSduiStateAssignments<TState>): TypedSduiStateAssignments<TState>;
|
|
25
|
+
/** Standard output body returned when a function renders one SDUI page spec. */
|
|
26
|
+
export interface TypedSduiPageSpecOutput {
|
|
27
|
+
/** JSON-serialized SDUI spec payload returned to the platform. */
|
|
28
|
+
readonly spec: string;
|
|
29
|
+
}
|
|
30
|
+
/** Standard error output body for SDUI page functions. */
|
|
31
|
+
export interface TypedSduiPageErrorOutput {
|
|
32
|
+
/** Human-readable error message surfaced back to the caller. */
|
|
33
|
+
readonly error: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Common output union for stateful SDUI page functions.
|
|
37
|
+
*
|
|
38
|
+
* @typeParam TStateUpdate - State payload returned for follow-up actions such as
|
|
39
|
+
* partial updates written into a `responsePath`.
|
|
40
|
+
*/
|
|
41
|
+
export type TypedSduiPageOutput<TStateUpdate> = TypedSduiPageSpecOutput | TStateUpdate | TypedSduiPageErrorOutput;
|
|
42
|
+
/**
|
|
43
|
+
* Serializes one rendered SDUI spec into the standard function output shape.
|
|
44
|
+
*
|
|
45
|
+
* @param spec - Rendered SDUI spec object that should be JSON-serialized.
|
|
46
|
+
* @returns Standard SDUI spec output payload.
|
|
47
|
+
*/
|
|
48
|
+
export declare function createTypedSduiPageSpecOutput<TSpec extends TypedSduiPageSpec>(spec: TSpec): TypedSduiPageSpecOutput;
|
|
49
|
+
/**
|
|
50
|
+
* Builds one successful SDUI page-function response.
|
|
51
|
+
*
|
|
52
|
+
* @param body - Response body to return to the platform.
|
|
53
|
+
* @param options - Optional response metadata such as status code, headers, or message.
|
|
54
|
+
* @returns Typed function response.
|
|
55
|
+
* @typeParam TBody - Body shape returned by the function.
|
|
56
|
+
*/
|
|
57
|
+
export declare function createTypedSduiPageResponse<TBody>(body: TBody, options?: Omit<FunctionResponseOptions<TBody>, 'body'>): FunctionResponse<TBody>;
|
|
58
|
+
/**
|
|
59
|
+
* Builds the standard SDUI page-function response for one rendered page spec.
|
|
60
|
+
*
|
|
61
|
+
* @param spec - Rendered SDUI spec object that should be JSON-serialized.
|
|
62
|
+
* @returns Typed function response containing `body.spec`.
|
|
63
|
+
* @typeParam TOutput - Output union that includes the standard spec payload.
|
|
64
|
+
*/
|
|
65
|
+
export declare function createTypedSduiPageSpecResponse<TOutput = TypedSduiPageSpecOutput, TSpec extends TypedSduiPageSpec = TypedSduiPageSpec>(spec: TSpec): FunctionResponse<TOutput>;
|
|
66
|
+
/**
|
|
67
|
+
* Builds a 400 SDUI page-function error response.
|
|
68
|
+
*
|
|
69
|
+
* @param message - Human-readable error message.
|
|
70
|
+
* @returns Typed function response containing the standard error payload.
|
|
71
|
+
* @typeParam TOutput - Output union that includes the standard error payload.
|
|
72
|
+
*/
|
|
73
|
+
export declare function createTypedSduiPageBadRequestResponse<TOutput = TypedSduiPageErrorOutput>(message: string): FunctionResponse<TOutput>;
|
|
74
|
+
/**
|
|
75
|
+
* Builds a 500 SDUI page-function error response from one thrown value.
|
|
76
|
+
*
|
|
77
|
+
* @param error - Unknown thrown value that should be normalized to a message.
|
|
78
|
+
* @returns Typed function response containing the standard error payload.
|
|
79
|
+
* @typeParam TOutput - Output union that includes the standard error payload.
|
|
80
|
+
*/
|
|
81
|
+
export declare function createTypedSduiPageServerErrorResponse<TOutput = TypedSduiPageErrorOutput>(error: unknown): FunctionResponse<TOutput>;
|
|
82
|
+
type TypedSduiPageEvent<TParameters extends {
|
|
83
|
+
action: string;
|
|
84
|
+
}> = Omit<SduiPageFunctionEvent, 'parameters'> & {
|
|
85
|
+
readonly parameters: TParameters;
|
|
86
|
+
};
|
|
87
|
+
export type TypedSduiPageActionName<TParameters extends {
|
|
88
|
+
action: string;
|
|
89
|
+
}> = TParameters['action'];
|
|
90
|
+
export type TypedSduiPageActionParams<TParameters extends {
|
|
91
|
+
action: string;
|
|
92
|
+
}, TAction extends TypedSduiPageActionName<TParameters>> = Extract<TParameters, {
|
|
93
|
+
action: TAction;
|
|
94
|
+
}>;
|
|
95
|
+
type TypedSduiPageRoleId<TRequireRoleId extends boolean | undefined> = TRequireRoleId extends true ? string : string | undefined;
|
|
96
|
+
type TypedSduiPageSpec = object;
|
|
97
|
+
type DefaultInitAction<TParameters extends {
|
|
98
|
+
action: string;
|
|
99
|
+
}> = Extract<TypedSduiPageActionName<TParameters>, 'init'> extends never ? TypedSduiPageActionName<TParameters> : Extract<TypedSduiPageActionName<TParameters>, 'init'>;
|
|
100
|
+
type TypedSduiNonInitActionName<TParameters extends {
|
|
101
|
+
action: string;
|
|
102
|
+
}, TInitAction extends TypedSduiPageActionName<TParameters>> = Exclude<TypedSduiPageActionName<TParameters>, TInitAction>;
|
|
103
|
+
type TypedSduiActionHandlerMap<TParameters extends {
|
|
104
|
+
action: string;
|
|
105
|
+
}, TRuntime, TStateUpdate, TInitAction extends TypedSduiPageActionName<TParameters>, TRequireRoleId extends boolean | undefined> = {
|
|
106
|
+
readonly [TAction in TypedSduiNonInitActionName<TParameters, TInitAction>]: (args: TypedSduiPageHandlerArgs<TParameters, TRuntime, TAction, TRequireRoleId>) => TStateUpdate | Promise<TStateUpdate>;
|
|
107
|
+
};
|
|
108
|
+
/** Shared arguments passed to typed SDUI page handler callbacks. */
|
|
109
|
+
export interface TypedSduiPageHandlerArgs<TParameters extends {
|
|
110
|
+
action: string;
|
|
111
|
+
}, TRuntime, TAction extends TypedSduiPageActionName<TParameters>, TRequireRoleId extends boolean | undefined = false> {
|
|
112
|
+
/** Raw SDUI page event supplied by the platform. */
|
|
113
|
+
readonly event: TypedSduiPageEvent<TParameters>;
|
|
114
|
+
/** Function context supplied by the platform. */
|
|
115
|
+
readonly context: FunctionContext;
|
|
116
|
+
/** Action-specific parameter payload narrowed by the selected action string. */
|
|
117
|
+
readonly params: TypedSduiPageActionParams<TParameters, TAction>;
|
|
118
|
+
/** Per-request runtime created once for this handler invocation. */
|
|
119
|
+
readonly runtime: TRuntime;
|
|
120
|
+
/** Current function role id when present. */
|
|
121
|
+
readonly roleId: TypedSduiPageRoleId<TRequireRoleId>;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Initialization properties for {@link defineTypedSduiPageHandler}.
|
|
125
|
+
*
|
|
126
|
+
* @typeParam TParameters - SDUI page parameter union discriminated by `action`.
|
|
127
|
+
* @typeParam TRuntime - Shared runtime created once per invocation.
|
|
128
|
+
* @typeParam TStateUpdate - State payload returned for follow-up actions.
|
|
129
|
+
* @typeParam TInitAction - Action string that renders the initial SDUI spec.
|
|
130
|
+
* @typeParam TRequireRoleId - Whether callback args should require `roleId`.
|
|
131
|
+
*/
|
|
132
|
+
type TypedSduiPageHandlerOptionsBase<TParameters extends {
|
|
133
|
+
action: string;
|
|
134
|
+
}, TRuntime, TStateUpdate, TInitAction extends TypedSduiPageActionName<TParameters>, TRequireRoleId extends boolean | undefined> = {
|
|
135
|
+
/** Whether the handler should reject requests without `context.function.role_id`. */
|
|
136
|
+
readonly requireRoleId?: TRequireRoleId;
|
|
137
|
+
/** Error message used when `requireRoleId` is true but no role id is present. */
|
|
138
|
+
readonly missingRoleIdMessage?: string;
|
|
139
|
+
/** Creates one shared runtime object for this invocation. */
|
|
140
|
+
readonly createRuntime: (context: FunctionContext) => TRuntime | Promise<TRuntime>;
|
|
141
|
+
/** Renders the initial SDUI page spec for the selected init action. */
|
|
142
|
+
readonly init: (args: TypedSduiPageHandlerArgs<TParameters, TRuntime, TInitAction, TRequireRoleId>) => TypedSduiPageSpec | Promise<TypedSduiPageSpec>;
|
|
143
|
+
/** Returns one state update payload for each non-init action. */
|
|
144
|
+
readonly actions: TypedSduiActionHandlerMap<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId>;
|
|
145
|
+
/** Optional formatter for the unknown-action bad-request message. */
|
|
146
|
+
readonly unknownActionMessage?: (action: string) => string;
|
|
147
|
+
};
|
|
148
|
+
export type TypedSduiPageHandlerOptions<TParameters extends {
|
|
149
|
+
action: string;
|
|
150
|
+
}, TRuntime, TStateUpdate = never, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>, TRequireRoleId extends boolean | undefined = false> = TypedSduiPageHandlerOptionsBase<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId> & (Extract<TypedSduiPageActionName<TParameters>, 'init'> extends never ?
|
|
151
|
+
/** Action string treated as the initial SDUI render request when no literal `init` action exists. */
|
|
152
|
+
{
|
|
153
|
+
readonly initAction: TInitAction;
|
|
154
|
+
} : {
|
|
155
|
+
readonly initAction?: TInitAction;
|
|
156
|
+
});
|
|
157
|
+
type TypedSduiPageHandler<TParameters extends {
|
|
158
|
+
action: string;
|
|
159
|
+
}, TStateUpdate> = (event: TypedSduiPageEvent<TParameters>, context: FunctionContext) => Promise<FunctionResponse<TypedSduiPageOutput<TStateUpdate>>>;
|
|
160
|
+
export declare function defineTypedSduiPageHandler<TParameters extends {
|
|
161
|
+
action: string;
|
|
162
|
+
}, TRuntime, TStateUpdate = never, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>>(options: TypedSduiPageHandlerOptions<TParameters, TRuntime, TStateUpdate, TInitAction, true>): TypedSduiPageHandler<TParameters, TStateUpdate>;
|
|
163
|
+
export declare function defineTypedSduiPageHandler<TParameters extends {
|
|
164
|
+
action: string;
|
|
165
|
+
}, TRuntime, TStateUpdate = never, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>, TRequireRoleId extends boolean | undefined = false>(options: TypedSduiPageHandlerOptions<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId>): TypedSduiPageHandler<TParameters, TStateUpdate>;
|
|
166
|
+
/**
|
|
167
|
+
* Creates one parameter-first SDUI page-handler builder that fixes the action
|
|
168
|
+
* union and state-update payload up front, then infers the shared runtime type
|
|
169
|
+
* from `createRuntime(...)` when the returned builder is called.
|
|
170
|
+
*
|
|
171
|
+
* This is the intended golden path for normal page-function authoring: specify
|
|
172
|
+
* the discriminated input union and returned state payload once, then let the
|
|
173
|
+
* runtime object and `requireRoleId` behavior infer from the provided options.
|
|
174
|
+
*
|
|
175
|
+
* @returns Builder that accepts typed SDUI page-handler options.
|
|
176
|
+
* @typeParam TParameters - SDUI page parameter union discriminated by `action`.
|
|
177
|
+
* @typeParam TStateUpdate - State payload returned for follow-up actions.
|
|
178
|
+
*/
|
|
179
|
+
export declare function defineTypedSduiPageHandlerFor<TParameters extends {
|
|
180
|
+
action: string;
|
|
181
|
+
}, TStateUpdate = never>(): <TRuntime, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>, TRequireRoleId extends boolean | undefined = false>(options: TypedSduiPageHandlerOptions<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId>) => TypedSduiPageHandler<TParameters, TStateUpdate>;
|
|
182
|
+
/**
|
|
183
|
+
* Configuration for the standard "set loading state, trigger function, write
|
|
184
|
+
* responsePath, then clear loading / error state" SDUI interaction pattern.
|
|
185
|
+
*
|
|
186
|
+
* @typeParam TState - SDUI page-state shape that owns the referenced state paths.
|
|
187
|
+
* @typeParam TResponse - Response payload written into `responsePath`.
|
|
188
|
+
* @typeParam TInputs - Server-bound function input payload sent through `triggerFunction(...)`.
|
|
189
|
+
*/
|
|
190
|
+
export interface TypedSduiMutationTriggerOptions<TState, TResponse, TInputs extends {
|
|
191
|
+
action: string;
|
|
192
|
+
}> {
|
|
193
|
+
/** Target function id that should handle the mutation. */
|
|
194
|
+
readonly functionId: string;
|
|
195
|
+
/** Server-bound input payload forwarded to the function. */
|
|
196
|
+
readonly inputs: TInputs;
|
|
197
|
+
/** State path that should receive the function response body. */
|
|
198
|
+
readonly responsePath: TypedSduiStatePathForValue<TState, TResponse>;
|
|
199
|
+
/** Human-readable error message shown when the function call fails. */
|
|
200
|
+
readonly errorMessage: string;
|
|
201
|
+
/** Optional state assignments applied after a successful mutation. */
|
|
202
|
+
readonly onSuccessState?: TypedSduiStateAssignments<TState>;
|
|
203
|
+
/** Optional state assignments applied after a failed mutation. */
|
|
204
|
+
readonly onErrorState?: TypedSduiStateAssignments<TState>;
|
|
205
|
+
/** State path that stores the shared in-flight mutation flag. Defaults to `/isMutating`. */
|
|
206
|
+
readonly mutationStatePath?: TypedSduiStatePathForValue<TState, boolean>;
|
|
207
|
+
/** State path that stores the visible error message. Defaults to `/errorMessage`. */
|
|
208
|
+
readonly errorStatePath?: TypedSduiStatePathForValue<TState, string>;
|
|
209
|
+
}
|
|
210
|
+
export declare function createTypedSduiMutationTrigger<TState, TResponse, TInputs extends {
|
|
211
|
+
action: string;
|
|
212
|
+
}>(options: TypedSduiMutationTriggerOptions<TState, TResponse, TInputs>): ActionBinding[];
|
|
213
|
+
export {};
|
|
214
|
+
//# sourceMappingURL=sdui-page.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdui-page.d.mts","sourceRoot":"","sources":["../../../../src/core/platform/manifest/custom-objects/sdui-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { type ActionBinding } from '@rippling/pebble-sdui-web';
|
|
2
|
+
import { FunctionResponse, type FunctionContext, type FunctionResponseOptions, type SduiPageFunctionEvent } from "../../../../functions.js";
|
|
3
|
+
type TypedSduiStatePathPrefix<TPrefix extends string, TKey extends string> = `${TPrefix}/${TKey}`;
|
|
4
|
+
type TypedSduiPathKeys<TValue> = Extract<keyof TValue, string>;
|
|
5
|
+
type TypedSduiStatePathInner<TValue, TPrefix extends string> = {
|
|
6
|
+
readonly [TKey in TypedSduiPathKeys<TValue>]: TValue[TKey] extends readonly unknown[] ? TypedSduiStatePathPrefix<TPrefix, TKey> : TValue[TKey] extends Record<string, unknown> ? TypedSduiStatePathPrefix<TPrefix, TKey> | TypedSduiStatePathInner<TValue[TKey], TypedSduiStatePathPrefix<TPrefix, TKey>> : TypedSduiStatePathPrefix<TPrefix, TKey>;
|
|
7
|
+
}[TypedSduiPathKeys<TValue>];
|
|
8
|
+
type TypedSduiStatePathValueInner<TValue, TSegments extends string> = TSegments extends (`${infer THead}/${infer TRest}`) ? THead extends TypedSduiPathKeys<TValue> ? TypedSduiStatePathValueInner<TValue[THead], TRest> : never : TSegments extends TypedSduiPathKeys<TValue> ? TValue[TSegments] : never;
|
|
9
|
+
/** JSON-pointer-like state path derived from one SDUI page-state shape. */
|
|
10
|
+
export type TypedSduiStatePath<TState> = TypedSduiStatePathInner<TState, ''>;
|
|
11
|
+
/** Value type stored at one typed SDUI page-state path. */
|
|
12
|
+
export type TypedSduiStatePathValue<TState, TPath extends TypedSduiStatePath<TState>> = TPath extends (`/${infer TSegments}`) ? TypedSduiStatePathValueInner<TState, TSegments> : never;
|
|
13
|
+
/** Typed SDUI page-state paths whose values accept `TValue`. */
|
|
14
|
+
export type TypedSduiStatePathForValue<TState, TValue> = {
|
|
15
|
+
readonly [TPath in TypedSduiStatePath<TState>]: TValue extends TypedSduiStatePathValue<TState, TPath> ? TPath : never;
|
|
16
|
+
}[TypedSduiStatePath<TState>];
|
|
17
|
+
/** State assignments applied by common SDUI helper actions. */
|
|
18
|
+
export type TypedSduiStateAssignments<TState> = Partial<{
|
|
19
|
+
readonly [TPath in TypedSduiStatePath<TState>]: TypedSduiStatePathValue<TState, TPath>;
|
|
20
|
+
}>;
|
|
21
|
+
/** Returns a typed SDUI page-state path resolver that preserves literal path inference. */
|
|
22
|
+
export declare function resolveTypedSduiStatePath<TState>(): <TPath extends TypedSduiStatePath<TState>>(path: TPath) => TPath;
|
|
23
|
+
/** Returns one typed SDUI page-state assignment map as-is while preserving compile-time validation. */
|
|
24
|
+
export declare function defineTypedSduiStateAssignments<TState>(assignments: TypedSduiStateAssignments<TState>): TypedSduiStateAssignments<TState>;
|
|
25
|
+
/** Standard output body returned when a function renders one SDUI page spec. */
|
|
26
|
+
export interface TypedSduiPageSpecOutput {
|
|
27
|
+
/** JSON-serialized SDUI spec payload returned to the platform. */
|
|
28
|
+
readonly spec: string;
|
|
29
|
+
}
|
|
30
|
+
/** Standard error output body for SDUI page functions. */
|
|
31
|
+
export interface TypedSduiPageErrorOutput {
|
|
32
|
+
/** Human-readable error message surfaced back to the caller. */
|
|
33
|
+
readonly error: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Common output union for stateful SDUI page functions.
|
|
37
|
+
*
|
|
38
|
+
* @typeParam TStateUpdate - State payload returned for follow-up actions such as
|
|
39
|
+
* partial updates written into a `responsePath`.
|
|
40
|
+
*/
|
|
41
|
+
export type TypedSduiPageOutput<TStateUpdate> = TypedSduiPageSpecOutput | TStateUpdate | TypedSduiPageErrorOutput;
|
|
42
|
+
/**
|
|
43
|
+
* Serializes one rendered SDUI spec into the standard function output shape.
|
|
44
|
+
*
|
|
45
|
+
* @param spec - Rendered SDUI spec object that should be JSON-serialized.
|
|
46
|
+
* @returns Standard SDUI spec output payload.
|
|
47
|
+
*/
|
|
48
|
+
export declare function createTypedSduiPageSpecOutput<TSpec extends TypedSduiPageSpec>(spec: TSpec): TypedSduiPageSpecOutput;
|
|
49
|
+
/**
|
|
50
|
+
* Builds one successful SDUI page-function response.
|
|
51
|
+
*
|
|
52
|
+
* @param body - Response body to return to the platform.
|
|
53
|
+
* @param options - Optional response metadata such as status code, headers, or message.
|
|
54
|
+
* @returns Typed function response.
|
|
55
|
+
* @typeParam TBody - Body shape returned by the function.
|
|
56
|
+
*/
|
|
57
|
+
export declare function createTypedSduiPageResponse<TBody>(body: TBody, options?: Omit<FunctionResponseOptions<TBody>, 'body'>): FunctionResponse<TBody>;
|
|
58
|
+
/**
|
|
59
|
+
* Builds the standard SDUI page-function response for one rendered page spec.
|
|
60
|
+
*
|
|
61
|
+
* @param spec - Rendered SDUI spec object that should be JSON-serialized.
|
|
62
|
+
* @returns Typed function response containing `body.spec`.
|
|
63
|
+
* @typeParam TOutput - Output union that includes the standard spec payload.
|
|
64
|
+
*/
|
|
65
|
+
export declare function createTypedSduiPageSpecResponse<TOutput = TypedSduiPageSpecOutput, TSpec extends TypedSduiPageSpec = TypedSduiPageSpec>(spec: TSpec): FunctionResponse<TOutput>;
|
|
66
|
+
/**
|
|
67
|
+
* Builds a 400 SDUI page-function error response.
|
|
68
|
+
*
|
|
69
|
+
* @param message - Human-readable error message.
|
|
70
|
+
* @returns Typed function response containing the standard error payload.
|
|
71
|
+
* @typeParam TOutput - Output union that includes the standard error payload.
|
|
72
|
+
*/
|
|
73
|
+
export declare function createTypedSduiPageBadRequestResponse<TOutput = TypedSduiPageErrorOutput>(message: string): FunctionResponse<TOutput>;
|
|
74
|
+
/**
|
|
75
|
+
* Builds a 500 SDUI page-function error response from one thrown value.
|
|
76
|
+
*
|
|
77
|
+
* @param error - Unknown thrown value that should be normalized to a message.
|
|
78
|
+
* @returns Typed function response containing the standard error payload.
|
|
79
|
+
* @typeParam TOutput - Output union that includes the standard error payload.
|
|
80
|
+
*/
|
|
81
|
+
export declare function createTypedSduiPageServerErrorResponse<TOutput = TypedSduiPageErrorOutput>(error: unknown): FunctionResponse<TOutput>;
|
|
82
|
+
type TypedSduiPageEvent<TParameters extends {
|
|
83
|
+
action: string;
|
|
84
|
+
}> = Omit<SduiPageFunctionEvent, 'parameters'> & {
|
|
85
|
+
readonly parameters: TParameters;
|
|
86
|
+
};
|
|
87
|
+
export type TypedSduiPageActionName<TParameters extends {
|
|
88
|
+
action: string;
|
|
89
|
+
}> = TParameters['action'];
|
|
90
|
+
export type TypedSduiPageActionParams<TParameters extends {
|
|
91
|
+
action: string;
|
|
92
|
+
}, TAction extends TypedSduiPageActionName<TParameters>> = Extract<TParameters, {
|
|
93
|
+
action: TAction;
|
|
94
|
+
}>;
|
|
95
|
+
type TypedSduiPageRoleId<TRequireRoleId extends boolean | undefined> = TRequireRoleId extends true ? string : string | undefined;
|
|
96
|
+
type TypedSduiPageSpec = object;
|
|
97
|
+
type DefaultInitAction<TParameters extends {
|
|
98
|
+
action: string;
|
|
99
|
+
}> = Extract<TypedSduiPageActionName<TParameters>, 'init'> extends never ? TypedSduiPageActionName<TParameters> : Extract<TypedSduiPageActionName<TParameters>, 'init'>;
|
|
100
|
+
type TypedSduiNonInitActionName<TParameters extends {
|
|
101
|
+
action: string;
|
|
102
|
+
}, TInitAction extends TypedSduiPageActionName<TParameters>> = Exclude<TypedSduiPageActionName<TParameters>, TInitAction>;
|
|
103
|
+
type TypedSduiActionHandlerMap<TParameters extends {
|
|
104
|
+
action: string;
|
|
105
|
+
}, TRuntime, TStateUpdate, TInitAction extends TypedSduiPageActionName<TParameters>, TRequireRoleId extends boolean | undefined> = {
|
|
106
|
+
readonly [TAction in TypedSduiNonInitActionName<TParameters, TInitAction>]: (args: TypedSduiPageHandlerArgs<TParameters, TRuntime, TAction, TRequireRoleId>) => TStateUpdate | Promise<TStateUpdate>;
|
|
107
|
+
};
|
|
108
|
+
/** Shared arguments passed to typed SDUI page handler callbacks. */
|
|
109
|
+
export interface TypedSduiPageHandlerArgs<TParameters extends {
|
|
110
|
+
action: string;
|
|
111
|
+
}, TRuntime, TAction extends TypedSduiPageActionName<TParameters>, TRequireRoleId extends boolean | undefined = false> {
|
|
112
|
+
/** Raw SDUI page event supplied by the platform. */
|
|
113
|
+
readonly event: TypedSduiPageEvent<TParameters>;
|
|
114
|
+
/** Function context supplied by the platform. */
|
|
115
|
+
readonly context: FunctionContext;
|
|
116
|
+
/** Action-specific parameter payload narrowed by the selected action string. */
|
|
117
|
+
readonly params: TypedSduiPageActionParams<TParameters, TAction>;
|
|
118
|
+
/** Per-request runtime created once for this handler invocation. */
|
|
119
|
+
readonly runtime: TRuntime;
|
|
120
|
+
/** Current function role id when present. */
|
|
121
|
+
readonly roleId: TypedSduiPageRoleId<TRequireRoleId>;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Initialization properties for {@link defineTypedSduiPageHandler}.
|
|
125
|
+
*
|
|
126
|
+
* @typeParam TParameters - SDUI page parameter union discriminated by `action`.
|
|
127
|
+
* @typeParam TRuntime - Shared runtime created once per invocation.
|
|
128
|
+
* @typeParam TStateUpdate - State payload returned for follow-up actions.
|
|
129
|
+
* @typeParam TInitAction - Action string that renders the initial SDUI spec.
|
|
130
|
+
* @typeParam TRequireRoleId - Whether callback args should require `roleId`.
|
|
131
|
+
*/
|
|
132
|
+
type TypedSduiPageHandlerOptionsBase<TParameters extends {
|
|
133
|
+
action: string;
|
|
134
|
+
}, TRuntime, TStateUpdate, TInitAction extends TypedSduiPageActionName<TParameters>, TRequireRoleId extends boolean | undefined> = {
|
|
135
|
+
/** Whether the handler should reject requests without `context.function.role_id`. */
|
|
136
|
+
readonly requireRoleId?: TRequireRoleId;
|
|
137
|
+
/** Error message used when `requireRoleId` is true but no role id is present. */
|
|
138
|
+
readonly missingRoleIdMessage?: string;
|
|
139
|
+
/** Creates one shared runtime object for this invocation. */
|
|
140
|
+
readonly createRuntime: (context: FunctionContext) => TRuntime | Promise<TRuntime>;
|
|
141
|
+
/** Renders the initial SDUI page spec for the selected init action. */
|
|
142
|
+
readonly init: (args: TypedSduiPageHandlerArgs<TParameters, TRuntime, TInitAction, TRequireRoleId>) => TypedSduiPageSpec | Promise<TypedSduiPageSpec>;
|
|
143
|
+
/** Returns one state update payload for each non-init action. */
|
|
144
|
+
readonly actions: TypedSduiActionHandlerMap<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId>;
|
|
145
|
+
/** Optional formatter for the unknown-action bad-request message. */
|
|
146
|
+
readonly unknownActionMessage?: (action: string) => string;
|
|
147
|
+
};
|
|
148
|
+
export type TypedSduiPageHandlerOptions<TParameters extends {
|
|
149
|
+
action: string;
|
|
150
|
+
}, TRuntime, TStateUpdate = never, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>, TRequireRoleId extends boolean | undefined = false> = TypedSduiPageHandlerOptionsBase<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId> & (Extract<TypedSduiPageActionName<TParameters>, 'init'> extends never ?
|
|
151
|
+
/** Action string treated as the initial SDUI render request when no literal `init` action exists. */
|
|
152
|
+
{
|
|
153
|
+
readonly initAction: TInitAction;
|
|
154
|
+
} : {
|
|
155
|
+
readonly initAction?: TInitAction;
|
|
156
|
+
});
|
|
157
|
+
type TypedSduiPageHandler<TParameters extends {
|
|
158
|
+
action: string;
|
|
159
|
+
}, TStateUpdate> = (event: TypedSduiPageEvent<TParameters>, context: FunctionContext) => Promise<FunctionResponse<TypedSduiPageOutput<TStateUpdate>>>;
|
|
160
|
+
export declare function defineTypedSduiPageHandler<TParameters extends {
|
|
161
|
+
action: string;
|
|
162
|
+
}, TRuntime, TStateUpdate = never, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>>(options: TypedSduiPageHandlerOptions<TParameters, TRuntime, TStateUpdate, TInitAction, true>): TypedSduiPageHandler<TParameters, TStateUpdate>;
|
|
163
|
+
export declare function defineTypedSduiPageHandler<TParameters extends {
|
|
164
|
+
action: string;
|
|
165
|
+
}, TRuntime, TStateUpdate = never, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>, TRequireRoleId extends boolean | undefined = false>(options: TypedSduiPageHandlerOptions<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId>): TypedSduiPageHandler<TParameters, TStateUpdate>;
|
|
166
|
+
/**
|
|
167
|
+
* Creates one parameter-first SDUI page-handler builder that fixes the action
|
|
168
|
+
* union and state-update payload up front, then infers the shared runtime type
|
|
169
|
+
* from `createRuntime(...)` when the returned builder is called.
|
|
170
|
+
*
|
|
171
|
+
* This is the intended golden path for normal page-function authoring: specify
|
|
172
|
+
* the discriminated input union and returned state payload once, then let the
|
|
173
|
+
* runtime object and `requireRoleId` behavior infer from the provided options.
|
|
174
|
+
*
|
|
175
|
+
* @returns Builder that accepts typed SDUI page-handler options.
|
|
176
|
+
* @typeParam TParameters - SDUI page parameter union discriminated by `action`.
|
|
177
|
+
* @typeParam TStateUpdate - State payload returned for follow-up actions.
|
|
178
|
+
*/
|
|
179
|
+
export declare function defineTypedSduiPageHandlerFor<TParameters extends {
|
|
180
|
+
action: string;
|
|
181
|
+
}, TStateUpdate = never>(): <TRuntime, TInitAction extends TypedSduiPageActionName<TParameters> = DefaultInitAction<TParameters>, TRequireRoleId extends boolean | undefined = false>(options: TypedSduiPageHandlerOptions<TParameters, TRuntime, TStateUpdate, TInitAction, TRequireRoleId>) => TypedSduiPageHandler<TParameters, TStateUpdate>;
|
|
182
|
+
/**
|
|
183
|
+
* Configuration for the standard "set loading state, trigger function, write
|
|
184
|
+
* responsePath, then clear loading / error state" SDUI interaction pattern.
|
|
185
|
+
*
|
|
186
|
+
* @typeParam TState - SDUI page-state shape that owns the referenced state paths.
|
|
187
|
+
* @typeParam TResponse - Response payload written into `responsePath`.
|
|
188
|
+
* @typeParam TInputs - Server-bound function input payload sent through `triggerFunction(...)`.
|
|
189
|
+
*/
|
|
190
|
+
export interface TypedSduiMutationTriggerOptions<TState, TResponse, TInputs extends {
|
|
191
|
+
action: string;
|
|
192
|
+
}> {
|
|
193
|
+
/** Target function id that should handle the mutation. */
|
|
194
|
+
readonly functionId: string;
|
|
195
|
+
/** Server-bound input payload forwarded to the function. */
|
|
196
|
+
readonly inputs: TInputs;
|
|
197
|
+
/** State path that should receive the function response body. */
|
|
198
|
+
readonly responsePath: TypedSduiStatePathForValue<TState, TResponse>;
|
|
199
|
+
/** Human-readable error message shown when the function call fails. */
|
|
200
|
+
readonly errorMessage: string;
|
|
201
|
+
/** Optional state assignments applied after a successful mutation. */
|
|
202
|
+
readonly onSuccessState?: TypedSduiStateAssignments<TState>;
|
|
203
|
+
/** Optional state assignments applied after a failed mutation. */
|
|
204
|
+
readonly onErrorState?: TypedSduiStateAssignments<TState>;
|
|
205
|
+
/** State path that stores the shared in-flight mutation flag. Defaults to `/isMutating`. */
|
|
206
|
+
readonly mutationStatePath?: TypedSduiStatePathForValue<TState, boolean>;
|
|
207
|
+
/** State path that stores the visible error message. Defaults to `/errorMessage`. */
|
|
208
|
+
readonly errorStatePath?: TypedSduiStatePathForValue<TState, string>;
|
|
209
|
+
}
|
|
210
|
+
export declare function createTypedSduiMutationTrigger<TState, TResponse, TInputs extends {
|
|
211
|
+
action: string;
|
|
212
|
+
}>(options: TypedSduiMutationTriggerOptions<TState, TResponse, TInputs>): ActionBinding[];
|
|
213
|
+
export {};
|
|
214
|
+
//# sourceMappingURL=sdui-page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdui-page.d.ts","sourceRoot":"","sources":["../../../../src/core/platform/manifest/custom-objects/sdui-page.ts"],"names":[],"mappings":"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"}
|