@rippling/rippling-sdk 0.2.0-alpha.83 → 0.2.0-alpha.85
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/examples/manifest/custom-object-creation-workflow/custom-object-creation-workflow.ts +44 -26
- package/examples/manifest/dental-practice-management/dental-practice-management.ts +470 -142
- package/examples/manifest/dental-practice-management/functions/chair-schedule.ts +23 -13
- package/examples/manifest/dental-practice-management/functions/complete-visit.ts +55 -32
- package/examples/manifest/dental-practice-management/functions/operatory-list.ts +23 -13
- package/examples/manifest/dental-practice-management/functions/patient-list.ts +23 -13
- package/examples/manifest/dental-practice-management/functions/treatment-plan-list.ts +23 -13
- package/examples/manifest/existing-manifest-mutations/existing-manifest-mutations.ts +23 -68
- package/examples/manifest/field-service-dispatch/field-service-dispatch.ts +375 -102
- package/examples/manifest/grant-program-management/grant-program-management.ts +419 -125
- package/examples/manifest/gym-membership-management/functions/check-in-desk.ts +23 -13
- package/examples/manifest/gym-membership-management/functions/member-list.ts +23 -13
- package/examples/manifest/gym-membership-management/functions/today-schedule.ts +23 -13
- package/examples/manifest/gym-membership-management/functions/trainer-list.ts +23 -13
- package/examples/manifest/gym-membership-management/gym-membership-management.ts +442 -92
- package/examples/manifest/procurement-approval-hub/procurement-approval-hub.ts +408 -122
- package/examples/manifest/simple-todo-app/functions/mark-done.ts +12 -16
- package/examples/manifest/simple-todo-app/functions/todo-list.ts +23 -13
- package/examples/manifest/simple-todo-app/simple-todo-app.ts +109 -40
- package/examples/manifest/todo-app-without-object-list-view/functions/todo-page.ts +193 -166
- package/examples/manifest/todo-app-without-object-list-view/todo-app-without-object-list-view.ts +47 -24
- package/package.json +13 -7
- package/resources/custom-objects/custom-objects.d.mts +0 -7
- package/resources/custom-objects/custom-objects.d.mts.map +1 -1
- package/resources/custom-objects/custom-objects.d.ts +0 -7
- 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 +14 -128
- package/resources/custom-objects/fields.d.mts.map +1 -1
- package/resources/custom-objects/fields.d.ts +14 -128
- package/resources/custom-objects/fields.d.ts.map +1 -1
- package/src/resources/custom-objects/custom-objects.ts +0 -8
- package/src/resources/custom-objects/fields.ts +13 -191
- 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
- package/core/platform/custom-objects/category.d.mts +0 -125
- package/core/platform/custom-objects/category.d.mts.map +0 -1
- package/core/platform/custom-objects/category.d.ts +0 -125
- package/core/platform/custom-objects/category.d.ts.map +0 -1
- package/core/platform/custom-objects/category.js +0 -188
- package/core/platform/custom-objects/category.js.map +0 -1
- package/core/platform/custom-objects/category.mjs +0 -178
- package/core/platform/custom-objects/category.mjs.map +0 -1
- package/core/platform/custom-objects/definition.d.mts +0 -147
- package/core/platform/custom-objects/definition.d.mts.map +0 -1
- package/core/platform/custom-objects/definition.d.ts +0 -147
- package/core/platform/custom-objects/definition.d.ts.map +0 -1
- package/core/platform/custom-objects/definition.js +0 -200
- package/core/platform/custom-objects/definition.js.map +0 -1
- package/core/platform/custom-objects/definition.mjs +0 -190
- package/core/platform/custom-objects/definition.mjs.map +0 -1
- package/core/platform/custom-objects/fields.d.mts +0 -302
- package/core/platform/custom-objects/fields.d.mts.map +0 -1
- package/core/platform/custom-objects/fields.d.ts +0 -302
- package/core/platform/custom-objects/fields.d.ts.map +0 -1
- package/core/platform/custom-objects/fields.js +0 -369
- package/core/platform/custom-objects/fields.js.map +0 -1
- package/core/platform/custom-objects/fields.mjs +0 -347
- package/core/platform/custom-objects/fields.mjs.map +0 -1
- package/core/platform/custom-objects/function-runtime.d.mts +0 -42
- package/core/platform/custom-objects/function-runtime.d.mts.map +0 -1
- package/core/platform/custom-objects/function-runtime.d.ts +0 -42
- package/core/platform/custom-objects/function-runtime.d.ts.map +0 -1
- package/core/platform/custom-objects/function-runtime.js +0 -38
- package/core/platform/custom-objects/function-runtime.js.map +0 -1
- package/core/platform/custom-objects/function-runtime.mjs +0 -35
- package/core/platform/custom-objects/function-runtime.mjs.map +0 -1
- package/core/platform/custom-objects/lifecycle.d.mts +0 -83
- package/core/platform/custom-objects/lifecycle.d.mts.map +0 -1
- package/core/platform/custom-objects/lifecycle.d.ts +0 -83
- package/core/platform/custom-objects/lifecycle.d.ts.map +0 -1
- package/core/platform/custom-objects/lifecycle.js +0 -372
- package/core/platform/custom-objects/lifecycle.js.map +0 -1
- package/core/platform/custom-objects/lifecycle.mjs +0 -367
- package/core/platform/custom-objects/lifecycle.mjs.map +0 -1
- package/core/platform/custom-objects/manager.d.mts +0 -354
- package/core/platform/custom-objects/manager.d.mts.map +0 -1
- package/core/platform/custom-objects/manager.d.ts +0 -354
- package/core/platform/custom-objects/manager.d.ts.map +0 -1
- package/core/platform/custom-objects/manager.js +0 -646
- package/core/platform/custom-objects/manager.js.map +0 -1
- package/core/platform/custom-objects/manager.mjs +0 -637
- package/core/platform/custom-objects/manager.mjs.map +0 -1
- package/core/platform/custom-objects/provisioning.d.mts +0 -138
- package/core/platform/custom-objects/provisioning.d.mts.map +0 -1
- package/core/platform/custom-objects/provisioning.d.ts +0 -138
- package/core/platform/custom-objects/provisioning.d.ts.map +0 -1
- package/core/platform/custom-objects/provisioning.js +0 -455
- package/core/platform/custom-objects/provisioning.js.map +0 -1
- package/core/platform/custom-objects/provisioning.mjs +0 -447
- package/core/platform/custom-objects/provisioning.mjs.map +0 -1
- package/core/platform/custom-objects/rql.d.mts +0 -122
- package/core/platform/custom-objects/rql.d.mts.map +0 -1
- package/core/platform/custom-objects/rql.d.ts +0 -122
- package/core/platform/custom-objects/rql.d.ts.map +0 -1
- package/core/platform/custom-objects/rql.js +0 -225
- package/core/platform/custom-objects/rql.js.map +0 -1
- package/core/platform/custom-objects/rql.mjs +0 -222
- package/core/platform/custom-objects/rql.mjs.map +0 -1
- package/core/platform/custom-objects/schema-manager.d.mts +0 -203
- package/core/platform/custom-objects/schema-manager.d.mts.map +0 -1
- package/core/platform/custom-objects/schema-manager.d.ts +0 -203
- package/core/platform/custom-objects/schema-manager.d.ts.map +0 -1
- package/core/platform/custom-objects/schema-manager.js +0 -256
- package/core/platform/custom-objects/schema-manager.js.map +0 -1
- package/core/platform/custom-objects/schema-manager.mjs +0 -249
- package/core/platform/custom-objects/schema-manager.mjs.map +0 -1
- package/core/platform/custom-objects/typed-rql.d.mts +0 -157
- package/core/platform/custom-objects/typed-rql.d.mts.map +0 -1
- package/core/platform/custom-objects/typed-rql.d.ts +0 -157
- package/core/platform/custom-objects/typed-rql.d.ts.map +0 -1
- package/core/platform/custom-objects/typed-rql.js +0 -583
- package/core/platform/custom-objects/typed-rql.js.map +0 -1
- package/core/platform/custom-objects/typed-rql.mjs +0 -580
- package/core/platform/custom-objects/typed-rql.mjs.map +0 -1
- package/core/platform/custom-objects/types.d.mts +0 -549
- package/core/platform/custom-objects/types.d.mts.map +0 -1
- package/core/platform/custom-objects/types.d.ts +0 -549
- package/core/platform/custom-objects/types.d.ts.map +0 -1
- package/core/platform/custom-objects/types.js +0 -20
- package/core/platform/custom-objects/types.js.map +0 -1
- package/core/platform/custom-objects/types.mjs +0 -17
- package/core/platform/custom-objects/types.mjs.map +0 -1
- package/core/platform/custom-objects/validation.d.mts +0 -97
- package/core/platform/custom-objects/validation.d.mts.map +0 -1
- package/core/platform/custom-objects/validation.d.ts +0 -97
- package/core/platform/custom-objects/validation.d.ts.map +0 -1
- package/core/platform/custom-objects/validation.js +0 -477
- package/core/platform/custom-objects/validation.js.map +0 -1
- package/core/platform/custom-objects/validation.mjs +0 -465
- package/core/platform/custom-objects/validation.mjs.map +0 -1
- package/core/platform/custom-objects.d.mts +0 -67
- package/core/platform/custom-objects.d.mts.map +0 -1
- package/core/platform/custom-objects.d.ts +0 -67
- package/core/platform/custom-objects.d.ts.map +0 -1
- package/core/platform/custom-objects.js +0 -118
- package/core/platform/custom-objects.js.map +0 -1
- package/core/platform/custom-objects.mjs +0 -45
- package/core/platform/custom-objects.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/action.d.mts +0 -58
- package/core/platform/manifest/custom-objects/action.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/action.d.ts +0 -58
- package/core/platform/manifest/custom-objects/action.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/action.js +0 -44
- package/core/platform/manifest/custom-objects/action.js.map +0 -1
- package/core/platform/manifest/custom-objects/action.mjs +0 -40
- package/core/platform/manifest/custom-objects/action.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/conditions.d.mts +0 -240
- package/core/platform/manifest/custom-objects/conditions.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/conditions.d.ts +0 -240
- package/core/platform/manifest/custom-objects/conditions.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/conditions.js +0 -326
- package/core/platform/manifest/custom-objects/conditions.js.map +0 -1
- package/core/platform/manifest/custom-objects/conditions.mjs +0 -321
- package/core/platform/manifest/custom-objects/conditions.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/existing.d.mts +0 -87
- package/core/platform/manifest/custom-objects/existing.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/existing.d.ts +0 -87
- package/core/platform/manifest/custom-objects/existing.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/existing.js +0 -113
- package/core/platform/manifest/custom-objects/existing.js.map +0 -1
- package/core/platform/manifest/custom-objects/existing.mjs +0 -109
- package/core/platform/manifest/custom-objects/existing.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/field-resolution.d.mts +0 -48
- package/core/platform/manifest/custom-objects/field-resolution.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/field-resolution.d.ts +0 -48
- package/core/platform/manifest/custom-objects/field-resolution.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/field-resolution.js +0 -61
- package/core/platform/manifest/custom-objects/field-resolution.js.map +0 -1
- package/core/platform/manifest/custom-objects/field-resolution.mjs +0 -58
- package/core/platform/manifest/custom-objects/field-resolution.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/function-file.d.mts +0 -87
- package/core/platform/manifest/custom-objects/function-file.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/function-file.d.ts +0 -87
- package/core/platform/manifest/custom-objects/function-file.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/function-file.js +0 -76
- package/core/platform/manifest/custom-objects/function-file.js.map +0 -1
- package/core/platform/manifest/custom-objects/function-file.mjs +0 -69
- package/core/platform/manifest/custom-objects/function-file.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/list-view.d.mts +0 -65
- package/core/platform/manifest/custom-objects/list-view.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/list-view.d.ts +0 -65
- package/core/platform/manifest/custom-objects/list-view.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/list-view.js +0 -33
- package/core/platform/manifest/custom-objects/list-view.js.map +0 -1
- package/core/platform/manifest/custom-objects/list-view.mjs +0 -30
- package/core/platform/manifest/custom-objects/list-view.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/object-list-page.d.mts +0 -43
- package/core/platform/manifest/custom-objects/object-list-page.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/object-list-page.d.ts +0 -43
- package/core/platform/manifest/custom-objects/object-list-page.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/object-list-page.js +0 -54
- package/core/platform/manifest/custom-objects/object-list-page.js.map +0 -1
- package/core/platform/manifest/custom-objects/object-list-page.mjs +0 -50
- package/core/platform/manifest/custom-objects/object-list-page.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/page-layout.d.mts +0 -142
- package/core/platform/manifest/custom-objects/page-layout.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/page-layout.d.ts +0 -142
- package/core/platform/manifest/custom-objects/page-layout.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/page-layout.js +0 -184
- package/core/platform/manifest/custom-objects/page-layout.js.map +0 -1
- package/core/platform/manifest/custom-objects/page-layout.mjs +0 -180
- package/core/platform/manifest/custom-objects/page-layout.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/register.d.mts +0 -87
- package/core/platform/manifest/custom-objects/register.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/register.d.ts +0 -87
- package/core/platform/manifest/custom-objects/register.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/register.js +0 -395
- package/core/platform/manifest/custom-objects/register.js.map +0 -1
- package/core/platform/manifest/custom-objects/register.mjs +0 -391
- package/core/platform/manifest/custom-objects/register.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/rule.d.mts +0 -113
- package/core/platform/manifest/custom-objects/rule.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/rule.d.ts +0 -113
- package/core/platform/manifest/custom-objects/rule.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/rule.js +0 -49
- package/core/platform/manifest/custom-objects/rule.js.map +0 -1
- package/core/platform/manifest/custom-objects/rule.mjs +0 -45
- package/core/platform/manifest/custom-objects/rule.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/sdui-page.d.mts +0 -214
- package/core/platform/manifest/custom-objects/sdui-page.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/sdui-page.d.ts +0 -214
- package/core/platform/manifest/custom-objects/sdui-page.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/sdui-page.js +0 -194
- package/core/platform/manifest/custom-objects/sdui-page.js.map +0 -1
- package/core/platform/manifest/custom-objects/sdui-page.mjs +0 -182
- package/core/platform/manifest/custom-objects/sdui-page.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/typed-condition.d.mts +0 -28
- package/core/platform/manifest/custom-objects/typed-condition.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/typed-condition.d.ts +0 -28
- package/core/platform/manifest/custom-objects/typed-condition.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/typed-condition.js +0 -434
- package/core/platform/manifest/custom-objects/typed-condition.js.map +0 -1
- package/core/platform/manifest/custom-objects/typed-condition.mjs +0 -431
- package/core/platform/manifest/custom-objects/typed-condition.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/types.d.mts +0 -29
- package/core/platform/manifest/custom-objects/types.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/types.d.ts +0 -29
- package/core/platform/manifest/custom-objects/types.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/types.js +0 -3
- package/core/platform/manifest/custom-objects/types.js.map +0 -1
- package/core/platform/manifest/custom-objects/types.mjs +0 -2
- package/core/platform/manifest/custom-objects/types.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/validation.d.mts +0 -44
- package/core/platform/manifest/custom-objects/validation.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/validation.d.ts +0 -44
- package/core/platform/manifest/custom-objects/validation.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/validation.js +0 -30
- package/core/platform/manifest/custom-objects/validation.js.map +0 -1
- package/core/platform/manifest/custom-objects/validation.mjs +0 -27
- package/core/platform/manifest/custom-objects/validation.mjs.map +0 -1
- package/core/platform/manifest/custom-objects/workflow.d.mts +0 -47
- package/core/platform/manifest/custom-objects/workflow.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects/workflow.d.ts +0 -47
- package/core/platform/manifest/custom-objects/workflow.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects/workflow.js +0 -38
- package/core/platform/manifest/custom-objects/workflow.js.map +0 -1
- package/core/platform/manifest/custom-objects/workflow.mjs +0 -34
- package/core/platform/manifest/custom-objects/workflow.mjs.map +0 -1
- package/core/platform/manifest/custom-objects.d.mts +0 -85
- package/core/platform/manifest/custom-objects.d.mts.map +0 -1
- package/core/platform/manifest/custom-objects.d.ts +0 -85
- package/core/platform/manifest/custom-objects.d.ts.map +0 -1
- package/core/platform/manifest/custom-objects.js +0 -84
- package/core/platform/manifest/custom-objects.js.map +0 -1
- package/core/platform/manifest/custom-objects.mjs +0 -55
- package/core/platform/manifest/custom-objects.mjs.map +0 -1
- package/examples/manifest/custom-object-creation-workflow/functions/intake-request-created.ts +0 -20
- package/examples/manifest/custom-object-creation-workflow/schema.ts +0 -29
- package/examples/manifest/dental-practice-management/schema.ts +0 -298
- package/examples/manifest/field-service-dispatch/schema.ts +0 -248
- package/examples/manifest/grant-program-management/schema.ts +0 -269
- package/examples/manifest/gym-membership-management/schema.ts +0 -266
- package/examples/manifest/procurement-approval-hub/functions/route-purchase-request.ts +0 -20
- package/examples/manifest/procurement-approval-hub/schema.ts +0 -256
- package/examples/manifest/simple-todo-app/schema.ts +0 -60
- package/examples/manifest/todo-app-without-object-list-view/schema.ts +0 -28
- package/src/core/platform/README.md +0 -20
- package/src/core/platform/custom-objects/category.ts +0 -294
- package/src/core/platform/custom-objects/definition.ts +0 -373
- package/src/core/platform/custom-objects/fields.ts +0 -653
- package/src/core/platform/custom-objects/function-runtime.ts +0 -76
- package/src/core/platform/custom-objects/lifecycle.ts +0 -557
- package/src/core/platform/custom-objects/manager.ts +0 -959
- package/src/core/platform/custom-objects/provisioning.ts +0 -672
- package/src/core/platform/custom-objects/rql.ts +0 -375
- package/src/core/platform/custom-objects/schema-manager.ts +0 -351
- package/src/core/platform/custom-objects/typed-rql.ts +0 -1273
- package/src/core/platform/custom-objects/types.ts +0 -753
- package/src/core/platform/custom-objects/validation.ts +0 -573
- package/src/core/platform/custom-objects.ts +0 -269
- package/src/core/platform/manifest/README.md +0 -26
- package/src/core/platform/manifest/custom-objects/action.ts +0 -87
- package/src/core/platform/manifest/custom-objects/conditions.ts +0 -762
- package/src/core/platform/manifest/custom-objects/existing.ts +0 -221
- package/src/core/platform/manifest/custom-objects/field-resolution.ts +0 -116
- package/src/core/platform/manifest/custom-objects/function-file.ts +0 -149
- package/src/core/platform/manifest/custom-objects/list-view.ts +0 -95
- package/src/core/platform/manifest/custom-objects/object-list-page.ts +0 -87
- package/src/core/platform/manifest/custom-objects/page-layout.ts +0 -380
- package/src/core/platform/manifest/custom-objects/register.ts +0 -555
- package/src/core/platform/manifest/custom-objects/rule.ts +0 -192
- package/src/core/platform/manifest/custom-objects/sdui-page.ts +0 -515
- package/src/core/platform/manifest/custom-objects/typed-condition.ts +0 -617
- package/src/core/platform/manifest/custom-objects/types.ts +0 -92
- package/src/core/platform/manifest/custom-objects/validation.ts +0 -70
- package/src/core/platform/manifest/custom-objects/workflow.ts +0 -71
- package/src/core/platform/manifest/custom-objects.ts +0 -203
- package/src/pebble-sdui-web-custom-apps-shim.d.ts +0 -3
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { Validation, type ValidationProps } from '../../../../lib/manifest';
|
|
2
|
-
import type { AnyCustomObjectDefinition } from '../../custom-objects/types';
|
|
3
|
-
import type { TypedManifestFieldInput } from './field-resolution';
|
|
4
|
-
import { resolveTypedManifestField } from './field-resolution';
|
|
5
|
-
import type { ManifestRegistration } from './types';
|
|
6
|
-
import type { ManifestConditionInput } from './conditions';
|
|
7
|
-
import { resolveManifestConditionInput } from './conditions';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Initialization properties for {@link defineTypedValidation}.
|
|
11
|
-
*
|
|
12
|
-
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
13
|
-
*/
|
|
14
|
-
type TypedValidationBaseProps<TDefinition extends AnyCustomObjectDefinition> = Omit<
|
|
15
|
-
ValidationProps,
|
|
16
|
-
'rqlFormula' | 'fieldRef' | 'level'
|
|
17
|
-
> & {
|
|
18
|
-
/** Manifest condition/formula that returns `true` when the record is invalid. */
|
|
19
|
-
readonly whenInvalid: ManifestConditionInput<TDefinition>;
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Initialization properties for {@link defineTypedValidation}.
|
|
24
|
-
*
|
|
25
|
-
* `level` and `field` intentionally form a discriminated union so field-scoped
|
|
26
|
-
* validations must provide a typed field target and record-scoped validations
|
|
27
|
-
* must omit it.
|
|
28
|
-
*
|
|
29
|
-
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
30
|
-
*/
|
|
31
|
-
export type TypedValidationProps<TDefinition extends AnyCustomObjectDefinition> =
|
|
32
|
-
| (TypedValidationBaseProps<TDefinition> & {
|
|
33
|
-
readonly level: 'FIELD';
|
|
34
|
-
/** Field that should receive the validation error when `level` is `'FIELD'`. */
|
|
35
|
-
readonly field: TypedManifestFieldInput<TDefinition>;
|
|
36
|
-
})
|
|
37
|
-
| (TypedValidationBaseProps<TDefinition> & {
|
|
38
|
-
readonly level: 'RECORD';
|
|
39
|
-
/** Field targets are not allowed for record-level validations. */
|
|
40
|
-
readonly field?: never;
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Defines a validation rule using typed field names and manifest-condition fragments.
|
|
45
|
-
*
|
|
46
|
-
* @param registration - Manifest registration produced from the typed object definition.
|
|
47
|
-
* @param props - Typed validation properties.
|
|
48
|
-
* @returns Low-level validation manifest instance.
|
|
49
|
-
* @throws {Error} When `level` is `'FIELD'` but no `field` is provided, or when `field` is provided for a record-level validation.
|
|
50
|
-
* @typeParam TDefinition - Typed custom-object definition whose field namespace should be enforced.
|
|
51
|
-
*/
|
|
52
|
-
export function defineTypedValidation<TDefinition extends AnyCustomObjectDefinition>(
|
|
53
|
-
registration: ManifestRegistration<TDefinition>,
|
|
54
|
-
props: TypedValidationProps<TDefinition>,
|
|
55
|
-
): Validation {
|
|
56
|
-
const { whenInvalid, field, ...rest } = props;
|
|
57
|
-
|
|
58
|
-
if (rest.level === 'FIELD' && field == null) {
|
|
59
|
-
throw new Error('defineTypedValidation(...): field is required when level is FIELD.');
|
|
60
|
-
}
|
|
61
|
-
if (rest.level === 'RECORD' && field != null) {
|
|
62
|
-
throw new Error('defineTypedValidation(...): field must be omitted when level is RECORD.');
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return new Validation(registration.object, {
|
|
66
|
-
...rest,
|
|
67
|
-
rqlFormula: resolveManifestConditionInput(registration, whenInvalid),
|
|
68
|
-
...(field != null ? { fieldRef: resolveTypedManifestField(registration, field) } : {}),
|
|
69
|
-
});
|
|
70
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { Workflow, type WorkflowProps } from '../../../../lib/manifest';
|
|
2
|
-
import type { ManifestScope } from '../../../../lib/manifest/manifest-builder';
|
|
3
|
-
import type { WorkflowTrigger } from '../../../../lib/manifest/workflow';
|
|
4
|
-
import type { AnyCustomObjectDefinition } from '../../custom-objects/types';
|
|
5
|
-
import type { TypedCustomObjectLifecycleTriggerBuilder } from './conditions';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Workflow-trigger inputs accepted by {@link defineTypedWorkflow}.
|
|
9
|
-
*
|
|
10
|
-
* @typeParam TDefinition - Typed custom-object definition carried by lifecycle-trigger builders.
|
|
11
|
-
*/
|
|
12
|
-
export type TypedWorkflowTriggerInput<
|
|
13
|
-
TDefinition extends AnyCustomObjectDefinition = AnyCustomObjectDefinition,
|
|
14
|
-
> = WorkflowTrigger | TypedCustomObjectLifecycleTriggerBuilder<TDefinition, any>;
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Initialization properties for {@link defineTypedWorkflow}.
|
|
18
|
-
*
|
|
19
|
-
* The helper keeps the low-level workflow manifest class intact while allowing
|
|
20
|
-
* typed custom-object lifecycle builders to flow directly into the final
|
|
21
|
-
* workflow authoring step.
|
|
22
|
-
*
|
|
23
|
-
* @typeParam TDefinition - Typed custom-object definition carried by lifecycle-trigger builders.
|
|
24
|
-
*/
|
|
25
|
-
export interface TypedWorkflowProps<TDefinition extends AnyCustomObjectDefinition = AnyCustomObjectDefinition>
|
|
26
|
-
extends Omit<WorkflowProps, 'trigger'> {
|
|
27
|
-
/** Workflow trigger authored either as a low-level trigger object or a typed lifecycle builder. */
|
|
28
|
-
readonly trigger: TypedWorkflowTriggerInput<TDefinition>;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
function isTypedLifecycleTriggerBuilder<TDefinition extends AnyCustomObjectDefinition>(
|
|
32
|
-
value: TypedWorkflowTriggerInput<TDefinition>,
|
|
33
|
-
): value is TypedCustomObjectLifecycleTriggerBuilder<TDefinition, any> {
|
|
34
|
-
return typeof value === 'object' && value != null && 'build' in value && typeof value.build === 'function';
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Resolves a typed workflow-trigger input into the low-level manifest trigger shape.
|
|
39
|
-
*
|
|
40
|
-
* @param trigger - Workflow trigger input to resolve.
|
|
41
|
-
* @returns Low-level workflow trigger consumed by {@link Workflow}.
|
|
42
|
-
* @typeParam TDefinition - Typed custom-object definition carried by lifecycle-trigger builders.
|
|
43
|
-
*/
|
|
44
|
-
export function resolveTypedWorkflowTrigger<TDefinition extends AnyCustomObjectDefinition>(
|
|
45
|
-
trigger: TypedWorkflowTriggerInput<TDefinition>,
|
|
46
|
-
): WorkflowTrigger {
|
|
47
|
-
return isTypedLifecycleTriggerBuilder(trigger) ? trigger.build() : trigger;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* Defines a workflow while accepting typed custom-object lifecycle trigger builders.
|
|
52
|
-
*
|
|
53
|
-
* Prefer {@link defineTypedWorkflowFromFunctionFile} for the common colocated-
|
|
54
|
-
* handler path. Use this lower-level explicit form when the backing function is
|
|
55
|
-
* already defined separately or when the caller wants to pass a fully built
|
|
56
|
-
* low-level trigger object.
|
|
57
|
-
*
|
|
58
|
-
* @param scope - Manifest scope that should own the workflow.
|
|
59
|
-
* @param props - Workflow properties with a typed or low-level trigger.
|
|
60
|
-
* @returns Low-level workflow manifest instance.
|
|
61
|
-
* @typeParam TDefinition - Typed custom-object definition carried by lifecycle-trigger builders.
|
|
62
|
-
*/
|
|
63
|
-
export function defineTypedWorkflow<TDefinition extends AnyCustomObjectDefinition>(
|
|
64
|
-
scope: ManifestScope,
|
|
65
|
-
props: TypedWorkflowProps<TDefinition>,
|
|
66
|
-
): Workflow {
|
|
67
|
-
return new Workflow(scope, {
|
|
68
|
-
...props,
|
|
69
|
-
trigger: resolveTypedWorkflowTrigger(props.trigger),
|
|
70
|
-
});
|
|
71
|
-
}
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Public manifest-integration surface for typed custom objects.
|
|
3
|
-
*
|
|
4
|
-
* Import this module when you want to materialize typed custom-object
|
|
5
|
-
* definitions into low-level manifest classes or use manifest-specific helpers
|
|
6
|
-
* such as typed list views and page layouts.
|
|
7
|
-
*
|
|
8
|
-
* Relationship to the rest of the SDK:
|
|
9
|
-
*
|
|
10
|
-
* ```text
|
|
11
|
-
* core/platform/custom-objects
|
|
12
|
-
* |
|
|
13
|
-
* v
|
|
14
|
-
* core/platform/manifest/custom-objects
|
|
15
|
-
* |
|
|
16
|
-
* v
|
|
17
|
-
* lib/manifest
|
|
18
|
-
* ```
|
|
19
|
-
*
|
|
20
|
-
* The implementation lives under `core/platform/manifest/custom-objects/`, but
|
|
21
|
-
* this file is the stable public entrypoint that consumers should import from:
|
|
22
|
-
*
|
|
23
|
-
* ```ts
|
|
24
|
-
* import { registerManifestCustomObject } from '@rippling/rippling-sdk/core/platform/manifest/custom-objects';
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
|
|
28
|
-
/** Manifest-registration result and field-class mapping types used by the typed manifest adapters. */
|
|
29
|
-
export type { ManifestFieldForDefinition, ManifestRegistration } from './custom-objects/types';
|
|
30
|
-
|
|
31
|
-
/** Manifest-bridge options and tuple types used when materializing typed schemas. */
|
|
32
|
-
export type {
|
|
33
|
-
ManifestRegistrationTuple,
|
|
34
|
-
RegisterManifestCustomObjectOptions,
|
|
35
|
-
RegisterManifestCustomObjectsOptions,
|
|
36
|
-
} from './custom-objects/register';
|
|
37
|
-
|
|
38
|
-
/** Bridges that convert typed schemas into the existing manifest class model. */
|
|
39
|
-
export { registerManifestCustomObject, registerManifestCustomObjects } from './custom-objects/register';
|
|
40
|
-
|
|
41
|
-
/** Source-file loading props and result types for typed workflow/action wiring plus SDUI page wiring. */
|
|
42
|
-
export type {
|
|
43
|
-
ManifestFunctionFileSource,
|
|
44
|
-
ManifestFunctionFromFileProps,
|
|
45
|
-
SduiPageFromFunctionFileProps,
|
|
46
|
-
SduiPageFromFunctionFileResult,
|
|
47
|
-
TypedWorkflowFromFunctionFileProps,
|
|
48
|
-
TypedWorkflowFromFunctionFileResult,
|
|
49
|
-
} from './custom-objects/function-file';
|
|
50
|
-
|
|
51
|
-
/** Helpers that wire one colocated handler file into a typed workflow or SDUI page plus backing manifest function. */
|
|
52
|
-
export {
|
|
53
|
-
defineSduiPageFromFunctionFile,
|
|
54
|
-
defineTypedWorkflowFromFunctionFile,
|
|
55
|
-
} from './custom-objects/function-file';
|
|
56
|
-
|
|
57
|
-
/** Shared manifest field-name types used by typed list-view and page-layout helpers. */
|
|
58
|
-
export type {
|
|
59
|
-
StandardManifestFieldName,
|
|
60
|
-
TypedManifestFieldInput,
|
|
61
|
-
TypedManifestFieldName,
|
|
62
|
-
} from './custom-objects/field-resolution';
|
|
63
|
-
|
|
64
|
-
/** Shared field resolver used by typed manifest helpers. */
|
|
65
|
-
export { resolveTypedManifestField } from './custom-objects/field-resolution';
|
|
66
|
-
|
|
67
|
-
/** Typed manifest-condition fragments, field tokens, lifecycle builders, and helper inputs. */
|
|
68
|
-
export type {
|
|
69
|
-
ManifestConditionCategory,
|
|
70
|
-
ManifestConditionFieldCategory,
|
|
71
|
-
ManifestConditionFieldScope,
|
|
72
|
-
ManifestConditionFieldToken,
|
|
73
|
-
ManifestConditionFragment,
|
|
74
|
-
ManifestConditionFunctionToken,
|
|
75
|
-
ManifestConditionHelpers,
|
|
76
|
-
ManifestConditionInput,
|
|
77
|
-
ManifestCustomObjectTarget,
|
|
78
|
-
TypedCustomObjectLifecycle,
|
|
79
|
-
TypedCustomObjectLifecycleTriggerBuilder,
|
|
80
|
-
} from './custom-objects/conditions';
|
|
81
|
-
|
|
82
|
-
/** Typed manifest-condition and custom-object lifecycle helper families. */
|
|
83
|
-
export { createManifestConditionHelpers, customObjectLifecycle } from './custom-objects/conditions';
|
|
84
|
-
|
|
85
|
-
/** Parsed-string typed manifest-condition field-name types. */
|
|
86
|
-
export type {
|
|
87
|
-
ParsedConditionFieldName,
|
|
88
|
-
ParsedConditionStandardFieldName,
|
|
89
|
-
} from './custom-objects/typed-condition';
|
|
90
|
-
|
|
91
|
-
/** Parsed-string manifest-condition compiler for the typed custom-object lane. */
|
|
92
|
-
export { typedCondition } from './custom-objects/typed-condition';
|
|
93
|
-
|
|
94
|
-
/** Typed list-view field names and props for manifest custom-object registrations. */
|
|
95
|
-
export type {
|
|
96
|
-
StandardListViewFieldName,
|
|
97
|
-
TypedListViewDefProps,
|
|
98
|
-
TypedListViewFieldInput,
|
|
99
|
-
TypedListViewFieldName,
|
|
100
|
-
} from './custom-objects/list-view';
|
|
101
|
-
|
|
102
|
-
/** Typed list-view helper with object-specific field-name IntelliSense. */
|
|
103
|
-
export { defineTypedListView } from './custom-objects/list-view';
|
|
104
|
-
|
|
105
|
-
/** Typed page-layout field-array types for manifest custom-object registrations. */
|
|
106
|
-
export type {
|
|
107
|
-
TypedBasicPageLayoutProps,
|
|
108
|
-
TypedCustomObjectPageLayoutProps,
|
|
109
|
-
TypedFieldsSection,
|
|
110
|
-
TypedPageLayoutSection,
|
|
111
|
-
TypedPageLayoutTab,
|
|
112
|
-
TypedSectionField,
|
|
113
|
-
TypedSectionFieldInput,
|
|
114
|
-
TypedSystemSectionEdit,
|
|
115
|
-
TypedSystemTabEdit,
|
|
116
|
-
TypedTabEdits,
|
|
117
|
-
TypedTabWithSections,
|
|
118
|
-
} from './custom-objects/page-layout';
|
|
119
|
-
|
|
120
|
-
/** Typed page-layout helpers with object-specific field-name IntelliSense for common field arrays and basic layouts. */
|
|
121
|
-
export { defineBasicTypedPageLayout, defineTypedPageLayout } from './custom-objects/page-layout';
|
|
122
|
-
|
|
123
|
-
/** Typed validation helper properties. */
|
|
124
|
-
export type { TypedValidationProps } from './custom-objects/validation';
|
|
125
|
-
|
|
126
|
-
/** Typed validation helper that accepts manifest-condition fragments and typed fields. */
|
|
127
|
-
export { defineTypedValidation } from './custom-objects/validation';
|
|
128
|
-
|
|
129
|
-
/** Typed rule-action values, helpers, and rule properties. */
|
|
130
|
-
export type {
|
|
131
|
-
TypedRuleAction,
|
|
132
|
-
TypedRuleFieldSetter,
|
|
133
|
-
TypedRuleFixedValue,
|
|
134
|
-
TypedRuleHelpers,
|
|
135
|
-
TypedRuleProps,
|
|
136
|
-
} from './custom-objects/rule';
|
|
137
|
-
|
|
138
|
-
/** Typed rule-action helpers and record-triggered rule helper. */
|
|
139
|
-
export { createTypedRuleHelpers, defineTypedRule } from './custom-objects/rule';
|
|
140
|
-
|
|
141
|
-
/** Typed workflow helper properties and trigger inputs. */
|
|
142
|
-
export type { TypedWorkflowProps, TypedWorkflowTriggerInput } from './custom-objects/workflow';
|
|
143
|
-
|
|
144
|
-
/** Typed workflow helper that accepts lifecycle-trigger builders. */
|
|
145
|
-
export { defineTypedWorkflow, resolveTypedWorkflowTrigger } from './custom-objects/workflow';
|
|
146
|
-
|
|
147
|
-
/** Typed custom-object action helper props and file-wiring result types. */
|
|
148
|
-
export type {
|
|
149
|
-
TypedCustomObjectActionFromFunctionFileProps,
|
|
150
|
-
TypedCustomObjectActionFromFunctionFileResult,
|
|
151
|
-
TypedCustomObjectActionProps,
|
|
152
|
-
} from './custom-objects/action';
|
|
153
|
-
|
|
154
|
-
/** Typed custom-object action helpers. Prefer the file-backed helper for the common one-action/one-handler path. */
|
|
155
|
-
export {
|
|
156
|
-
defineTypedCustomObjectAction,
|
|
157
|
-
defineTypedCustomObjectActionFromFunctionFile,
|
|
158
|
-
} from './custom-objects/action';
|
|
159
|
-
|
|
160
|
-
/** Standard input/output types for init-only custom-object object-list page functions. */
|
|
161
|
-
export type { TypedObjectListPageInput, TypedObjectListPageOutput } from './custom-objects/object-list-page';
|
|
162
|
-
|
|
163
|
-
/** Helper that renders the standard ObjectListView-backed SDUI page-function response. */
|
|
164
|
-
export { handleTypedObjectListPageEvent } from './custom-objects/object-list-page';
|
|
165
|
-
|
|
166
|
-
/** Shared output unions and payload shapes for stateful SDUI page functions. */
|
|
167
|
-
export type {
|
|
168
|
-
TypedSduiMutationTriggerOptions,
|
|
169
|
-
TypedSduiPageActionName,
|
|
170
|
-
TypedSduiPageActionParams,
|
|
171
|
-
TypedSduiPageErrorOutput,
|
|
172
|
-
TypedSduiPageHandlerArgs,
|
|
173
|
-
TypedSduiPageHandlerOptions,
|
|
174
|
-
TypedSduiPageOutput,
|
|
175
|
-
TypedSduiPageSpecOutput,
|
|
176
|
-
TypedSduiStateAssignments,
|
|
177
|
-
TypedSduiStatePath,
|
|
178
|
-
TypedSduiStatePathForValue,
|
|
179
|
-
TypedSduiStatePathValue,
|
|
180
|
-
} from './custom-objects/sdui-page';
|
|
181
|
-
|
|
182
|
-
/** Stateful SDUI action-dispatch helpers. Prefer `defineTypedSduiPageHandlerFor(...)` for the default authoring path and keep `defineTypedSduiPageHandler(...)` as the more explicit escape hatch. */
|
|
183
|
-
export {
|
|
184
|
-
createTypedSduiMutationTrigger,
|
|
185
|
-
defineTypedSduiPageHandler,
|
|
186
|
-
defineTypedSduiPageHandlerFor,
|
|
187
|
-
defineTypedSduiStateAssignments,
|
|
188
|
-
resolveTypedSduiStatePath,
|
|
189
|
-
} from './custom-objects/sdui-page';
|
|
190
|
-
|
|
191
|
-
/** Existing-manifest rebinding option and result types for typed custom-object extensions. */
|
|
192
|
-
export type {
|
|
193
|
-
BindExistingManifestCustomObjectOptions,
|
|
194
|
-
BindExistingManifestCustomObjectsOptions,
|
|
195
|
-
ExistingManifestRegistration,
|
|
196
|
-
ExistingManifestRegistrationTuple,
|
|
197
|
-
} from './custom-objects/existing';
|
|
198
|
-
|
|
199
|
-
/** Existing-manifest rebinding helpers for the typed custom-object lane. */
|
|
200
|
-
export {
|
|
201
|
-
bindExistingManifestCustomObject,
|
|
202
|
-
bindExistingManifestCustomObjects,
|
|
203
|
-
} from './custom-objects/existing';
|