@rippling/rippling-sdk 0.2.0-alpha.48 → 0.2.0-alpha.50
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/api-promise.d.mts +1 -0
- package/api-promise.d.mts.map +1 -1
- package/api-promise.d.ts +1 -0
- package/api-promise.d.ts.map +1 -1
- package/api-promise.mjs +1 -0
- package/api-promise.mjs.map +1 -1
- package/client.d.mts.map +1 -1
- package/client.d.ts.map +1 -1
- package/client.mjs.map +1 -1
- package/core/api-promise.d.mts.map +1 -1
- package/core/api-promise.d.ts.map +1 -1
- package/core/api-promise.mjs.map +1 -1
- package/core/error.mjs.map +1 -1
- package/core/pagination.d.mts.map +1 -1
- package/core/pagination.d.ts.map +1 -1
- package/core/pagination.mjs.map +1 -1
- package/core/resource.d.mts.map +1 -1
- package/core/resource.d.ts.map +1 -1
- package/core/uploads.d.mts.map +1 -1
- package/core/uploads.d.ts.map +1 -1
- package/core/uploads.mjs.map +1 -1
- package/error.d.mts +1 -0
- package/error.d.mts.map +1 -1
- package/error.d.ts +1 -0
- package/error.d.ts.map +1 -1
- package/error.mjs +1 -0
- package/error.mjs.map +1 -1
- package/examples/manifest/dental-practice-management/dental-practice-management.ts +18 -41
- package/examples/manifest/dental-practice-management/functions/chair-schedule.ts +31 -0
- package/examples/manifest/dental-practice-management/functions/operatory-list.ts +31 -0
- package/examples/manifest/dental-practice-management/functions/patient-list.ts +31 -0
- package/examples/manifest/dental-practice-management/functions/treatment-plan-list.ts +31 -0
- package/examples/manifest/dental-practice-management/manifest.json +22 -19
- package/examples/manifest/existing-manifest-mutations/existing-manifest-mutations.ts +3 -0
- package/examples/manifest/gym-membership-management/functions/check-in-desk.ts +31 -0
- package/examples/manifest/gym-membership-management/functions/member-list.ts +31 -0
- package/examples/manifest/gym-membership-management/functions/today-schedule.ts +31 -0
- package/examples/manifest/gym-membership-management/functions/trainer-list.ts +31 -0
- package/examples/manifest/gym-membership-management/gym-membership-management.ts +28 -41
- package/examples/manifest/gym-membership-management/manifest.json +22 -19
- package/examples/manifest/simple-todo-app/functions/todo-list.ts +31 -0
- package/examples/manifest/simple-todo-app/manifest.json +429 -0
- package/examples/manifest/simple-todo-app/simple-todo-app.ts +167 -0
- package/examples/sdui/sdui-crud-todo/rippling-function.ts +14 -23
- package/examples/sdui/sdui-showcase/rippling-function.ts +8 -23
- package/examples/sdui/sdui-tab-multi-view/rippling-function.ts +276 -295
- package/examples/sdui/vote/rippling-function.ts +10 -25
- package/index.d.mts.map +1 -1
- package/index.d.ts.map +1 -1
- package/index.mjs.map +1 -1
- package/internal/detect-platform.mjs.map +1 -1
- package/internal/headers.mjs.map +1 -1
- package/internal/parse.d.mts.map +1 -1
- package/internal/parse.d.ts.map +1 -1
- package/internal/parse.mjs.map +1 -1
- package/internal/request-options.d.mts.map +1 -1
- package/internal/request-options.d.ts.map +1 -1
- package/internal/shims.d.mts +6 -0
- package/internal/shims.d.mts.map +1 -1
- package/internal/shims.d.ts +6 -0
- package/internal/shims.d.ts.map +1 -1
- package/internal/to-file.d.mts.map +1 -1
- package/internal/to-file.d.ts.map +1 -1
- package/internal/to-file.mjs.map +1 -1
- package/internal/tslib.js +4 -0
- package/internal/types.d.mts +4 -4
- package/internal/types.d.mts.map +1 -1
- package/internal/types.d.ts +4 -4
- package/internal/types.d.ts.map +1 -1
- package/internal/uploads.d.mts.map +1 -1
- package/internal/uploads.d.ts.map +1 -1
- package/internal/uploads.mjs.map +1 -1
- package/internal/utils/base64.mjs.map +1 -1
- package/internal/utils/log.d.mts.map +1 -1
- package/internal/utils/log.d.ts.map +1 -1
- package/internal/utils/log.mjs.map +1 -1
- package/internal/utils/path.mjs.map +1 -1
- package/internal/utils/query.mjs.map +1 -1
- package/internal/utils/values.mjs.map +1 -1
- package/internal/utils.d.mts.map +1 -1
- package/internal/utils.d.ts.map +1 -1
- package/internal/utils.mjs.map +1 -1
- package/lib/manifest/_existing-component-fields.d.mts +1 -0
- package/lib/manifest/_existing-component-fields.d.mts.map +1 -1
- package/lib/manifest/_existing-component-fields.d.ts +1 -0
- package/lib/manifest/_existing-component-fields.d.ts.map +1 -1
- package/lib/manifest/_existing-component-fields.js +5 -0
- package/lib/manifest/_existing-component-fields.js.map +1 -1
- package/lib/manifest/_existing-component-fields.mjs +4 -0
- package/lib/manifest/_existing-component-fields.mjs.map +1 -1
- package/lib/manifest/app.d.mts +2 -2
- package/lib/manifest/app.d.mts.map +1 -1
- package/lib/manifest/app.d.ts +2 -2
- package/lib/manifest/app.d.ts.map +1 -1
- package/lib/manifest/app.js +2 -3
- package/lib/manifest/app.js.map +1 -1
- package/lib/manifest/app.mjs +3 -4
- package/lib/manifest/app.mjs.map +1 -1
- package/lib/manifest/category.d.mts.map +1 -1
- package/lib/manifest/category.d.ts.map +1 -1
- package/lib/manifest/category.js +1 -3
- package/lib/manifest/category.js.map +1 -1
- package/lib/manifest/category.mjs +2 -4
- package/lib/manifest/category.mjs.map +1 -1
- package/lib/manifest/custom-object-field-section.d.mts.map +1 -1
- package/lib/manifest/custom-object-field-section.d.ts.map +1 -1
- package/lib/manifest/custom-object-field-section.mjs.map +1 -1
- package/lib/manifest/custom-object-page-layout.d.mts +148 -34
- package/lib/manifest/custom-object-page-layout.d.mts.map +1 -1
- package/lib/manifest/custom-object-page-layout.d.ts +148 -34
- package/lib/manifest/custom-object-page-layout.d.ts.map +1 -1
- package/lib/manifest/custom-object-page-layout.js +61 -18
- package/lib/manifest/custom-object-page-layout.js.map +1 -1
- package/lib/manifest/custom-object-page-layout.mjs +61 -18
- package/lib/manifest/custom-object-page-layout.mjs.map +1 -1
- package/lib/manifest/custom-object.d.mts +3 -3
- package/lib/manifest/custom-object.d.mts.map +1 -1
- package/lib/manifest/custom-object.d.ts +3 -3
- package/lib/manifest/custom-object.d.ts.map +1 -1
- package/lib/manifest/custom-object.js +3 -4
- package/lib/manifest/custom-object.js.map +1 -1
- package/lib/manifest/custom-object.mjs +4 -5
- package/lib/manifest/custom-object.mjs.map +1 -1
- package/lib/manifest/existing-manifest-context.d.mts.map +1 -1
- package/lib/manifest/existing-manifest-context.d.ts.map +1 -1
- package/lib/manifest/existing-manifest-context.js +1 -3
- package/lib/manifest/existing-manifest-context.js.map +1 -1
- package/lib/manifest/existing-manifest-context.mjs +2 -4
- package/lib/manifest/existing-manifest-context.mjs.map +1 -1
- package/lib/manifest/field.d.mts +5 -5
- package/lib/manifest/field.d.mts.map +1 -1
- package/lib/manifest/field.d.ts +5 -5
- package/lib/manifest/field.d.ts.map +1 -1
- package/lib/manifest/field.js +4 -5
- package/lib/manifest/field.js.map +1 -1
- package/lib/manifest/field.mjs +5 -6
- package/lib/manifest/field.mjs.map +1 -1
- package/lib/manifest/index.d.mts +1 -1
- package/lib/manifest/index.d.mts.map +1 -1
- package/lib/manifest/index.d.ts +1 -1
- package/lib/manifest/index.d.ts.map +1 -1
- package/lib/manifest/index.js.map +1 -1
- package/lib/manifest/index.mjs.map +1 -1
- package/lib/manifest/list-view.d.mts +2 -2
- package/lib/manifest/list-view.d.mts.map +1 -1
- package/lib/manifest/list-view.d.ts +2 -2
- package/lib/manifest/list-view.d.ts.map +1 -1
- package/lib/manifest/list-view.js +2 -4
- package/lib/manifest/list-view.js.map +1 -1
- package/lib/manifest/list-view.mjs +3 -5
- package/lib/manifest/list-view.mjs.map +1 -1
- package/lib/manifest/manifest-builder.d.mts +3 -3
- package/lib/manifest/manifest-builder.d.mts.map +1 -1
- package/lib/manifest/manifest-builder.d.ts +3 -3
- package/lib/manifest/manifest-builder.d.ts.map +1 -1
- package/lib/manifest/manifest-builder.js +3 -5
- package/lib/manifest/manifest-builder.js.map +1 -1
- package/lib/manifest/manifest-builder.mjs +3 -5
- package/lib/manifest/manifest-builder.mjs.map +1 -1
- package/lib/manifest/manifest-function.d.mts +4 -5
- package/lib/manifest/manifest-function.d.mts.map +1 -1
- package/lib/manifest/manifest-function.d.ts +4 -5
- package/lib/manifest/manifest-function.d.ts.map +1 -1
- package/lib/manifest/manifest-function.js +5 -8
- package/lib/manifest/manifest-function.js.map +1 -1
- package/lib/manifest/manifest-function.mjs +6 -9
- package/lib/manifest/manifest-function.mjs.map +1 -1
- package/lib/manifest/rule.d.mts +2 -2
- package/lib/manifest/rule.d.mts.map +1 -1
- package/lib/manifest/rule.d.ts +2 -2
- package/lib/manifest/rule.d.ts.map +1 -1
- package/lib/manifest/rule.js +2 -4
- package/lib/manifest/rule.js.map +1 -1
- package/lib/manifest/rule.mjs +3 -5
- package/lib/manifest/rule.mjs.map +1 -1
- package/lib/manifest/sdui-page.d.mts +2 -2
- package/lib/manifest/sdui-page.d.mts.map +1 -1
- package/lib/manifest/sdui-page.d.ts +2 -2
- package/lib/manifest/sdui-page.d.ts.map +1 -1
- package/lib/manifest/sdui-page.js +2 -4
- package/lib/manifest/sdui-page.js.map +1 -1
- package/lib/manifest/sdui-page.mjs +3 -5
- package/lib/manifest/sdui-page.mjs.map +1 -1
- package/lib/manifest/validation.d.mts.map +1 -1
- package/lib/manifest/validation.d.ts.map +1 -1
- package/lib/manifest/validation.mjs.map +1 -1
- package/lib/manifest.d.mts +2 -0
- package/lib/manifest.d.mts.map +1 -0
- package/lib/manifest.d.ts +2 -0
- package/lib/manifest.d.ts.map +1 -0
- package/lib/manifest.js +5 -0
- package/lib/manifest.js.map +1 -0
- package/lib/manifest.mjs +2 -0
- package/lib/manifest.mjs.map +1 -0
- package/lib/sdui/actions.mjs.map +1 -1
- package/lib/sdui/component.d.mts.map +1 -1
- package/lib/sdui/component.d.ts.map +1 -1
- package/lib/sdui/components.d.mts +100 -211
- package/lib/sdui/components.d.mts.map +1 -1
- package/lib/sdui/components.d.ts +100 -211
- package/lib/sdui/components.d.ts.map +1 -1
- package/lib/sdui/components.js +96 -182
- package/lib/sdui/components.js.map +1 -1
- package/lib/sdui/components.mjs +93 -178
- package/lib/sdui/components.mjs.map +1 -1
- package/lib/sdui/conditions.mjs.map +1 -1
- package/lib/sdui/directives.d.mts.map +1 -1
- package/lib/sdui/directives.d.ts.map +1 -1
- package/lib/sdui/directives.mjs.map +1 -1
- package/lib/sdui/index.d.mts +12 -52
- package/lib/sdui/index.d.mts.map +1 -1
- package/lib/sdui/index.d.ts +12 -52
- package/lib/sdui/index.d.ts.map +1 -1
- package/lib/sdui/index.js +10 -50
- package/lib/sdui/index.js.map +1 -1
- package/lib/sdui/index.mjs +16 -25
- package/lib/sdui/index.mjs.map +1 -1
- package/lib/sdui/propTypes.d.mts +3156 -3515
- package/lib/sdui/propTypes.d.mts.map +1 -1
- package/lib/sdui/propTypes.d.ts +3156 -3515
- package/lib/sdui/propTypes.d.ts.map +1 -1
- package/lib/sdui/propTypes.js +1 -1
- package/lib/sdui/propTypes.mjs +1 -1
- package/lib/sdui/props.d.mts.map +1 -1
- package/lib/sdui/props.d.ts.map +1 -1
- package/lib/sdui/props.mjs.map +1 -1
- package/lib/sdui/render.d.mts.map +1 -1
- package/lib/sdui/render.d.ts.map +1 -1
- package/lib/sdui.d.mts +3 -0
- package/lib/sdui.d.mts.map +1 -0
- package/lib/sdui.d.ts +3 -0
- package/lib/sdui.d.ts.map +1 -0
- package/lib/sdui.js +8 -0
- package/lib/sdui.js.map +1 -0
- package/lib/sdui.mjs +3 -0
- package/lib/sdui.mjs.map +1 -0
- package/package.json +1 -1
- package/pagination.d.mts +1 -0
- package/pagination.d.mts.map +1 -1
- package/pagination.d.ts +1 -0
- package/pagination.d.ts.map +1 -1
- package/pagination.mjs +1 -0
- package/pagination.mjs.map +1 -1
- package/resource.d.mts +1 -0
- package/resource.d.mts.map +1 -1
- package/resource.d.ts +1 -0
- package/resource.d.ts.map +1 -1
- package/resource.mjs +1 -0
- package/resource.mjs.map +1 -1
- package/resources/business-partner-groups.d.mts.map +1 -1
- package/resources/business-partner-groups.d.ts.map +1 -1
- package/resources/business-partner-groups.mjs.map +1 -1
- package/resources/business-partners.d.mts.map +1 -1
- package/resources/business-partners.d.ts.map +1 -1
- package/resources/business-partners.mjs.map +1 -1
- package/resources/candidate-applications.d.mts.map +1 -1
- package/resources/candidate-applications.d.ts.map +1 -1
- package/resources/candidate-applications.mjs.map +1 -1
- package/resources/candidates.d.mts.map +1 -1
- package/resources/candidates.d.ts.map +1 -1
- package/resources/candidates.mjs.map +1 -1
- package/resources/companies.d.mts.map +1 -1
- package/resources/companies.d.ts.map +1 -1
- package/resources/companies.mjs.map +1 -1
- package/resources/company-legal-entities.d.mts.map +1 -1
- package/resources/company-legal-entities.d.ts.map +1 -1
- package/resources/company-legal-entities.mjs.map +1 -1
- package/resources/company-legal-entity-workers.d.mts.map +1 -1
- package/resources/company-legal-entity-workers.d.ts.map +1 -1
- package/resources/company-legal-entity-workers.mjs.map +1 -1
- package/resources/compensation-bands-details.d.mts.map +1 -1
- package/resources/compensation-bands-details.d.ts.map +1 -1
- package/resources/compensation-bands-details.mjs.map +1 -1
- package/resources/compensations.d.mts.map +1 -1
- package/resources/compensations.d.ts.map +1 -1
- package/resources/compensations.mjs.map +1 -1
- package/resources/custom-apps.d.mts.map +1 -1
- package/resources/custom-apps.d.ts.map +1 -1
- package/resources/custom-apps.mjs.map +1 -1
- package/resources/custom-fields.d.mts.map +1 -1
- package/resources/custom-fields.d.ts.map +1 -1
- package/resources/custom-fields.mjs.map +1 -1
- package/resources/custom-objects/custom-objects.d.mts.map +1 -1
- package/resources/custom-objects/custom-objects.d.ts.map +1 -1
- package/resources/custom-objects/custom-objects.mjs.map +1 -1
- package/resources/custom-objects/fields.d.mts.map +1 -1
- package/resources/custom-objects/fields.d.ts.map +1 -1
- package/resources/custom-objects/fields.mjs.map +1 -1
- package/resources/custom-objects/index.d.mts.map +1 -1
- package/resources/custom-objects/index.d.ts.map +1 -1
- package/resources/custom-objects/index.mjs.map +1 -1
- package/resources/custom-objects/records.d.mts.map +1 -1
- package/resources/custom-objects/records.d.ts.map +1 -1
- package/resources/custom-objects/records.mjs.map +1 -1
- package/resources/custom-objects.d.mts.map +1 -1
- package/resources/custom-objects.d.ts.map +1 -1
- package/resources/custom-objects.mjs.map +1 -1
- package/resources/custom-pages.d.mts.map +1 -1
- package/resources/custom-pages.d.ts.map +1 -1
- package/resources/custom-pages.mjs.map +1 -1
- package/resources/custom-settings.d.mts.map +1 -1
- package/resources/custom-settings.d.ts.map +1 -1
- package/resources/custom-settings.mjs.map +1 -1
- package/resources/departments.d.mts.map +1 -1
- package/resources/departments.d.ts.map +1 -1
- package/resources/departments.mjs.map +1 -1
- package/resources/draft-hires.d.mts.map +1 -1
- package/resources/draft-hires.d.ts.map +1 -1
- package/resources/draft-hires.mjs.map +1 -1
- package/resources/earning-types.d.mts.map +1 -1
- package/resources/earning-types.d.ts.map +1 -1
- package/resources/earning-types.mjs.map +1 -1
- package/resources/earnings-inputs.d.mts.map +1 -1
- package/resources/earnings-inputs.d.ts.map +1 -1
- package/resources/earnings-inputs.mjs.map +1 -1
- package/resources/employment-types.d.mts.map +1 -1
- package/resources/employment-types.d.ts.map +1 -1
- package/resources/employment-types.mjs.map +1 -1
- package/resources/entitlements.d.mts.map +1 -1
- package/resources/entitlements.d.ts.map +1 -1
- package/resources/entitlements.mjs.map +1 -1
- package/resources/files.d.mts.map +1 -1
- package/resources/files.d.ts.map +1 -1
- package/resources/files.mjs.map +1 -1
- package/resources/functions/deployments.d.mts.map +1 -1
- package/resources/functions/deployments.d.ts.map +1 -1
- package/resources/functions/deployments.mjs.map +1 -1
- package/resources/functions/executions.d.mts.map +1 -1
- package/resources/functions/executions.d.ts.map +1 -1
- package/resources/functions/executions.mjs.map +1 -1
- package/resources/functions/functions.d.mts.map +1 -1
- package/resources/functions/functions.d.ts.map +1 -1
- package/resources/functions/functions.mjs.map +1 -1
- package/resources/functions/index.d.mts.map +1 -1
- package/resources/functions/index.d.ts.map +1 -1
- package/resources/functions/index.mjs.map +1 -1
- package/resources/functions.d.mts.map +1 -1
- package/resources/functions.d.ts.map +1 -1
- package/resources/functions.mjs.map +1 -1
- package/resources/headcount-positions.d.mts.map +1 -1
- package/resources/headcount-positions.d.ts.map +1 -1
- package/resources/headcount-positions.mjs.map +1 -1
- package/resources/headcount-priorities.d.mts.map +1 -1
- package/resources/headcount-priorities.d.ts.map +1 -1
- package/resources/headcount-priorities.mjs.map +1 -1
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/job-assignments.d.mts.map +1 -1
- package/resources/job-assignments.d.ts.map +1 -1
- package/resources/job-assignments.mjs.map +1 -1
- package/resources/job-codes.d.mts.map +1 -1
- package/resources/job-codes.d.ts.map +1 -1
- package/resources/job-codes.mjs.map +1 -1
- package/resources/job-dimensions.d.mts.map +1 -1
- package/resources/job-dimensions.d.ts.map +1 -1
- package/resources/job-dimensions.mjs.map +1 -1
- package/resources/job-functions.d.mts.map +1 -1
- package/resources/job-functions.d.ts.map +1 -1
- package/resources/job-functions.mjs.map +1 -1
- package/resources/job-pay-rate-exceptions.d.mts.map +1 -1
- package/resources/job-pay-rate-exceptions.d.ts.map +1 -1
- package/resources/job-pay-rate-exceptions.mjs.map +1 -1
- package/resources/job-requisitions-write.d.mts.map +1 -1
- package/resources/job-requisitions-write.d.ts.map +1 -1
- package/resources/job-requisitions-write.mjs.map +1 -1
- package/resources/job-requisitions.d.mts.map +1 -1
- package/resources/job-requisitions.d.ts.map +1 -1
- package/resources/job-requisitions.mjs.map +1 -1
- package/resources/kiosk-badges.d.mts.map +1 -1
- package/resources/kiosk-badges.d.ts.map +1 -1
- package/resources/kiosk-badges.mjs.map +1 -1
- package/resources/leave-accruals.d.mts.map +1 -1
- package/resources/leave-accruals.d.ts.map +1 -1
- package/resources/leave-accruals.mjs.map +1 -1
- package/resources/leave-balances.d.mts.map +1 -1
- package/resources/leave-balances.d.ts.map +1 -1
- package/resources/leave-balances.mjs.map +1 -1
- package/resources/leave-requests.d.mts.map +1 -1
- package/resources/leave-requests.d.ts.map +1 -1
- package/resources/leave-requests.mjs.map +1 -1
- package/resources/leave-types.d.mts.map +1 -1
- package/resources/leave-types.d.ts.map +1 -1
- package/resources/leave-types.mjs.map +1 -1
- package/resources/legal-entities.d.mts.map +1 -1
- package/resources/legal-entities.d.ts.map +1 -1
- package/resources/legal-entities.mjs.map +1 -1
- package/resources/levels.d.mts.map +1 -1
- package/resources/levels.d.ts.map +1 -1
- package/resources/levels.mjs.map +1 -1
- package/resources/location-factors.d.mts.map +1 -1
- package/resources/location-factors.d.ts.map +1 -1
- package/resources/location-factors.mjs.map +1 -1
- package/resources/metadata/components.d.mts.map +1 -1
- package/resources/metadata/components.d.ts.map +1 -1
- package/resources/metadata/components.mjs.map +1 -1
- package/resources/metadata/index.d.mts.map +1 -1
- package/resources/metadata/index.d.ts.map +1 -1
- package/resources/metadata/index.mjs.map +1 -1
- package/resources/metadata/metadata.d.mts.map +1 -1
- package/resources/metadata/metadata.d.ts.map +1 -1
- package/resources/metadata/metadata.mjs.map +1 -1
- package/resources/metadata/summary.d.mts.map +1 -1
- package/resources/metadata/summary.d.ts.map +1 -1
- package/resources/metadata/summary.mjs.map +1 -1
- package/resources/metadata/types.d.mts.map +1 -1
- package/resources/metadata/types.d.ts.map +1 -1
- package/resources/metadata/types.mjs.map +1 -1
- package/resources/metadata.d.mts.map +1 -1
- package/resources/metadata.d.ts.map +1 -1
- package/resources/metadata.mjs.map +1 -1
- package/resources/object-categories.d.mts.map +1 -1
- package/resources/object-categories.d.ts.map +1 -1
- package/resources/object-categories.mjs.map +1 -1
- package/resources/payroll-runs/index.d.mts.map +1 -1
- package/resources/payroll-runs/index.d.ts.map +1 -1
- package/resources/payroll-runs/index.mjs.map +1 -1
- package/resources/payroll-runs/payroll-runs.d.mts.map +1 -1
- package/resources/payroll-runs/payroll-runs.d.ts.map +1 -1
- package/resources/payroll-runs/payroll-runs.mjs.map +1 -1
- package/resources/payroll-runs/worker-payroll-records.d.mts.map +1 -1
- package/resources/payroll-runs/worker-payroll-records.d.ts.map +1 -1
- package/resources/payroll-runs/worker-payroll-records.mjs.map +1 -1
- package/resources/payroll-runs.d.mts.map +1 -1
- package/resources/payroll-runs.d.ts.map +1 -1
- package/resources/payroll-runs.mjs.map +1 -1
- package/resources/platform-capabilities.d.mts.map +1 -1
- package/resources/platform-capabilities.d.ts.map +1 -1
- package/resources/platform-capabilities.mjs.map +1 -1
- package/resources/report-runs.d.mts.map +1 -1
- package/resources/report-runs.d.ts.map +1 -1
- package/resources/report-runs.mjs.map +1 -1
- package/resources/reports/available-filters.d.mts.map +1 -1
- package/resources/reports/available-filters.d.ts.map +1 -1
- package/resources/reports/available-filters.mjs.map +1 -1
- package/resources/reports/index.d.mts.map +1 -1
- package/resources/reports/index.d.ts.map +1 -1
- package/resources/reports/index.mjs.map +1 -1
- package/resources/reports/reports.d.mts.map +1 -1
- package/resources/reports/reports.d.ts.map +1 -1
- package/resources/reports/reports.mjs.map +1 -1
- package/resources/reports.d.mts.map +1 -1
- package/resources/reports.d.ts.map +1 -1
- package/resources/reports.mjs.map +1 -1
- package/resources/schedules.d.mts.map +1 -1
- package/resources/schedules.d.ts.map +1 -1
- package/resources/schedules.mjs.map +1 -1
- package/resources/shared.d.mts.map +1 -1
- package/resources/shared.d.ts.map +1 -1
- package/resources/shift-assignments.d.mts.map +1 -1
- package/resources/shift-assignments.d.ts.map +1 -1
- package/resources/shift-assignments.mjs.map +1 -1
- package/resources/shift-inputs.d.mts.map +1 -1
- package/resources/shift-inputs.d.ts.map +1 -1
- package/resources/shift-inputs.mjs.map +1 -1
- package/resources/shiftassignments.d.mts.map +1 -1
- package/resources/shiftassignments.d.ts.map +1 -1
- package/resources/shiftassignments.mjs.map +1 -1
- package/resources/sso-me.d.mts.map +1 -1
- package/resources/sso-me.d.ts.map +1 -1
- package/resources/sso-me.mjs.map +1 -1
- package/resources/supergroups/exclusion-members.d.mts.map +1 -1
- package/resources/supergroups/exclusion-members.d.ts.map +1 -1
- package/resources/supergroups/exclusion-members.mjs.map +1 -1
- package/resources/supergroups/inclusion-members.d.mts.map +1 -1
- package/resources/supergroups/inclusion-members.d.ts.map +1 -1
- package/resources/supergroups/inclusion-members.mjs.map +1 -1
- package/resources/supergroups/index.d.mts.map +1 -1
- package/resources/supergroups/index.d.ts.map +1 -1
- package/resources/supergroups/index.mjs.map +1 -1
- package/resources/supergroups/members.d.mts.map +1 -1
- package/resources/supergroups/members.d.ts.map +1 -1
- package/resources/supergroups/members.mjs.map +1 -1
- package/resources/supergroups/supergroups.d.mts.map +1 -1
- package/resources/supergroups/supergroups.d.ts.map +1 -1
- package/resources/supergroups/supergroups.mjs.map +1 -1
- package/resources/supergroups.d.mts.map +1 -1
- package/resources/supergroups.d.ts.map +1 -1
- package/resources/supergroups.mjs.map +1 -1
- package/resources/teams.d.mts.map +1 -1
- package/resources/teams.d.ts.map +1 -1
- package/resources/teams.mjs.map +1 -1
- package/resources/time-cards.d.mts.map +1 -1
- package/resources/time-cards.d.ts.map +1 -1
- package/resources/time-cards.mjs.map +1 -1
- package/resources/time-entries.d.mts.map +1 -1
- package/resources/time-entries.d.ts.map +1 -1
- package/resources/time-entries.mjs.map +1 -1
- package/resources/titles.d.mts.map +1 -1
- package/resources/titles.d.ts.map +1 -1
- package/resources/titles.mjs.map +1 -1
- package/resources/tracks.d.mts.map +1 -1
- package/resources/tracks.d.ts.map +1 -1
- package/resources/tracks.mjs.map +1 -1
- package/resources/unassigned-shifts.d.mts.map +1 -1
- package/resources/unassigned-shifts.d.ts.map +1 -1
- package/resources/unassigned-shifts.mjs.map +1 -1
- package/resources/unassignedshifts.d.mts.map +1 -1
- package/resources/unassignedshifts.d.ts.map +1 -1
- package/resources/unassignedshifts.mjs.map +1 -1
- package/resources/users.d.mts.map +1 -1
- package/resources/users.d.ts.map +1 -1
- package/resources/users.mjs.map +1 -1
- package/resources/work-locations.d.mts.map +1 -1
- package/resources/work-locations.d.ts.map +1 -1
- package/resources/work-locations.mjs.map +1 -1
- package/resources/workers.d.mts +1 -1
- package/resources/workers.d.mts.map +1 -1
- package/resources/workers.d.ts +1 -1
- package/resources/workers.d.ts.map +1 -1
- package/resources/workers.js +1 -1
- package/resources/workers.mjs +1 -1
- package/resources/workers.mjs.map +1 -1
- package/resources/workflow-action-executions.d.mts.map +1 -1
- package/resources/workflow-action-executions.d.ts.map +1 -1
- package/resources/workflow-action-executions.mjs.map +1 -1
- package/resources.d.mts.map +1 -1
- package/resources.d.ts.map +1 -1
- package/resources.mjs.map +1 -1
- package/src/lib/manifest/_existing-component-fields.ts +9 -0
- package/src/lib/manifest/app.ts +6 -6
- package/src/lib/manifest/category.ts +2 -4
- package/src/lib/manifest/custom-object-page-layout.ts +294 -79
- package/src/lib/manifest/custom-object.ts +7 -7
- package/src/lib/manifest/existing-manifest-context.ts +6 -4
- package/src/lib/manifest/field.ts +13 -9
- package/src/lib/manifest/index.ts +27 -0
- package/src/lib/manifest/list-view.ts +6 -5
- package/src/lib/manifest/manifest-builder.ts +5 -7
- package/src/lib/manifest/manifest-function.ts +8 -9
- package/src/lib/manifest/rule.ts +6 -6
- package/src/lib/manifest/sdui-page.ts +5 -7
- package/src/lib/manifest.ts +1 -0
- package/src/lib/sdui/components.ts +181 -332
- package/src/lib/sdui/index.ts +13 -93
- package/src/lib/sdui/propTypes.ts +3509 -3892
- package/src/lib/sdui.ts +2 -0
- package/src/resources/workers.ts +1 -1
- package/src/version.ts +1 -1
- package/uploads.d.mts +1 -0
- package/uploads.d.mts.map +1 -1
- package/uploads.d.ts +1 -0
- package/uploads.d.ts.map +1 -1
- package/uploads.mjs +1 -0
- package/uploads.mjs.map +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/examples/sdui/sdui-crud-todo/sdui-crud-todo.ts +0 -282
- package/examples/sdui/sdui-showcase/sdui-showcase.ts +0 -346
- package/examples/sdui/sdui-tab-multi-view/sdui-tab-multi-view.ts +0 -914
- package/examples/sdui/vote/vote.ts +0 -294
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Category } from './category';
|
|
2
2
|
import { getExistingManifestContext, type ExistingManifestContextOptions } from './existing-manifest-context';
|
|
3
3
|
import type { ManifestComponent, ManifestComponentDeletion, ManifestScope } from './manifest-builder';
|
|
4
|
-
import { requireStringComponentField } from './_existing-component-fields';
|
|
4
|
+
import { optionalStringComponentField, requireStringComponentField } from './_existing-component-fields';
|
|
5
5
|
|
|
6
6
|
// ────────────────────────────────────────────────────────────────────────
|
|
7
7
|
// Platform-managed standard fields — mirrors
|
|
@@ -199,9 +199,9 @@ export interface CustomObjectProps {
|
|
|
199
199
|
/**
|
|
200
200
|
* Human-readable description of what this entity represents.
|
|
201
201
|
*
|
|
202
|
-
*
|
|
202
|
+
* Required.
|
|
203
203
|
*/
|
|
204
|
-
description
|
|
204
|
+
description: string;
|
|
205
205
|
/**
|
|
206
206
|
* Icon shown next to the object name in the Rippling UI.
|
|
207
207
|
*
|
|
@@ -301,7 +301,7 @@ export interface CustomObjectProps {
|
|
|
301
301
|
* `owner_role`, `created_by`, and `last_modified_by` (all `Employee` references),
|
|
302
302
|
* plus `name`, `created_at`, `updated_at`, `external_id`, and `id`. For any
|
|
303
303
|
* "the employee responsible for this record" semantics, consider using
|
|
304
|
-
* `owner_role` rather than adding a new {@link LookupField} targeting `'
|
|
304
|
+
* `owner_role` rather than adding a new {@link LookupField} targeting `'Employee'`.
|
|
305
305
|
* `owner_role` drives Rippling's record-level permissions, so a parallel field
|
|
306
306
|
* can fragment ownership and complicate the permission story.
|
|
307
307
|
*/
|
|
@@ -319,7 +319,7 @@ export class CustomObject implements ManifestScope {
|
|
|
319
319
|
private readonly _apiName: string;
|
|
320
320
|
private readonly _name: string;
|
|
321
321
|
private readonly _category: Category;
|
|
322
|
-
private _description: string
|
|
322
|
+
private _description: string;
|
|
323
323
|
private _icon: IconConfig | null | undefined;
|
|
324
324
|
private _pluralLabel: string | null | undefined;
|
|
325
325
|
private _nameFieldDetails: Record<string, any> | null | undefined;
|
|
@@ -379,8 +379,8 @@ export class CustomObject implements ManifestScope {
|
|
|
379
379
|
apiName: requireStringComponentField(component, 'api_name', CustomObject.componentType),
|
|
380
380
|
name: requireStringComponentField(component, 'name', CustomObject.componentType),
|
|
381
381
|
category: resolveCategory(categoryApiName),
|
|
382
|
+
description: optionalStringComponentField(component, 'description'),
|
|
382
383
|
};
|
|
383
|
-
if (component['description'] !== undefined) props.description = component['description'];
|
|
384
384
|
if (component['plural_label'] !== undefined) props.pluralLabel = component['plural_label'];
|
|
385
385
|
if (component['name_field_details'] !== undefined) {
|
|
386
386
|
props.nameFieldDetails = component['name_field_details'];
|
|
@@ -436,7 +436,7 @@ export class CustomObject implements ManifestScope {
|
|
|
436
436
|
type: CustomObject.componentType,
|
|
437
437
|
api_name: this._apiName,
|
|
438
438
|
name: this._name,
|
|
439
|
-
description: this._description
|
|
439
|
+
description: this._description,
|
|
440
440
|
category_api_name: this._category.getApiName(),
|
|
441
441
|
};
|
|
442
442
|
if (this._icon != null) {
|
|
@@ -10,7 +10,11 @@ import { ManifestFunction } from './manifest-function';
|
|
|
10
10
|
import { Rule } from './rule';
|
|
11
11
|
import { SduiPage } from './sdui-page';
|
|
12
12
|
import { Validation } from './validation';
|
|
13
|
-
import {
|
|
13
|
+
import {
|
|
14
|
+
optionalStringComponentField,
|
|
15
|
+
requireObjectComponentField,
|
|
16
|
+
requireStringComponentField,
|
|
17
|
+
} from './_existing-component-fields';
|
|
14
18
|
|
|
15
19
|
export interface ExistingManifest {
|
|
16
20
|
metadata?: Record<string, any>;
|
|
@@ -145,10 +149,8 @@ export class ExistingManifestContext {
|
|
|
145
149
|
const props = {
|
|
146
150
|
key,
|
|
147
151
|
name: typeof metadata['name'] === 'string' ? metadata['name'] : key,
|
|
152
|
+
description: optionalStringComponentField(metadata, 'description'),
|
|
148
153
|
};
|
|
149
|
-
if (typeof metadata['description'] === 'string') {
|
|
150
|
-
(props as Record<string, any>)['description'] = metadata['description'];
|
|
151
|
-
}
|
|
152
154
|
this.builder = new ManifestBuilder(props);
|
|
153
155
|
}
|
|
154
156
|
return this.builder;
|
|
@@ -9,7 +9,11 @@ import type { CustomObject } from './custom-object';
|
|
|
9
9
|
import { CustomObjectFieldSection } from './custom-object-field-section';
|
|
10
10
|
import { getExistingManifestContext, type ExistingManifestContextOptions } from './existing-manifest-context';
|
|
11
11
|
import type { ManifestComponentDeletion } from './manifest-builder';
|
|
12
|
-
import {
|
|
12
|
+
import {
|
|
13
|
+
optionalStringComponentField,
|
|
14
|
+
requireObjectComponentField,
|
|
15
|
+
requireStringComponentField,
|
|
16
|
+
} from './_existing-component-fields';
|
|
13
17
|
|
|
14
18
|
export interface CustomObjectFieldDeletionIdentifier {
|
|
15
19
|
customObjectApiName: string;
|
|
@@ -70,7 +74,7 @@ function cloneJson<T>(value: T): T {
|
|
|
70
74
|
interface CommonFieldProps {
|
|
71
75
|
apiName: string;
|
|
72
76
|
displayName: string;
|
|
73
|
-
description
|
|
77
|
+
description: string;
|
|
74
78
|
section: CustomObjectFieldSection;
|
|
75
79
|
}
|
|
76
80
|
|
|
@@ -86,7 +90,7 @@ export interface FieldProps {
|
|
|
86
90
|
// props under `exactOptionalPropertyTypes`.
|
|
87
91
|
fieldType?: FieldType | undefined;
|
|
88
92
|
dataType?: Record<string, any> | undefined;
|
|
89
|
-
description
|
|
93
|
+
description: string;
|
|
90
94
|
required?: boolean | null | undefined;
|
|
91
95
|
unique?: boolean | null | undefined;
|
|
92
96
|
indexed?: boolean | null | undefined;
|
|
@@ -237,7 +241,7 @@ export class Field {
|
|
|
237
241
|
private readonly _fieldDisplayName: string;
|
|
238
242
|
private readonly _customObjectApiName: string;
|
|
239
243
|
private readonly _dataType: Record<string, any>;
|
|
240
|
-
private readonly _description: string
|
|
244
|
+
private readonly _description: string;
|
|
241
245
|
private readonly _isRequired: boolean | null;
|
|
242
246
|
private readonly _isUnique: boolean | null;
|
|
243
247
|
private readonly _isIndexed: boolean | null;
|
|
@@ -267,7 +271,7 @@ export class Field {
|
|
|
267
271
|
if (props.options != null) dt['options_list'] = [...props.options];
|
|
268
272
|
this._dataType = dt;
|
|
269
273
|
|
|
270
|
-
this._description = props.description
|
|
274
|
+
this._description = props.description;
|
|
271
275
|
this._isRequired = props.required ?? null;
|
|
272
276
|
this._isUnique = props.unique ?? null;
|
|
273
277
|
this._isIndexed = props.indexed ?? null;
|
|
@@ -302,8 +306,8 @@ export class Field {
|
|
|
302
306
|
apiName: requireStringComponentField(component, 'field_api_name', Field.componentType),
|
|
303
307
|
displayName: requireStringComponentField(component, 'field_display_name', Field.componentType),
|
|
304
308
|
dataType: cloneJson(requireObjectComponentField(component, 'data_type', Field.componentType)),
|
|
309
|
+
description: optionalStringComponentField(component, 'description'),
|
|
305
310
|
} as FieldProps;
|
|
306
|
-
if (component['description'] !== undefined) props.description = component['description'];
|
|
307
311
|
if (component['is_required'] !== undefined) props.required = component['is_required'];
|
|
308
312
|
if (component['is_unique'] !== undefined) props.unique = component['is_unique'];
|
|
309
313
|
if (component['is_indexed'] !== undefined) props.indexed = component['is_indexed'];
|
|
@@ -717,7 +721,7 @@ export class FileField extends Field {
|
|
|
717
721
|
export interface LookupFieldProps extends CommonFieldProps {
|
|
718
722
|
/**
|
|
719
723
|
* The object this field points to. Pass a live {@link CustomObject} instance,
|
|
720
|
-
* or a raw api_name string for native Rippling models (e.g. `'
|
|
724
|
+
* or a raw api_name string for native Rippling models (e.g. `'Employee'`).
|
|
721
725
|
*
|
|
722
726
|
* Required.
|
|
723
727
|
*/
|
|
@@ -740,11 +744,11 @@ export interface LookupFieldProps extends CommonFieldProps {
|
|
|
740
744
|
*
|
|
741
745
|
* @remarks
|
|
742
746
|
* **For "the employee responsible for this record" semantics, consider the built-in
|
|
743
|
-
* `owner_role` standard field instead of a new `LookupField` to `'
|
|
747
|
+
* `owner_role` standard field instead of a new `LookupField` to `'Employee'`.** Every
|
|
744
748
|
* `CustomObject` ships with `owner_role` (an Employee reference) plus `created_by`
|
|
745
749
|
* and `last_modified_by`. `owner_role` drives Rippling's record-level permissions,
|
|
746
750
|
* so a parallel custom employee field can fragment ownership and complicate the
|
|
747
|
-
* permission story. Consider a new `LookupField` to `'
|
|
751
|
+
* permission story. Consider a new `LookupField` to `'Employee'` when you need a
|
|
748
752
|
* *second*, non-owner employee reference (e.g. an "approver", a "manager on record").
|
|
749
753
|
*/
|
|
750
754
|
export class LookupField extends Field {
|
|
@@ -35,28 +35,55 @@ export {
|
|
|
35
35
|
type AddPageLayoutFieldsOptions,
|
|
36
36
|
type AddPageLayoutSectionOptions,
|
|
37
37
|
type AddPageLayoutTabOptions,
|
|
38
|
+
type BlueprintKey,
|
|
39
|
+
type CanvasCompositionId,
|
|
40
|
+
type CanvasSection,
|
|
41
|
+
type CustomObjectCustomSectionComponentKey,
|
|
38
42
|
type CustomObjectPageLayoutLoadFromExistingOptions,
|
|
39
43
|
type CustomObjectPageLayoutProps,
|
|
44
|
+
type CustomSection,
|
|
40
45
|
type CustomTab,
|
|
46
|
+
type FieldMovementOption,
|
|
47
|
+
type FieldRqlName,
|
|
41
48
|
type FieldsSection,
|
|
42
49
|
type HeaderEdits,
|
|
50
|
+
type HeaderButtonKey,
|
|
51
|
+
type HeaderFieldKey,
|
|
52
|
+
type JsonObject,
|
|
53
|
+
type JsonPrimitive,
|
|
54
|
+
type JsonValue,
|
|
55
|
+
type LayoutApiName,
|
|
43
56
|
type NewHeaderField,
|
|
57
|
+
type ObjectRqlName,
|
|
44
58
|
type PageLayoutDeletionIdentifier,
|
|
45
59
|
type PageLayoutMutationPosition,
|
|
46
60
|
type PageLayoutSection,
|
|
61
|
+
type PageLayoutSectionOptions,
|
|
47
62
|
type PageLayoutTab,
|
|
63
|
+
type RelatedFieldSection,
|
|
64
|
+
type RelatedObjectRqlName,
|
|
65
|
+
type RelatedObjectSection,
|
|
48
66
|
type RemoveHeaderFieldOptions,
|
|
49
67
|
type RemovePageLayoutFieldOptions,
|
|
50
68
|
type RemovePageLayoutSectionOptions,
|
|
51
69
|
type RemovePageLayoutTabOptions,
|
|
70
|
+
type ReportsSection,
|
|
71
|
+
type ReportsSectionItem,
|
|
72
|
+
type ResizableLayoutPosition,
|
|
52
73
|
type SectionField,
|
|
74
|
+
type SectionFieldDefaultValue,
|
|
75
|
+
type SectionFieldInput,
|
|
53
76
|
type SectionFieldOptions,
|
|
54
77
|
type SectionFieldRef,
|
|
55
78
|
type SectionFieldsLayout,
|
|
79
|
+
type SectionKey,
|
|
80
|
+
type SectionMovementOption,
|
|
56
81
|
type SystemHeaderFieldEdit,
|
|
57
82
|
type SystemSectionEdit,
|
|
58
83
|
type SystemTabEdit,
|
|
84
|
+
type TabKey,
|
|
59
85
|
type TabEdits,
|
|
86
|
+
type TabLayout,
|
|
60
87
|
type TabWithSections,
|
|
61
88
|
type VisibilityCondition,
|
|
62
89
|
type VisibilityConditions,
|
|
@@ -4,6 +4,7 @@ import { getExistingManifestContext, type ExistingManifestContextOptions } from
|
|
|
4
4
|
import type { Field } from './field';
|
|
5
5
|
import type { ManifestComponentDeletion } from './manifest-builder';
|
|
6
6
|
import {
|
|
7
|
+
optionalStringComponentField,
|
|
7
8
|
requireArrayComponentField,
|
|
8
9
|
requireBooleanComponentField,
|
|
9
10
|
requireStringComponentField,
|
|
@@ -74,9 +75,9 @@ export interface ListViewDefProps {
|
|
|
74
75
|
/**
|
|
75
76
|
* Human-readable description of this view.
|
|
76
77
|
*
|
|
77
|
-
*
|
|
78
|
+
* Required.
|
|
78
79
|
*/
|
|
79
|
-
description
|
|
80
|
+
description: string;
|
|
80
81
|
/**
|
|
81
82
|
* Per-column configuration overrides keyed by field API name.
|
|
82
83
|
*
|
|
@@ -151,7 +152,7 @@ export class ListViewDef {
|
|
|
151
152
|
private readonly _orderBy: Field | undefined;
|
|
152
153
|
private readonly _sortOrder: SortOrder | undefined;
|
|
153
154
|
private readonly _objectScope: ObjectScope | undefined;
|
|
154
|
-
private readonly _description: string
|
|
155
|
+
private readonly _description: string;
|
|
155
156
|
private readonly _columnConfig: Record<string, ListViewColumnConfig> | undefined;
|
|
156
157
|
private readonly _rqlFilter: string | undefined;
|
|
157
158
|
|
|
@@ -198,12 +199,12 @@ export class ListViewDef {
|
|
|
198
199
|
const props: ListViewDefProps = {
|
|
199
200
|
viewId: requireStringComponentField(component, 'view_id', ListViewDef.componentType),
|
|
200
201
|
name: requireStringComponentField(component, 'name', ListViewDef.componentType),
|
|
202
|
+
description: optionalStringComponentField(component, 'description'),
|
|
201
203
|
fields: requireArrayComponentField<string>(component, 'fields', ListViewDef.componentType).map(
|
|
202
204
|
(fieldApiName: string) => resolveField(fieldApiName),
|
|
203
205
|
),
|
|
204
206
|
isPublic: requireBooleanComponentField(component, 'public', ListViewDef.componentType),
|
|
205
207
|
};
|
|
206
|
-
if (component['description'] !== undefined) props.description = component['description'];
|
|
207
208
|
if (component['object_scope'] !== undefined) props.objectScope = component['object_scope'];
|
|
208
209
|
if (component['sort_order'] !== undefined) props.sortOrder = component['sort_order'];
|
|
209
210
|
if (component['column_config'] !== undefined) props.columnConfig = component['column_config'];
|
|
@@ -240,8 +241,8 @@ export class ListViewDef {
|
|
|
240
241
|
name: this._name,
|
|
241
242
|
public: this._isPublic,
|
|
242
243
|
fields: this._fields.map((f) => f.getApiName()),
|
|
244
|
+
description: this._description,
|
|
243
245
|
};
|
|
244
|
-
if (this._description != null) d['description'] = this._description;
|
|
245
246
|
if (this._objectScope != null) d['object_scope'] = this._objectScope;
|
|
246
247
|
if (this._sortOrder != null) d['sort_order'] = this._sortOrder;
|
|
247
248
|
if (this._orderBy != null) d['order_by'] = this._orderBy.getApiName();
|
|
@@ -74,9 +74,9 @@ export interface ManifestBuilderProps {
|
|
|
74
74
|
/**
|
|
75
75
|
* Human-readable description of what this manifest contains.
|
|
76
76
|
*
|
|
77
|
-
*
|
|
77
|
+
* Required.
|
|
78
78
|
*/
|
|
79
|
-
description
|
|
79
|
+
description: string;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
/**
|
|
@@ -131,7 +131,7 @@ export class ManifestBuilder implements ManifestScope {
|
|
|
131
131
|
}
|
|
132
132
|
this.key = props.key;
|
|
133
133
|
this.name = props.name || props.key;
|
|
134
|
-
this.description = props.description
|
|
134
|
+
this.description = props.description;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
/**
|
|
@@ -200,16 +200,14 @@ export class ManifestBuilder implements ManifestScope {
|
|
|
200
200
|
* Returns the manifest as a plain object with `metadata`, a flat `components` array,
|
|
201
201
|
* and a `components_to_delete` array when deletions are registered.
|
|
202
202
|
*
|
|
203
|
-
* @returns `{ metadata: { key, name, description
|
|
203
|
+
* @returns `{ metadata: { key, name, description }, components, components_to_delete? }`
|
|
204
204
|
*/
|
|
205
205
|
buildManifest(): BuiltManifest {
|
|
206
206
|
const metadata: Record<string, any> = {
|
|
207
207
|
key: this.key,
|
|
208
208
|
name: this.name,
|
|
209
|
+
description: this.description,
|
|
209
210
|
};
|
|
210
|
-
if (this.description) {
|
|
211
|
-
metadata['description'] = this.description;
|
|
212
|
-
}
|
|
213
211
|
const components = this._components.map((c) => c.toDict());
|
|
214
212
|
const manifest: BuiltManifest = { metadata, components };
|
|
215
213
|
if (this._componentsToDelete.length > 0) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getExistingManifestContext, type ExistingManifestContextOptions } from './existing-manifest-context';
|
|
2
2
|
import type { ManifestComponentDeletion, ManifestScope } from './manifest-builder';
|
|
3
|
-
import { requireStringComponentField } from './_existing-component-fields';
|
|
3
|
+
import { optionalStringComponentField, requireStringComponentField } from './_existing-component-fields';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Initialization properties for {@link ManifestFunction}.
|
|
@@ -27,9 +27,9 @@ export interface ManifestFunctionProps {
|
|
|
27
27
|
/**
|
|
28
28
|
* Human-readable description of what this function does.
|
|
29
29
|
*
|
|
30
|
-
*
|
|
30
|
+
* Required.
|
|
31
31
|
*/
|
|
32
|
-
description
|
|
32
|
+
description: string;
|
|
33
33
|
/**
|
|
34
34
|
* NPM package dependencies as a `{ packageName: versionRange }` map
|
|
35
35
|
* (e.g. `{ '@rippling/rippling-sdk': '^0.2.0' }`).
|
|
@@ -65,8 +65,8 @@ export interface ManifestFunctionProps {
|
|
|
65
65
|
*
|
|
66
66
|
* Functions have two primary uses:
|
|
67
67
|
* 1. **Authoring SDUI for Custom Apps** — the function returns an SDUI spec
|
|
68
|
-
* (built with `@rippling/sdui
|
|
69
|
-
* function in an {@link SduiPage} and reference it from an {@link App}.
|
|
68
|
+
* (built with `@rippling/rippling-sdk/lib/sdui`) that renders as a page tab.
|
|
69
|
+
* Wrap the function in an {@link SduiPage} and reference it from an {@link App}.
|
|
70
70
|
* 2. **Workflow / event handlers** — functions invoked from rules, automations,
|
|
71
71
|
* or callbacks that do not render UI.
|
|
72
72
|
*
|
|
@@ -83,7 +83,6 @@ export interface ManifestFunctionProps {
|
|
|
83
83
|
* code: handlerSource,
|
|
84
84
|
* dependencies: {
|
|
85
85
|
* '@rippling/rippling-sdk': '^0.2.0-alpha.33',
|
|
86
|
-
* '@rippling/sdui-builder': '^0.1.0',
|
|
87
86
|
* },
|
|
88
87
|
* isAsync: false,
|
|
89
88
|
* });
|
|
@@ -118,7 +117,7 @@ export class ManifestFunction {
|
|
|
118
117
|
this._apiName = props.apiName;
|
|
119
118
|
this._name = props.name;
|
|
120
119
|
this._code = props.code ?? '';
|
|
121
|
-
this._description = props.description
|
|
120
|
+
this._description = props.description;
|
|
122
121
|
this._dependencies = props.dependencies;
|
|
123
122
|
this._deploymentOptions = props.deploymentOptions;
|
|
124
123
|
this._allowedDomains = props.allowedDomains;
|
|
@@ -138,9 +137,9 @@ export class ManifestFunction {
|
|
|
138
137
|
const props: ManifestFunctionProps = {
|
|
139
138
|
apiName: requireStringComponentField(component, 'api_name', ManifestFunction.componentType),
|
|
140
139
|
name: requireStringComponentField(component, 'name', ManifestFunction.componentType),
|
|
140
|
+
description: optionalStringComponentField(component, 'description'),
|
|
141
141
|
};
|
|
142
142
|
if (component['code_draft'] !== undefined) props.code = component['code_draft'];
|
|
143
|
-
if (component['description'] !== undefined) props.description = component['description'];
|
|
144
143
|
if (component['dependencies'] !== undefined) props.dependencies = component['dependencies'];
|
|
145
144
|
if (component['deployment_options'] !== undefined) {
|
|
146
145
|
props.deploymentOptions = component['deployment_options'];
|
|
@@ -167,8 +166,8 @@ export class ManifestFunction {
|
|
|
167
166
|
type: ManifestFunction.componentType,
|
|
168
167
|
name: this._name,
|
|
169
168
|
api_name: this._apiName,
|
|
169
|
+
description: this._description,
|
|
170
170
|
};
|
|
171
|
-
if (this._description) component['description'] = this._description;
|
|
172
171
|
if (this._code) component['code_draft'] = this._code;
|
|
173
172
|
if (this._dependencies != null) component['dependencies'] = this._dependencies;
|
|
174
173
|
if (this._deploymentOptions != null) component['deployment_options'] = this._deploymentOptions;
|
package/src/lib/manifest/rule.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { CustomObject } from './custom-object';
|
|
|
3
3
|
import { getExistingManifestContext, type ExistingManifestContextOptions } from './existing-manifest-context';
|
|
4
4
|
import type { Field } from './field';
|
|
5
5
|
import type { ManifestComponentDeletion } from './manifest-builder';
|
|
6
|
-
import { requireStringComponentField } from './_existing-component-fields';
|
|
6
|
+
import { optionalStringComponentField, requireStringComponentField } from './_existing-component-fields';
|
|
7
7
|
|
|
8
8
|
export interface RuleDeletionIdentifier {
|
|
9
9
|
flowId: string;
|
|
@@ -75,9 +75,9 @@ export interface RuleProps {
|
|
|
75
75
|
/**
|
|
76
76
|
* Internal description of this rule (for developer reference only).
|
|
77
77
|
*
|
|
78
|
-
*
|
|
78
|
+
* Required.
|
|
79
79
|
*/
|
|
80
|
-
description
|
|
80
|
+
description: string;
|
|
81
81
|
/**
|
|
82
82
|
* Actions to run when the rule fires. Each action sets one field to a fixed value
|
|
83
83
|
* or RQL formula result.
|
|
@@ -154,7 +154,7 @@ export class Rule {
|
|
|
154
154
|
private readonly _triggerType: TriggerType;
|
|
155
155
|
private readonly _rqlCondition: string | undefined;
|
|
156
156
|
private readonly _updateTriggerType: UpdateTriggerType | undefined;
|
|
157
|
-
private readonly _description: string
|
|
157
|
+
private readonly _description: string;
|
|
158
158
|
private readonly _actions: RuleAction[];
|
|
159
159
|
|
|
160
160
|
/**
|
|
@@ -197,6 +197,7 @@ export class Rule {
|
|
|
197
197
|
flowId: requireStringComponentField(component, 'flow_id', Rule.componentType),
|
|
198
198
|
flowName: requireStringComponentField(component, 'flow_name', Rule.componentType),
|
|
199
199
|
triggerType: requireStringComponentField(component, 'trigger_type', Rule.componentType) as TriggerType,
|
|
200
|
+
description: optionalStringComponentField(component, 'description'),
|
|
200
201
|
actions: (component['actions'] ?? []).map((action: Record<string, any>): RuleAction => {
|
|
201
202
|
const out: RuleAction = {
|
|
202
203
|
targetField: resolveField(action['target_field']),
|
|
@@ -206,7 +207,6 @@ export class Rule {
|
|
|
206
207
|
return out;
|
|
207
208
|
}),
|
|
208
209
|
};
|
|
209
|
-
if (component['description'] !== undefined) props.description = component['description'];
|
|
210
210
|
if (component['rql_condition'] !== undefined) props.rqlCondition = component['rql_condition'];
|
|
211
211
|
if (component['update_trigger_type'] !== undefined) {
|
|
212
212
|
props.updateTriggerType = component['update_trigger_type'];
|
|
@@ -241,8 +241,8 @@ export class Rule {
|
|
|
241
241
|
flow_id: this._flowId,
|
|
242
242
|
flow_name: this._flowName,
|
|
243
243
|
trigger_type: this._triggerType,
|
|
244
|
+
description: this._description,
|
|
244
245
|
};
|
|
245
|
-
if (this._description != null) component['description'] = this._description;
|
|
246
246
|
if (this._updateTriggerType != null) component['update_trigger_type'] = this._updateTriggerType;
|
|
247
247
|
if (this._rqlCondition != null) component['rql_condition'] = this._rqlCondition;
|
|
248
248
|
if (this._actions.length > 0) component['actions'] = this._actions.map(actionToDict);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getExistingManifestContext, type ExistingManifestContextOptions } from './existing-manifest-context';
|
|
2
2
|
import type { ManifestFunction } from './manifest-function';
|
|
3
3
|
import type { ManifestComponentDeletion, ManifestScope } from './manifest-builder';
|
|
4
|
-
import { requireStringComponentField } from './_existing-component-fields';
|
|
4
|
+
import { optionalStringComponentField, requireStringComponentField } from './_existing-component-fields';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Initialization properties for {@link SduiPage}.
|
|
@@ -29,9 +29,9 @@ export interface SduiPageProps {
|
|
|
29
29
|
/**
|
|
30
30
|
* Human-readable description of what this page shows.
|
|
31
31
|
*
|
|
32
|
-
*
|
|
32
|
+
* Required.
|
|
33
33
|
*/
|
|
34
|
-
description
|
|
34
|
+
description: string;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
/**
|
|
@@ -92,7 +92,7 @@ export class SduiPage {
|
|
|
92
92
|
this._sduiPageId = props.sduiPageId;
|
|
93
93
|
this._name = props.name;
|
|
94
94
|
this._functionApiName = typeof props.function === 'string' ? props.function : props.function.getApiName();
|
|
95
|
-
this._description = props.description
|
|
95
|
+
this._description = props.description;
|
|
96
96
|
scope._register(this);
|
|
97
97
|
}
|
|
98
98
|
|
|
@@ -118,10 +118,8 @@ export class SduiPage {
|
|
|
118
118
|
sduiPageId: requireStringComponentField(component, 'sdui_page_id', SduiPage.componentType),
|
|
119
119
|
name: requireStringComponentField(component, 'name', SduiPage.componentType),
|
|
120
120
|
function: resolveFunction(functionApiName),
|
|
121
|
+
description: optionalStringComponentField(component, 'description'),
|
|
121
122
|
};
|
|
122
|
-
if (component['description'] !== undefined) {
|
|
123
|
-
props.description = component['description'];
|
|
124
|
-
}
|
|
125
123
|
return new SduiPage(scope, props);
|
|
126
124
|
}
|
|
127
125
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './manifest/index';
|