@lovrabet/rabetbase-cli 2.5.3-beta.2 → 2.5.3-beta.4
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/lib/api/api-doc.js +1 -1
- package/lib/api/api-group.d.ts +22 -0
- package/lib/api/api-group.js +1 -0
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.d.ts +18 -2
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/api/legacy-api-file.d.ts +11 -0
- package/lib/api/legacy-api-file.js +1 -0
- package/lib/api/model-registry-file.d.ts +36 -0
- package/lib/api/model-registry-file.js +1 -0
- package/lib/api/model-registry-scaffold.d.ts +7 -0
- package/lib/api/model-registry-scaffold.js +1 -0
- package/lib/api/model-source.d.ts +6 -0
- package/lib/api/model-source.js +1 -0
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/logs.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.d.ts +7 -0
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/batch-design.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/cross-relation-create.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-create.js +1 -0
- package/lib/commands/dataset/cross-relation-delete.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-delete.js +1 -0
- package/lib/commands/dataset/cross-relation-list.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-list.js +1 -0
- package/lib/commands/dataset/cross-relation-shared.d.ts +190 -0
- package/lib/commands/dataset/cross-relation-shared.js +1 -0
- package/lib/commands/dataset/cross-relation-update.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-update.js +1 -0
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.js +1 -1
- package/lib/commands/deployment/sync-jobs.js +1 -1
- package/lib/commands/deployment/sync-status.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/flow/create.js +1 -1
- package/lib/commands/flow/detail.js +1 -1
- package/lib/commands/flow/index.js +1 -1
- package/lib/commands/flow/list.js +1 -1
- package/lib/commands/flow/publish.js +1 -1
- package/lib/commands/flow/runtime-resources-shared.js +1 -1
- package/lib/commands/flow/runtime-role-list.js +1 -1
- package/lib/commands/flow/runtime-role-user-list.js +1 -1
- package/lib/commands/flow/runtime-user-search.js +1 -1
- package/lib/commands/flow/shared.js +1 -1
- package/lib/commands/flow/update.js +1 -1
- package/lib/commands/flow/validate.js +1 -1
- package/lib/commands/instant-api-policy/current.js +1 -1
- package/lib/commands/instant-api-policy/index.js +1 -1
- package/lib/commands/instant-api-policy/init.js +1 -1
- package/lib/commands/instant-api-policy/publish.js +1 -1
- package/lib/commands/instant-api-policy/pull.js +1 -1
- package/lib/commands/instant-api-policy/revision.js +1 -1
- package/lib/commands/instant-api-policy/revisions.js +1 -1
- package/lib/commands/instant-api-policy/rollback.js +1 -1
- package/lib/commands/instant-api-policy/shared.js +1 -1
- package/lib/commands/instant-api-policy/validate.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/api-architecture-upgrade.d.ts +28 -0
- package/lib/commands/project/api-architecture-upgrade.js +1 -0
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.d.ts +30 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/region-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.d.ts +5 -3
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.d.ts +2 -0
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +2 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.d.ts +13 -17
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +6 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/hook-directory.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/cross-db-relation.d.ts +41 -0
- package/lib/core/cross-db-relation.js +1 -0
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/flow-config.js +1 -1
- package/lib/core/instant-api-policy/config.js +1 -1
- package/lib/core/kb-search-client.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/page/lr-smart-jsx.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.d.ts +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/supported-flags.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.d.ts +0 -10
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/types/index.d.ts +11 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.d.ts +19 -0
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +6 -1
- package/skills/rabetbase/SKILL.md +16 -10
- package/skills/rabetbase/guides/backend-function.md +5 -1
- package/skills/rabetbase/guides/bff-creation-workflow.md +3 -1
- package/skills/rabetbase/guides/cross-database-bff.md +70 -0
- package/skills/rabetbase/guides/data-api-guidelines.md +35 -33
- package/skills/rabetbase/guides/sdk-client-generation.md +112 -61
- package/skills/rabetbase/guides/sql-creation-workflow.md +2 -0
- package/skills/rabetbase/guides/typescript-sdk.md +9 -0
- package/skills/rabetbase/references/rabetbase-api-pull.md +30 -19
- package/skills/rabetbase/references/rabetbase-app-list.md +1 -1
- package/skills/rabetbase/references/rabetbase-config.md +2 -1
- package/skills/rabetbase/references/rabetbase-dataset-cross-relations.md +64 -0
- package/skills/rabetbase/references/rabetbase-project-create.md +3 -3
- package/skills/rabetbase/references/rabetbase-project-upgrade.md +24 -13
- package/skills/rabetbase.manifest.json +5 -3
- package/templates/README.md +46 -6
- package/templates/generate-api/model-runtime.ts.tpl +101 -0
- package/templates/generate-api/profile-api.ts.tpl +21 -0
- package/templates/generate-api/profile-client.ts.tpl +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x5ac1da,_0x13d4b6){const _0x18b2ee=a264_0x5f0d,_0x3cefb5=_0x5ac1da();while(!![]){try{const _0x1871cf=parseInt(_0x18b2ee(0x11b))/0x1*(parseInt(_0x18b2ee(0x11c))/0x2)+-parseInt(_0x18b2ee(0x104))/0x3*(-parseInt(_0x18b2ee(0x110))/0x4)+parseInt(_0x18b2ee(0x10b))/0x5+parseInt(_0x18b2ee(0x10c))/0x6+parseInt(_0x18b2ee(0xf1))/0x7*(-parseInt(_0x18b2ee(0x113))/0x8)+-parseInt(_0x18b2ee(0x116))/0x9*(parseInt(_0x18b2ee(0x121))/0xa)+-parseInt(_0x18b2ee(0x11a))/0xb;if(_0x1871cf===_0x13d4b6)break;else _0x3cefb5['push'](_0x3cefb5['shift']());}catch(_0x4c2503){_0x3cefb5['push'](_0x3cefb5['shift']());}}}(a264_0x12d6,0x9038b));function a264_0x5f0d(_0x46ae2d,_0x5c9f51){_0x46ae2d=_0x46ae2d-0xee;const _0x12d6c2=a264_0x12d6();let _0x5f0d44=_0x12d6c2[_0x46ae2d];return _0x5f0d44;}function a264_0x12d6(){const _0x28d3bf=['HOOK_ALIAS_AMBIGUOUS','length','normalize','message','SDK\x20alias\x20\x22','values','size','Cannot\x20resolve\x20HOOK\x20directory\x20\x22','includes','alias','datasetCode','\x22\x20has\x20multiple\x20SDK\x20aliases\x20and\x20has\x20no\x20unique\x20HOOK\x20directory.','push','HOOK_DATASET_NOT_FOUND','HOOK\x20directory\x20\x22','HOOK_DATASET_CODE_AMBIGUOUS','\x22\x20resolves\x20to\x20multiple\x20Datasets.','1215PViwfG','datasetCodeToDatasets','toLowerCase','lockKey','\x22\x20has\x20multiple\x20tracked\x20HOOK\x20directories:\x20','set','entries','4899110WLBDXx','4928616fILJnn','get','functions','code','3364YzTena','HOOK_DIRECTORY_UNRESOLVED','HOOK_DIRECTORY_AMBIGUOUS','91384wHTuXd','name','join','827208keoNgq','\x22\x20differs\x20only\x20by\x20case\x20from\x20another\x20Dataset\x20code.','add','HOOK_MAPPING_DRIFT','8719799xKjmmR','1ICPvaP','1580036tDGCiV','HOOK_DUPLICATE_DIRECTORIES','Dataset\x20\x22','\x22\x20changed\x20mapping\x20from\x20Dataset\x20\x22','\x22\x20to\x20\x22','120ETzqLN','type','split','details','Dataset\x20code\x20\x22','\x22\x20collides\x20across\x20datasetCode\x20and\x20alias\x20namespaces.','HOOK','map','\x22\x20to\x20a\x20Dataset\x20alias\x20or\x20datasetCode.','273rlcVsN','\x22\x20is\x20represented\x20by\x20multiple\x20HOOK\x20directories:\x20'];a264_0x12d6=function(){return _0x28d3bf;};return a264_0x12d6();}import{CliError}from'../../errors.js';export function trackedHookDirectoryMappings(_0x39bf4a){const _0x4effa3=a264_0x5f0d,_0x3144eb=[];for(const [_0x57b91f,_0x3418ea]of Object[_0x4effa3(0x10a)](_0x39bf4a[_0x4effa3(0x10e)])){const [_0x292985,_0x24a407]=_0x57b91f[_0x4effa3(0x123)]('/');if(_0x292985!==_0x4effa3(0xee)||!_0x24a407||!_0x3418ea[_0x4effa3(0xfd)])continue;_0x3144eb[_0x4effa3(0xff)]({'alias':_0x24a407,'datasetCode':_0x3418ea[_0x4effa3(0xfd)]});}return _0x3144eb;}export function uniqueTrackedHookDirectoryByDataset(_0x4f1123){const _0x63c1a8=a264_0x5f0d,_0x3380ce=new Map();for(const _0x4133ac of trackedHookDirectoryMappings(_0x4f1123)){const _0x3215c0=directoryIdentity(_0x4133ac[_0x63c1a8(0xfd)]),_0x39215a=_0x3380ce[_0x63c1a8(0x10d)](_0x3215c0)??new Map();_0x39215a['set'](directoryIdentity(_0x4133ac[_0x63c1a8(0xfc)]),_0x4133ac[_0x63c1a8(0xfc)]),_0x3380ce[_0x63c1a8(0x109)](_0x3215c0,_0x39215a);}const _0x42f797=new Map();for(const [_0x300e11,_0x374c23]of _0x3380ce){if(_0x374c23[_0x63c1a8(0xf9)]>0x1)throw hookDirectoryError('HOOK_DUPLICATE_DIRECTORIES',_0x63c1a8(0x11e)+_0x300e11+_0x63c1a8(0x108)+[..._0x374c23[_0x63c1a8(0xf8)]()][_0x63c1a8(0x115)](',\x20')+'.',{'datasetCode':_0x300e11,'directories':[..._0x374c23[_0x63c1a8(0xf8)]()]});_0x42f797[_0x63c1a8(0x109)](_0x300e11,[..._0x374c23[_0x63c1a8(0xf8)]()][0x0]);}return _0x42f797;}export function assertUnambiguousHookDirectoryMappings(_0x2e894d){const _0x565a06=a264_0x5f0d,_0x296e04=new Map();for(const {alias:_0x25ef7c,datasetCode:_0x3bad42}of _0x2e894d){const _0x37874c=directoryIdentity(_0x25ef7c),_0x28d61e=_0x296e04[_0x565a06(0x10d)](_0x37874c)??new Set();_0x28d61e['add'](_0x3bad42),_0x296e04[_0x565a06(0x109)](_0x37874c,_0x28d61e);}for(const [_0x1af008,_0x25c462]of _0x296e04){if(_0x25c462[_0x565a06(0xf9)]>0x1)throw hookDirectoryError(_0x565a06(0x112),_0x565a06(0x101)+_0x1af008+_0x565a06(0x103),{'directoryName':_0x1af008,'datasetCodes':[..._0x25c462]});}}export function assertUnambiguousHookAliases(_0x1649a8){const _0x1a0e7c=a264_0x5f0d,_0x13cbf9=[..._0x1649a8],_0x5b8240=new Map(),_0x1c89a5=new Map();for(const {alias:_0x5b373e,datasetCode:_0x4f3e02}of _0x13cbf9){const _0x20bd53=directoryIdentity(_0x5b373e),_0x4400c8=directoryIdentity(_0x4f3e02),_0x3ee9ab=_0x5b8240[_0x1a0e7c(0x10d)](_0x20bd53)??new Set();_0x3ee9ab[_0x1a0e7c(0x118)](_0x4f3e02),_0x5b8240['set'](_0x20bd53,_0x3ee9ab);const _0x139786=_0x1c89a5['get'](_0x4400c8)??new Set();_0x139786[_0x1a0e7c(0x118)](_0x5b373e),_0x1c89a5[_0x1a0e7c(0x109)](_0x4400c8,_0x139786);}for(const [_0x1b16d9,_0x1ee982]of _0x5b8240){if(_0x1ee982[_0x1a0e7c(0xf9)]>0x1)throw hookDirectoryError('HOOK_ALIAS_AMBIGUOUS',_0x1a0e7c(0xf7)+_0x1b16d9+_0x1a0e7c(0x103),{'alias':_0x1b16d9,'datasetCodes':[..._0x1ee982]});}for(const [_0x38c647,_0x25fefd]of _0x1c89a5){if(_0x25fefd['size']>0x1)throw hookDirectoryError(_0x1a0e7c(0xf3),_0x1a0e7c(0x11e)+_0x38c647+_0x1a0e7c(0xfe),{'datasetCode':_0x38c647,'aliases':[..._0x25fefd]});}}export function buildHookDirectoryIndexes(_0x55a4ed,_0x493493=[]){const _0x579c34=a264_0x5f0d,_0x1a4f21=[..._0x493493];assertUnambiguousHookDirectoryMappings(_0x1a4f21[_0x579c34(0xef)](([_0xaceab3,_0x5379e9])=>({'alias':_0xaceab3,'datasetCode':_0x5379e9})));const _0x1ff66d=new Map(),_0x247afe=new Map();for(const _0x5dcc02 of _0x55a4ed){appendUnique(_0x1ff66d,directoryIdentity(_0x5dcc02['code']),_0x5dcc02,_0x5ea8f4=>_0x5ea8f4[_0x579c34(0x10f)]);}for(const [_0x5bad93,_0x392a18]of _0x1a4f21){appendUnique(_0x247afe,directoryIdentity(_0x5bad93),_0x392a18,_0xbbe7db=>_0xbbe7db);}return{'datasetCodeToDatasets':_0x1ff66d,'aliasToDatasetCodes':_0x247afe};}export function resolvePushHookDirectory(_0x2e550d,_0x3b622b,_0x5c24f6){const _0x4c2178=a264_0x5f0d,_0x32693b=directoryIdentity(_0x2e550d),_0x39d10f=_0x5c24f6[_0x4c2178(0x105)][_0x4c2178(0x10d)](_0x32693b)??[],_0x57e307=_0x5c24f6['aliasToDatasetCodes']['get'](_0x32693b)??[],_0x1cd824=new Set([..._0x39d10f[_0x4c2178(0xef)](_0x50b299=>_0x50b299[_0x4c2178(0x10f)]),..._0x57e307]);if(_0x1cd824[_0x4c2178(0xf9)]>0x1)throw hookDirectoryError(_0x4c2178(0x112),_0x4c2178(0x101)+_0x2e550d+_0x4c2178(0x126),{'directoryName':_0x2e550d,'datasetCodes':[..._0x1cd824]});const _0xb6abdb=[..._0x1cd824][0x0];if(_0xb6abdb&&_0x3b622b?.[_0x4c2178(0xfd)]&&_0xb6abdb!==_0x3b622b['datasetCode'])throw hookDirectoryError(_0x4c2178(0x119),'HOOK\x20directory\x20\x22'+_0x2e550d+_0x4c2178(0x11f)+_0x3b622b[_0x4c2178(0xfd)]+_0x4c2178(0x120)+_0xb6abdb+'\x22.',{'directoryName':_0x2e550d,'datasetCode':_0xb6abdb,'lockedDatasetCode':_0x3b622b[_0x4c2178(0xfd)]});const _0x37282b=_0xb6abdb?findDatasetByCode(_0x5c24f6,_0xb6abdb):undefined,_0x2b84ee=!!_0xb6abdb&&_0x57e307[_0x4c2178(0xfb)](_0xb6abdb);if(_0x37282b)return{'dataset':_0x37282b,'datasetCode':_0x37282b[_0x4c2178(0x10f)],..._0x2b84ee?{'alias':_0x2e550d}:{},'directoryProtocol':_0x2b84ee?_0x4c2178(0xfc):_0x4c2178(0xfd),'warnings':[]};const _0x461abf=_0x3b622b?.[_0x4c2178(0xfd)];if(_0x461abf){const _0xe1c9d8=findDatasetByCode(_0x5c24f6,_0x461abf);if(_0xe1c9d8)return{'dataset':_0xe1c9d8,'datasetCode':_0xe1c9d8[_0x4c2178(0x10f)],..._0x3b622b[_0x4c2178(0xfc)]?{'alias':_0x3b622b[_0x4c2178(0xfc)]}:{},'directoryProtocol':_0x3b622b[_0x4c2178(0xfc)]?_0x4c2178(0xfc):_0x4c2178(0xfd),'warnings':[]};}if(_0xb6abdb||_0x461abf){const _0x2e2e64=_0xb6abdb??_0x461abf;throw hookDirectoryError(_0x4c2178(0x100),_0x4c2178(0x101)+_0x2e550d+'\x22\x20points\x20to\x20a\x20Dataset\x20that\x20is\x20absent\x20from\x20current\x20platform\x20metadata.',{'directoryName':_0x2e550d,'datasetCode':_0x2e2e64});}throw hookDirectoryError(_0x4c2178(0x111),_0x4c2178(0xfa)+_0x2e550d+_0x4c2178(0xf0),{'directoryName':_0x2e550d});}export function preflightPushHookDirectories(_0x1a2f6f,_0x2f4f5f,_0x212c92,_0x2ff915){const _0x38a646=a264_0x5f0d,_0x6e41c3=new Map(),_0x877fa2=new Map();for(const _0x26c4bc of _0x1a2f6f){if(_0x26c4bc[_0x38a646(0x122)]!==_0x38a646(0xee))continue;const _0x326aff=_0x26c4bc['alias'];if(!_0x326aff)throw hookDirectoryError(_0x38a646(0x111),'Incomplete\x20HOOK\x20path:\x20'+_0x26c4bc[_0x38a646(0x107)],{'lockKey':_0x26c4bc['lockKey']});let _0x5cb81a;try{_0x5cb81a=resolvePushHookDirectory(_0x326aff,_0x2f4f5f[_0x38a646(0x10e)][_0x26c4bc[_0x38a646(0x107)]],_0x212c92);}catch(_0x561e1f){if(_0x2ff915&&_0x561e1f instanceof CliError&&[_0x38a646(0x100),_0x38a646(0x111)][_0x38a646(0xfb)](_0x561e1f['code'])){_0x2ff915[_0x38a646(0x109)](_0x26c4bc[_0x38a646(0x107)],_0x561e1f[_0x38a646(0xf6)]);continue;}throw _0x561e1f;}_0x6e41c3[_0x38a646(0x109)](_0x26c4bc[_0x38a646(0x107)],_0x5cb81a);const _0x1a9260=_0x877fa2[_0x38a646(0x10d)](_0x5cb81a[_0x38a646(0xfd)])??new Set();_0x1a9260[_0x38a646(0x118)](_0x326aff),_0x877fa2[_0x38a646(0x109)](_0x5cb81a[_0x38a646(0xfd)],_0x1a9260);}for(const [_0x47b2b6,_0x540e4e]of _0x877fa2){if(_0x540e4e[_0x38a646(0xf9)]>0x1)throw hookDirectoryError(_0x38a646(0x11d),'Dataset\x20\x22'+_0x47b2b6+_0x38a646(0xf2)+[..._0x540e4e]['join'](',\x20')+'.',{'datasetCode':_0x47b2b6,'directories':[..._0x540e4e]});}return _0x6e41c3;}export function hookDirectoryError(_0x3f32d0,_0x4b7677,_0x20b865){const _0x1417a5=a264_0x5f0d,_0xd25010=new CliError(_0x3f32d0,0x2,_0x3f32d0+':\x20'+_0x4b7677);return _0xd25010[_0x1417a5(0x124)]=_0x20b865,_0xd25010;}function findDatasetByCode(_0x5914b7,_0x44016d){const _0x5b00c4=a264_0x5f0d,_0x27a2e8=_0x5914b7[_0x5b00c4(0x105)][_0x5b00c4(0x10d)](directoryIdentity(_0x44016d))??[];if(_0x27a2e8[_0x5b00c4(0xf4)]>0x1)throw hookDirectoryError(_0x5b00c4(0x102),_0x5b00c4(0x125)+_0x44016d+_0x5b00c4(0x117),{'datasetCode':_0x44016d,'candidates':_0x27a2e8[_0x5b00c4(0xef)](datasetFact)});return _0x27a2e8[0x0];}function directoryIdentity(_0x504b08){const _0xd5aaad=a264_0x5f0d;return _0x504b08[_0xd5aaad(0xf5)]('NFC')[_0xd5aaad(0x106)]();}function appendUnique(_0x1e418f,_0x521e2f,_0x3d90d1,_0x23bece){const _0x2ad3d3=a264_0x5f0d,_0x15e40d=_0x1e418f[_0x2ad3d3(0x10d)](_0x521e2f)??[];!_0x15e40d['some'](_0x10b03b=>_0x23bece(_0x10b03b)===_0x23bece(_0x3d90d1))&&_0x15e40d[_0x2ad3d3(0xff)](_0x3d90d1),_0x1e418f['set'](_0x521e2f,_0x15e40d);}function datasetFact(_0x5ee582){const _0x2e5ac3=a264_0x5f0d;return{'id':_0x5ee582['id'],'name':_0x5ee582[_0x2e5ac3(0x114)],'datasetCode':_0x5ee582['code']};}
|
|
1
|
+
(function(_0x36d8af,_0x286c4a){const _0x13513a=a275_0x5ab0,_0x2fa75d=_0x36d8af();while(!![]){try{const _0x5a0861=-parseInt(_0x13513a(0x1dd))/0x1+parseInt(_0x13513a(0x1e1))/0x2+-parseInt(_0x13513a(0x1cc))/0x3*(-parseInt(_0x13513a(0x1cd))/0x4)+-parseInt(_0x13513a(0x1df))/0x5+-parseInt(_0x13513a(0x1ca))/0x6+parseInt(_0x13513a(0x1c1))/0x7+-parseInt(_0x13513a(0x1d5))/0x8*(parseInt(_0x13513a(0x1bc))/0x9);if(_0x5a0861===_0x286c4a)break;else _0x2fa75d['push'](_0x2fa75d['shift']());}catch(_0x509f00){_0x2fa75d['push'](_0x2fa75d['shift']());}}}(a275_0x1f21,0x302b0));import{CliError}from'../../errors.js';export function trackedHookDirectoryMappings(_0x59fbc6){const _0x377ec3=a275_0x5ab0,_0x4a7196=[];for(const [_0x55157b,_0x35cd1b]of Object[_0x377ec3(0x1d6)](_0x59fbc6[_0x377ec3(0x1ad)])){const [_0x33665d,_0x278707]=_0x55157b[_0x377ec3(0x1ba)]('/');if(_0x33665d!==_0x377ec3(0x1de)||!_0x278707||!_0x35cd1b[_0x377ec3(0x1b2)])continue;_0x4a7196['push']({'alias':_0x278707,'datasetCode':_0x35cd1b[_0x377ec3(0x1b2)]});}return _0x4a7196;}export function uniqueTrackedHookDirectoryByDataset(_0xa30f35){const _0x25ad0b=a275_0x5ab0,_0x375bdf=new Map();for(const _0x350445 of trackedHookDirectoryMappings(_0xa30f35)){const _0x50829b=directoryIdentity(_0x350445['datasetCode']),_0x34fb3c=_0x375bdf[_0x25ad0b(0x1b3)](_0x50829b)??new Map();_0x34fb3c['set'](directoryIdentity(_0x350445['alias']),_0x350445[_0x25ad0b(0x1b8)]),_0x375bdf[_0x25ad0b(0x1b7)](_0x50829b,_0x34fb3c);}const _0x5bcc88=new Map();for(const [_0x3a3687,_0xe2747f]of _0x375bdf){if(_0xe2747f[_0x25ad0b(0x1c3)]>0x1)throw hookDirectoryError(_0x25ad0b(0x1e0),_0x25ad0b(0x1c0)+_0x3a3687+_0x25ad0b(0x1d4)+[..._0xe2747f['values']()][_0x25ad0b(0x1d3)](',\x20')+'.',{'datasetCode':_0x3a3687,'directories':[..._0xe2747f[_0x25ad0b(0x1d1)]()]});_0x5bcc88[_0x25ad0b(0x1b7)](_0x3a3687,[..._0xe2747f[_0x25ad0b(0x1d1)]()][0x0]);}return _0x5bcc88;}export function assertUnambiguousHookDirectoryMappings(_0x505d81){const _0x986450=a275_0x5ab0,_0x56eb26=new Map();for(const {alias:_0xed36ac,datasetCode:_0x38c09a}of _0x505d81){const _0x11599c=directoryIdentity(_0xed36ac),_0x34a349=_0x56eb26[_0x986450(0x1b3)](_0x11599c)??new Set();_0x34a349[_0x986450(0x1cb)](_0x38c09a),_0x56eb26['set'](_0x11599c,_0x34a349);}for(const [_0x3c5c02,_0x343ed5]of _0x56eb26){if(_0x343ed5['size']>0x1)throw hookDirectoryError(_0x986450(0x1b9),_0x986450(0x1b0)+_0x3c5c02+_0x986450(0x1bb),{'directoryName':_0x3c5c02,'datasetCodes':[..._0x343ed5]});}}export function assertUnambiguousHookAliases(_0x270c3b){const _0x2ac80e=a275_0x5ab0,_0x274667=[..._0x270c3b],_0xb83524=new Map(),_0x465461=new Map();for(const {alias:_0x55149d,datasetCode:_0x394ddb}of _0x274667){const _0x5616a0=directoryIdentity(_0x55149d),_0x34de4a=directoryIdentity(_0x394ddb),_0x5cba3a=_0xb83524[_0x2ac80e(0x1b3)](_0x5616a0)??new Set();_0x5cba3a['add'](_0x394ddb),_0xb83524['set'](_0x5616a0,_0x5cba3a);const _0x511d52=_0x465461[_0x2ac80e(0x1b3)](_0x34de4a)??new Set();_0x511d52[_0x2ac80e(0x1cb)](_0x55149d),_0x465461[_0x2ac80e(0x1b7)](_0x34de4a,_0x511d52);}for(const [_0x3c52e6,_0x110047]of _0xb83524){if(_0x110047['size']>0x1)throw hookDirectoryError('HOOK_ALIAS_AMBIGUOUS',_0x2ac80e(0x1be)+_0x3c52e6+_0x2ac80e(0x1bb),{'alias':_0x3c52e6,'datasetCodes':[..._0x110047]});}for(const [_0x178768,_0x2d0aff]of _0x465461){if(_0x2d0aff['size']>0x1)throw hookDirectoryError(_0x2ac80e(0x1c4),_0x2ac80e(0x1c0)+_0x178768+_0x2ac80e(0x1af),{'datasetCode':_0x178768,'aliases':[..._0x2d0aff]});}}export function buildHookDirectoryIndexes(_0x4761a2,_0x54d469=[]){const _0xdb3fb2=a275_0x5ab0,_0x4781da=[..._0x54d469];assertUnambiguousHookDirectoryMappings(_0x4781da[_0xdb3fb2(0x1c2)](([_0x35d92a,_0x28b385])=>({'alias':_0x35d92a,'datasetCode':_0x28b385})));const _0x2cd90b=new Map(),_0x490a15=new Map();for(const _0x1748e5 of _0x4761a2){appendUnique(_0x2cd90b,directoryIdentity(_0x1748e5[_0xdb3fb2(0x1cf)]),_0x1748e5,_0x41a066=>_0x41a066[_0xdb3fb2(0x1cf)]);}for(const [_0x191163,_0x2de4a2]of _0x4781da){appendUnique(_0x490a15,directoryIdentity(_0x191163),_0x2de4a2,_0x20531d=>_0x20531d);}return{'datasetCodeToDatasets':_0x2cd90b,'aliasToDatasetCodes':_0x490a15};}export function resolvePushHookDirectory(_0x1b04f4,_0x4dac94,_0x4feb85){const _0x5f2dc2=a275_0x5ab0,_0x577e89=directoryIdentity(_0x1b04f4),_0x479bb3=_0x4feb85['datasetCodeToDatasets'][_0x5f2dc2(0x1b3)](_0x577e89)??[],_0xebe835=_0x4feb85['aliasToDatasetCodes'][_0x5f2dc2(0x1b3)](_0x577e89)??[],_0x51fe0f=new Set([..._0x479bb3[_0x5f2dc2(0x1c2)](_0x340c72=>_0x340c72[_0x5f2dc2(0x1cf)]),..._0xebe835]);if(_0x51fe0f[_0x5f2dc2(0x1c3)]>0x1)throw hookDirectoryError(_0x5f2dc2(0x1b9),_0x5f2dc2(0x1b0)+_0x1b04f4+_0x5f2dc2(0x1c6),{'directoryName':_0x1b04f4,'datasetCodes':[..._0x51fe0f]});const _0x1e3591=[..._0x51fe0f][0x0];if(_0x1e3591&&_0x4dac94?.[_0x5f2dc2(0x1b2)]&&_0x1e3591!==_0x4dac94[_0x5f2dc2(0x1b2)])throw hookDirectoryError(_0x5f2dc2(0x1b5),_0x5f2dc2(0x1b0)+_0x1b04f4+_0x5f2dc2(0x1dc)+_0x4dac94['datasetCode']+'\x22\x20to\x20\x22'+_0x1e3591+'\x22.',{'directoryName':_0x1b04f4,'datasetCode':_0x1e3591,'lockedDatasetCode':_0x4dac94[_0x5f2dc2(0x1b2)]});const _0x4c41b3=_0x1e3591?findDatasetByCode(_0x4feb85,_0x1e3591):undefined,_0x4ff651=!!_0x1e3591&&_0xebe835['includes'](_0x1e3591);if(_0x4c41b3)return{'dataset':_0x4c41b3,'datasetCode':_0x4c41b3[_0x5f2dc2(0x1cf)],..._0x4ff651?{'alias':_0x1b04f4}:{},'directoryProtocol':_0x4ff651?_0x5f2dc2(0x1b8):'datasetCode','warnings':[]};const _0x3cab6f=_0x4dac94?.['datasetCode'];if(_0x3cab6f){const _0x460b46=findDatasetByCode(_0x4feb85,_0x3cab6f);if(_0x460b46)return{'dataset':_0x460b46,'datasetCode':_0x460b46[_0x5f2dc2(0x1cf)],..._0x4dac94[_0x5f2dc2(0x1b8)]?{'alias':_0x4dac94[_0x5f2dc2(0x1b8)]}:{},'directoryProtocol':_0x4dac94[_0x5f2dc2(0x1b8)]?_0x5f2dc2(0x1b8):_0x5f2dc2(0x1b2),'warnings':[]};}if(_0x1e3591||_0x3cab6f){const _0x215b8a=_0x1e3591??_0x3cab6f;throw hookDirectoryError(_0x5f2dc2(0x1c7),_0x5f2dc2(0x1b0)+_0x1b04f4+_0x5f2dc2(0x1d2),{'directoryName':_0x1b04f4,'datasetCode':_0x215b8a});}throw hookDirectoryError(_0x5f2dc2(0x1c5),_0x5f2dc2(0x1bf)+_0x1b04f4+'\x22\x20to\x20a\x20Dataset\x20alias\x20or\x20datasetCode.',{'directoryName':_0x1b04f4});}export function preflightPushHookDirectories(_0xe50dd2,_0x590f8c,_0x195a76,_0xa63c54){const _0x3adaa7=a275_0x5ab0,_0x5d4a2d=new Map(),_0x1b0569=new Map();for(const _0x727e7b of _0xe50dd2){if(_0x727e7b[_0x3adaa7(0x1b4)]!=='HOOK')continue;const _0x1c7497=_0x727e7b['alias'];if(!_0x1c7497)throw hookDirectoryError(_0x3adaa7(0x1c5),_0x3adaa7(0x1da)+_0x727e7b[_0x3adaa7(0x1d8)],{'lockKey':_0x727e7b[_0x3adaa7(0x1d8)]});let _0x418d63;try{_0x418d63=resolvePushHookDirectory(_0x1c7497,_0x590f8c[_0x3adaa7(0x1ad)][_0x727e7b[_0x3adaa7(0x1d8)]],_0x195a76);}catch(_0x413829){if(_0xa63c54&&_0x413829 instanceof CliError&&[_0x3adaa7(0x1c7),_0x3adaa7(0x1c5)]['includes'](_0x413829['code'])){_0xa63c54['set'](_0x727e7b[_0x3adaa7(0x1d8)],_0x413829[_0x3adaa7(0x1e2)]);continue;}throw _0x413829;}_0x5d4a2d['set'](_0x727e7b[_0x3adaa7(0x1d8)],_0x418d63);const _0x45bf9b=_0x1b0569[_0x3adaa7(0x1b3)](_0x418d63[_0x3adaa7(0x1b2)])??new Set();_0x45bf9b[_0x3adaa7(0x1cb)](_0x1c7497),_0x1b0569['set'](_0x418d63[_0x3adaa7(0x1b2)],_0x45bf9b);}for(const [_0x51c81e,_0x33f1fa]of _0x1b0569){if(_0x33f1fa[_0x3adaa7(0x1c3)]>0x1)throw hookDirectoryError(_0x3adaa7(0x1e0),_0x3adaa7(0x1c0)+_0x51c81e+_0x3adaa7(0x1b1)+[..._0x33f1fa][_0x3adaa7(0x1d3)](',\x20')+'.',{'datasetCode':_0x51c81e,'directories':[..._0x33f1fa]});}return _0x5d4a2d;}export function hookDirectoryError(_0x2a74b6,_0x292432,_0x3dcfab){const _0x54bea7=a275_0x5ab0,_0x406c39=new CliError(_0x2a74b6,0x2,_0x2a74b6+':\x20'+_0x292432);return _0x406c39[_0x54bea7(0x1c9)]=_0x3dcfab,_0x406c39;}function findDatasetByCode(_0x4eae6e,_0x1439ff){const _0x178723=a275_0x5ab0,_0x333dcd=_0x4eae6e['datasetCodeToDatasets'][_0x178723(0x1b3)](directoryIdentity(_0x1439ff))??[];if(_0x333dcd[_0x178723(0x1b6)]>0x1)throw hookDirectoryError(_0x178723(0x1c8),_0x178723(0x1ae)+_0x1439ff+_0x178723(0x1db),{'datasetCode':_0x1439ff,'candidates':_0x333dcd[_0x178723(0x1c2)](datasetFact)});return _0x333dcd[0x0];}function directoryIdentity(_0x51603b){const _0x4ec2e7=a275_0x5ab0;return _0x51603b[_0x4ec2e7(0x1d0)]('NFC')[_0x4ec2e7(0x1bd)]();}function appendUnique(_0x1f6956,_0xddb8a0,_0x3bc553,_0x23d36a){const _0x30d4fe=a275_0x5ab0,_0x18852e=_0x1f6956[_0x30d4fe(0x1b3)](_0xddb8a0)??[];!_0x18852e[_0x30d4fe(0x1d9)](_0x545e7f=>_0x23d36a(_0x545e7f)===_0x23d36a(_0x3bc553))&&_0x18852e[_0x30d4fe(0x1d7)](_0x3bc553),_0x1f6956[_0x30d4fe(0x1b7)](_0xddb8a0,_0x18852e);}function datasetFact(_0x462c32){const _0x19fcac=a275_0x5ab0;return{'id':_0x462c32['id'],'name':_0x462c32[_0x19fcac(0x1ce)],'datasetCode':_0x462c32[_0x19fcac(0x1cf)]};}function a275_0x5ab0(_0x267e35,_0x1e76cc){_0x267e35=_0x267e35-0x1ad;const _0x1f2110=a275_0x1f21();let _0x5ab0bd=_0x1f2110[_0x267e35];return _0x5ab0bd;}function a275_0x1f21(){const _0xeb79e=['311828jpOltU','HOOK','392010FxCXfH','HOOK_DUPLICATE_DIRECTORIES','518598iquwrL','message','functions','Dataset\x20code\x20\x22','\x22\x20has\x20multiple\x20SDK\x20aliases\x20and\x20has\x20no\x20unique\x20HOOK\x20directory.','HOOK\x20directory\x20\x22','\x22\x20is\x20represented\x20by\x20multiple\x20HOOK\x20directories:\x20','datasetCode','get','type','HOOK_MAPPING_DRIFT','length','set','alias','HOOK_DIRECTORY_AMBIGUOUS','split','\x22\x20resolves\x20to\x20multiple\x20Datasets.','27099viSDem','toLowerCase','SDK\x20alias\x20\x22','Cannot\x20resolve\x20HOOK\x20directory\x20\x22','Dataset\x20\x22','2016203znLotB','map','size','HOOK_ALIAS_AMBIGUOUS','HOOK_DIRECTORY_UNRESOLVED','\x22\x20collides\x20across\x20datasetCode\x20and\x20alias\x20namespaces.','HOOK_DATASET_NOT_FOUND','HOOK_DATASET_CODE_AMBIGUOUS','details','52464cmGVlN','add','318453BswwXc','4bpSnsf','name','code','normalize','values','\x22\x20points\x20to\x20a\x20Dataset\x20that\x20is\x20absent\x20from\x20current\x20platform\x20metadata.','join','\x22\x20has\x20multiple\x20tracked\x20HOOK\x20directories:\x20','152qKiTng','entries','push','lockKey','some','Incomplete\x20HOOK\x20path:\x20','\x22\x20differs\x20only\x20by\x20case\x20from\x20another\x20Dataset\x20code.','\x22\x20changed\x20mapping\x20from\x20Dataset\x20\x22'];a275_0x1f21=function(){return _0xeb79e;};return a275_0x1f21();}
|
package/lib/core/bff/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x58b488,_0x1bc8cb){const _0x28436c=a276_0x5c3a,_0x1f1096=_0x58b488();while(!![]){try{const _0x38eaae=-parseInt(_0x28436c(0x167))/0x1+-parseInt(_0x28436c(0x160))/0x2+parseInt(_0x28436c(0x169))/0x3+-parseInt(_0x28436c(0x163))/0x4+-parseInt(_0x28436c(0x165))/0x5+-parseInt(_0x28436c(0x164))/0x6+parseInt(_0x28436c(0x15d))/0x7;if(_0x38eaae===_0x1bc8cb)break;else _0x1f1096['push'](_0x1f1096['shift']());}catch(_0x42742c){_0x1f1096['push'](_0x1f1096['shift']());}}}(a276_0x2b18,0xda58f));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptyBffLock(){return{'apps':{}};}export function ensureLockScope(_0x5cb103,_0x1c9a04,_0x2422b9,_0x3adde9){const _0x477d13=a276_0x5c3a,_0x13af50={'apps':_0x5cb103[_0x477d13(0x15e)]&&typeof _0x5cb103[_0x477d13(0x15e)]===_0x477d13(0x16f)?_0x5cb103['apps']:{}};let _0x330657=_0x13af50[_0x477d13(0x15e)][_0x1c9a04];if(!_0x330657)return _0x330657={'scriptsRoot':_0x2422b9,'lastSync':'','functions':{}},_0x13af50[_0x477d13(0x15e)][_0x1c9a04]=_0x330657,{'lockData':_0x13af50,'appLock':_0x330657};if(!_0x330657[_0x477d13(0x16b)])_0x330657['scriptsRoot']=_0x2422b9;else{if(_0x330657[_0x477d13(0x16b)]!==_0x2422b9)throw new Error(_0x3adde9+':\x20scriptsRoot\x20mismatch\x20—\x20'+(_0x477d13(0x161)+_0x2422b9+_0x477d13(0x168)+_0x330657[_0x477d13(0x16b)]+_0x477d13(0x16e))+_0x477d13(0x166));}return!_0x330657[_0x477d13(0x16c)]&&(_0x330657[_0x477d13(0x16c)]={}),!_0x330657['lastSync']&&(_0x330657['lastSync']=''),{'lockData':_0x13af50,'appLock':_0x330657};}function a276_0x5c3a(_0x44b059,_0x50edcb){_0x44b059=_0x44b059-0x15d;const _0x2b18c2=a276_0x2b18();let _0x5c3a57=_0x2b18c2[_0x44b059];return _0x5c3a57;}export async function readBffLockFile(_0x37dc00){const _0xd0132d=a276_0x5c3a;try{const _0x36655c=await readFile(_0x37dc00,'utf8'),_0x4f1bb1=JSON['parse'](_0x36655c);return{'apps':_0x4f1bb1['apps']&&typeof _0x4f1bb1[_0xd0132d(0x15e)]===_0xd0132d(0x16f)?_0x4f1bb1['apps']:{}};}catch(_0x5f5ddb){if(_0x5f5ddb[_0xd0132d(0x16a)]==='ENOENT')return null;throw new Error(_0xd0132d(0x162)+String(_0x5f5ddb));}}export async function writeBffLockFile(_0x3d3a2e,_0x90a42c){const _0x5e75fa=a276_0x5c3a;await mkdir(dirname(_0x3d3a2e),{'recursive':!![]}),await writeFile(_0x3d3a2e,JSON[_0x5e75fa(0x15f)](_0x90a42c,null,0x2),_0x5e75fa(0x16d));}function a276_0x2b18(){const _0x497936=['457650RGRzor','current\x20\x22','Failed\x20to\x20read\x20Backend\x20Function\x20lock\x20file:\x20','4909780zeCchW','739692rXchZR','6736180UBHVWf','Check\x20.rabetbase/bff.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','1494799bfzgBT','\x22\x20vs\x20lock\x20\x22','4952499oVsaVL','code','scriptsRoot','functions','utf8','\x22.\x20','object','25655735PnMRrE','apps','stringify'];a276_0x2b18=function(){return _0x497936;};return a276_0x2b18();}
|
package/lib/core/bff/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a278_0x45221c=a278_0xb89e;function a278_0xb89e(_0x7784bf,_0xd59d3){_0x7784bf=_0x7784bf-0x1ed;const _0x2d049d=a278_0x2d04();let _0xb89eb6=_0x2d049d[_0x7784bf];return _0xb89eb6;}(function(_0x170d2f,_0x57b742){const _0x16a1e6=a278_0xb89e,_0xd54c60=_0x170d2f();while(!![]){try{const _0x43a2d4=-parseInt(_0x16a1e6(0x203))/0x1*(-parseInt(_0x16a1e6(0x1ff))/0x2)+parseInt(_0x16a1e6(0x204))/0x3+-parseInt(_0x16a1e6(0x1ed))/0x4*(-parseInt(_0x16a1e6(0x20b))/0x5)+-parseInt(_0x16a1e6(0x1f2))/0x6*(parseInt(_0x16a1e6(0x1ee))/0x7)+parseInt(_0x16a1e6(0x1f3))/0x8*(-parseInt(_0x16a1e6(0x201))/0x9)+parseInt(_0x16a1e6(0x1f5))/0xa*(parseInt(_0x16a1e6(0x1f8))/0xb)+parseInt(_0x16a1e6(0x1f4))/0xc*(-parseInt(_0x16a1e6(0x207))/0xd);if(_0x43a2d4===_0x57b742)break;else _0xd54c60['push'](_0xd54c60['shift']());}catch(_0x3032ec){_0xd54c60['push'](_0xd54c60['shift']());}}}(a278_0x2d04,0x44292));export const DEFAULT_BFF_SCRIPT_DESCRIPTION=a278_0x45221c(0x205);function a278_0x2d04(){const _0x5e768f=['TODO:\x20add\x20script\x20description','2083945zehXTw','4pbZcar','675570uCiwFt','datasetCode','before','split','30FtTvpU','16184IXDABe','24iRGcvb','430UxuBsq','toUpperCase','map','79519fcYyTK','trim','entries','after','some','functionNode','operationType','766vzLXju','toLowerCase','1575ucofnk','startsWith','863GFqTdn','1382742ViDjae','TODO:\x20补充脚本功能描述','match','2621567acDNIN','test','replace'];a278_0x2d04=function(){return _0x5e768f;};return a278_0x2d04();}const LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION=a278_0x45221c(0x20a);export function snakeToCamel(_0x1daca0){const _0x1eb628=a278_0x45221c;return _0x1daca0[_0x1eb628(0x200)]()['replace'](/_([a-z])/g,(_0xccedc0,_0xb36fb1)=>_0xb36fb1[_0x1eb628(0x1f6)]());}export function findHookLocationByRemoteId(_0x613e03,_0x9a795b){const _0x40fffd=a278_0x45221c;if(!_0x9a795b)return undefined;for(const [_0x34b91c,_0x10bf1c]of Object[_0x40fffd(0x1fa)](_0x613e03)){if(_0x10bf1c['remoteId']===_0x9a795b&&_0x10bf1c['datasetCode']&&_0x10bf1c['operationType']&&_0x10bf1c[_0x40fffd(0x1fd)]){const _0x41bb24=_0x34b91c[_0x40fffd(0x1f1)]('/')[0x1];return{'alias':_0x41bb24||_0x10bf1c['alias'],'datasetCode':_0x10bf1c[_0x40fffd(0x1ef)],'operationType':_0x10bf1c[_0x40fffd(0x1fe)],'functionNode':_0x10bf1c[_0x40fffd(0x1fd)]};}}return undefined;}export function extractScriptDescription(_0x2fe2b6){const _0xb82e7d=a278_0x45221c,_0x43b0dc=_0x2fe2b6[_0xb82e7d(0x206)](/^\s*\/\*\*([\s\S]*?)\*\//);if(!_0x43b0dc?.[0x1])return undefined;const _0x401b26=_0x43b0dc[0x1],_0x5048de=_0x1de593=>{const _0x1344da=_0xb82e7d,_0x194c56=_0x1de593?.[_0x1344da(0x1f9)]();if(!_0x194c56||_0x194c56===DEFAULT_BFF_SCRIPT_DESCRIPTION||_0x194c56===LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION)return undefined;return _0x194c56;},_0x43eeea=_0x401b26[_0xb82e7d(0x206)](/^\s*\*\s*\[\s*脚本描述\s*]\s*(.+)$/m);if(_0x43eeea)return _0x5048de(_0x43eeea[0x1]);const _0x46a1bb=_0x401b26[_0xb82e7d(0x1f1)](/\r?\n/)[_0xb82e7d(0x1f7)](_0x3b5e56=>_0x3b5e56[_0xb82e7d(0x209)](/^\s*\*\s?/,'')[_0xb82e7d(0x1f9)]()),_0x41ecea=_0x46a1bb[_0xb82e7d(0x1fc)](_0x327b78=>/^\[\s*脚本类型\s*]\s*\S+/['test'](_0x327b78))&&_0x46a1bb[_0xb82e7d(0x1fc)](_0x16d819=>/^\[\s*脚本名称\s*]\s*\S+/['test'](_0x16d819));if(!_0x41ecea)return undefined;for(const _0x52a51a of _0x46a1bb){if(!_0x52a51a||_0x52a51a[_0xb82e7d(0x202)]('@')||/^\[[^\]]+]\s*/['test'](_0x52a51a))continue;return _0x5048de(_0x52a51a);}return undefined;}export function isValidBffFunctionName(_0x47560a){const _0x5e2fb8=a278_0x45221c;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0x5e2fb8(0x208)](_0x47560a);}export function normalizeHookFunctionNode(_0x64608d){const _0x291013=a278_0x45221c;if(!_0x64608d)return undefined;const _0x4b7995=_0x64608d[_0x291013(0x1f9)]()[_0x291013(0x200)]();if(_0x4b7995===_0x291013(0x1f0)||_0x4b7995===_0x291013(0x1fb))return _0x4b7995;return undefined;}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { ErRelationCardinality } from "../core/api-client.js";
|
|
2
|
+
export declare const CROSS_DB_RELATION_PATHS: {
|
|
3
|
+
readonly list: "/smartapi/cross-db-relation/query";
|
|
4
|
+
readonly create: "/smartapi/cross-db-relation/create";
|
|
5
|
+
readonly update: "/smartapi/cross-db-relation/update";
|
|
6
|
+
readonly delete: "/smartapi/cross-db-relation/delete";
|
|
7
|
+
};
|
|
8
|
+
export interface CrossDbRelationSource {
|
|
9
|
+
appCode: string;
|
|
10
|
+
fromDatasetCode: string;
|
|
11
|
+
fromField: string;
|
|
12
|
+
fromDblinkId?: number;
|
|
13
|
+
}
|
|
14
|
+
export interface CrossDbRelationMutation extends CrossDbRelationSource {
|
|
15
|
+
toDatasetCode: string;
|
|
16
|
+
toField: string;
|
|
17
|
+
refTableLabelName?: string;
|
|
18
|
+
cardinality?: ErRelationCardinality;
|
|
19
|
+
}
|
|
20
|
+
export interface CrossDbRelationQuery {
|
|
21
|
+
appCode: string;
|
|
22
|
+
fromDblinkId: number;
|
|
23
|
+
fromDatasetCode?: string;
|
|
24
|
+
fromField?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface CrossDbRelationDetail {
|
|
27
|
+
relationId: number | string;
|
|
28
|
+
fromDblinkId: number;
|
|
29
|
+
fromDatasetCode: string | null;
|
|
30
|
+
fromDatasetName: string | null;
|
|
31
|
+
fromTableName: string;
|
|
32
|
+
fromField: string;
|
|
33
|
+
toDblinkId: number;
|
|
34
|
+
toDatasetCode: string | null;
|
|
35
|
+
toDatasetName: string | null;
|
|
36
|
+
toTableName: string;
|
|
37
|
+
toField: string;
|
|
38
|
+
refTableLabelName: string;
|
|
39
|
+
cardinality: ErRelationCardinality | null;
|
|
40
|
+
relationType: number;
|
|
41
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const a279_0x349dfc=a279_0x1b3e;(function(_0x216e9e,_0x9268e6){const _0x110bf5=a279_0x1b3e,_0x4d5ad2=_0x216e9e();while(!![]){try{const _0x3c133f=parseInt(_0x110bf5(0x166))/0x1+parseInt(_0x110bf5(0x15b))/0x2+-parseInt(_0x110bf5(0x15c))/0x3+parseInt(_0x110bf5(0x164))/0x4*(parseInt(_0x110bf5(0x161))/0x5)+-parseInt(_0x110bf5(0x162))/0x6*(-parseInt(_0x110bf5(0x163))/0x7)+-parseInt(_0x110bf5(0x160))/0x8*(-parseInt(_0x110bf5(0x15f))/0x9)+-parseInt(_0x110bf5(0x165))/0xa;if(_0x3c133f===_0x9268e6)break;else _0x4d5ad2['push'](_0x4d5ad2['shift']());}catch(_0x540614){_0x4d5ad2['push'](_0x4d5ad2['shift']());}}}(a279_0xa9d2,0x36928));function a279_0x1b3e(_0x132fcf,_0x566402){_0x132fcf=_0x132fcf-0x15b;const _0xa9d2aa=a279_0xa9d2();let _0x1b3ee9=_0xa9d2aa[_0x132fcf];return _0x1b3ee9;}export const CROSS_DB_RELATION_PATHS={'list':'/smartapi/cross-db-relation/query','create':'/smartapi/cross-db-relation/create','update':a279_0x349dfc(0x15d),'delete':a279_0x349dfc(0x15e)};function a279_0xa9d2(){const _0x8b869d=['45IgMQHA','42SthxcR','125041BJTYEi','189876syPpst','5923710jCCdvN','96174qXncpM','446722eAXOoc','749610CBQnwj','/smartapi/cross-db-relation/update','/smartapi/cross-db-relation/delete','18nUtkUH','775888WOeujY'];a279_0xa9d2=function(){return _0x8b869d;};return a279_0xa9d2();}
|
package/lib/core/db-resolver.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x16ab1a,_0xf47c14){const _0x1a542e=a280_0x5894,_0x48e94a=_0x16ab1a();while(!![]){try{const _0x2b84ab=parseInt(_0x1a542e(0x1fa))/0x1+-parseInt(_0x1a542e(0x1ea))/0x2+parseInt(_0x1a542e(0x1f3))/0x3*(-parseInt(_0x1a542e(0x1ec))/0x4)+-parseInt(_0x1a542e(0x1f5))/0x5*(parseInt(_0x1a542e(0x1e7))/0x6)+parseInt(_0x1a542e(0x1e6))/0x7+parseInt(_0x1a542e(0x1ff))/0x8*(-parseInt(_0x1a542e(0x1ee))/0x9)+parseInt(_0x1a542e(0x1e4))/0xa;if(_0x2b84ab===_0xf47c14)break;else _0x48e94a['push'](_0x48e94a['shift']());}catch(_0x43aec3){_0x48e94a['push'](_0x48e94a['shift']());}}}(a280_0x126b,0xd6271));import{listDatasets}from'../core/api-client.js';const cache=new Map();export async function listDatabases(_0x22bcf7){const _0x58ba61=a280_0x5894;if(cache[_0x58ba61(0x200)](_0x22bcf7))return cache[_0x58ba61(0x1f7)](_0x22bcf7);const _0x11f523=await listDatasets(_0x22bcf7),_0x4029d4=new Map();for(const _0x5bf1a9 of _0x11f523){const _0x2bf1ba=_0x5bf1a9[_0x58ba61(0x1ef)];_0x2bf1ba?.['dbId']!=null&&_0x4029d4[_0x58ba61(0x1f1)](_0x2bf1ba[_0x58ba61(0x1ed)],_0x2bf1ba['dbName']??'db-'+_0x2bf1ba[_0x58ba61(0x1ed)]);}const _0x1ca1ce=[..._0x4029d4['entries']()][_0x58ba61(0x1f8)](([_0x2abd14,_0x212da3])=>({'dbId':_0x2abd14,'dbName':_0x212da3}));return cache[_0x58ba61(0x1f1)](_0x22bcf7,_0x1ca1ce),_0x1ca1ce;}export async function resolveDb(_0xe0362d,_0x2027cc){const _0x1d7f82=a280_0x5894,_0x1f91db=await listDatabases(_0xe0362d);if(_0x1f91db[_0x1d7f82(0x1eb)]===0x0)return{'resolved':[],'error':_0x1d7f82(0x1fb)+_0xe0362d+_0x1d7f82(0x1fe)};if(!_0x2027cc)return{'resolved':_0x1f91db};const _0x5db014=Number(_0x2027cc);if(!Number['isNaN'](_0x5db014)){const _0x548769=_0x1f91db[_0x1d7f82(0x1f4)](_0x274cf9=>_0x274cf9[_0x1d7f82(0x1ed)]===_0x5db014);if(_0x548769)return{'resolved':[_0x548769]};}const _0x5a3f22=_0x2027cc['toLowerCase'](),_0x506090=_0x1f91db[_0x1d7f82(0x1f6)](_0x1580fa=>_0x1580fa[_0x1d7f82(0x1e9)][_0x1d7f82(0x1fc)]()[_0x1d7f82(0x1f0)](_0x5a3f22));if(_0x506090['length']>0x0)return{'resolved':_0x506090};const _0x42e059=_0x1f91db[_0x1d7f82(0x1f8)](_0x2ab8a3=>_0x2ab8a3['dbName']+'\x20('+_0x2ab8a3['dbId']+')')['join'](',\x20');return{'resolved':[],'error':_0x1d7f82(0x1f2)+_0x2027cc+_0x1d7f82(0x1e5)+_0xe0362d+_0x1d7f82(0x1e8)+_0x42e059+_0x1d7f82(0x1e2)};}function a280_0x5894(_0x19d218,_0x1d8cd0){_0x19d218=_0x19d218-0x1e2;const _0x126b20=a280_0x126b();let _0x5894ef=_0x126b20[_0x19d218];return _0x5894ef;}export async function resolveOneDb(_0x47a567,_0x5134a9){const _0x1ce7bf=a280_0x5894,{resolved:_0x4287a7,error:_0x293c69}=await resolveDb(_0x47a567,_0x5134a9);if(_0x293c69)return{'db':null,'error':_0x293c69};if(_0x4287a7[_0x1ce7bf(0x1eb)]===0x1)return{'db':_0x4287a7[0x0]};if(!_0x5134a9){const _0x5bb321=_0x4287a7[_0x1ce7bf(0x1f8)](_0x4b19a8=>_0x4b19a8['dbName']+'\x20('+_0x4b19a8['dbId']+')')[_0x1ce7bf(0x1f9)](',\x20');return{'db':null,'error':_0x1ce7bf(0x1e3)+_0x5bb321};}const _0x4449e1=_0x4287a7[_0x1ce7bf(0x1f8)](_0x3accd8=>_0x3accd8[_0x1ce7bf(0x1e9)]+'\x20('+_0x3accd8[_0x1ce7bf(0x1ed)]+')')[_0x1ce7bf(0x1f9)](',\x20');return{'db':null,'error':'\x22'+_0x5134a9+'\x22\x20matches\x20multiple\x20databases:\x20'+_0x4449e1+_0x1ce7bf(0x1fd)};}function a280_0x126b(){const _0x224425=['join','906697RVGCnS','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','toLowerCase','.\x20Be\x20more\x20specific.','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','4641288DCrRWn','has','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20','11207930aNzxOy','\x22\x20under\x20app\x20\x22','3721676BTmePA','678LYAaYg','\x22.\x20Available:\x20','dbName','39076GRHkju','length','12964JgmrKE','dbId','9NqsScP','dbtableConfig','includes','set','No\x20database\x20matching\x20\x22','567KAxKLH','find','20785XTVbsF','filter','get','map'];a280_0x126b=function(){return _0x224425;};return a280_0x126b();}export async function getDbName(_0x23cc3d,_0x414be2){const _0x556184=a280_0x5894,_0x5b33ec=await listDatabases(_0x23cc3d);return _0x5b33ec[_0x556184(0x1f4)](_0x2337b4=>_0x2337b4[_0x556184(0x1ed)]===_0x414be2)?.[_0x556184(0x1e9)];}
|
package/lib/core/flow-config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a269_0x1c57b2=a269_0x40e0;(function(_0x35e9c6,_0xfe5dc3){const _0x47dd27=a269_0x40e0,_0x3d2c22=_0x35e9c6();while(!![]){try{const _0x573c1b=-parseInt(_0x47dd27(0x222))/0x1*(parseInt(_0x47dd27(0x2cd))/0x2)+parseInt(_0x47dd27(0x182))/0x3+-parseInt(_0x47dd27(0x2ca))/0x4*(-parseInt(_0x47dd27(0x208))/0x5)+parseInt(_0x47dd27(0x237))/0x6*(-parseInt(_0x47dd27(0x2e5))/0x7)+parseInt(_0x47dd27(0x1dd))/0x8+parseInt(_0x47dd27(0x1f3))/0x9*(parseInt(_0x47dd27(0x1e6))/0xa)+-parseInt(_0x47dd27(0x2bf))/0xb*(parseInt(_0x47dd27(0x1c9))/0xc);if(_0x573c1b===_0xfe5dc3)break;else _0x3d2c22['push'](_0x3d2c22['shift']());}catch(_0x4a8232){_0x3d2c22['push'](_0x3d2c22['shift']());}}}(a269_0x5923,0xd3d2f));import{randomUUID}from'node:crypto';import{chmod,link,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{resolve}from'node:path';export const FLOW_CONFIG_JSON_SCHEMA={'$schema':'https://json-schema.org/draft/2020-12/schema','$id':a269_0x1c57b2(0x181),'title':a269_0x1c57b2(0x25b),'type':a269_0x1c57b2(0x23f),'required':[a269_0x1c57b2(0x1a1),a269_0x1c57b2(0x261),a269_0x1c57b2(0x1e0)],'$defs':{'userId':{'anyOf':[{'type':a269_0x1c57b2(0x27d),'minLength':0x1},{'type':a269_0x1c57b2(0x28f),'minimum':0x1}]},'position':{'type':a269_0x1c57b2(0x23f),'required':['x','y'],'properties':{'x':{'type':'number','minimum':0x0},'y':{'type':a269_0x1c57b2(0x295),'minimum':0x0}},'additionalProperties':!![]},'timeAmount':{'type':a269_0x1c57b2(0x23f),'required':[a269_0x1c57b2(0x212),a269_0x1c57b2(0x1ad)],'properties':{'value':{'type':a269_0x1c57b2(0x28f),'minimum':0x1},'unit':{'enum':[a269_0x1c57b2(0x272),a269_0x1c57b2(0x203),'HOURS',a269_0x1c57b2(0x17a)]}},'additionalProperties':!![]},'flowNode':{'type':a269_0x1c57b2(0x23f),'required':['id',a269_0x1c57b2(0x174),a269_0x1c57b2(0x233),'position'],'properties':{'id':{'type':a269_0x1c57b2(0x27d),'pattern':a269_0x1c57b2(0x196)},'type':{'enum':[a269_0x1c57b2(0x19f),a269_0x1c57b2(0x290),'APPROVAL',a269_0x1c57b2(0x1e3),a269_0x1c57b2(0x1e2),a269_0x1c57b2(0x2da)]},'name':{'type':'string','minLength':0x1},'pageId':{'type':a269_0x1c57b2(0x28f),'minimum':0x1},'position':{'$ref':a269_0x1c57b2(0x287)},'approvalMode':{'enum':[a269_0x1c57b2(0x2d6),a269_0x1c57b2(0x23d),a269_0x1c57b2(0x298)]},'taskMode':{'enum':['APPROVAL',a269_0x1c57b2(0x263)]},'assignee':{'type':a269_0x1c57b2(0x23f),'required':[a269_0x1c57b2(0x229)],'properties':{'strategy':{'enum':[a269_0x1c57b2(0x256),'ROLE']},'userIds':{'type':a269_0x1c57b2(0x1e7),'minItems':0x1,'items':{'$ref':a269_0x1c57b2(0x1e8)}},'roleId':{'anyOf':[{'type':a269_0x1c57b2(0x28f),'minimum':0x1},{'type':a269_0x1c57b2(0x27d),'pattern':'^[1-9][0-9]*$'}]}},'additionalProperties':!![]},'transferCandidates':{'type':'object','required':[a269_0x1c57b2(0x229),'userIds'],'properties':{'strategy':{'const':a269_0x1c57b2(0x256)},'userIds':{'type':'array','minItems':0x1,'items':{'$ref':a269_0x1c57b2(0x1e8)}}},'additionalProperties':!![]},'sequential':{'type':a269_0x1c57b2(0x1af)},'result':{'enum':[a269_0x1c57b2(0x1f2),a269_0x1c57b2(0x180)]},'scriptName':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'resultVariable':{'type':a269_0x1c57b2(0x27d),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'},'async':{'type':a269_0x1c57b2(0x23f),'properties':{'enabled':{'type':a269_0x1c57b2(0x1af)},'retryCount':{'type':a269_0x1c57b2(0x28f),'minimum':0x1,'maximum':0xa},'retryInterval':{'$ref':'#/$defs/timeAmount'}},'additionalProperties':!![]},'timeout':{'type':a269_0x1c57b2(0x23f),'properties':{'enabled':{'type':a269_0x1c57b2(0x1af)},'duration':{'$ref':'#/$defs/timeAmount'},'action':{'enum':[a269_0x1c57b2(0x20f),a269_0x1c57b2(0x1c5),a269_0x1c57b2(0x266)]},'interrupting':{'type':a269_0x1c57b2(0x1af)},'scriptName':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'resultVariable':{'type':a269_0x1c57b2(0x27d),'pattern':a269_0x1c57b2(0x196)}},'additionalProperties':!![]},'cc':{'type':a269_0x1c57b2(0x23f),'required':[a269_0x1c57b2(0x251)],'properties':{'recipientUserIds':{'type':a269_0x1c57b2(0x1e7),'minItems':0x1,'maxItems':0x64,'uniqueItems':!![],'items':{'type':a269_0x1c57b2(0x27d),'minLength':0x1}},'visible':{'type':a269_0x1c57b2(0x1e7),'uniqueItems':!![],'items':{'type':'string','minLength':0x1}},'readSources':![]},'additionalProperties':!![]},'config':{'type':'object','required':[a269_0x1c57b2(0x2c0),a269_0x1c57b2(0x1b8)],'properties':{'version':{'enum':['v1']},'configCode':{'type':'string','minLength':0x1},'failurePolicy':{'enum':[a269_0x1c57b2(0x17e),a269_0x1c57b2(0x1c1)]},'template':{'type':a269_0x1c57b2(0x23f),'required':[a269_0x1c57b2(0x183),a269_0x1c57b2(0x241)],'properties':{'title':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'summary':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'detailMarkdown':{'type':a269_0x1c57b2(0x27d)},'facts':{'type':a269_0x1c57b2(0x1e7),'maxItems':0x8,'items':{'type':'object','required':[a269_0x1c57b2(0x284),a269_0x1c57b2(0x212)],'properties':{'label':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'value':{'type':a269_0x1c57b2(0x27d),'minLength':0x1}},'additionalProperties':!![]}},'actions':{'type':a269_0x1c57b2(0x1e7),'maxItems':0x2,'items':{'type':a269_0x1c57b2(0x23f),'required':[a269_0x1c57b2(0x2b3),a269_0x1c57b2(0x1ac)],'properties':{'text':{'type':'string','minLength':0x1},'url':{'type':a269_0x1c57b2(0x27d),'minLength':0x1}},'additionalProperties':!![]}}},'additionalProperties':!![]},'recipients':{'type':'array','items':{'type':'object','required':[a269_0x1c57b2(0x174),a269_0x1c57b2(0x212)],'properties':{'type':{'enum':['USER',a269_0x1c57b2(0x1b5),a269_0x1c57b2(0x2ad)]},'value':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'role':{'enum':['TO','CC','BCC']}},'additionalProperties':!![]}}},'additionalProperties':!![]},'form':![],'formPermission':![]},'additionalProperties':!![]},'flowEdge':{'type':a269_0x1c57b2(0x23f),'properties':{'id':{'type':a269_0x1c57b2(0x27d),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'},'source':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'target':{'type':'string','minLength':0x1},'sourceNodeId':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'targetNodeId':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'conditionType':{'enum':[a269_0x1c57b2(0x1a8),a269_0x1c57b2(0x1f2),a269_0x1c57b2(0x180),a269_0x1c57b2(0x277)]},'expression':{'type':'string'},'defaultFlow':{'type':a269_0x1c57b2(0x1af)},'name':{'type':a269_0x1c57b2(0x27d)},'waypoints':{'type':'array','items':{'$ref':a269_0x1c57b2(0x287)}}},'allOf':[{'anyOf':[{'required':[a269_0x1c57b2(0x259)]},{'required':[a269_0x1c57b2(0x201)]}]},{'anyOf':[{'required':[a269_0x1c57b2(0x1ae)]},{'required':[a269_0x1c57b2(0x22e)]}]}],'additionalProperties':!![]}},'properties':{'id':![],'appCode':![],'flowName':{'type':'string','minLength':0x1},'flowDesc':{'type':'string'},'flowType':{'enum':[a269_0x1c57b2(0x194),a269_0x1c57b2(0x22a)]},'datasetCode':{'type':a269_0x1c57b2(0x27d),'minLength':0x1},'pageId':{'type':a269_0x1c57b2(0x28f)},'templateName':![],'flowJson':{'type':a269_0x1c57b2(0x23f),'required':['nodes',a269_0x1c57b2(0x23a)],'properties':{'flowKey':![],'flowCode':![],'flowName':![],'bindDatasetCode':![],'datasetCode':![],'appCode':![],'pageId':![],'templateName':![],'schemaVersion':{'type':a269_0x1c57b2(0x27d),'const':a269_0x1c57b2(0x22c),'description':a269_0x1c57b2(0x25e)},'formSchema':![],'formDefinitions':![],'formPermissions':![],'pageMode':{'const':a269_0x1c57b2(0x218)},'startPageId':{'type':a269_0x1c57b2(0x28f),'minimum':0x1},'nodes':{'type':'array','minItems':0x1,'items':{'$ref':a269_0x1c57b2(0x209)}},'edges':{'type':a269_0x1c57b2(0x1e7),'minItems':0x1,'items':{'$ref':a269_0x1c57b2(0x1a6)}}},'additionalProperties':!![]}},'additionalProperties':!![]};const REMOVED_FLOW_JSON_FIELDS=[a269_0x1c57b2(0x2bd),a269_0x1c57b2(0x1df),a269_0x1c57b2(0x1a1),a269_0x1c57b2(0x24d),a269_0x1c57b2(0x2e3),a269_0x1c57b2(0x189),a269_0x1c57b2(0x207),a269_0x1c57b2(0x271)],REMOVED_ROOT_FIELDS=['id',a269_0x1c57b2(0x189),'templateName'],DEFAULT_FLOW_SCHEMA_VERSION=a269_0x1c57b2(0x22c),NODE_TYPES=new Set([a269_0x1c57b2(0x19f),a269_0x1c57b2(0x290),a269_0x1c57b2(0x179),'CONDITION',a269_0x1c57b2(0x1e2),a269_0x1c57b2(0x2da)]),CONDITION_TYPES=new Set(['ALWAYS',a269_0x1c57b2(0x1f2),a269_0x1c57b2(0x180),a269_0x1c57b2(0x277)]),APPROVAL_MODES=new Set([a269_0x1c57b2(0x2d6),a269_0x1c57b2(0x23d),a269_0x1c57b2(0x298)]),APPROVAL_TASK_MODES=new Set([a269_0x1c57b2(0x179),a269_0x1c57b2(0x263)]),FLOW_TIME_UNITS=new Set([a269_0x1c57b2(0x272),a269_0x1c57b2(0x203),'HOURS',a269_0x1c57b2(0x17a)]),APPROVAL_TIMEOUT_ACTIONS=new Set(['AUTO_APPROVE',a269_0x1c57b2(0x1c5),a269_0x1c57b2(0x266)]),FLOW_TYPES=new Set([a269_0x1c57b2(0x194),'INDEPENDENT_FLOW']),FLOW_PAGE_MODES=new Set(['CUSTOM_PAGE',a269_0x1c57b2(0x21d)]),BPMN_ID_PATTERN=/^[A-Za-z_][A-Za-z0-9_]*$/,VARIABLE_PATTERN=/^[A-Za-z_][A-Za-z0-9_]*$/,NOTIFICATION_PLACEHOLDER_PATTERN=/\$\{([^{}]+)\}/g,NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN=/^\$\{(?:event|context|variables)\.[^{}]+\}$/,NOTIFICATION_FAILURE_POLICIES=new Set([a269_0x1c57b2(0x17e),a269_0x1c57b2(0x1c1)]),NOTIFICATION_RECIPIENT_TYPES=new Set([a269_0x1c57b2(0x1f1),a269_0x1c57b2(0x1b5),a269_0x1c57b2(0x2ad)]),NOTIFICATION_RECIPIENT_ROLES=new Set(['TO','CC',a269_0x1c57b2(0x1fa)]),MAX_NOTIFICATION_FACTS=0x8,MAX_NOTIFICATION_ACTIONS=0x2,MAX_ASYNC_RETRY_COUNT=0xa,MAX_CC_RECIPIENTS=0x64,DEFAULT_SCRIPT_RESULT_VARIABLE=a269_0x1c57b2(0x257),UNSUPPORTED_FORM_MESSAGE=a269_0x1c57b2(0x2a4),UNSUPPORTED_PLATFORM_FORM_MESSAGE=a269_0x1c57b2(0x187),RESERVED_RESULT_VARIABLES=new Set(['formData',a269_0x1c57b2(0x1be),a269_0x1c57b2(0x20b),a269_0x1c57b2(0x2bb),a269_0x1c57b2(0x1d6),'approval_sys_initiatorUsername',a269_0x1c57b2(0x18e),'approval_sys_pageId',a269_0x1c57b2(0x231),'approval_sys_dataId']);export function normalizeFlowConfig(_0x56da4c){const _0xc60646=a269_0x1c57b2;if(!isRecord(_0x56da4c))throw new TypeError('FlowConfig\x20must\x20be\x20a\x20JSON\x20object.');const _0x2fe3fe=cloneJsonValue(_0x56da4c),_0x142e7e=_0x2fe3fe['flowJson'],_0x54982=isRecord(_0x142e7e)?cloneJsonValue(_0x142e7e):{},_0x35e595=[],_0x51e078=[];for(const _0x5f23be of REMOVED_ROOT_FIELDS){if(!Object[_0xc60646(0x19c)][_0xc60646(0x242)][_0xc60646(0x2bc)](_0x2fe3fe,_0x5f23be))continue;delete _0x2fe3fe[_0x5f23be],_0x51e078[_0xc60646(0x24b)](_0x5f23be),_0x35e595['push']({'code':_0xc60646(0x1d1),'path':_0x5f23be,'message':_0x5f23be+_0xc60646(0x2d7)});}for(const _0x2f45c8 of REMOVED_FLOW_JSON_FIELDS){if(!Object[_0xc60646(0x19c)][_0xc60646(0x242)][_0xc60646(0x2bc)](_0x54982,_0x2f45c8))continue;const _0x275bd5=_0xc60646(0x17b)+_0x2f45c8;delete _0x54982[_0x2f45c8],_0x51e078[_0xc60646(0x24b)](_0x275bd5),_0x35e595[_0xc60646(0x24b)]({'code':_0xc60646(0x1d1),'path':_0x275bd5,'message':_0x275bd5+_0xc60646(0x2d7)});}if(Object[_0xc60646(0x19c)][_0xc60646(0x242)][_0xc60646(0x2bc)](_0x54982,'schemaVersion')){const _0x226e77=_0x54982[_0xc60646(0x2e6)],_0x64c80b=typeof _0x226e77===_0xc60646(0x27d)?_0x226e77[_0xc60646(0x2d3)]():_0x226e77;if(isEmptyJsonValue(_0x226e77)||_0x64c80b===DEFAULT_FLOW_SCHEMA_VERSION){const _0x260a82='flowJson.schemaVersion';delete _0x54982[_0xc60646(0x2e6)],_0x51e078[_0xc60646(0x24b)](_0x260a82),_0x35e595[_0xc60646(0x24b)]({'code':_0xc60646(0x1d1),'path':_0x260a82,'message':_0x260a82+_0xc60646(0x1cf)+DEFAULT_FLOW_SCHEMA_VERSION+'\x20value\x20and\x20was\x20removed\x20from\x20the\x20portable\x20FlowConfig.'});}}removeEmptyMetadata(_0x54982,_0xc60646(0x1e0),_0x35e595,_0x51e078);_0x2fe3fe['flowType']===_0xc60646(0x22a)&&!Object['prototype'][_0xc60646(0x242)]['call'](_0x54982,_0xc60646(0x265))&&(_0x54982[_0xc60646(0x265)]=_0xc60646(0x218));_0x2fe3fe[_0xc60646(0x1e0)]=_0x54982;if(typeof _0x2fe3fe[_0xc60646(0x1a1)]===_0xc60646(0x27d))_0x2fe3fe[_0xc60646(0x1a1)]=_0x2fe3fe[_0xc60646(0x1a1)][_0xc60646(0x2d3)]();return{'config':_0x2fe3fe,'warnings':_0x35e595,'removedPaths':_0x51e078};}export function validateFlowConfig(_0x52b913){const _0xba3904=a269_0x1c57b2;let _0x39d2f5;try{_0x39d2f5=normalizeFlowConfig(_0x52b913);}catch(_0xbc8440){const _0x15b808=_0xbc8440 instanceof Error?_0xbc8440[_0xba3904(0x23e)]:String(_0xbc8440),_0x47e1e0={'flowJson':{}};return{'valid':![],'errors':[{'path':'$','message':_0x15b808}],'warnings':[],'normalized':_0x47e1e0,'validationConfig':_0x47e1e0};}const _0x5b7c77=_0x39d2f5[_0xba3904(0x288)],_0x19552d=cloneJsonValue(_0x5b7c77),_0x2f026e=_0x19552d[_0xba3904(0x1e0)];_0x2f026e[_0xba3904(0x2bd)]=_0xba3904(0x175),_0x2f026e[_0xba3904(0x1a1)]=_0x5b7c77['flowName'];typeof _0x5b7c77[_0xba3904(0x2e3)]===_0xba3904(0x27d)&&_0x5b7c77[_0xba3904(0x2e3)][_0xba3904(0x2d3)]()&&(_0x2f026e[_0xba3904(0x24d)]=_0x5b7c77[_0xba3904(0x2e3)][_0xba3904(0x2d3)]());const _0x405358=[];return validateOuterMetadata(_0x5b7c77,_0x405358),validateFlowClassification(_0x5b7c77,_0x405358),validateGraph(_0x5b7c77[_0xba3904(0x1e0)],_0x405358),{'valid':_0x405358[_0xba3904(0x2cc)]===0x0,'errors':_0x405358,'warnings':_0x39d2f5[_0xba3904(0x1c3)],'normalized':_0x5b7c77,'validationConfig':_0x19552d};}function validateFlowClassification(_0x302ede,_0x45789d){const _0xa6e484=a269_0x1c57b2;if(!isRecord(_0x302ede[_0xa6e484(0x1e0)]))return;const _0x1f8202=_0x302ede[_0xa6e484(0x261)],_0x4ce3e6=_0x302ede[_0xa6e484(0x1e0)][_0xa6e484(0x265)];_0x4ce3e6!==undefined&&(typeof _0x4ce3e6!=='string'||!FLOW_PAGE_MODES['has'](_0x4ce3e6))&&_0x45789d[_0xa6e484(0x24b)]({'path':'flowJson.pageMode','message':_0xa6e484(0x2be)+String(_0x4ce3e6)+'.'});_0x1f8202===_0xa6e484(0x194)&&_0x4ce3e6!==undefined&&_0x45789d[_0xa6e484(0x24b)]({'path':_0xa6e484(0x245),'message':_0xa6e484(0x2e2)});_0x1f8202===_0xa6e484(0x22a)&&_0x4ce3e6===_0xa6e484(0x21d)&&_0x45789d[_0xa6e484(0x24b)]({'path':'flowJson.pageMode','message':UNSUPPORTED_PLATFORM_FORM_MESSAGE});(_0x1f8202===_0xa6e484(0x194)||_0x1f8202===_0xa6e484(0x22a))&&validateCustomPageNavigation(_0x302ede,_0x1f8202,_0x4ce3e6,_0x45789d);if(_0x1f8202!==_0xa6e484(0x194)||!Array['isArray'](_0x302ede[_0xa6e484(0x1e0)][_0xa6e484(0x214)]))return;_0x302ede[_0xa6e484(0x1e0)][_0xa6e484(0x214)][_0xa6e484(0x197)]((_0x426cc7,_0x1606dd)=>{const _0x3d0e02=_0xa6e484;isRecord(_0x426cc7)&&_0x426cc7[_0x3d0e02(0x174)]===_0x3d0e02(0x179)&&_0x426cc7[_0x3d0e02(0x279)]===_0x3d0e02(0x263)&&_0x45789d['push']({'path':'flowJson.nodes['+_0x1606dd+_0x3d0e02(0x269),'message':_0x3d0e02(0x27f)});});}function validateCustomPageNavigation(_0x158344,_0x12ad17,_0x4626d8,_0x24ea95){const _0x2c9699=a269_0x1c57b2,_0x5f5bf9=_0x158344['flowJson'][_0x2c9699(0x224)];_0x5f5bf9!==undefined&&(!Number[_0x2c9699(0x1ab)](_0x5f5bf9)||_0x5f5bf9<=0x0)&&_0x24ea95['push']({'path':_0x2c9699(0x27b),'message':'startPageId\x20must\x20be\x20a\x20positive\x20integer.'});const _0x2b3d1f=Array[_0x2c9699(0x230)](_0x158344['flowJson'][_0x2c9699(0x214)])?_0x158344[_0x2c9699(0x1e0)]['nodes'][_0x2c9699(0x1bb)]((_0x38dcf8,_0x4ef581)=>({'node':_0x38dcf8,'index':_0x4ef581}))[_0x2c9699(0x20c)](({node:_0x1beaa9})=>isRecord(_0x1beaa9)&&_0x1beaa9['pageId']!==undefined):[],_0x1cf3b2=_0x5f5bf9!==undefined||_0x2b3d1f['length']>0x0,_0xe3b227=_0x4626d8===undefined&&_0x12ad17===_0x2c9699(0x22a)?_0x2c9699(0x218):_0x4626d8;_0x1cf3b2&&(_0x12ad17!==_0x2c9699(0x22a)||_0xe3b227!=='CUSTOM_PAGE')&&(_0x5f5bf9!==undefined&&_0x24ea95[_0x2c9699(0x24b)]({'path':'flowJson.startPageId','message':_0x2c9699(0x27e)}),_0x2b3d1f[_0x2c9699(0x197)](({index:_0x4d93a5})=>{const _0x1e07a2=_0x2c9699;_0x24ea95['push']({'path':_0x1e07a2(0x217)+_0x4d93a5+_0x1e07a2(0x2af),'message':_0x1e07a2(0x226)});}));}export async function writeNormalizedFlowConfig(_0xaa7b56,_0x19a1bc,_0x402b79={}){const _0x1d6688=a269_0x1c57b2,_0x140306=resolve(_0xaa7b56),_0x26580f=_0x140306+'.'+process[_0x1d6688(0x280)]+'.'+randomUUID()+_0x1d6688(0x1bd),_0x510d93=JSON[_0x1d6688(0x293)](_0x19a1bc,null,0x2)+'\x0a';let _0x3e38d5;try{try{_0x3e38d5=(await stat(_0x140306))[_0x1d6688(0x1a5)]&0x1ff;}catch{_0x3e38d5=undefined;}await writeFile(_0x26580f,_0x510d93,{'encoding':'utf8','flag':'wx','mode':_0x3e38d5??0x1a4});if(_0x3e38d5!==undefined)await chmod(_0x26580f,_0x3e38d5);_0x402b79[_0x1d6688(0x1cb)]===![]?(await link(_0x26580f,_0x140306),await unlink(_0x26580f)):await rename(_0x26580f,_0x140306);}finally{await unlink(_0x26580f)[_0x1d6688(0x1b6)](()=>undefined);}}function validateOuterMetadata(_0x4c0f4d,_0x2ca220){const _0x31d82a=a269_0x1c57b2;(typeof _0x4c0f4d['flowName']!=='string'||_0x4c0f4d['flowName']['trim']()==='')&&_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x1a1),'message':_0x31d82a(0x24c)});_0x4c0f4d[_0x31d82a(0x228)]!==undefined&&typeof _0x4c0f4d['flowDesc']!==_0x31d82a(0x27d)&&_0x2ca220['push']({'path':_0x31d82a(0x228),'message':'flowDesc\x20must\x20be\x20a\x20string.'});if(_0x4c0f4d[_0x31d82a(0x261)]===undefined||_0x4c0f4d['flowType']===null)_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x261),'message':_0x31d82a(0x2d5)});else(typeof _0x4c0f4d['flowType']!==_0x31d82a(0x27d)||!FLOW_TYPES[_0x31d82a(0x29d)](_0x4c0f4d[_0x31d82a(0x261)]))&&_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x261),'message':_0x31d82a(0x2a9)+String(_0x4c0f4d[_0x31d82a(0x261)])+'.'});_0x4c0f4d[_0x31d82a(0x2e3)]!==undefined&&typeof _0x4c0f4d[_0x31d82a(0x2e3)]!==_0x31d82a(0x27d)&&_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x2e3),'message':_0x31d82a(0x291)}),_0x4c0f4d[_0x31d82a(0x207)]!==undefined&&(!Number['isInteger'](_0x4c0f4d[_0x31d82a(0x207)])||_0x4c0f4d[_0x31d82a(0x207)]<0x0)&&_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x207),'message':'pageId\x20must\x20be\x20a\x20non-negative\x20integer.'}),_0x4c0f4d[_0x31d82a(0x261)]===_0x31d82a(0x22a)&&_0x4c0f4d['datasetCode']!==undefined&&_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x2e3),'message':'INDEPENDENT_FLOW\x20cannot\x20bind\x20datasetCode.'}),_0x4c0f4d[_0x31d82a(0x261)]===_0x31d82a(0x22a)&&_0x4c0f4d[_0x31d82a(0x207)]!==undefined&&_0x2ca220[_0x31d82a(0x24b)]({'path':_0x31d82a(0x207),'message':_0x31d82a(0x221)});}function validateGraph(_0x441721,_0x81fa6e){const _0x28a70f=a269_0x1c57b2;if(!isRecord(_0x441721)){_0x81fa6e[_0x28a70f(0x24b)]({'path':_0x28a70f(0x1e0),'message':_0x28a70f(0x18a)});return;}!Array[_0x28a70f(0x230)](_0x441721[_0x28a70f(0x214)])&&_0x81fa6e[_0x28a70f(0x24b)]({'path':_0x28a70f(0x2a2),'message':'nodes\x20must\x20be\x20an\x20array.'});!Array['isArray'](_0x441721[_0x28a70f(0x23a)])&&_0x81fa6e['push']({'path':'flowJson.edges','message':_0x28a70f(0x2c7)});Object['prototype'][_0x28a70f(0x242)][_0x28a70f(0x2bc)](_0x441721,'schemaVersion')&&_0x81fa6e[_0x28a70f(0x24b)]({'path':'flowJson.schemaVersion','message':_0x28a70f(0x216)+String(_0x441721['schemaVersion'])+_0x28a70f(0x247)+DEFAULT_FLOW_SCHEMA_VERSION+'.'});for(const _0x5e726d of[_0x28a70f(0x2b1),_0x28a70f(0x188),_0x28a70f(0x2a8)]){Object[_0x28a70f(0x19c)][_0x28a70f(0x242)]['call'](_0x441721,_0x5e726d)&&_0x81fa6e[_0x28a70f(0x24b)]({'path':'flowJson.'+_0x5e726d,'message':UNSUPPORTED_FORM_MESSAGE});}if(!Array[_0x28a70f(0x230)](_0x441721['nodes'])||!Array[_0x28a70f(0x230)](_0x441721['edges']))return;const _0x3b2f97=new Map(),_0x5397ce=[],_0x547efe=[],_0x84de6e=new Map(),_0x566dd9=new Map(),_0x1569a7=new Set();let _0xdfc8c3=0x0;_0x441721[_0x28a70f(0x214)][_0x28a70f(0x197)]((_0x16432f,_0x38880c)=>{const _0xd0e0e1=_0x28a70f,_0x5ec72d=_0xd0e0e1(0x217)+_0x38880c+']';if(!isRecord(_0x16432f)){_0x81fa6e[_0xd0e0e1(0x24b)]({'path':_0x5ec72d,'message':_0xd0e0e1(0x2ba)});return;}const _0xacd034=_0x16432f;if(typeof _0xacd034['id']!==_0xd0e0e1(0x27d)||!BPMN_ID_PATTERN[_0xd0e0e1(0x2dc)](_0xacd034['id']))_0x81fa6e[_0xd0e0e1(0x24b)]({'path':_0x5ec72d+'.id','message':_0xd0e0e1(0x23b)});else _0x3b2f97[_0xd0e0e1(0x29d)](_0xacd034['id'])?_0x81fa6e[_0xd0e0e1(0x24b)]({'path':_0x5ec72d+_0xd0e0e1(0x1c7),'message':'Duplicate\x20node\x20id:\x20'+_0xacd034['id']+'.'}):(_0x3b2f97['set'](_0xacd034['id'],_0xacd034),_0x1569a7[_0xd0e0e1(0x26d)](_0xacd034['id']));if(!NODE_TYPES[_0xd0e0e1(0x29d)](_0xacd034['type']))_0x81fa6e[_0xd0e0e1(0x24b)]({'path':_0x5ec72d+_0xd0e0e1(0x268),'message':_0xd0e0e1(0x1dc)+String(_0xacd034[_0xd0e0e1(0x174)])+'.'});else{if(_0xacd034[_0xd0e0e1(0x174)]===_0xd0e0e1(0x19f))_0x5397ce['push'](_0xacd034['id']);else _0xacd034[_0xd0e0e1(0x174)]===_0xd0e0e1(0x290)&&_0x547efe[_0xd0e0e1(0x24b)](_0xacd034['id']);}_0xacd034[_0xd0e0e1(0x174)]===_0xd0e0e1(0x179)&&(_0xacd034['taskMode']===undefined||_0xacd034[_0xd0e0e1(0x279)]==='APPROVAL')&&(_0xdfc8c3+=0x1);validateNode(_0xacd034,_0x5ec72d,_0x81fa6e);if(_0xacd034[_0xd0e0e1(0x174)]==='SCRIPT'){const _0x1f61c1=resolveEffectiveResultVariable(_0xacd034[_0xd0e0e1(0x20d)],![]);_0x1f61c1&&(registerResultVariableOwner(_0x566dd9,_0x1f61c1,_0xacd034['id'],_0x81fa6e),!_0x84de6e['has'](_0x1f61c1)&&_0x84de6e['set'](_0x1f61c1,_0xacd034['id']));}if(_0xacd034['type']==='APPROVAL'&&isRecord(_0xacd034['timeout'])&&_0xacd034[_0xd0e0e1(0x2d0)][_0xd0e0e1(0x1b2)]===!![]&&_0xacd034[_0xd0e0e1(0x2d0)][_0xd0e0e1(0x29b)]==='EXECUTE_BFF'){const _0x5ab932=resolveEffectiveResultVariable(_0xacd034['timeout']['resultVariable'],!![]);_0x5ab932&®isterResultVariableOwner(_0x566dd9,_0x5ab932,_0xacd034['id']+_0xd0e0e1(0x192),_0x81fa6e);}});_0x5397ce['length']!==0x1&&_0x81fa6e[_0x28a70f(0x24b)]({'path':_0x28a70f(0x2a2),'message':_0x28a70f(0x193)});_0x547efe['length']===0x0&&_0x81fa6e[_0x28a70f(0x24b)]({'path':_0x28a70f(0x2a2),'message':_0x28a70f(0x278)});const _0xf76529=new Map(),_0x4141c=new Map(),_0x137dbf=new Map(),_0x2291ed=new Set();_0x441721[_0x28a70f(0x23a)][_0x28a70f(0x197)]((_0x4b343c,_0x256391)=>{const _0x409736=_0x28a70f,_0x297a6f=_0x409736(0x1f4)+_0x256391+']';if(!isRecord(_0x4b343c)){_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f,'message':_0x409736(0x1c8)});return;}const _0x398808=_0x4b343c;_0x137dbf[_0x409736(0x294)](_0x398808,_0x297a6f);const _0x402225=resolveEdgeEndpoint(_0x398808[_0x409736(0x259)],_0x398808['sourceNodeId']),_0x1ef0c3=resolveEdgeEndpoint(_0x398808['target'],_0x398808['targetNodeId']);if(!_0x402225)_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f+_0x409736(0x1b9),'message':_0x409736(0x213)});if(!_0x1ef0c3)_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f+_0x409736(0x1ee),'message':_0x409736(0x26f)});_0x402225&&!_0x3b2f97[_0x409736(0x29d)](_0x402225)&&_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f+_0x409736(0x1b9),'message':'Edge\x20source\x20node\x20not\x20found:\x20'+_0x402225+'.'});_0x1ef0c3&&!_0x3b2f97[_0x409736(0x29d)](_0x1ef0c3)&&_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f+_0x409736(0x1ee),'message':_0x409736(0x1ba)+_0x1ef0c3+'.'});if(_0x398808['id']!==undefined){if(typeof _0x398808['id']!==_0x409736(0x27d)||!BPMN_ID_PATTERN[_0x409736(0x2dc)](_0x398808['id']))_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f+'.id','message':_0x409736(0x273)});else{if(_0x1569a7[_0x409736(0x29d)](_0x398808['id']))_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f+_0x409736(0x1c7),'message':_0x409736(0x270)+_0x398808['id']+'.'});else!_0x1569a7[_0x409736(0x29d)](_0x398808['id'])&&_0x1569a7[_0x409736(0x26d)](_0x398808['id']);}}if(_0x402225&&_0x1ef0c3){const _0x354c44=_0x402225+'\x00'+_0x1ef0c3+'\x00'+(_0x398808[_0x409736(0x18c)]??_0x409736(0x1a8));_0x2291ed[_0x409736(0x29d)](_0x354c44)?_0x81fa6e[_0x409736(0x24b)]({'path':_0x297a6f,'message':_0x409736(0x1b4)+_0x402225+_0x409736(0x1cc)+_0x1ef0c3+'\x20('+(_0x398808[_0x409736(0x18c)]??_0x409736(0x1a8))+').'}):_0x2291ed[_0x409736(0x26d)](_0x354c44);}validateEdge(_0x398808,_0x297a6f,_0x81fa6e),_0x402225&&_0x1ef0c3&&(_0xf76529[_0x409736(0x28e)](_0x402225)?.['push'](_0x398808)??_0xf76529[_0x409736(0x294)](_0x402225,[_0x398808]),_0x4141c[_0x409736(0x28e)](_0x1ef0c3)?.['push'](_0x398808)??_0x4141c[_0x409736(0x294)](_0x1ef0c3,[_0x398808]));});if(_0x5397ce['length']!==0x1)return;validateGraphShape(_0x3b2f97,_0x5397ce[0x0],_0x547efe,_0xf76529,_0x4141c,_0x137dbf,_0x81fa6e),validateScriptResultReferences(_0x3b2f97,_0x5397ce[0x0],_0xf76529,_0x4141c,_0x137dbf,_0x84de6e,_0x81fa6e),validateApprovalResults(_0x3b2f97,_0xdfc8c3,_0x547efe,_0x81fa6e);}function validateNode(_0x23fd6c,_0x50ca2e,_0xfe53bb){const _0x242d1c=a269_0x1c57b2;for(const _0x248a29 of[_0x242d1c(0x276),_0x242d1c(0x2a6)]){Object[_0x242d1c(0x19c)][_0x242d1c(0x242)][_0x242d1c(0x2bc)](_0x23fd6c,_0x248a29)&&_0xfe53bb['push']({'path':_0x50ca2e+'.'+_0x248a29,'message':UNSUPPORTED_FORM_MESSAGE});}if(!NODE_TYPES[_0x242d1c(0x29d)](_0x23fd6c[_0x242d1c(0x174)]))return;(typeof _0x23fd6c['name']!==_0x242d1c(0x27d)||_0x23fd6c[_0x242d1c(0x233)][_0x242d1c(0x2d3)]()==='')&&_0xfe53bb['push']({'path':_0x50ca2e+_0x242d1c(0x2aa),'message':_0x242d1c(0x2b0)});if(_0x23fd6c[_0x242d1c(0x207)]!==undefined){if(!Number[_0x242d1c(0x1ab)](_0x23fd6c[_0x242d1c(0x207)])||_0x23fd6c[_0x242d1c(0x207)]<=0x0)_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x2df),'message':_0x242d1c(0x1b1)});else _0x23fd6c['type']!==_0x242d1c(0x179)&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+'.pageId','message':'node\x20pageId\x20is\x20supported\x20only\x20on\x20APPROVAL\x20user\x20tasks.'});}const _0x6b5cfe=_0x23fd6c[_0x242d1c(0x2c1)];if(!isRecord(_0x6b5cfe))_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x1aa),'message':_0x242d1c(0x27a)});else for(const _0x5a6240 of['x','y']){const _0x1d0237=_0x6b5cfe[_0x5a6240];(typeof _0x1d0237!==_0x242d1c(0x295)||!Number[_0x242d1c(0x28d)](_0x1d0237)||_0x1d0237<0x0)&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x186)+_0x5a6240,'message':_0x242d1c(0x235)+_0x5a6240+_0x242d1c(0x274)});}if(_0x23fd6c[_0x242d1c(0x174)]==='APPROVAL'){const _0x14ccca=_0x23fd6c[_0x242d1c(0x25d)]??'SINGLE',_0x3439b5=_0x23fd6c[_0x242d1c(0x279)]??_0x242d1c(0x179);!APPROVAL_TASK_MODES[_0x242d1c(0x29d)](_0x3439b5)&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x2e7),'message':'Unsupported\x20task\x20mode:\x20'+String(_0x3439b5)+'.'});!APPROVAL_MODES[_0x242d1c(0x29d)](_0x14ccca)&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x19d),'message':_0x242d1c(0x19e)+String(_0x14ccca)+'.'});if(!isRecord(_0x23fd6c[_0x242d1c(0x24f)]))_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x199),'message':_0x242d1c(0x2e0)});else{const _0x213e6d=_0x23fd6c[_0x242d1c(0x24f)][_0x242d1c(0x229)];_0x213e6d!==_0x242d1c(0x256)&&_0x213e6d!=='ROLE'&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x1e5),'message':_0x242d1c(0x21a)});if(_0x213e6d===_0x242d1c(0x256)){const _0x51e971=_0x23fd6c[_0x242d1c(0x24f)][_0x242d1c(0x249)];if(!Array[_0x242d1c(0x230)](_0x51e971)||_0x51e971[_0x242d1c(0x2cc)]===0x0)_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x2d8),'message':_0x242d1c(0x24a)});else{const _0x39819f=_0x51e971[_0x242d1c(0x21e)](_0x1eeff7=>!isValidUserId(_0x1eeff7));_0x39819f>=0x0&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x219)+_0x39819f+']','message':_0x242d1c(0x285)});const _0x1e296b=new Set(_0x51e971['filter'](isValidUserId)[_0x242d1c(0x1bb)](_0x53431d=>String(_0x53431d)[_0x242d1c(0x2d3)]()));_0x14ccca===_0x242d1c(0x2d6)&&_0x1e296b[_0x242d1c(0x27c)]>0x1&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x2d8),'message':_0x242d1c(0x2db)});}}if(_0x213e6d===_0x242d1c(0x1b5)){const _0x4b6b97=_0x23fd6c[_0x242d1c(0x24f)][_0x242d1c(0x1a7)],_0x14c26e=typeof _0x4b6b97===_0x242d1c(0x295)||typeof _0x4b6b97==='string'?Number(String(_0x4b6b97)[_0x242d1c(0x2d3)]()):Number[_0x242d1c(0x25a)];(!Number['isSafeInteger'](_0x14c26e)||_0x14c26e<=0x0)&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+'.assignee.roleId','message':_0x242d1c(0x236)});}}if(_0x23fd6c[_0x242d1c(0x255)]!==undefined){if(!isRecord(_0x23fd6c['transferCandidates']))_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x1f8),'message':_0x242d1c(0x2ce)});else{if(_0x23fd6c[_0x242d1c(0x255)][_0x242d1c(0x229)]!==_0x242d1c(0x256))_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x2a7),'message':_0x242d1c(0x264)});else{const _0x6d92ed=_0x23fd6c[_0x242d1c(0x255)][_0x242d1c(0x249)];if(!Array['isArray'](_0x6d92ed)||_0x6d92ed[_0x242d1c(0x2cc)]===0x0)_0xfe53bb['push']({'path':_0x50ca2e+_0x242d1c(0x2c8),'message':_0x242d1c(0x2c9)});else{const _0x1c4835=_0x6d92ed[_0x242d1c(0x21e)](_0x346841=>!isValidUserId(_0x346841));_0x1c4835>=0x0&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x1c2)+_0x1c4835+']','message':_0x242d1c(0x299)});}}}}}_0x23fd6c[_0x242d1c(0x26e)]!==undefined&&typeof _0x23fd6c['sequential']!==_0x242d1c(0x1af)&&_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+_0x242d1c(0x26b),'message':'sequential\x20must\x20be\x20a\x20boolean.'});if(_0x23fd6c[_0x242d1c(0x174)]===_0x242d1c(0x1e2)){(typeof _0x23fd6c[_0x242d1c(0x191)]!==_0x242d1c(0x27d)||_0x23fd6c['scriptName'][_0x242d1c(0x2d3)]()==='')&&_0xfe53bb['push']({'path':_0x50ca2e+_0x242d1c(0x211),'message':_0x242d1c(0x1ca)});if(_0x23fd6c['resultVariable']!==undefined){if(typeof _0x23fd6c[_0x242d1c(0x20d)]!==_0x242d1c(0x27d)||!VARIABLE_PATTERN[_0x242d1c(0x2dc)](_0x23fd6c[_0x242d1c(0x20d)]))_0xfe53bb[_0x242d1c(0x24b)]({'path':_0x50ca2e+'.resultVariable','message':_0x242d1c(0x1ea)});else(RESERVED_RESULT_VARIABLES[_0x242d1c(0x29d)](_0x23fd6c[_0x242d1c(0x20d)])||_0x23fd6c[_0x242d1c(0x20d)]['startsWith'](_0x242d1c(0x253)))&&_0xfe53bb['push']({'path':_0x50ca2e+'.resultVariable','message':_0x242d1c(0x18f)+_0x23fd6c['resultVariable']+'.'});}}validateAsyncExecution(_0x23fd6c,_0x50ca2e,_0xfe53bb),validateApprovalTimeout(_0x23fd6c,_0x50ca2e,_0xfe53bb),validateCcConfig(_0x23fd6c,_0x50ca2e,_0xfe53bb),_0x23fd6c[_0x242d1c(0x174)]===_0x242d1c(0x2da)&&validateNotificationConfig(_0x23fd6c[_0x242d1c(0x288)],_0x50ca2e+_0x242d1c(0x2ae),_0xfe53bb);}function validateAsyncExecution(_0x16306e,_0x591914,_0x351d07){const _0x32a796=a269_0x1c57b2;if(_0x16306e[_0x32a796(0x1d8)]===undefined)return;if(!isRecord(_0x16306e[_0x32a796(0x1d8)])){_0x351d07[_0x32a796(0x24b)]({'path':_0x591914+'.async','message':_0x32a796(0x21f)});return;}if(_0x16306e[_0x32a796(0x1d8)][_0x32a796(0x1b2)]!==undefined&&typeof _0x16306e[_0x32a796(0x1d8)][_0x32a796(0x1b2)]!==_0x32a796(0x1af)){_0x351d07[_0x32a796(0x24b)]({'path':_0x591914+_0x32a796(0x185),'message':'async.enabled\x20must\x20be\x20a\x20boolean.'});return;}if(_0x16306e[_0x32a796(0x1d8)][_0x32a796(0x1b2)]!==!![])return;_0x16306e[_0x32a796(0x174)]!==_0x32a796(0x1e2)&&_0x351d07[_0x32a796(0x24b)]({'path':_0x591914+_0x32a796(0x1e1),'message':_0x32a796(0x1c4)});const _0xe84fe7=_0x16306e[_0x32a796(0x1d8)][_0x32a796(0x1f0)]??0x3;(!Number[_0x32a796(0x1f6)](_0xe84fe7)||_0xe84fe7<0x1||_0xe84fe7>MAX_ASYNC_RETRY_COUNT)&&_0x351d07[_0x32a796(0x24b)]({'path':_0x591914+_0x32a796(0x19a),'message':'SCRIPT\x20async\x20retryCount\x20must\x20be\x20between\x201\x20and\x20'+MAX_ASYNC_RETRY_COUNT+'.'}),_0x16306e['async'][_0x32a796(0x29f)]!==undefined&&validateTimeAmount(_0x16306e[_0x32a796(0x1d8)]['retryInterval'],_0x591914+_0x32a796(0x1fe),_0x351d07);}function validateApprovalTimeout(_0x11b101,_0x2764c1,_0x3892d7){const _0x1a4375=a269_0x1c57b2;if(_0x11b101[_0x1a4375(0x2d0)]===undefined)return;if(!isRecord(_0x11b101[_0x1a4375(0x2d0)])){_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+_0x1a4375(0x192),'message':_0x1a4375(0x2b8)});return;}if(_0x11b101['timeout'][_0x1a4375(0x1b2)]!==undefined&&typeof _0x11b101['timeout'][_0x1a4375(0x1b2)]!==_0x1a4375(0x1af)){_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+_0x1a4375(0x238),'message':_0x1a4375(0x1e4)});return;}if(_0x11b101[_0x1a4375(0x2d0)][_0x1a4375(0x1b2)]!==!![])return;if(_0x11b101['timeout'][_0x1a4375(0x2ab)]!==undefined&&typeof _0x11b101[_0x1a4375(0x2d0)][_0x1a4375(0x2ab)]!==_0x1a4375(0x1af)){_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+'.timeout.interrupting','message':'timeout.interrupting\x20must\x20be\x20a\x20boolean.'});return;}_0x11b101['type']!==_0x1a4375(0x179)&&_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+'.timeout','message':_0x1a4375(0x202)});validateTimeAmount(_0x11b101[_0x1a4375(0x2d0)][_0x1a4375(0x1db)],_0x2764c1+_0x1a4375(0x204),_0x3892d7);const _0x59e688=_0x11b101['timeout'][_0x1a4375(0x29b)];if(!APPROVAL_TIMEOUT_ACTIONS[_0x1a4375(0x29d)](_0x59e688)){_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+'.timeout.action','message':_0x1a4375(0x1c0)});return;}(_0x11b101[_0x1a4375(0x279)]??_0x1a4375(0x179))==='HANDLE'&&_0x59e688!==_0x1a4375(0x266)&&_0x3892d7['push']({'path':_0x2764c1+'.timeout.action','message':_0x1a4375(0x2d1)});const _0x3bd6b2=_0x11b101[_0x1a4375(0x2d0)]['interrupting']??_0x59e688!==_0x1a4375(0x266);if(_0x59e688===_0x1a4375(0x266))_0x3bd6b2&&_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+_0x1a4375(0x1b7),'message':_0x1a4375(0x2b9)}),(typeof _0x11b101[_0x1a4375(0x2d0)][_0x1a4375(0x191)]!==_0x1a4375(0x27d)||_0x11b101[_0x1a4375(0x2d0)][_0x1a4375(0x191)][_0x1a4375(0x2d3)]()==='')&&_0x3892d7['push']({'path':_0x2764c1+'.timeout.scriptName','message':_0x1a4375(0x1ff)}),validateOptionalResultVariable(_0x11b101['timeout']['resultVariable'],_0x2764c1+_0x1a4375(0x29c),_0x3892d7);else!_0x3bd6b2&&_0x3892d7[_0x1a4375(0x24b)]({'path':_0x2764c1+_0x1a4375(0x1b7),'message':_0x59e688+_0x1a4375(0x2e8)});}function validateTimeAmount(_0x5350a9,_0x2ef3bd,_0x39c02f){const _0x4749c1=a269_0x1c57b2;if(!isRecord(_0x5350a9)){_0x39c02f[_0x4749c1(0x24b)]({'path':_0x2ef3bd,'message':'duration\x20requires\x20value\x20and\x20unit.'});return;}(!Number[_0x4749c1(0x1f6)](_0x5350a9[_0x4749c1(0x212)])||Number(_0x5350a9[_0x4749c1(0x212)])<=0x0)&&_0x39c02f[_0x4749c1(0x24b)]({'path':_0x2ef3bd+_0x4749c1(0x2a0),'message':_0x4749c1(0x267)}),!FLOW_TIME_UNITS[_0x4749c1(0x29d)](_0x5350a9[_0x4749c1(0x1ad)])&&_0x39c02f[_0x4749c1(0x24b)]({'path':_0x2ef3bd+_0x4749c1(0x2c6),'message':_0x4749c1(0x17c)});}function validateOptionalResultVariable(_0x107e60,_0x7e08e2,_0x4e156e){const _0x2f699e=a269_0x1c57b2;if(_0x107e60===undefined||_0x107e60===null||_0x107e60==='')return;if(typeof _0x107e60!=='string'||!VARIABLE_PATTERN[_0x2f699e(0x2dc)](_0x107e60))_0x4e156e[_0x2f699e(0x24b)]({'path':_0x7e08e2,'message':_0x2f699e(0x1ea)});else(RESERVED_RESULT_VARIABLES[_0x2f699e(0x29d)](_0x107e60)||_0x107e60[_0x2f699e(0x262)](_0x2f699e(0x253)))&&_0x4e156e['push']({'path':_0x7e08e2,'message':_0x2f699e(0x18f)+_0x107e60+'.'});}function validateCcConfig(_0xc39b0e,_0x1bf2fd,_0x10c9b9){const _0x5c173e=a269_0x1c57b2;if(_0xc39b0e['cc']===undefined)return;if(!isRecord(_0xc39b0e['cc'])){_0x10c9b9[_0x5c173e(0x24b)]({'path':_0x1bf2fd+_0x5c173e(0x292),'message':_0x5c173e(0x177)});return;}_0xc39b0e[_0x5c173e(0x174)]!==_0x5c173e(0x290)&&_0xc39b0e[_0x5c173e(0x174)]!==_0x5c173e(0x179)&&_0x10c9b9[_0x5c173e(0x24b)]({'path':_0x1bf2fd+'.cc','message':_0x5c173e(0x225)});Object['prototype'][_0x5c173e(0x242)][_0x5c173e(0x2bc)](_0xc39b0e['cc'],_0x5c173e(0x1d4))&&_0x10c9b9[_0x5c173e(0x24b)]({'path':_0x1bf2fd+_0x5c173e(0x28a),'message':UNSUPPORTED_FORM_MESSAGE});const _0x3700ef=_0xc39b0e['cc']['recipientUserIds'];if(!Array[_0x5c173e(0x230)](_0x3700ef)||_0x3700ef['length']===0x0)_0x10c9b9[_0x5c173e(0x24b)]({'path':_0x1bf2fd+_0x5c173e(0x2b5),'message':_0x5c173e(0x215)});else{_0x3700ef[_0x5c173e(0x2cc)]>MAX_CC_RECIPIENTS&&_0x10c9b9[_0x5c173e(0x24b)]({'path':_0x1bf2fd+_0x5c173e(0x2b5),'message':_0x5c173e(0x1a0)+MAX_CC_RECIPIENTS+'\x20users.'});const _0x50c5a4=new Set();_0x3700ef['forEach']((_0xf08839,_0x5ccd44)=>{const _0x5eefe2=_0x5c173e;if(typeof _0xf08839!==_0x5eefe2(0x27d)||_0xf08839[_0x5eefe2(0x2d3)]()==='')_0x10c9b9['push']({'path':_0x1bf2fd+_0x5eefe2(0x1f7)+_0x5ccd44+']','message':_0x5eefe2(0x1fb)});else _0x50c5a4['has'](_0xf08839[_0x5eefe2(0x2d3)]())?_0x10c9b9[_0x5eefe2(0x24b)]({'path':_0x1bf2fd+_0x5eefe2(0x1f7)+_0x5ccd44+']','message':_0x5eefe2(0x1d3)+_0xf08839['trim']()+'.'}):_0x50c5a4[_0x5eefe2(0x26d)](_0xf08839[_0x5eefe2(0x2d3)]());});}validateStringArray(_0xc39b0e['cc'][_0x5c173e(0x25c)],_0x1bf2fd+_0x5c173e(0x297),_0x10c9b9);}function a269_0x40e0(_0x55d8a4,_0x47a25e){_0x55d8a4=_0x55d8a4-0x172;const _0x592307=a269_0x5923();let _0x40e0af=_0x592307[_0x55d8a4];return _0x40e0af;}function validateStringArray(_0x7cc5aa,_0x1efc5a,_0x2c98c6){const _0x9fd95d=a269_0x1c57b2;if(_0x7cc5aa===undefined)return;if(!Array[_0x9fd95d(0x230)](_0x7cc5aa)){_0x2c98c6[_0x9fd95d(0x24b)]({'path':_0x1efc5a,'message':_0x9fd95d(0x29e)});return;}const _0x2292e3=new Set();_0x7cc5aa[_0x9fd95d(0x197)]((_0x2d2642,_0x1cba82)=>{const _0x37e32a=_0x9fd95d;if(typeof _0x2d2642!==_0x37e32a(0x27d)||_0x2d2642[_0x37e32a(0x2d3)]()==='')_0x2c98c6[_0x37e32a(0x24b)]({'path':_0x1efc5a+'['+_0x1cba82+']','message':'value\x20must\x20be\x20a\x20non-empty\x20string.'});else _0x2292e3[_0x37e32a(0x29d)](_0x2d2642[_0x37e32a(0x2d3)]())?_0x2c98c6[_0x37e32a(0x24b)]({'path':_0x1efc5a+'['+_0x1cba82+']','message':_0x37e32a(0x17f)+_0x2d2642[_0x37e32a(0x2d3)]()+'.'}):_0x2292e3[_0x37e32a(0x26d)](_0x2d2642['trim']());});}function validateNotificationConfig(_0x22c18d,_0x1fa62e,_0x2daa21){const _0x42bb99=a269_0x1c57b2;if(!isRecord(_0x22c18d)){_0x2daa21[_0x42bb99(0x24b)]({'path':_0x1fa62e,'message':_0x42bb99(0x1cd)});return;}if(_0x22c18d[_0x42bb99(0x1b0)]!==undefined&&_0x22c18d['version']!==null){if(typeof _0x22c18d[_0x42bb99(0x1b0)]!==_0x42bb99(0x27d))_0x2daa21['push']({'path':_0x1fa62e+'.version','message':'Notification\x20version\x20must\x20be\x20a\x20string.'});else _0x22c18d[_0x42bb99(0x1b0)][_0x42bb99(0x2d3)]()&&_0x22c18d['version'][_0x42bb99(0x2d3)]()!=='v1'&&_0x2daa21[_0x42bb99(0x24b)]({'path':_0x1fa62e+_0x42bb99(0x1d2),'message':_0x42bb99(0x1ed)+_0x22c18d[_0x42bb99(0x1b0)]+'.'});}const _0x2ebf06=requireNotificationString(_0x22c18d[_0x42bb99(0x2c0)],_0x1fa62e+_0x42bb99(0x2d4),_0x42bb99(0x289),_0x2daa21);_0x2ebf06?.[_0x42bb99(0x29a)]('${')&&_0x2daa21[_0x42bb99(0x24b)]({'path':_0x1fa62e+_0x42bb99(0x2d4),'message':_0x42bb99(0x260)});if(_0x22c18d[_0x42bb99(0x2d2)]!==undefined&&_0x22c18d['failurePolicy']!==null){if(typeof _0x22c18d[_0x42bb99(0x2d2)]!==_0x42bb99(0x27d))_0x2daa21[_0x42bb99(0x24b)]({'path':_0x1fa62e+_0x42bb99(0x22b),'message':'failurePolicy\x20must\x20be\x20a\x20string.'});else!NOTIFICATION_FAILURE_POLICIES[_0x42bb99(0x29d)](_0x22c18d['failurePolicy'][_0x42bb99(0x2d3)]()['toUpperCase']())&&_0x2daa21[_0x42bb99(0x24b)]({'path':_0x1fa62e+_0x42bb99(0x22b),'message':_0x42bb99(0x2d9)});}!isRecord(_0x22c18d[_0x42bb99(0x1b8)])?_0x2daa21[_0x42bb99(0x24b)]({'path':_0x1fa62e+_0x42bb99(0x1eb),'message':_0x42bb99(0x28c)}):validateNotificationTemplate(_0x22c18d[_0x42bb99(0x1b8)],_0x1fa62e+_0x42bb99(0x1eb),_0x2daa21),validateNotificationRecipients(_0x22c18d['recipients'],_0x1fa62e+'.recipients',_0x2daa21);}function validateNotificationTemplate(_0x195dd6,_0x158bda,_0x4c6fbe){const _0x46220e=a269_0x1c57b2;for(const _0x3e91db of['title','summary']){const _0x248fe8=requireNotificationString(_0x195dd6[_0x3e91db],_0x158bda+'.'+_0x3e91db,_0x46220e(0x2c3)+_0x3e91db+_0x46220e(0x18b),_0x4c6fbe);if(_0x248fe8)validateNotificationPlaceholders(_0x248fe8,_0x158bda+'.'+_0x3e91db,_0x4c6fbe);}_0x195dd6[_0x46220e(0x244)]!==undefined&&_0x195dd6[_0x46220e(0x244)]!==null&&(typeof _0x195dd6[_0x46220e(0x244)]!=='string'?_0x4c6fbe[_0x46220e(0x24b)]({'path':_0x158bda+_0x46220e(0x2b6),'message':'Notification\x20template.detailMarkdown\x20must\x20be\x20a\x20string.'}):validateNotificationPlaceholders(_0x195dd6[_0x46220e(0x244)],_0x158bda+'.detailMarkdown',_0x4c6fbe)),validateNotificationFacts(_0x195dd6[_0x46220e(0x190)],_0x158bda+_0x46220e(0x23c),_0x4c6fbe),validateNotificationActions(_0x195dd6[_0x46220e(0x200)],_0x158bda+_0x46220e(0x198),_0x4c6fbe);}function a269_0x5923(){const _0x227234=['targetNodeId','waypoint.','isArray','approval_sys_operationType','.url','name','(?![A-Za-z0-9_])','position.','ROLE\x20assignee\x20requires\x20a\x20positive\x20integer\x20roleId.','195606BYuADo','.timeout.enabled','CONDITION\x20node\x20requires\x20exactly\x20one\x20default\x20outgoing\x20edge.','edges','node\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','.facts','ALL','message','object','Duplicate\x20resultVariable:\x20','summary','hasOwnProperty','.waypoints','detailMarkdown','flowJson.pageMode','APPROVAL\x20task\x20decision\x20edges\x20must\x20not\x20be\x20default\x20flows.','.\x20This\x20CLI\x20supports\x20only\x20','matchAll','userIds','FIXED\x20assignee\x20requires\x20userIds.','push','flowName\x20is\x20required.','bindDatasetCode','flowJson.nodes.','assignee','Notification\x20template.actions\x20must\x20be\x20an\x20array.','recipientUserIds','.role','approval_sys_','A\x20default\x20flow\x20must\x20use\x20conditionType\x20ALWAYS.','transferCandidates','FIXED','scriptResult','indexOf','source','NaN','Rabetbase\x20FlowConfig','visible','approvalMode','Accepted\x20as\x20legacy\x20input\x20and\x20removed\x20during\x20normalization;\x20other\x20versions\x20are\x20unsupported.','expression','Notification\x20configCode\x20must\x20be\x20a\x20fixed\x20value.','flowType','startsWith','HANDLE','transferCandidates\x20currently\x20supports\x20FIXED\x20only.','pageMode','EXECUTE_BFF','duration\x20value\x20must\x20be\x20a\x20positive\x20integer.','.type','].taskMode','result','.sequential','Notification\x20fact.','add','sequential','edge\x20target\x20is\x20required.','Duplicate\x20BPMN\x20element\x20id:\x20','templateName','SECONDS','edge\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','\x20must\x20be\x20a\x20finite\x20number\x20greater\x20than\x20or\x20equal\x20to\x200.','CONDITION\x20non-default\x20edge\x20requires\x20a\x20non-empty\x20expression.','form','EXPRESSION','Flow\x20must\x20contain\x20at\x20least\x20one\x20END\x20node.','taskMode','Every\x20node\x20requires\x20position.x\x20and\x20position.y.','flowJson.startPageId','size','string','startPageId\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','FORM_FLOW\x20is\x20an\x20approval\x20flow\x20and\x20cannot\x20contain\x20HANDLE\x20tasks;\x20use\x20INDEPENDENT_FLOW\x20for\x20workflows.','pid','END\x20node\x20must\x20not\x20have\x20outgoing\x20edges.','slice',',\x20but\x20node\x20','label','fixed\x20assignee\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','Notification\x20recipient.role\x20must\x20be\x20TO,\x20CC,\x20or\x20BCC.','#/$defs/position','config','Notification\x20configCode\x20is\x20required.','.cc.readSources','.conditionType','NOTIFICATION\x20node\x20requires\x20template.','isFinite','get','integer','END','datasetCode\x20must\x20be\x20a\x20string.','.cc','stringify','set','number','START\x20node\x20must\x20not\x20have\x20incoming\x20edges.','.cc.visible','ANY','transfer\x20candidate\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','includes','action','.timeout.resultVariable','has','value\x20must\x20be\x20an\x20array.','retryInterval','.value','Node\x20has\x20no\x20incoming\x20edge.','flowJson.nodes','Node\x20cannot\x20reach\x20any\x20END.','Custom\x20form\x20configuration\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20a\x20business\x20custom\x20page\x20instead.','Unsupported\x20notification\x20placeholder:\x20','formPermission','.transferCandidates.strategy','formPermissions','Unsupported\x20flowType:\x20','.name','interrupting','metadata','EMAIL','.config','].pageId','Every\x20node\x20requires\x20a\x20non-empty\x20name.','formSchema','waypoints\x20must\x20be\x20an\x20array.','text','role','.cc.recipientUserIds','.detailMarkdown','replace','timeout\x20must\x20be\x20an\x20object.','EXECUTE_BFF\x20timeout\x20must\x20not\x20interrupt\x20the\x20approval\x20task.','node\x20must\x20be\x20an\x20object.','approval_sys_processInstanceId','call','flowKey','Unsupported\x20pageMode:\x20','3911413ZkqOpQ','configCode','position','\x20must\x20be\x20a\x20finite\x20number.','Notification\x20template.','\x20was\x20empty\x20and\x20was\x20removed.','Notification\x20template\x20supports\x20at\x20most\x20','.unit','edges\x20must\x20be\x20an\x20array.','.transferCandidates.userIds','FIXED\x20transferCandidates\x20requires\x20non-empty\x20userIds.','945492FJNsJh','Notification\x20action.url\x20is\x20required.','length','2ZWYFSA','transferCandidates\x20must\x20be\x20an\x20object.','Notification\x20text\x20contains\x20a\x20malformed\x20placeholder.','timeout','HANDLE\x20task\x20timeout\x20only\x20supports\x20EXECUTE_BFF.','failurePolicy','trim','.configCode','flowType\x20is\x20required.','SINGLE','\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.','.assignee.userIds','failurePolicy\x20must\x20be\x20CONTINUE\x20or\x20FAIL.','NOTIFICATION','SINGLE\x20approval\x20supports\x20only\x20one\x20fixed\x20user.','test','toUpperCase','context','.pageId','APPROVAL\x20node\x20requires\x20assignee.','empty_metadata_removed','pageMode\x20applies\x20only\x20to\x20INDEPENDENT_FLOW.','datasetCode','Node\x20has\x20no\x20outgoing\x20edge.','147HrtKJb','schemaVersion','.taskMode','\x20timeout\x20must\x20interrupt\x20the\x20approval\x20task.','Explicit\x20notification\x20recipients\x20require\x20at\x20least\x20one\x20TO.','\x20actions.','type','__rabetbase_local_validation__','flowJson.edges','cc\x20must\x20be\x20an\x20object.','CONDITION\x20default\x20edge\x20must\x20use\x20conditionType\x20ALWAYS.','APPROVAL','DAYS','flowJson.','duration\x20unit\x20must\x20be\x20SECONDS,\x20MINUTES,\x20HOURS,\x20or\x20DAYS.','APPROVAL\x20node\x20requires\x20exactly\x20one\x20REJECTED\x20outgoing\x20edge.','CONTINUE','Duplicate\x20value:\x20','REJECTED','https://lovrabet.com/schema/rabetbase-flow-config.json','3782862MsUGYP','title','APPROVAL\x20node\x20outgoing\x20edges\x20must\x20use\x20APPROVED\x20or\x20REJECTED.','.async.enabled','.position.','PLATFORM_FORM\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','formDefinitions','appCode','flowJson\x20must\x20be\x20an\x20object.','\x20is\x20required.','conditionType','Notification\x20recipient.value\x20is\x20required.','approval_sys_datasetCode','Reserved\x20resultVariable:\x20','facts','scriptName','.timeout','Flow\x20must\x20contain\x20exactly\x20one\x20START\x20node.','FORM_FLOW','waypoints','^[A-Za-z_][A-Za-z0-9_]*$','forEach','.actions','.assignee','.async.retryCount','.expression','prototype','.approvalMode','Unsupported\x20approval\x20mode:\x20','START','cc.recipientUserIds\x20supports\x20at\x20most\x20','flowName','.waypoints[','\x5c$&','Notification\x20fact\x20must\x20be\x20an\x20object.','mode','#/$defs/flowEdge','roleId','ALWAYS','Unsupported\x20condition\x20type:\x20','.position','isSafeInteger','url','unit','target','boolean','version','node\x20pageId\x20must\x20be\x20a\x20positive\x20integer.','enabled','waypoint\x20must\x20contain\x20numeric\x20x\x20and\x20y\x20coordinates.','Duplicate\x20edge\x20route:\x20','ROLE','catch','.timeout.interrupting','template','.source','Edge\x20target\x20node\x20not\x20found:\x20','map','some','.tmp','approved','Notification\x20action.url\x20must\x20use\x20http/https\x20or\x20a\x20complete\x20supported\x20placeholder.','timeout.action\x20must\x20be\x20AUTO_APPROVE,\x20AUTO_REJECT,\x20or\x20EXECUTE_BFF.','FAIL','.transferCandidates.userIds[','warnings','async\x20execution\x20is\x20only\x20supported\x20by\x20SCRIPT\x20node.','AUTO_REJECT','Approval\x20flow\x20requires\x20an\x20END\x20node\x20with\x20result\x20','.id','edge\x20must\x20be\x20an\x20object.','96HqgFKV','SCRIPT\x20node\x20requires\x20scriptName.','overwrite','\x20->\x20','NOTIFICATION\x20node\x20requires\x20config.','parse','\x20was\x20empty\x20or\x20used\x20the\x20default\x20','Expression\x20references\x20SCRIPT\x20resultVariable\x20','legacy_field_removed','.version','Duplicate\x20cc\x20recipient\x20userId:\x20','readSources','Node\x20is\x20not\x20reachable\x20from\x20START.','approval_sys_initiatorUserId','utf8','async','delete','every','duration','Unsupported\x20node\x20type:\x20','3593032oeLddZ','CONDITION\x20default\x20edge\x20must\x20not\x20define\x20expression.','flowCode','flowJson','.async','SCRIPT','CONDITION','timeout.enabled\x20must\x20be\x20a\x20boolean.','.assignee.strategy','40qqvWTU','array','#/$defs/userId','Notification\x20recipient.type\x20is\x20required.','resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','.template','HANDLE\x20task\x20requires\x20exactly\x20one\x20outgoing\x20edge.','Unsupported\x20notification\x20version:\x20','.target','(?<![A-Za-z0-9_])','retryCount','USER','APPROVED','3186873EUfcGi','flowJson.edges[','defaultFlow','isInteger','.cc.recipientUserIds[','.transferCandidates','\x20facts.','BCC','cc\x20recipient\x20userId\x20must\x20be\x20a\x20non-empty\x20string.','defaultFlow\x20must\x20be\x20a\x20boolean.','CONDITION\x20non-default\x20edge\x20must\x20use\x20conditionType\x20EXPRESSION.','.async.retryInterval','EXECUTE_BFF\x20timeout\x20requires\x20scriptName.','actions','sourceNodeId','timeout\x20is\x20only\x20supported\x20by\x20APPROVAL\x20node.','MINUTES','.timeout.duration','A\x20default\x20flow\x20must\x20not\x20have\x20an\x20expression.','Notification\x20recipients\x20must\x20be\x20an\x20array.','pageId','30KwLyWl','#/$defs/flowNode','Notification\x20recipient.type\x20must\x20be\x20USER,\x20ROLE,\x20or\x20EMAIL.','approval_sys_appCode','filter','resultVariable','.text','AUTO_APPROVE','variables','.scriptName','value','edge\x20source\x20is\x20required.','nodes','cc.recipientUserIds\x20must\x20be\x20a\x20non-empty\x20array.','Unsupported\x20schemaVersion:\x20','flowJson.nodes[','CUSTOM_PAGE','.assignee.userIds[','assignee.strategy\x20must\x20be\x20FIXED\x20or\x20ROLE.','edge\x20name\x20must\x20be\x20a\x20string.','Notification\x20recipient.role\x20must\x20be\x20a\x20string.','PLATFORM_FORM','findIndex','async\x20must\x20be\x20an\x20object.','keys','INDEPENDENT_FLOW\x20cannot\x20bind\x20pageId.','147793yBakAE','.defaultFlow','startPageId','Default\x20cc\x20is\x20only\x20supported\x20by\x20APPROVAL\x20or\x20END\x20node.','node\x20pageId\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','Notification\x20recipient\x20must\x20be\x20an\x20object.','flowDesc','strategy','INDEPENDENT_FLOW','.failurePolicy','approval.simple-flow.v1','No\x20END\x20node\x20is\x20reachable\x20from\x20START.'];a269_0x5923=function(){return _0x227234;};return a269_0x5923();}function validateNotificationFacts(_0x193d1e,_0x436896,_0x24bf57){const _0x1c34a5=a269_0x1c57b2;if(_0x193d1e===undefined||_0x193d1e===null)return;if(!Array[_0x1c34a5(0x230)](_0x193d1e)){_0x24bf57['push']({'path':_0x436896,'message':'Notification\x20template.facts\x20must\x20be\x20an\x20array.'});return;}_0x193d1e[_0x1c34a5(0x2cc)]>MAX_NOTIFICATION_FACTS&&_0x24bf57[_0x1c34a5(0x24b)]({'path':_0x436896,'message':'Notification\x20template\x20supports\x20at\x20most\x20'+MAX_NOTIFICATION_FACTS+_0x1c34a5(0x1f9)}),_0x193d1e[_0x1c34a5(0x197)]((_0x4239d0,_0x942ab0)=>{const _0x7b530a=_0x1c34a5,_0x135c73=_0x436896+'['+_0x942ab0+']';if(!isRecord(_0x4239d0)){_0x24bf57[_0x7b530a(0x24b)]({'path':_0x135c73,'message':_0x7b530a(0x1a4)});return;}for(const _0x387943 of[_0x7b530a(0x284),'value']){const _0x68426e=requireNotificationString(_0x4239d0[_0x387943],_0x135c73+'.'+_0x387943,_0x7b530a(0x26c)+_0x387943+'\x20is\x20required.',_0x24bf57);_0x68426e&&validateNotificationPlaceholders(_0x68426e,_0x135c73+'.'+_0x387943,_0x24bf57);}});}function validateNotificationActions(_0x28e8ef,_0x2d9bbb,_0x54a3ff){const _0x188794=a269_0x1c57b2;if(_0x28e8ef===undefined||_0x28e8ef===null)return;if(!Array['isArray'](_0x28e8ef)){_0x54a3ff[_0x188794(0x24b)]({'path':_0x2d9bbb,'message':_0x188794(0x250)});return;}_0x28e8ef['length']>MAX_NOTIFICATION_ACTIONS&&_0x54a3ff['push']({'path':_0x2d9bbb,'message':_0x188794(0x2c5)+MAX_NOTIFICATION_ACTIONS+_0x188794(0x173)}),_0x28e8ef[_0x188794(0x197)]((_0x394846,_0x36e0f4)=>{const _0x23b56d=_0x188794,_0x3a99b2=_0x2d9bbb+'['+_0x36e0f4+']';if(!isRecord(_0x394846)){_0x54a3ff[_0x23b56d(0x24b)]({'path':_0x3a99b2,'message':'Notification\x20action\x20must\x20be\x20an\x20object.'});return;}const _0x493a10=requireNotificationString(_0x394846[_0x23b56d(0x2b3)],_0x3a99b2+_0x23b56d(0x20e),'Notification\x20action.text\x20is\x20required.',_0x54a3ff);if(_0x493a10)validateNotificationPlaceholders(_0x493a10,_0x3a99b2+_0x23b56d(0x20e),_0x54a3ff);const _0x2f0f0a=requireNotificationString(_0x394846[_0x23b56d(0x1ac)],_0x3a99b2+_0x23b56d(0x232),_0x23b56d(0x2cb),_0x54a3ff);if(!_0x2f0f0a)return;validateNotificationPlaceholders(_0x2f0f0a,_0x3a99b2+_0x23b56d(0x232),_0x54a3ff),!/^https?:\/\//i['test'](_0x2f0f0a)&&!NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN[_0x23b56d(0x2dc)](_0x2f0f0a)&&_0x54a3ff[_0x23b56d(0x24b)]({'path':_0x3a99b2+_0x23b56d(0x232),'message':_0x23b56d(0x1bf)});});}function validateNotificationRecipients(_0x1d716d,_0x3b01e2,_0x1bac25){const _0x5e21c0=a269_0x1c57b2;if(_0x1d716d===undefined||_0x1d716d===null)return;if(!Array[_0x5e21c0(0x230)](_0x1d716d)){_0x1bac25[_0x5e21c0(0x24b)]({'path':_0x3b01e2,'message':_0x5e21c0(0x206)});return;}let _0x33f0f6=![];_0x1d716d[_0x5e21c0(0x197)]((_0xd61705,_0xa94566)=>{const _0x13fadf=_0x5e21c0,_0x254aff=_0x3b01e2+'['+_0xa94566+']';if(!isRecord(_0xd61705)){_0x1bac25[_0x13fadf(0x24b)]({'path':_0x254aff,'message':_0x13fadf(0x227)});return;}const _0x50c5c2=requireNotificationString(_0xd61705[_0x13fadf(0x174)],_0x254aff+_0x13fadf(0x268),_0x13fadf(0x1e9),_0x1bac25);_0x50c5c2&&!NOTIFICATION_RECIPIENT_TYPES[_0x13fadf(0x29d)](_0x50c5c2[_0x13fadf(0x2dd)]())&&_0x1bac25[_0x13fadf(0x24b)]({'path':_0x254aff+_0x13fadf(0x268),'message':_0x13fadf(0x20a)});let _0x265288='TO';_0xd61705['role']!==undefined&&_0xd61705[_0x13fadf(0x2b4)]!==null&&(typeof _0xd61705[_0x13fadf(0x2b4)]!==_0x13fadf(0x27d)?(_0x1bac25[_0x13fadf(0x24b)]({'path':_0x254aff+_0x13fadf(0x252),'message':_0x13fadf(0x21c)}),_0x265288=''):(_0x265288=_0xd61705[_0x13fadf(0x2b4)]['trim']()[_0x13fadf(0x2dd)](),!NOTIFICATION_RECIPIENT_ROLES[_0x13fadf(0x29d)](_0x265288)&&_0x1bac25[_0x13fadf(0x24b)]({'path':_0x254aff+_0x13fadf(0x252),'message':_0x13fadf(0x286)})));if(_0x265288==='TO')_0x33f0f6=!![];const _0x5f22b8=requireNotificationString(_0xd61705[_0x13fadf(0x212)],_0x254aff+_0x13fadf(0x2a0),_0x13fadf(0x18d),_0x1bac25);_0x5f22b8&&validateNotificationPlaceholders(_0x5f22b8,_0x254aff+_0x13fadf(0x2a0),_0x1bac25);}),_0x1d716d[_0x5e21c0(0x2cc)]>0x0&&!_0x33f0f6&&_0x1bac25[_0x5e21c0(0x24b)]({'path':_0x3b01e2,'message':_0x5e21c0(0x172)});}function requireNotificationString(_0x3fac3a,_0x33aaba,_0x644aec,_0x1f29c5){const _0x1f86ba=a269_0x1c57b2;if(typeof _0x3fac3a!==_0x1f86ba(0x27d)||_0x3fac3a['trim']()==='')return _0x1f29c5[_0x1f86ba(0x24b)]({'path':_0x33aaba,'message':_0x644aec}),undefined;return _0x3fac3a[_0x1f86ba(0x2d3)]();}function validateNotificationPlaceholders(_0x390db3,_0x2adb53,_0x4d348c){const _0x32b36d=a269_0x1c57b2;for(const _0x1dce13 of _0x390db3[_0x32b36d(0x248)](NOTIFICATION_PLACEHOLDER_PATTERN)){const _0x434281=_0x1dce13[0x1]?.['trim']()??'',_0x3d5488=_0x434281[_0x32b36d(0x258)]('.'),_0x5e54b2=_0x3d5488>=0x0?_0x434281[_0x32b36d(0x282)](0x0,_0x3d5488):_0x434281,_0x21e2e7=_0x3d5488>=0x0?_0x434281[_0x32b36d(0x282)](_0x3d5488+0x1)[_0x32b36d(0x2d3)]():'';(!['event',_0x32b36d(0x2de),_0x32b36d(0x210)][_0x32b36d(0x29a)](_0x5e54b2)||_0x21e2e7==='')&&_0x4d348c['push']({'path':_0x2adb53,'message':_0x32b36d(0x2a5)+_0x1dce13[0x0]+'.'});}_0x390db3[_0x32b36d(0x2b7)](NOTIFICATION_PLACEHOLDER_PATTERN,'')[_0x32b36d(0x29a)]('${')&&_0x4d348c['push']({'path':_0x2adb53,'message':_0x32b36d(0x2cf)});}function validateEdge(_0x161b0c,_0x5067e8,_0x3b0508){const _0x22e370=a269_0x1c57b2;_0x161b0c[_0x22e370(0x233)]!==undefined&&typeof _0x161b0c[_0x22e370(0x233)]!==_0x22e370(0x27d)&&_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+'.name','message':_0x22e370(0x21b)}),_0x161b0c[_0x22e370(0x1f5)]!==undefined&&typeof _0x161b0c['defaultFlow']!==_0x22e370(0x1af)&&_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+'.defaultFlow','message':_0x22e370(0x1fc)}),_0x161b0c['waypoints']!==undefined&&(!Array[_0x22e370(0x230)](_0x161b0c[_0x22e370(0x195)])?_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+_0x22e370(0x243),'message':_0x22e370(0x2b2)}):_0x161b0c[_0x22e370(0x195)][_0x22e370(0x197)]((_0x54a93e,_0x179b90)=>{const _0x4afbfc=_0x22e370;if(!isRecord(_0x54a93e)){_0x3b0508['push']({'path':_0x5067e8+'.waypoints['+_0x179b90+']','message':_0x4afbfc(0x1b3)});return;}for(const _0x5f531f of['x','y']){const _0x502655=_0x54a93e[_0x5f531f];(typeof _0x502655!==_0x4afbfc(0x295)||!Number[_0x4afbfc(0x28d)](_0x502655))&&_0x3b0508['push']({'path':_0x5067e8+_0x4afbfc(0x1a2)+_0x179b90+'].'+_0x5f531f,'message':_0x4afbfc(0x22f)+_0x5f531f+_0x4afbfc(0x2c2)});}})),_0x161b0c[_0x22e370(0x18c)]!==undefined&&!CONDITION_TYPES[_0x22e370(0x29d)](_0x161b0c[_0x22e370(0x18c)])&&_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+'.conditionType','message':_0x22e370(0x1a9)+String(_0x161b0c['conditionType'])+'.'}),_0x161b0c[_0x22e370(0x18c)]===_0x22e370(0x277)&&(typeof _0x161b0c[_0x22e370(0x25f)]!==_0x22e370(0x27d)||_0x161b0c[_0x22e370(0x25f)]['trim']()==='')&&_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+_0x22e370(0x19b),'message':'EXPRESSION\x20edge\x20requires\x20expression.'}),_0x161b0c[_0x22e370(0x1f5)]===!![]&&_0x161b0c[_0x22e370(0x18c)]!==_0x22e370(0x1a8)&&_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+_0x22e370(0x223),'message':_0x22e370(0x254)}),_0x161b0c[_0x22e370(0x1f5)]===!![]&&typeof _0x161b0c[_0x22e370(0x25f)]===_0x22e370(0x27d)&&_0x161b0c[_0x22e370(0x25f)]['trim']()!==''&&_0x3b0508[_0x22e370(0x24b)]({'path':_0x5067e8+_0x22e370(0x19b),'message':_0x22e370(0x205)});}function validateGraphShape(_0x5acdec,_0x1eec3a,_0x50793b,_0x213d34,_0x5de0ae,_0x2b77c1,_0x4a272b){const _0x2412e2=a269_0x1c57b2;for(const [_0xfb24c1,_0x24a7b2]of _0x5acdec){const _0x18a559=_0x5de0ae[_0x2412e2(0x28e)](_0xfb24c1)??[],_0xdfeda3=_0x213d34['get'](_0xfb24c1)??[];_0x24a7b2[_0x2412e2(0x174)]!==_0x2412e2(0x19f)&&_0x18a559['length']===0x0&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':_0x2412e2(0x2a1)});_0x24a7b2['type']!=='END'&&_0xdfeda3['length']===0x0&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':_0x2412e2(0x2e4)});_0x24a7b2['type']===_0x2412e2(0x19f)&&_0x18a559[_0x2412e2(0x2cc)]>0x0&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':_0x2412e2(0x296)});_0x24a7b2[_0x2412e2(0x174)]==='END'&&_0xdfeda3['length']>0x0&&_0x4a272b['push']({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':_0x2412e2(0x281)});if(_0x24a7b2[_0x2412e2(0x174)]===_0x2412e2(0x1e3)){_0xdfeda3[_0x2412e2(0x2cc)]<0x2&&_0x4a272b[_0x2412e2(0x24b)]({'path':'flowJson.nodes.'+_0xfb24c1,'message':'CONDITION\x20node\x20requires\x20at\x20least\x20two\x20outgoing\x20edges.'});const _0xad5e62=_0xdfeda3['filter'](_0x47d16d=>_0x47d16d[_0x2412e2(0x1f5)]===!![]);_0xad5e62[_0x2412e2(0x2cc)]!==0x1&&_0x4a272b[_0x2412e2(0x24b)]({'path':'flowJson.nodes.'+_0xfb24c1,'message':_0x2412e2(0x239)});if(_0xad5e62[_0x2412e2(0x2cc)]===0x1){const _0x838a10=_0xad5e62[0x0],_0x553b1d=_0x2b77c1[_0x2412e2(0x28e)](_0x838a10)??'flowJson.edges';_0x838a10[_0x2412e2(0x18c)]!==_0x2412e2(0x1a8)&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x553b1d+_0x2412e2(0x28b),'message':_0x2412e2(0x178)});_0x838a10['expression']!==undefined&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x553b1d+_0x2412e2(0x19b),'message':_0x2412e2(0x1de)});for(const _0x57aa05 of _0xdfeda3){if(_0x57aa05===_0x838a10)continue;const _0x123786=_0x2b77c1[_0x2412e2(0x28e)](_0x57aa05)??'flowJson.edges';if(_0x57aa05[_0x2412e2(0x18c)]!=='EXPRESSION')_0x4a272b[_0x2412e2(0x24b)]({'path':_0x123786+'.conditionType','message':_0x2412e2(0x1fd)});else(typeof _0x57aa05[_0x2412e2(0x25f)]!==_0x2412e2(0x27d)||_0x57aa05[_0x2412e2(0x25f)][_0x2412e2(0x2d3)]()==='')&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x123786+'.expression','message':_0x2412e2(0x275)});}}}if(_0x24a7b2[_0x2412e2(0x174)]===_0x2412e2(0x179)&&(_0x24a7b2['taskMode']??_0x2412e2(0x179))===_0x2412e2(0x263)){if(_0xdfeda3[_0x2412e2(0x2cc)]!==0x1)_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':_0x2412e2(0x1ec)});else{const _0x409820=_0xdfeda3[0x0];((_0x409820[_0x2412e2(0x18c)]??_0x2412e2(0x1a8))!==_0x2412e2(0x1a8)||_0x409820[_0x2412e2(0x1f5)]===!![]||typeof _0x409820[_0x2412e2(0x25f)]===_0x2412e2(0x27d)&&_0x409820[_0x2412e2(0x25f)][_0x2412e2(0x2d3)]()!=='')&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2b77c1[_0x2412e2(0x28e)](_0x409820)??'flowJson.edges','message':'HANDLE\x20task\x20outgoing\x20edge\x20must\x20use\x20ALWAYS\x20without\x20defaultFlow\x20or\x20expression.'});}}else{if(_0x24a7b2['type']==='APPROVAL'){const _0xf7b05a=_0xdfeda3[_0x2412e2(0x1bb)](_0x443087=>_0x443087['conditionType']??_0x2412e2(0x1a8)),_0x1bbde3=_0xf7b05a[_0x2412e2(0x20c)](_0x48d85f=>_0x48d85f!==_0x2412e2(0x1f2)&&_0x48d85f!==_0x2412e2(0x180));_0x1bbde3[_0x2412e2(0x2cc)]>0x0&&_0x4a272b['push']({'path':'flowJson.nodes.'+_0xfb24c1,'message':_0x2412e2(0x184)}),_0xf7b05a['filter'](_0x546bb2=>_0x546bb2===_0x2412e2(0x1f2))[_0x2412e2(0x2cc)]!==0x1&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':'APPROVAL\x20node\x20requires\x20exactly\x20one\x20APPROVED\x20outgoing\x20edge.'}),_0xf7b05a[_0x2412e2(0x20c)](_0x2e18ac=>_0x2e18ac===_0x2412e2(0x180))[_0x2412e2(0x2cc)]!==0x1&&_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x24e)+_0xfb24c1,'message':_0x2412e2(0x17d)}),_0xdfeda3['some'](_0x58e39a=>_0x58e39a[_0x2412e2(0x1f5)]===!![])&&_0x4a272b['push']({'path':'flowJson.nodes.'+_0xfb24c1,'message':_0x2412e2(0x246)});}}}const _0x64e4da=new Set(),_0x1ff0d6=_0x4acdc4=>{const _0x2c8a97=_0x2412e2;if(_0x64e4da[_0x2c8a97(0x29d)](_0x4acdc4))return;_0x64e4da['add'](_0x4acdc4);for(const _0x1f91d6 of _0x213d34[_0x2c8a97(0x28e)](_0x4acdc4)??[]){const _0x338b4c=resolveEdgeEndpoint(_0x1f91d6[_0x2c8a97(0x1ae)],_0x1f91d6[_0x2c8a97(0x22e)]);if(_0x338b4c&&_0x5acdec[_0x2c8a97(0x29d)](_0x338b4c))_0x1ff0d6(_0x338b4c);}};_0x1ff0d6(_0x1eec3a);for(const _0x4c5e1c of _0x5acdec[_0x2412e2(0x220)]()){!_0x64e4da['has'](_0x4c5e1c)&&_0x4a272b['push']({'path':_0x2412e2(0x24e)+_0x4c5e1c,'message':_0x2412e2(0x1d5)});}const _0x5be168=_0x50793b[_0x2412e2(0x1bc)](_0x3f587f=>_0x64e4da[_0x2412e2(0x29d)](_0x3f587f));if(!_0x5be168){_0x4a272b[_0x2412e2(0x24b)]({'path':_0x2412e2(0x176),'message':_0x2412e2(0x22d)});return;}const _0x2cbd29=new Set(),_0x2b5837=_0x57e996=>{const _0x29972e=_0x2412e2;if(_0x2cbd29[_0x29972e(0x29d)](_0x57e996))return;_0x2cbd29[_0x29972e(0x26d)](_0x57e996);for(const _0x1da578 of _0x5de0ae['get'](_0x57e996)??[]){const _0x25e328=resolveEdgeEndpoint(_0x1da578['source'],_0x1da578[_0x29972e(0x201)]);if(_0x25e328&&_0x5acdec[_0x29972e(0x29d)](_0x25e328))_0x2b5837(_0x25e328);}};for(const _0x17be6d of _0x50793b){if(_0x5acdec[_0x2412e2(0x29d)](_0x17be6d))_0x2b5837(_0x17be6d);}for(const _0x5100f7 of _0x64e4da){!_0x2cbd29[_0x2412e2(0x29d)](_0x5100f7)&&_0x4a272b['push']({'path':_0x2412e2(0x24e)+_0x5100f7,'message':_0x2412e2(0x2a3)});}}function validateApprovalResults(_0x272e45,_0xa56415,_0x5adb93,_0x11e2de){const _0xfe57f4=a269_0x1c57b2;if(_0xa56415===0x0)return;const _0xd1e671=new Set(_0x5adb93[_0xfe57f4(0x1bb)](_0x4c570d=>_0x272e45['get'](_0x4c570d)?.[_0xfe57f4(0x26a)])[_0xfe57f4(0x20c)](_0x1e6a66=>typeof _0x1e6a66===_0xfe57f4(0x27d)));for(const _0x31c5f0 of[_0xfe57f4(0x1f2),_0xfe57f4(0x180)]){!_0xd1e671[_0xfe57f4(0x29d)](_0x31c5f0)&&_0x11e2de['push']({'path':_0xfe57f4(0x2a2),'message':_0xfe57f4(0x1c6)+_0x31c5f0+'.'});}}function validateScriptResultReferences(_0x1a0a00,_0xb3b1db,_0x1148d9,_0x5a3336,_0x25f1b5,_0x8027d0,_0x27fe15){const _0x3b26ba=a269_0x1c57b2;if(_0x8027d0[_0x3b26ba(0x27c)]===0x0)return;const _0x1f71b7=new Set(),_0x13aa02=_0x57e2d2=>{const _0x3b6d7c=_0x3b26ba;if(!_0x1f71b7['has'](_0x57e2d2)&&_0x1a0a00[_0x3b6d7c(0x29d)](_0x57e2d2)){_0x1f71b7[_0x3b6d7c(0x26d)](_0x57e2d2);for(const _0x5d62ab of _0x1148d9[_0x3b6d7c(0x28e)](_0x57e2d2)??[]){const _0x3abf83=resolveEdgeEndpoint(_0x5d62ab[_0x3b6d7c(0x1ae)],_0x5d62ab[_0x3b6d7c(0x22e)]);if(_0x3abf83)_0x13aa02(_0x3abf83);}}};_0x13aa02(_0xb3b1db);const _0x49e5f4=new Map();for(const _0x3000fd of _0x1f71b7){_0x49e5f4[_0x3b26ba(0x294)](_0x3000fd,_0x3000fd===_0xb3b1db?new Set([_0xb3b1db]):new Set(_0x1f71b7));}let _0x3fa5ec=!![];while(_0x3fa5ec){_0x3fa5ec=![];for(const _0x1c4e02 of _0x1f71b7){if(_0x1c4e02===_0xb3b1db)continue;const _0x3bdcdd=(_0x5a3336[_0x3b26ba(0x28e)](_0x1c4e02)??[])['map'](_0x457635=>resolveEdgeEndpoint(_0x457635[_0x3b26ba(0x259)],_0x457635[_0x3b26ba(0x201)]))[_0x3b26ba(0x20c)](_0x533e9d=>Boolean(_0x533e9d&&_0x1f71b7[_0x3b26ba(0x29d)](_0x533e9d)));if(_0x3bdcdd[_0x3b26ba(0x2cc)]===0x0)continue;const _0x13020b=new Set(_0x49e5f4[_0x3b26ba(0x28e)](_0x3bdcdd[0x0])??[]);for(const _0x1cf6fb of _0x3bdcdd[_0x3b26ba(0x282)](0x1)){const _0x36fd72=_0x49e5f4[_0x3b26ba(0x28e)](_0x1cf6fb)??new Set();for(const _0x5d87aa of _0x13020b){if(!_0x36fd72[_0x3b26ba(0x29d)](_0x5d87aa))_0x13020b[_0x3b26ba(0x1d9)](_0x5d87aa);}}_0x13020b['add'](_0x1c4e02);const _0x4ca209=_0x49e5f4[_0x3b26ba(0x28e)](_0x1c4e02);!setsEqual(_0x4ca209,_0x13020b)&&(_0x49e5f4[_0x3b26ba(0x294)](_0x1c4e02,_0x13020b),_0x3fa5ec=!![]);}}for(const [_0x5490a3,_0x547943]of _0x1148d9){const _0x16e8a8=_0x49e5f4[_0x3b26ba(0x28e)](_0x5490a3);if(!_0x16e8a8)continue;for(const _0x211c63 of _0x547943){if(_0x211c63[_0x3b26ba(0x18c)]!==_0x3b26ba(0x277)||typeof _0x211c63[_0x3b26ba(0x25f)]!==_0x3b26ba(0x27d))continue;for(const [_0x4eefe3,_0x43e8db]of _0x8027d0){expressionReferencesVariable(_0x211c63[_0x3b26ba(0x25f)],_0x4eefe3)&&!_0x16e8a8[_0x3b26ba(0x29d)](_0x43e8db)&&_0x27fe15['push']({'path':(_0x25f1b5[_0x3b26ba(0x28e)](_0x211c63)??_0x3b26ba(0x176))+_0x3b26ba(0x19b),'message':_0x3b26ba(0x1d0)+_0x4eefe3+_0x3b26ba(0x283)+_0x43e8db+'\x20is\x20not\x20on\x20every\x20upstream\x20path\x20to\x20'+_0x5490a3+'.'});}}}}function expressionReferencesVariable(_0x15b614,_0x1404d1){const _0x2812bb=a269_0x1c57b2,_0x211b1c=_0x1404d1[_0x2812bb(0x2b7)](/[.*+?^${}()|[\]\\]/g,_0x2812bb(0x1a3));return new RegExp(_0x2812bb(0x1ef)+_0x211b1c+_0x2812bb(0x234))[_0x2812bb(0x2dc)](_0x15b614);}function resolveEffectiveResultVariable(_0x2f22e5,_0x294737){const _0x25a831=a269_0x1c57b2;if(_0x2f22e5===undefined||_0x2f22e5===null||_0x294737&&_0x2f22e5==='')return DEFAULT_SCRIPT_RESULT_VARIABLE;if(typeof _0x2f22e5!==_0x25a831(0x27d)||!VARIABLE_PATTERN[_0x25a831(0x2dc)](_0x2f22e5)||RESERVED_RESULT_VARIABLES[_0x25a831(0x29d)](_0x2f22e5)||_0x2f22e5['startsWith'](_0x25a831(0x253)))return undefined;return _0x2f22e5;}function registerResultVariableOwner(_0x18c643,_0x373c17,_0x2aa6c4,_0x523a40){const _0x4bb8d0=a269_0x1c57b2;if(_0x18c643[_0x4bb8d0(0x29d)](_0x373c17)){_0x523a40[_0x4bb8d0(0x24b)]({'path':'flowJson.nodes','message':_0x4bb8d0(0x240)+_0x373c17+'.'});return;}_0x18c643[_0x4bb8d0(0x294)](_0x373c17,_0x2aa6c4);}function setsEqual(_0x1d5e57,_0x80aefe){const _0x1187ce=a269_0x1c57b2;return _0x1d5e57[_0x1187ce(0x27c)]===_0x80aefe[_0x1187ce(0x27c)]&&[..._0x1d5e57][_0x1187ce(0x1da)](_0x2b357b=>_0x80aefe[_0x1187ce(0x29d)](_0x2b357b));}function isValidUserId(_0x3889ba){const _0x442fa2=a269_0x1c57b2;if(typeof _0x3889ba===_0x442fa2(0x27d))return _0x3889ba['trim']()[_0x442fa2(0x2cc)]>0x0;return Number[_0x442fa2(0x1ab)](_0x3889ba)&&Number(_0x3889ba)>0x0;}function resolveEdgeEndpoint(_0x14e724,_0x3ab808){const _0x46ede3=a269_0x1c57b2;if(typeof _0x14e724===_0x46ede3(0x27d)&&_0x14e724[_0x46ede3(0x2d3)]())return _0x14e724[_0x46ede3(0x2d3)]();if(typeof _0x3ab808==='string'&&_0x3ab808[_0x46ede3(0x2d3)]())return _0x3ab808[_0x46ede3(0x2d3)]();return undefined;}function removeEmptyMetadata(_0x3914c2,_0x30586a,_0x1a46e5,_0x5b97e4){const _0x3dcc45=a269_0x1c57b2;if(Array[_0x3dcc45(0x230)](_0x3914c2)){_0x3914c2[_0x3dcc45(0x197)]((_0x685ba,_0x5e32b9)=>removeEmptyMetadata(_0x685ba,_0x30586a+'['+_0x5e32b9+']',_0x1a46e5,_0x5b97e4));return;}if(!isRecord(_0x3914c2))return;for(const [_0x166a86,_0x353d24]of Object['entries'](_0x3914c2)){const _0x15d4e9=_0x30586a+'.'+_0x166a86;if(_0x166a86===_0x3dcc45(0x2ac)&&isEmptyJsonValue(_0x353d24)){delete _0x3914c2[_0x166a86],_0x5b97e4[_0x3dcc45(0x24b)](_0x15d4e9),_0x1a46e5[_0x3dcc45(0x24b)]({'code':_0x3dcc45(0x2e1),'path':_0x15d4e9,'message':_0x15d4e9+_0x3dcc45(0x2c4)});continue;}removeEmptyMetadata(_0x353d24,_0x15d4e9,_0x1a46e5,_0x5b97e4);}}function isEmptyJsonValue(_0x183ab0){const _0x306d2e=a269_0x1c57b2;if(_0x183ab0===null||_0x183ab0===undefined)return!![];if(typeof _0x183ab0===_0x306d2e(0x27d))return _0x183ab0[_0x306d2e(0x2d3)]()==='';if(Array[_0x306d2e(0x230)](_0x183ab0))return _0x183ab0['length']===0x0;return isRecord(_0x183ab0)&&Object[_0x306d2e(0x220)](_0x183ab0)[_0x306d2e(0x2cc)]===0x0;}function isRecord(_0x20e523){const _0x221c54=a269_0x1c57b2;return typeof _0x20e523===_0x221c54(0x23f)&&_0x20e523!==null&&!Array[_0x221c54(0x230)](_0x20e523);}function cloneJsonValue(_0x2f6335){const _0x3a74be=a269_0x1c57b2;return JSON[_0x3a74be(0x1ce)](JSON[_0x3a74be(0x293)](_0x2f6335));}export async function readFlowConfigFile(_0x18ef00){const _0x2b3c25=a269_0x1c57b2,_0x7a9706=await readFile(resolve(_0x18ef00),_0x2b3c25(0x1d7));return JSON['parse'](_0x7a9706);}
|
|
1
|
+
const a281_0xb8329f=a281_0x5c5c;(function(_0x5c9acc,_0x5a04e4){const _0x5896e6=a281_0x5c5c,_0x9fd201=_0x5c9acc();while(!![]){try{const _0x5703a4=parseInt(_0x5896e6(0x1cd))/0x1*(-parseInt(_0x5896e6(0x2cc))/0x2)+-parseInt(_0x5896e6(0x27f))/0x3+-parseInt(_0x5896e6(0x1ba))/0x4+-parseInt(_0x5896e6(0x204))/0x5*(-parseInt(_0x5896e6(0x255))/0x6)+parseInt(_0x5896e6(0x25e))/0x7+parseInt(_0x5896e6(0x2b7))/0x8+parseInt(_0x5896e6(0x1dd))/0x9*(parseInt(_0x5896e6(0x2c1))/0xa);if(_0x5703a4===_0x5a04e4)break;else _0x9fd201['push'](_0x9fd201['shift']());}catch(_0x409bfb){_0x9fd201['push'](_0x9fd201['shift']());}}}(a281_0x319c,0x84323));import{randomUUID}from'node:crypto';import{chmod,link,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{resolve}from'node:path';export const FLOW_CONFIG_JSON_SCHEMA={'$schema':a281_0xb8329f(0x24c),'$id':'https://lovrabet.com/schema/rabetbase-flow-config.json','title':'Rabetbase\x20FlowConfig','type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x26e),'flowType',a281_0xb8329f(0x1e0)],'$defs':{'userId':{'anyOf':[{'type':'string','minLength':0x1},{'type':'integer','minimum':0x1}]},'position':{'type':a281_0xb8329f(0x1c3),'required':['x','y'],'properties':{'x':{'type':a281_0xb8329f(0x2ee),'minimum':0x0},'y':{'type':a281_0xb8329f(0x2ee),'minimum':0x0}},'additionalProperties':!![]},'timeAmount':{'type':a281_0xb8329f(0x1c3),'required':['value',a281_0xb8329f(0x1b7)],'properties':{'value':{'type':a281_0xb8329f(0x1e5),'minimum':0x1},'unit':{'enum':[a281_0xb8329f(0x307),'MINUTES',a281_0xb8329f(0x30b),'DAYS']}},'additionalProperties':!![]},'flowNode':{'type':'object','required':['id',a281_0xb8329f(0x1ec),a281_0xb8329f(0x1f2),a281_0xb8329f(0x1fb)],'properties':{'id':{'type':a281_0xb8329f(0x2a4),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'},'type':{'enum':['START','END',a281_0xb8329f(0x1e2),a281_0xb8329f(0x1d9),'SCRIPT','NOTIFICATION']},'name':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'pageId':{'type':a281_0xb8329f(0x1e5),'minimum':0x1},'position':{'$ref':a281_0xb8329f(0x2bb)},'approvalMode':{'enum':[a281_0xb8329f(0x2a6),a281_0xb8329f(0x1f9),a281_0xb8329f(0x2f6)]},'taskMode':{'enum':[a281_0xb8329f(0x1e2),'HANDLE']},'assignee':{'type':'object','required':[a281_0xb8329f(0x2b2)],'properties':{'strategy':{'enum':[a281_0xb8329f(0x2ea),a281_0xb8329f(0x22d)]},'userIds':{'type':a281_0xb8329f(0x268),'minItems':0x1,'items':{'$ref':a281_0xb8329f(0x301)}},'roleId':{'anyOf':[{'type':'integer','minimum':0x1},{'type':a281_0xb8329f(0x2a4),'pattern':a281_0xb8329f(0x2ff)}]}},'additionalProperties':!![]},'transferCandidates':{'type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x2b2),a281_0xb8329f(0x1f8)],'properties':{'strategy':{'const':'FIXED'},'userIds':{'type':a281_0xb8329f(0x268),'minItems':0x1,'items':{'$ref':a281_0xb8329f(0x301)}}},'additionalProperties':!![]},'sequential':{'type':a281_0xb8329f(0x230)},'result':{'enum':[a281_0xb8329f(0x28c),a281_0xb8329f(0x20c)]},'scriptName':{'type':'string','minLength':0x1},'resultVariable':{'type':a281_0xb8329f(0x2a4),'pattern':a281_0xb8329f(0x2d8)},'async':{'type':a281_0xb8329f(0x1c3),'properties':{'enabled':{'type':'boolean'},'retryCount':{'type':a281_0xb8329f(0x1e5),'minimum':0x1,'maximum':0xa},'retryInterval':{'$ref':a281_0xb8329f(0x1ea)}},'additionalProperties':!![]},'timeout':{'type':a281_0xb8329f(0x1c3),'properties':{'enabled':{'type':a281_0xb8329f(0x230)},'duration':{'$ref':a281_0xb8329f(0x1ea)},'action':{'enum':[a281_0xb8329f(0x1d5),a281_0xb8329f(0x1d3),a281_0xb8329f(0x22c)]},'interrupting':{'type':'boolean'},'scriptName':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'resultVariable':{'type':a281_0xb8329f(0x2a4),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'}},'additionalProperties':!![]},'cc':{'type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x1b4)],'properties':{'recipientUserIds':{'type':a281_0xb8329f(0x268),'minItems':0x1,'maxItems':0x64,'uniqueItems':!![],'items':{'type':a281_0xb8329f(0x2a4),'minLength':0x1}},'visible':{'type':a281_0xb8329f(0x268),'uniqueItems':!![],'items':{'type':'string','minLength':0x1}},'readSources':![]},'additionalProperties':!![]},'config':{'type':a281_0xb8329f(0x1c3),'required':['configCode',a281_0xb8329f(0x1af)],'properties':{'version':{'enum':['v1']},'configCode':{'type':'string','minLength':0x1},'failurePolicy':{'enum':[a281_0xb8329f(0x30f),a281_0xb8329f(0x1c1)]},'template':{'type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x233),'summary'],'properties':{'title':{'type':'string','minLength':0x1},'summary':{'type':'string','minLength':0x1},'detailMarkdown':{'type':a281_0xb8329f(0x2a4)},'facts':{'type':'array','maxItems':0x8,'items':{'type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x2f3),a281_0xb8329f(0x262)],'properties':{'label':{'type':'string','minLength':0x1},'value':{'type':a281_0xb8329f(0x2a4),'minLength':0x1}},'additionalProperties':!![]}},'actions':{'type':a281_0xb8329f(0x268),'maxItems':0x2,'items':{'type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x1b9),'url'],'properties':{'text':{'type':'string','minLength':0x1},'url':{'type':a281_0xb8329f(0x2a4),'minLength':0x1}},'additionalProperties':!![]}}},'additionalProperties':!![]},'recipients':{'type':a281_0xb8329f(0x268),'items':{'type':'object','required':[a281_0xb8329f(0x1ec),'value'],'properties':{'type':{'enum':[a281_0xb8329f(0x1ee),a281_0xb8329f(0x22d),a281_0xb8329f(0x2af)]},'value':{'type':'string','minLength':0x1},'role':{'enum':['TO','CC',a281_0xb8329f(0x23d)]}},'additionalProperties':!![]}}},'additionalProperties':!![]},'form':![],'formPermission':![]},'additionalProperties':!![]},'flowEdge':{'type':a281_0xb8329f(0x1c3),'properties':{'id':{'type':a281_0xb8329f(0x2a4),'pattern':a281_0xb8329f(0x2d8)},'source':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'target':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'sourceNodeId':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'targetNodeId':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'conditionType':{'enum':['ALWAYS',a281_0xb8329f(0x28c),a281_0xb8329f(0x20c),a281_0xb8329f(0x279)]},'expression':{'type':a281_0xb8329f(0x2a4)},'defaultFlow':{'type':a281_0xb8329f(0x230)},'name':{'type':a281_0xb8329f(0x2a4)},'waypoints':{'type':a281_0xb8329f(0x268),'items':{'$ref':a281_0xb8329f(0x2bb)}}},'allOf':[{'anyOf':[{'required':[a281_0xb8329f(0x1fc)]},{'required':['sourceNodeId']}]},{'anyOf':[{'required':['target']},{'required':[a281_0xb8329f(0x1db)]}]}],'additionalProperties':!![]}},'properties':{'id':![],'appCode':![],'flowName':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'flowDesc':{'type':'string'},'flowType':{'enum':[a281_0xb8329f(0x308),a281_0xb8329f(0x2fd)]},'datasetCode':{'type':a281_0xb8329f(0x2a4),'minLength':0x1},'pageId':{'type':a281_0xb8329f(0x1e5)},'templateName':![],'flowJson':{'type':a281_0xb8329f(0x1c3),'required':[a281_0xb8329f(0x223),a281_0xb8329f(0x1b2)],'properties':{'flowKey':![],'flowCode':![],'flowName':![],'bindDatasetCode':![],'datasetCode':![],'appCode':![],'pageId':![],'templateName':![],'schemaVersion':{'type':a281_0xb8329f(0x2a4),'const':'approval.simple-flow.v1','description':a281_0xb8329f(0x20e)},'formSchema':![],'formDefinitions':![],'formPermissions':![],'pageMode':{'const':a281_0xb8329f(0x1eb)},'startPageId':{'type':'integer','minimum':0x1},'nodes':{'type':a281_0xb8329f(0x268),'minItems':0x1,'items':{'$ref':a281_0xb8329f(0x1e9)}},'edges':{'type':'array','minItems':0x1,'items':{'$ref':a281_0xb8329f(0x1dc)}}},'additionalProperties':!![]}},'additionalProperties':!![]};const REMOVED_FLOW_JSON_FIELDS=[a281_0xb8329f(0x2d3),a281_0xb8329f(0x1cb),a281_0xb8329f(0x26e),a281_0xb8329f(0x1b8),a281_0xb8329f(0x2cb),'appCode',a281_0xb8329f(0x2b9),'templateName'],REMOVED_ROOT_FIELDS=['id',a281_0xb8329f(0x2da),a281_0xb8329f(0x1d6)],DEFAULT_FLOW_SCHEMA_VERSION=a281_0xb8329f(0x298),NODE_TYPES=new Set(['START',a281_0xb8329f(0x24e),'APPROVAL',a281_0xb8329f(0x1d9),'SCRIPT',a281_0xb8329f(0x29d)]),CONDITION_TYPES=new Set(['ALWAYS','APPROVED',a281_0xb8329f(0x20c),'EXPRESSION']),APPROVAL_MODES=new Set(['SINGLE',a281_0xb8329f(0x1f9),'ANY']),APPROVAL_TASK_MODES=new Set([a281_0xb8329f(0x1e2),a281_0xb8329f(0x25c)]),FLOW_TIME_UNITS=new Set([a281_0xb8329f(0x307),a281_0xb8329f(0x292),a281_0xb8329f(0x30b),a281_0xb8329f(0x26f)]),APPROVAL_TIMEOUT_ACTIONS=new Set([a281_0xb8329f(0x1d5),'AUTO_REJECT',a281_0xb8329f(0x22c)]),FLOW_TYPES=new Set(['FORM_FLOW','INDEPENDENT_FLOW']),FLOW_PAGE_MODES=new Set([a281_0xb8329f(0x1eb),a281_0xb8329f(0x205)]),BPMN_ID_PATTERN=/^[A-Za-z_][A-Za-z0-9_]*$/,VARIABLE_PATTERN=/^[A-Za-z_][A-Za-z0-9_]*$/,NOTIFICATION_PLACEHOLDER_PATTERN=/\$\{([^{}]+)\}/g,NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN=/^\$\{(?:event|context|variables)\.[^{}]+\}$/,NOTIFICATION_FAILURE_POLICIES=new Set([a281_0xb8329f(0x30f),a281_0xb8329f(0x1c1)]),NOTIFICATION_RECIPIENT_TYPES=new Set([a281_0xb8329f(0x1ee),a281_0xb8329f(0x22d),'EMAIL']),NOTIFICATION_RECIPIENT_ROLES=new Set(['TO','CC',a281_0xb8329f(0x23d)]),MAX_NOTIFICATION_FACTS=0x8,MAX_NOTIFICATION_ACTIONS=0x2,MAX_ASYNC_RETRY_COUNT=0xa,MAX_CC_RECIPIENTS=0x64,DEFAULT_SCRIPT_RESULT_VARIABLE=a281_0xb8329f(0x1f6),UNSUPPORTED_FORM_MESSAGE='Custom\x20form\x20configuration\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20a\x20business\x20custom\x20page\x20instead.',UNSUPPORTED_PLATFORM_FORM_MESSAGE='PLATFORM_FORM\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.',RESERVED_RESULT_VARIABLES=new Set(['formData',a281_0xb8329f(0x252),a281_0xb8329f(0x253),a281_0xb8329f(0x29b),a281_0xb8329f(0x24a),a281_0xb8329f(0x28e),a281_0xb8329f(0x1bb),'approval_sys_pageId',a281_0xb8329f(0x2c3),a281_0xb8329f(0x21c)]);export function normalizeFlowConfig(_0x4d34bb){const _0x337a43=a281_0xb8329f;if(!isRecord(_0x4d34bb))throw new TypeError('FlowConfig\x20must\x20be\x20a\x20JSON\x20object.');const _0x2eae59=cloneJsonValue(_0x4d34bb),_0x483be3=_0x2eae59['flowJson'],_0x3414e3=isRecord(_0x483be3)?cloneJsonValue(_0x483be3):{},_0x15736b=[],_0x22b9ff=[];for(const _0x56fdbb of REMOVED_ROOT_FIELDS){if(!Object[_0x337a43(0x25f)][_0x337a43(0x1da)][_0x337a43(0x303)](_0x2eae59,_0x56fdbb))continue;delete _0x2eae59[_0x56fdbb],_0x22b9ff[_0x337a43(0x257)](_0x56fdbb),_0x15736b[_0x337a43(0x257)]({'code':_0x337a43(0x2e6),'path':_0x56fdbb,'message':_0x56fdbb+_0x337a43(0x2ba)});}for(const _0xbf0ba6 of REMOVED_FLOW_JSON_FIELDS){if(!Object['prototype'][_0x337a43(0x1da)][_0x337a43(0x303)](_0x3414e3,_0xbf0ba6))continue;const _0x445c7f='flowJson.'+_0xbf0ba6;delete _0x3414e3[_0xbf0ba6],_0x22b9ff[_0x337a43(0x257)](_0x445c7f),_0x15736b[_0x337a43(0x257)]({'code':_0x337a43(0x2e6),'path':_0x445c7f,'message':_0x445c7f+'\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.'});}if(Object['prototype'][_0x337a43(0x1da)]['call'](_0x3414e3,_0x337a43(0x2ef))){const _0x29191e=_0x3414e3[_0x337a43(0x2ef)],_0x5dd8fb=typeof _0x29191e==='string'?_0x29191e['trim']():_0x29191e;if(isEmptyJsonValue(_0x29191e)||_0x5dd8fb===DEFAULT_FLOW_SCHEMA_VERSION){const _0x1fe2c3=_0x337a43(0x2e9);delete _0x3414e3[_0x337a43(0x2ef)],_0x22b9ff['push'](_0x1fe2c3),_0x15736b['push']({'code':_0x337a43(0x2e6),'path':_0x1fe2c3,'message':_0x1fe2c3+'\x20was\x20empty\x20or\x20used\x20the\x20default\x20'+DEFAULT_FLOW_SCHEMA_VERSION+_0x337a43(0x2a2)});}}removeEmptyMetadata(_0x3414e3,_0x337a43(0x1e0),_0x15736b,_0x22b9ff);_0x2eae59[_0x337a43(0x2ae)]==='INDEPENDENT_FLOW'&&!Object[_0x337a43(0x25f)]['hasOwnProperty'][_0x337a43(0x303)](_0x3414e3,_0x337a43(0x248))&&(_0x3414e3[_0x337a43(0x248)]=_0x337a43(0x1eb));_0x2eae59[_0x337a43(0x1e0)]=_0x3414e3;if(typeof _0x2eae59[_0x337a43(0x26e)]===_0x337a43(0x2a4))_0x2eae59['flowName']=_0x2eae59[_0x337a43(0x26e)][_0x337a43(0x235)]();return{'config':_0x2eae59,'warnings':_0x15736b,'removedPaths':_0x22b9ff};}export function validateFlowConfig(_0x15b589){const _0x451ee1=a281_0xb8329f;let _0x1208b2;try{_0x1208b2=normalizeFlowConfig(_0x15b589);}catch(_0x2d42e0){const _0x2d5a72=_0x2d42e0 instanceof Error?_0x2d42e0['message']:String(_0x2d42e0),_0xb9ce83={'flowJson':{}};return{'valid':![],'errors':[{'path':'$','message':_0x2d5a72}],'warnings':[],'normalized':_0xb9ce83,'validationConfig':_0xb9ce83};}const _0x175d9b=_0x1208b2[_0x451ee1(0x2eb)],_0x313e93=cloneJsonValue(_0x175d9b),_0x8dd466=_0x313e93[_0x451ee1(0x1e0)];_0x8dd466[_0x451ee1(0x2d3)]='__rabetbase_local_validation__',_0x8dd466[_0x451ee1(0x26e)]=_0x175d9b['flowName'];typeof _0x175d9b[_0x451ee1(0x2cb)]===_0x451ee1(0x2a4)&&_0x175d9b[_0x451ee1(0x2cb)][_0x451ee1(0x235)]()&&(_0x8dd466[_0x451ee1(0x1b8)]=_0x175d9b[_0x451ee1(0x2cb)][_0x451ee1(0x235)]());const _0x4cc336=[];return validateOuterMetadata(_0x175d9b,_0x4cc336),validateFlowClassification(_0x175d9b,_0x4cc336),validateGraph(_0x175d9b[_0x451ee1(0x1e0)],_0x4cc336),{'valid':_0x4cc336[_0x451ee1(0x29f)]===0x0,'errors':_0x4cc336,'warnings':_0x1208b2[_0x451ee1(0x246)],'normalized':_0x175d9b,'validationConfig':_0x313e93};}function validateFlowClassification(_0x253017,_0x466ac4){const _0x1a4b72=a281_0xb8329f;if(!isRecord(_0x253017[_0x1a4b72(0x1e0)]))return;const _0x5eeb76=_0x253017[_0x1a4b72(0x2ae)],_0x4eea42=_0x253017[_0x1a4b72(0x1e0)][_0x1a4b72(0x248)];_0x4eea42!==undefined&&(typeof _0x4eea42!=='string'||!FLOW_PAGE_MODES[_0x1a4b72(0x229)](_0x4eea42))&&_0x466ac4[_0x1a4b72(0x257)]({'path':_0x1a4b72(0x2cd),'message':'Unsupported\x20pageMode:\x20'+String(_0x4eea42)+'.'});_0x5eeb76===_0x1a4b72(0x308)&&_0x4eea42!==undefined&&_0x466ac4[_0x1a4b72(0x257)]({'path':_0x1a4b72(0x2cd),'message':_0x1a4b72(0x1df)});_0x5eeb76==='INDEPENDENT_FLOW'&&_0x4eea42===_0x1a4b72(0x205)&&_0x466ac4[_0x1a4b72(0x257)]({'path':_0x1a4b72(0x2cd),'message':UNSUPPORTED_PLATFORM_FORM_MESSAGE});(_0x5eeb76==='FORM_FLOW'||_0x5eeb76===_0x1a4b72(0x2fd))&&validateCustomPageNavigation(_0x253017,_0x5eeb76,_0x4eea42,_0x466ac4);if(_0x5eeb76!=='FORM_FLOW'||!Array[_0x1a4b72(0x1d4)](_0x253017['flowJson'][_0x1a4b72(0x223)]))return;_0x253017[_0x1a4b72(0x1e0)]['nodes']['forEach']((_0x1749b3,_0x5d90e9)=>{const _0x226e3d=_0x1a4b72;isRecord(_0x1749b3)&&_0x1749b3['type']===_0x226e3d(0x1e2)&&_0x1749b3[_0x226e3d(0x22b)]===_0x226e3d(0x25c)&&_0x466ac4[_0x226e3d(0x257)]({'path':_0x226e3d(0x243)+_0x5d90e9+_0x226e3d(0x22e),'message':'FORM_FLOW\x20is\x20an\x20approval\x20flow\x20and\x20cannot\x20contain\x20HANDLE\x20tasks;\x20use\x20INDEPENDENT_FLOW\x20for\x20workflows.'});});}function validateCustomPageNavigation(_0xae03c3,_0x8945a8,_0x116733,_0x1593a9){const _0x3aa6f6=a281_0xb8329f,_0x425e08=_0xae03c3[_0x3aa6f6(0x1e0)]['startPageId'];_0x425e08!==undefined&&(!Number[_0x3aa6f6(0x2b8)](_0x425e08)||_0x425e08<=0x0)&&_0x1593a9[_0x3aa6f6(0x257)]({'path':_0x3aa6f6(0x216),'message':'startPageId\x20must\x20be\x20a\x20positive\x20integer.'});const _0x3c3ece=Array[_0x3aa6f6(0x1d4)](_0xae03c3[_0x3aa6f6(0x1e0)][_0x3aa6f6(0x223)])?_0xae03c3[_0x3aa6f6(0x1e0)][_0x3aa6f6(0x223)][_0x3aa6f6(0x2a3)]((_0x2de423,_0x31884c)=>({'node':_0x2de423,'index':_0x31884c}))[_0x3aa6f6(0x2fc)](({node:_0x186530})=>isRecord(_0x186530)&&_0x186530[_0x3aa6f6(0x2b9)]!==undefined):[],_0x20f123=_0x425e08!==undefined||_0x3c3ece[_0x3aa6f6(0x29f)]>0x0,_0x4eb675=_0x116733===undefined&&_0x8945a8===_0x3aa6f6(0x2fd)?_0x3aa6f6(0x1eb):_0x116733;_0x20f123&&(_0x8945a8!=='INDEPENDENT_FLOW'||_0x4eb675!==_0x3aa6f6(0x1eb))&&(_0x425e08!==undefined&&_0x1593a9[_0x3aa6f6(0x257)]({'path':_0x3aa6f6(0x216),'message':'startPageId\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.'}),_0x3c3ece[_0x3aa6f6(0x2de)](({index:_0x1adbbe})=>{const _0x3634c1=_0x3aa6f6;_0x1593a9[_0x3634c1(0x257)]({'path':_0x3634c1(0x243)+_0x1adbbe+_0x3634c1(0x207),'message':_0x3634c1(0x2ec)});}));}export async function writeNormalizedFlowConfig(_0x28633b,_0x5ed67e,_0x33e926={}){const _0x2d745c=a281_0xb8329f,_0x14c6b9=resolve(_0x28633b),_0x1e96b3=_0x14c6b9+'.'+process[_0x2d745c(0x2d6)]+'.'+randomUUID()+_0x2d745c(0x2a7),_0x38173c=JSON[_0x2d745c(0x240)](_0x5ed67e,null,0x2)+'\x0a';let _0x56786b;try{try{_0x56786b=(await stat(_0x14c6b9))['mode']&0x1ff;}catch{_0x56786b=undefined;}await writeFile(_0x1e96b3,_0x38173c,{'encoding':_0x2d745c(0x2db),'flag':'wx','mode':_0x56786b??0x1a4});if(_0x56786b!==undefined)await chmod(_0x1e96b3,_0x56786b);_0x33e926[_0x2d745c(0x26d)]===![]?(await link(_0x1e96b3,_0x14c6b9),await unlink(_0x1e96b3)):await rename(_0x1e96b3,_0x14c6b9);}finally{await unlink(_0x1e96b3)[_0x2d745c(0x2ad)](()=>undefined);}}function validateOuterMetadata(_0x531963,_0x9bb408){const _0x2f85c1=a281_0xb8329f;(typeof _0x531963['flowName']!==_0x2f85c1(0x2a4)||_0x531963[_0x2f85c1(0x26e)]['trim']()==='')&&_0x9bb408[_0x2f85c1(0x257)]({'path':_0x2f85c1(0x26e),'message':_0x2f85c1(0x280)});_0x531963[_0x2f85c1(0x23e)]!==undefined&&typeof _0x531963[_0x2f85c1(0x23e)]!==_0x2f85c1(0x2a4)&&_0x9bb408['push']({'path':_0x2f85c1(0x23e),'message':_0x2f85c1(0x1d1)});if(_0x531963['flowType']===undefined||_0x531963[_0x2f85c1(0x2ae)]===null)_0x9bb408[_0x2f85c1(0x257)]({'path':_0x2f85c1(0x2ae),'message':'flowType\x20is\x20required.'});else(typeof _0x531963['flowType']!==_0x2f85c1(0x2a4)||!FLOW_TYPES[_0x2f85c1(0x229)](_0x531963[_0x2f85c1(0x2ae)]))&&_0x9bb408['push']({'path':_0x2f85c1(0x2ae),'message':'Unsupported\x20flowType:\x20'+String(_0x531963[_0x2f85c1(0x2ae)])+'.'});_0x531963[_0x2f85c1(0x2cb)]!==undefined&&typeof _0x531963[_0x2f85c1(0x2cb)]!==_0x2f85c1(0x2a4)&&_0x9bb408[_0x2f85c1(0x257)]({'path':_0x2f85c1(0x2cb),'message':_0x2f85c1(0x1ef)}),_0x531963[_0x2f85c1(0x2b9)]!==undefined&&(!Number['isInteger'](_0x531963['pageId'])||_0x531963[_0x2f85c1(0x2b9)]<0x0)&&_0x9bb408[_0x2f85c1(0x257)]({'path':_0x2f85c1(0x2b9),'message':_0x2f85c1(0x2b0)}),_0x531963[_0x2f85c1(0x2ae)]===_0x2f85c1(0x2fd)&&_0x531963['datasetCode']!==undefined&&_0x9bb408[_0x2f85c1(0x257)]({'path':_0x2f85c1(0x2cb),'message':'INDEPENDENT_FLOW\x20cannot\x20bind\x20datasetCode.'}),_0x531963[_0x2f85c1(0x2ae)]===_0x2f85c1(0x2fd)&&_0x531963['pageId']!==undefined&&_0x9bb408[_0x2f85c1(0x257)]({'path':_0x2f85c1(0x2b9),'message':_0x2f85c1(0x2fb)});}function validateGraph(_0x4e55b6,_0x5bbab9){const _0xed629a=a281_0xb8329f;if(!isRecord(_0x4e55b6)){_0x5bbab9['push']({'path':_0xed629a(0x1e0),'message':_0xed629a(0x2e5)});return;}!Array['isArray'](_0x4e55b6[_0xed629a(0x223)])&&_0x5bbab9['push']({'path':_0xed629a(0x2d2),'message':'nodes\x20must\x20be\x20an\x20array.'});!Array[_0xed629a(0x1d4)](_0x4e55b6[_0xed629a(0x1b2)])&&_0x5bbab9[_0xed629a(0x257)]({'path':_0xed629a(0x1b1),'message':_0xed629a(0x1cf)});Object[_0xed629a(0x25f)][_0xed629a(0x1da)][_0xed629a(0x303)](_0x4e55b6,_0xed629a(0x2ef))&&_0x5bbab9[_0xed629a(0x257)]({'path':'flowJson.schemaVersion','message':'Unsupported\x20schemaVersion:\x20'+String(_0x4e55b6['schemaVersion'])+_0xed629a(0x25d)+DEFAULT_FLOW_SCHEMA_VERSION+'.'});for(const _0x4848d5 of[_0xed629a(0x2e3),'formDefinitions',_0xed629a(0x1cc)]){Object['prototype']['hasOwnProperty'][_0xed629a(0x303)](_0x4e55b6,_0x4848d5)&&_0x5bbab9[_0xed629a(0x257)]({'path':_0xed629a(0x1c2)+_0x4848d5,'message':UNSUPPORTED_FORM_MESSAGE});}if(!Array[_0xed629a(0x1d4)](_0x4e55b6[_0xed629a(0x223)])||!Array[_0xed629a(0x1d4)](_0x4e55b6[_0xed629a(0x1b2)]))return;const _0x66e757=new Map(),_0xcb65e8=[],_0x5086f7=[],_0x154626=new Map(),_0x3d5c06=new Map(),_0x21ad20=new Set();let _0x3f9781=0x0;_0x4e55b6['nodes'][_0xed629a(0x2de)]((_0x213198,_0x4a7379)=>{const _0x4aa8a9=_0xed629a,_0x573a7a='flowJson.nodes['+_0x4a7379+']';if(!isRecord(_0x213198)){_0x5bbab9[_0x4aa8a9(0x257)]({'path':_0x573a7a,'message':'node\x20must\x20be\x20an\x20object.'});return;}const _0x207edb=_0x213198;if(typeof _0x207edb['id']!=='string'||!BPMN_ID_PATTERN[_0x4aa8a9(0x2b1)](_0x207edb['id']))_0x5bbab9[_0x4aa8a9(0x257)]({'path':_0x573a7a+_0x4aa8a9(0x242),'message':_0x4aa8a9(0x258)});else _0x66e757[_0x4aa8a9(0x229)](_0x207edb['id'])?_0x5bbab9[_0x4aa8a9(0x257)]({'path':_0x573a7a+_0x4aa8a9(0x242),'message':_0x4aa8a9(0x2c7)+_0x207edb['id']+'.'}):(_0x66e757[_0x4aa8a9(0x1bf)](_0x207edb['id'],_0x207edb),_0x21ad20[_0x4aa8a9(0x276)](_0x207edb['id']));if(!NODE_TYPES['has'](_0x207edb[_0x4aa8a9(0x1ec)]))_0x5bbab9['push']({'path':_0x573a7a+_0x4aa8a9(0x1c5),'message':'Unsupported\x20node\x20type:\x20'+String(_0x207edb[_0x4aa8a9(0x1ec)])+'.'});else{if(_0x207edb[_0x4aa8a9(0x1ec)]===_0x4aa8a9(0x1b0))_0xcb65e8['push'](_0x207edb['id']);else _0x207edb['type']===_0x4aa8a9(0x24e)&&_0x5086f7[_0x4aa8a9(0x257)](_0x207edb['id']);}_0x207edb[_0x4aa8a9(0x1ec)]===_0x4aa8a9(0x1e2)&&(_0x207edb['taskMode']===undefined||_0x207edb[_0x4aa8a9(0x22b)]===_0x4aa8a9(0x1e2))&&(_0x3f9781+=0x1);validateNode(_0x207edb,_0x573a7a,_0x5bbab9);if(_0x207edb[_0x4aa8a9(0x1ec)]==='SCRIPT'){const _0x542312=resolveEffectiveResultVariable(_0x207edb[_0x4aa8a9(0x201)],![]);_0x542312&&(registerResultVariableOwner(_0x3d5c06,_0x542312,_0x207edb['id'],_0x5bbab9),!_0x154626[_0x4aa8a9(0x229)](_0x542312)&&_0x154626[_0x4aa8a9(0x1bf)](_0x542312,_0x207edb['id']));}if(_0x207edb[_0x4aa8a9(0x1ec)]===_0x4aa8a9(0x1e2)&&isRecord(_0x207edb[_0x4aa8a9(0x1f3)])&&_0x207edb[_0x4aa8a9(0x1f3)][_0x4aa8a9(0x266)]===!![]&&_0x207edb[_0x4aa8a9(0x1f3)][_0x4aa8a9(0x206)]===_0x4aa8a9(0x22c)){const _0x59dd8d=resolveEffectiveResultVariable(_0x207edb['timeout'][_0x4aa8a9(0x201)],!![]);_0x59dd8d&®isterResultVariableOwner(_0x3d5c06,_0x59dd8d,_0x207edb['id']+_0x4aa8a9(0x250),_0x5bbab9);}});_0xcb65e8[_0xed629a(0x29f)]!==0x1&&_0x5bbab9[_0xed629a(0x257)]({'path':_0xed629a(0x2d2),'message':_0xed629a(0x306)});_0x5086f7['length']===0x0&&_0x5bbab9[_0xed629a(0x257)]({'path':_0xed629a(0x2d2),'message':'Flow\x20must\x20contain\x20at\x20least\x20one\x20END\x20node.'});const _0xb1bed7=new Map(),_0x249f73=new Map(),_0x309bb3=new Map(),_0x54d716=new Set();_0x4e55b6[_0xed629a(0x1b2)]['forEach']((_0x3c3eb9,_0xb7107)=>{const _0x25ad97=_0xed629a,_0x52ea5e=_0x25ad97(0x2e2)+_0xb7107+']';if(!isRecord(_0x3c3eb9)){_0x5bbab9['push']({'path':_0x52ea5e,'message':_0x25ad97(0x209)});return;}const _0x4d2a03=_0x3c3eb9;_0x309bb3[_0x25ad97(0x1bf)](_0x4d2a03,_0x52ea5e);const _0xedb7a9=resolveEdgeEndpoint(_0x4d2a03[_0x25ad97(0x1fc)],_0x4d2a03[_0x25ad97(0x300)]),_0x2ab467=resolveEdgeEndpoint(_0x4d2a03[_0x25ad97(0x293)],_0x4d2a03[_0x25ad97(0x1db)]);if(!_0xedb7a9)_0x5bbab9[_0x25ad97(0x257)]({'path':_0x52ea5e+'.source','message':'edge\x20source\x20is\x20required.'});if(!_0x2ab467)_0x5bbab9['push']({'path':_0x52ea5e+'.target','message':_0x25ad97(0x1ca)});_0xedb7a9&&!_0x66e757[_0x25ad97(0x229)](_0xedb7a9)&&_0x5bbab9[_0x25ad97(0x257)]({'path':_0x52ea5e+'.source','message':_0x25ad97(0x26a)+_0xedb7a9+'.'});_0x2ab467&&!_0x66e757['has'](_0x2ab467)&&_0x5bbab9[_0x25ad97(0x257)]({'path':_0x52ea5e+_0x25ad97(0x2b6),'message':_0x25ad97(0x1d7)+_0x2ab467+'.'});if(_0x4d2a03['id']!==undefined){if(typeof _0x4d2a03['id']!==_0x25ad97(0x2a4)||!BPMN_ID_PATTERN[_0x25ad97(0x2b1)](_0x4d2a03['id']))_0x5bbab9[_0x25ad97(0x257)]({'path':_0x52ea5e+_0x25ad97(0x242),'message':_0x25ad97(0x238)});else{if(_0x21ad20[_0x25ad97(0x229)](_0x4d2a03['id']))_0x5bbab9[_0x25ad97(0x257)]({'path':_0x52ea5e+'.id','message':'Duplicate\x20BPMN\x20element\x20id:\x20'+_0x4d2a03['id']+'.'});else!_0x21ad20[_0x25ad97(0x229)](_0x4d2a03['id'])&&_0x21ad20['add'](_0x4d2a03['id']);}}if(_0xedb7a9&&_0x2ab467){const _0x584721=_0xedb7a9+'\x00'+_0x2ab467+'\x00'+(_0x4d2a03[_0x25ad97(0x256)]??_0x25ad97(0x232));_0x54d716[_0x25ad97(0x229)](_0x584721)?_0x5bbab9['push']({'path':_0x52ea5e,'message':'Duplicate\x20edge\x20route:\x20'+_0xedb7a9+'\x20->\x20'+_0x2ab467+'\x20('+(_0x4d2a03['conditionType']??_0x25ad97(0x232))+').'}):_0x54d716[_0x25ad97(0x276)](_0x584721);}validateEdge(_0x4d2a03,_0x52ea5e,_0x5bbab9),_0xedb7a9&&_0x2ab467&&(_0xb1bed7[_0x25ad97(0x2b3)](_0xedb7a9)?.[_0x25ad97(0x257)](_0x4d2a03)??_0xb1bed7['set'](_0xedb7a9,[_0x4d2a03]),_0x249f73[_0x25ad97(0x2b3)](_0x2ab467)?.[_0x25ad97(0x257)](_0x4d2a03)??_0x249f73['set'](_0x2ab467,[_0x4d2a03]));});if(_0xcb65e8[_0xed629a(0x29f)]!==0x1)return;validateGraphShape(_0x66e757,_0xcb65e8[0x0],_0x5086f7,_0xb1bed7,_0x249f73,_0x309bb3,_0x5bbab9),validateScriptResultReferences(_0x66e757,_0xcb65e8[0x0],_0xb1bed7,_0x249f73,_0x309bb3,_0x154626,_0x5bbab9),validateApprovalResults(_0x66e757,_0x3f9781,_0x5086f7,_0x5bbab9);}function validateNode(_0xaab663,_0x122193,_0x2663ec){const _0x92d7e7=a281_0xb8329f;for(const _0x9e799d of[_0x92d7e7(0x259),'formPermission']){Object[_0x92d7e7(0x25f)][_0x92d7e7(0x1da)][_0x92d7e7(0x303)](_0xaab663,_0x9e799d)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+'.'+_0x9e799d,'message':UNSUPPORTED_FORM_MESSAGE});}if(!NODE_TYPES[_0x92d7e7(0x229)](_0xaab663[_0x92d7e7(0x1ec)]))return;(typeof _0xaab663[_0x92d7e7(0x1f2)]!==_0x92d7e7(0x2a4)||_0xaab663[_0x92d7e7(0x1f2)][_0x92d7e7(0x235)]()==='')&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x2c5),'message':_0x92d7e7(0x1de)});if(_0xaab663[_0x92d7e7(0x2b9)]!==undefined){if(!Number[_0x92d7e7(0x2b8)](_0xaab663[_0x92d7e7(0x2b9)])||_0xaab663[_0x92d7e7(0x2b9)]<=0x0)_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x271),'message':_0x92d7e7(0x1e1)});else _0xaab663[_0x92d7e7(0x1ec)]!==_0x92d7e7(0x1e2)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+'.pageId','message':_0x92d7e7(0x1e8)});}const _0x20ec63=_0xaab663[_0x92d7e7(0x1fb)];if(!isRecord(_0x20ec63))_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x237),'message':_0x92d7e7(0x297)});else for(const _0x17f1a8 of['x','y']){const _0x26e572=_0x20ec63[_0x17f1a8];(typeof _0x26e572!==_0x92d7e7(0x2ee)||!Number[_0x92d7e7(0x2b5)](_0x26e572)||_0x26e572<0x0)&&_0x2663ec['push']({'path':_0x122193+_0x92d7e7(0x214)+_0x17f1a8,'message':_0x92d7e7(0x23a)+_0x17f1a8+_0x92d7e7(0x202)});}if(_0xaab663[_0x92d7e7(0x1ec)]==='APPROVAL'){const _0x504d3d=_0xaab663[_0x92d7e7(0x283)]??'SINGLE',_0x49643b=_0xaab663[_0x92d7e7(0x22b)]??_0x92d7e7(0x1e2);!APPROVAL_TASK_MODES[_0x92d7e7(0x229)](_0x49643b)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x227),'message':_0x92d7e7(0x2d7)+String(_0x49643b)+'.'});!APPROVAL_MODES['has'](_0x504d3d)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x203),'message':_0x92d7e7(0x1f1)+String(_0x504d3d)+'.'});if(!isRecord(_0xaab663[_0x92d7e7(0x299)]))_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x288),'message':_0x92d7e7(0x313)});else{const _0x598f82=_0xaab663[_0x92d7e7(0x299)]['strategy'];_0x598f82!=='FIXED'&&_0x598f82!==_0x92d7e7(0x22d)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x294),'message':_0x92d7e7(0x2c6)});if(_0x598f82==='FIXED'){const _0xb7e22d=_0xaab663[_0x92d7e7(0x299)][_0x92d7e7(0x1f8)];if(!Array[_0x92d7e7(0x1d4)](_0xb7e22d)||_0xb7e22d['length']===0x0)_0x2663ec['push']({'path':_0x122193+_0x92d7e7(0x261),'message':_0x92d7e7(0x2aa)});else{const _0x4c9c24=_0xb7e22d[_0x92d7e7(0x2c4)](_0x229c72=>!isValidUserId(_0x229c72));_0x4c9c24>=0x0&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x215)+_0x4c9c24+']','message':_0x92d7e7(0x312)});const _0x2ceacc=new Set(_0xb7e22d['filter'](isValidUserId)[_0x92d7e7(0x2a3)](_0x200121=>String(_0x200121)[_0x92d7e7(0x235)]()));_0x504d3d===_0x92d7e7(0x2a6)&&_0x2ceacc['size']>0x1&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x261),'message':'SINGLE\x20approval\x20supports\x20only\x20one\x20fixed\x20user.'});}}if(_0x598f82==='ROLE'){const _0x5aeb88=_0xaab663[_0x92d7e7(0x299)]['roleId'],_0x310a72=typeof _0x5aeb88===_0x92d7e7(0x2ee)||typeof _0x5aeb88===_0x92d7e7(0x2a4)?Number(String(_0x5aeb88)[_0x92d7e7(0x235)]()):Number[_0x92d7e7(0x244)];(!Number[_0x92d7e7(0x2b8)](_0x310a72)||_0x310a72<=0x0)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x2a1),'message':_0x92d7e7(0x22a)});}}if(_0xaab663[_0x92d7e7(0x263)]!==undefined){if(!isRecord(_0xaab663['transferCandidates']))_0x2663ec['push']({'path':_0x122193+_0x92d7e7(0x30e),'message':'transferCandidates\x20must\x20be\x20an\x20object.'});else{if(_0xaab663[_0x92d7e7(0x263)][_0x92d7e7(0x2b2)]!==_0x92d7e7(0x2ea))_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x28b),'message':_0x92d7e7(0x270)});else{const _0x1ed0e1=_0xaab663[_0x92d7e7(0x263)][_0x92d7e7(0x1f8)];if(!Array[_0x92d7e7(0x1d4)](_0x1ed0e1)||_0x1ed0e1[_0x92d7e7(0x29f)]===0x0)_0x2663ec['push']({'path':_0x122193+_0x92d7e7(0x20a),'message':'FIXED\x20transferCandidates\x20requires\x20non-empty\x20userIds.'});else{const _0x3032a7=_0x1ed0e1[_0x92d7e7(0x2c4)](_0x5866a3=>!isValidUserId(_0x5866a3));_0x3032a7>=0x0&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x26b)+_0x3032a7+']','message':_0x92d7e7(0x251)});}}}}}_0xaab663[_0x92d7e7(0x1e6)]!==undefined&&typeof _0xaab663[_0x92d7e7(0x1e6)]!==_0x92d7e7(0x230)&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x200),'message':_0x92d7e7(0x25a)});if(_0xaab663[_0x92d7e7(0x1ec)]==='SCRIPT'){(typeof _0xaab663[_0x92d7e7(0x287)]!=='string'||_0xaab663['scriptName'][_0x92d7e7(0x235)]()==='')&&_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x219),'message':_0x92d7e7(0x267)});if(_0xaab663['resultVariable']!==undefined){if(typeof _0xaab663[_0x92d7e7(0x201)]!==_0x92d7e7(0x2a4)||!VARIABLE_PATTERN[_0x92d7e7(0x2b1)](_0xaab663[_0x92d7e7(0x201)]))_0x2663ec[_0x92d7e7(0x257)]({'path':_0x122193+_0x92d7e7(0x277),'message':_0x92d7e7(0x2d9)});else(RESERVED_RESULT_VARIABLES[_0x92d7e7(0x229)](_0xaab663[_0x92d7e7(0x201)])||_0xaab663['resultVariable']['startsWith'](_0x92d7e7(0x284)))&&_0x2663ec['push']({'path':_0x122193+'.resultVariable','message':_0x92d7e7(0x24d)+_0xaab663[_0x92d7e7(0x201)]+'.'});}}validateAsyncExecution(_0xaab663,_0x122193,_0x2663ec),validateApprovalTimeout(_0xaab663,_0x122193,_0x2663ec),validateCcConfig(_0xaab663,_0x122193,_0x2663ec),_0xaab663[_0x92d7e7(0x1ec)]===_0x92d7e7(0x29d)&&validateNotificationConfig(_0xaab663[_0x92d7e7(0x2eb)],_0x122193+'.config',_0x2663ec);}function validateAsyncExecution(_0x6ee886,_0x435027,_0x452943){const _0x4079a0=a281_0xb8329f;if(_0x6ee886[_0x4079a0(0x1f0)]===undefined)return;if(!isRecord(_0x6ee886[_0x4079a0(0x1f0)])){_0x452943[_0x4079a0(0x257)]({'path':_0x435027+_0x4079a0(0x2b4),'message':_0x4079a0(0x210)});return;}if(_0x6ee886[_0x4079a0(0x1f0)][_0x4079a0(0x266)]!==undefined&&typeof _0x6ee886[_0x4079a0(0x1f0)][_0x4079a0(0x266)]!=='boolean'){_0x452943[_0x4079a0(0x257)]({'path':_0x435027+_0x4079a0(0x2e1),'message':_0x4079a0(0x2f4)});return;}if(_0x6ee886[_0x4079a0(0x1f0)]['enabled']!==!![])return;_0x6ee886['type']!==_0x4079a0(0x1c9)&&_0x452943[_0x4079a0(0x257)]({'path':_0x435027+_0x4079a0(0x2b4),'message':_0x4079a0(0x291)});const _0x1a6920=_0x6ee886[_0x4079a0(0x1f0)][_0x4079a0(0x21a)]??0x3;(!Number[_0x4079a0(0x1fa)](_0x1a6920)||_0x1a6920<0x1||_0x1a6920>MAX_ASYNC_RETRY_COUNT)&&_0x452943[_0x4079a0(0x257)]({'path':_0x435027+_0x4079a0(0x290),'message':_0x4079a0(0x29c)+MAX_ASYNC_RETRY_COUNT+'.'}),_0x6ee886[_0x4079a0(0x1f0)][_0x4079a0(0x27a)]!==undefined&&validateTimeAmount(_0x6ee886['async']['retryInterval'],_0x435027+_0x4079a0(0x222),_0x452943);}function validateApprovalTimeout(_0x2c5f2b,_0x60ba00,_0x2565f1){const _0xf9084b=a281_0xb8329f;if(_0x2c5f2b[_0xf9084b(0x1f3)]===undefined)return;if(!isRecord(_0x2c5f2b['timeout'])){_0x2565f1[_0xf9084b(0x257)]({'path':_0x60ba00+'.timeout','message':_0xf9084b(0x1ff)});return;}if(_0x2c5f2b[_0xf9084b(0x1f3)][_0xf9084b(0x266)]!==undefined&&typeof _0x2c5f2b[_0xf9084b(0x1f3)]['enabled']!=='boolean'){_0x2565f1['push']({'path':_0x60ba00+'.timeout.enabled','message':_0xf9084b(0x26c)});return;}if(_0x2c5f2b[_0xf9084b(0x1f3)][_0xf9084b(0x266)]!==!![])return;if(_0x2c5f2b['timeout'][_0xf9084b(0x1fe)]!==undefined&&typeof _0x2c5f2b[_0xf9084b(0x1f3)][_0xf9084b(0x1fe)]!==_0xf9084b(0x230)){_0x2565f1[_0xf9084b(0x257)]({'path':_0x60ba00+_0xf9084b(0x228),'message':_0xf9084b(0x2fe)});return;}_0x2c5f2b[_0xf9084b(0x1ec)]!=='APPROVAL'&&_0x2565f1['push']({'path':_0x60ba00+_0xf9084b(0x250),'message':_0xf9084b(0x21f)});validateTimeAmount(_0x2c5f2b[_0xf9084b(0x1f3)]['duration'],_0x60ba00+_0xf9084b(0x2a0),_0x2565f1);const _0x3cf8a2=_0x2c5f2b['timeout'][_0xf9084b(0x206)];if(!APPROVAL_TIMEOUT_ACTIONS[_0xf9084b(0x229)](_0x3cf8a2)){_0x2565f1['push']({'path':_0x60ba00+_0xf9084b(0x304),'message':_0xf9084b(0x239)});return;}(_0x2c5f2b[_0xf9084b(0x22b)]??_0xf9084b(0x1e2))==='HANDLE'&&_0x3cf8a2!==_0xf9084b(0x22c)&&_0x2565f1[_0xf9084b(0x257)]({'path':_0x60ba00+_0xf9084b(0x304),'message':_0xf9084b(0x289)});const _0x2fafe9=_0x2c5f2b[_0xf9084b(0x1f3)][_0xf9084b(0x1fe)]??_0x3cf8a2!==_0xf9084b(0x22c);if(_0x3cf8a2===_0xf9084b(0x22c))_0x2fafe9&&_0x2565f1[_0xf9084b(0x257)]({'path':_0x60ba00+'.timeout.interrupting','message':'EXECUTE_BFF\x20timeout\x20must\x20not\x20interrupt\x20the\x20approval\x20task.'}),(typeof _0x2c5f2b[_0xf9084b(0x1f3)][_0xf9084b(0x287)]!=='string'||_0x2c5f2b[_0xf9084b(0x1f3)][_0xf9084b(0x287)]['trim']()==='')&&_0x2565f1[_0xf9084b(0x257)]({'path':_0x60ba00+'.timeout.scriptName','message':_0xf9084b(0x30a)}),validateOptionalResultVariable(_0x2c5f2b['timeout'][_0xf9084b(0x201)],_0x60ba00+_0xf9084b(0x1d2),_0x2565f1);else!_0x2fafe9&&_0x2565f1[_0xf9084b(0x257)]({'path':_0x60ba00+_0xf9084b(0x228),'message':_0x3cf8a2+_0xf9084b(0x217)});}function validateTimeAmount(_0x430826,_0x425c14,_0x64a7a6){const _0x3475f6=a281_0xb8329f;if(!isRecord(_0x430826)){_0x64a7a6[_0x3475f6(0x257)]({'path':_0x425c14,'message':_0x3475f6(0x1f5)});return;}(!Number[_0x3475f6(0x1fa)](_0x430826[_0x3475f6(0x262)])||Number(_0x430826[_0x3475f6(0x262)])<=0x0)&&_0x64a7a6['push']({'path':_0x425c14+_0x3475f6(0x2f0),'message':_0x3475f6(0x1be)}),!FLOW_TIME_UNITS[_0x3475f6(0x229)](_0x430826[_0x3475f6(0x1b7)])&&_0x64a7a6[_0x3475f6(0x257)]({'path':_0x425c14+_0x3475f6(0x221),'message':_0x3475f6(0x27b)});}function validateOptionalResultVariable(_0x173177,_0x31b308,_0x302d2d){const _0x517794=a281_0xb8329f;if(_0x173177===undefined||_0x173177===null||_0x173177==='')return;if(typeof _0x173177!==_0x517794(0x2a4)||!VARIABLE_PATTERN[_0x517794(0x2b1)](_0x173177))_0x302d2d['push']({'path':_0x31b308,'message':'resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.'});else(RESERVED_RESULT_VARIABLES['has'](_0x173177)||_0x173177[_0x517794(0x1d8)](_0x517794(0x284)))&&_0x302d2d[_0x517794(0x257)]({'path':_0x31b308,'message':_0x517794(0x24d)+_0x173177+'.'});}function validateCcConfig(_0x246306,_0x13bcf8,_0x4ab823){const _0x44aa8b=a281_0xb8329f;if(_0x246306['cc']===undefined)return;if(!isRecord(_0x246306['cc'])){_0x4ab823[_0x44aa8b(0x257)]({'path':_0x13bcf8+_0x44aa8b(0x30d),'message':'cc\x20must\x20be\x20an\x20object.'});return;}_0x246306['type']!==_0x44aa8b(0x24e)&&_0x246306[_0x44aa8b(0x1ec)]!=='APPROVAL'&&_0x4ab823['push']({'path':_0x13bcf8+_0x44aa8b(0x30d),'message':_0x44aa8b(0x27d)});Object[_0x44aa8b(0x25f)][_0x44aa8b(0x1da)][_0x44aa8b(0x303)](_0x246306['cc'],_0x44aa8b(0x2a8))&&_0x4ab823[_0x44aa8b(0x257)]({'path':_0x13bcf8+_0x44aa8b(0x2ab),'message':UNSUPPORTED_FORM_MESSAGE});const _0x29a2ab=_0x246306['cc'][_0x44aa8b(0x1b4)];if(!Array[_0x44aa8b(0x1d4)](_0x29a2ab)||_0x29a2ab['length']===0x0)_0x4ab823[_0x44aa8b(0x257)]({'path':_0x13bcf8+_0x44aa8b(0x25b),'message':'cc.recipientUserIds\x20must\x20be\x20a\x20non-empty\x20array.'});else{_0x29a2ab[_0x44aa8b(0x29f)]>MAX_CC_RECIPIENTS&&_0x4ab823[_0x44aa8b(0x257)]({'path':_0x13bcf8+_0x44aa8b(0x25b),'message':_0x44aa8b(0x2d0)+MAX_CC_RECIPIENTS+_0x44aa8b(0x254)});const _0x3f8344=new Set();_0x29a2ab['forEach']((_0x411e8e,_0xa5dc3b)=>{const _0x22d0c0=_0x44aa8b;if(typeof _0x411e8e!=='string'||_0x411e8e['trim']()==='')_0x4ab823[_0x22d0c0(0x257)]({'path':_0x13bcf8+_0x22d0c0(0x23c)+_0xa5dc3b+']','message':_0x22d0c0(0x2be)});else _0x3f8344[_0x22d0c0(0x229)](_0x411e8e[_0x22d0c0(0x235)]())?_0x4ab823[_0x22d0c0(0x257)]({'path':_0x13bcf8+_0x22d0c0(0x23c)+_0xa5dc3b+']','message':_0x22d0c0(0x1bc)+_0x411e8e[_0x22d0c0(0x235)]()+'.'}):_0x3f8344[_0x22d0c0(0x276)](_0x411e8e[_0x22d0c0(0x235)]());});}validateStringArray(_0x246306['cc']['visible'],_0x13bcf8+'.cc.visible',_0x4ab823);}function validateStringArray(_0x1930b0,_0xf10beb,_0x51efa2){const _0x2ce58f=a281_0xb8329f;if(_0x1930b0===undefined)return;if(!Array['isArray'](_0x1930b0)){_0x51efa2[_0x2ce58f(0x257)]({'path':_0xf10beb,'message':_0x2ce58f(0x29a)});return;}const _0x5b8046=new Set();_0x1930b0[_0x2ce58f(0x2de)]((_0x438f09,_0xc91e83)=>{const _0x22c55f=_0x2ce58f;if(typeof _0x438f09!==_0x22c55f(0x2a4)||_0x438f09['trim']()==='')_0x51efa2['push']({'path':_0xf10beb+'['+_0xc91e83+']','message':_0x22c55f(0x234)});else _0x5b8046[_0x22c55f(0x229)](_0x438f09[_0x22c55f(0x235)]())?_0x51efa2[_0x22c55f(0x257)]({'path':_0xf10beb+'['+_0xc91e83+']','message':_0x22c55f(0x1b5)+_0x438f09[_0x22c55f(0x235)]()+'.'}):_0x5b8046[_0x22c55f(0x276)](_0x438f09[_0x22c55f(0x235)]());});}function validateNotificationConfig(_0x224a99,_0x308998,_0x235dd1){const _0x11a1a9=a281_0xb8329f;if(!isRecord(_0x224a99)){_0x235dd1[_0x11a1a9(0x257)]({'path':_0x308998,'message':_0x11a1a9(0x27e)});return;}if(_0x224a99['version']!==undefined&&_0x224a99[_0x11a1a9(0x2d5)]!==null){if(typeof _0x224a99[_0x11a1a9(0x2d5)]!==_0x11a1a9(0x2a4))_0x235dd1[_0x11a1a9(0x257)]({'path':_0x308998+_0x11a1a9(0x225),'message':'Notification\x20version\x20must\x20be\x20a\x20string.'});else _0x224a99[_0x11a1a9(0x2d5)][_0x11a1a9(0x235)]()&&_0x224a99[_0x11a1a9(0x2d5)][_0x11a1a9(0x235)]()!=='v1'&&_0x235dd1['push']({'path':_0x308998+_0x11a1a9(0x225),'message':'Unsupported\x20notification\x20version:\x20'+_0x224a99[_0x11a1a9(0x2d5)]+'.'});}const _0x4f3a10=requireNotificationString(_0x224a99[_0x11a1a9(0x2df)],_0x308998+_0x11a1a9(0x23b),_0x11a1a9(0x264),_0x235dd1);_0x4f3a10?.[_0x11a1a9(0x2ce)]('${')&&_0x235dd1['push']({'path':_0x308998+_0x11a1a9(0x23b),'message':_0x11a1a9(0x2e4)});if(_0x224a99[_0x11a1a9(0x247)]!==undefined&&_0x224a99['failurePolicy']!==null){if(typeof _0x224a99[_0x11a1a9(0x247)]!==_0x11a1a9(0x2a4))_0x235dd1[_0x11a1a9(0x257)]({'path':_0x308998+_0x11a1a9(0x2c2),'message':_0x11a1a9(0x220)});else!NOTIFICATION_FAILURE_POLICIES['has'](_0x224a99[_0x11a1a9(0x247)][_0x11a1a9(0x235)]()[_0x11a1a9(0x29e)]())&&_0x235dd1[_0x11a1a9(0x257)]({'path':_0x308998+_0x11a1a9(0x2c2),'message':_0x11a1a9(0x21b)});}!isRecord(_0x224a99['template'])?_0x235dd1['push']({'path':_0x308998+'.template','message':_0x11a1a9(0x23f)}):validateNotificationTemplate(_0x224a99[_0x11a1a9(0x1af)],_0x308998+_0x11a1a9(0x286),_0x235dd1),validateNotificationRecipients(_0x224a99[_0x11a1a9(0x213)],_0x308998+_0x11a1a9(0x2dd),_0x235dd1);}function validateNotificationTemplate(_0x100a61,_0x418552,_0x3c7d77){const _0x1e06ba=a281_0xb8329f;for(const _0x3205a3 of['title','summary']){const _0x8ec0e8=requireNotificationString(_0x100a61[_0x3205a3],_0x418552+'.'+_0x3205a3,_0x1e06ba(0x2ed)+_0x3205a3+'\x20is\x20required.',_0x3c7d77);if(_0x8ec0e8)validateNotificationPlaceholders(_0x8ec0e8,_0x418552+'.'+_0x3205a3,_0x3c7d77);}_0x100a61[_0x1e06ba(0x2c9)]!==undefined&&_0x100a61[_0x1e06ba(0x2c9)]!==null&&(typeof _0x100a61[_0x1e06ba(0x2c9)]!==_0x1e06ba(0x2a4)?_0x3c7d77['push']({'path':_0x418552+_0x1e06ba(0x274),'message':_0x1e06ba(0x236)}):validateNotificationPlaceholders(_0x100a61[_0x1e06ba(0x2c9)],_0x418552+_0x1e06ba(0x274),_0x3c7d77)),validateNotificationFacts(_0x100a61[_0x1e06ba(0x1b3)],_0x418552+_0x1e06ba(0x1b6),_0x3c7d77),validateNotificationActions(_0x100a61[_0x1e06ba(0x27c)],_0x418552+_0x1e06ba(0x2f9),_0x3c7d77);}function a281_0x319c(){const _0x15be80=['flowJson.startPageId','\x20timeout\x20must\x20interrupt\x20the\x20approval\x20task.','context','.scriptName','retryCount','failurePolicy\x20must\x20be\x20CONTINUE\x20or\x20FAIL.','approval_sys_dataId','url','Notification\x20recipient.role\x20must\x20be\x20TO,\x20CC,\x20or\x20BCC.','timeout\x20is\x20only\x20supported\x20by\x20APPROVAL\x20node.','failurePolicy\x20must\x20be\x20a\x20string.','.unit','.async.retryInterval','nodes','APPROVAL\x20node\x20requires\x20exactly\x20one\x20REJECTED\x20outgoing\x20edge.','.version','(?<![A-Za-z0-9_])','.taskMode','.timeout.interrupting','has','ROLE\x20assignee\x20requires\x20a\x20positive\x20integer\x20roleId.','taskMode','EXECUTE_BFF','ROLE','].taskMode','Unsupported\x20condition\x20type:\x20','boolean','Notification\x20recipient.type\x20must\x20be\x20USER,\x20ROLE,\x20or\x20EMAIL.','ALWAYS','title','value\x20must\x20be\x20a\x20non-empty\x20string.','trim','Notification\x20template.detailMarkdown\x20must\x20be\x20a\x20string.','.position','edge\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','timeout.action\x20must\x20be\x20AUTO_APPROVE,\x20AUTO_REJECT,\x20or\x20EXECUTE_BFF.','position.','.configCode','.cc.recipientUserIds[','BCC','flowDesc','NOTIFICATION\x20node\x20requires\x20template.','stringify','Approval\x20flow\x20requires\x20an\x20END\x20node\x20with\x20result\x20','.id','flowJson.nodes[','NaN','variables','warnings','failurePolicy','pageMode','\x20was\x20empty\x20and\x20was\x20removed.','approval_sys_initiatorUserId','CONDITION\x20node\x20requires\x20at\x20least\x20two\x20outgoing\x20edges.','https://json-schema.org/draft/2020-12/schema','Reserved\x20resultVariable:\x20','END','Node\x20is\x20not\x20reachable\x20from\x20START.','.timeout','transfer\x20candidate\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','approved','approval_sys_appCode','\x20users.','607590MVOhlv','conditionType','push','node\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','form','sequential\x20must\x20be\x20a\x20boolean.','.cc.recipientUserIds','HANDLE','.\x20This\x20CLI\x20supports\x20only\x20','2679481TTqaqr','prototype','.expression','.assignee.userIds','value','transferCandidates','Notification\x20configCode\x20is\x20required.','.conditionType','enabled','SCRIPT\x20node\x20requires\x20scriptName.','array','Node\x20cannot\x20reach\x20any\x20END.','Edge\x20source\x20node\x20not\x20found:\x20','.transferCandidates.userIds[','timeout.enabled\x20must\x20be\x20a\x20boolean.','overwrite','flowName','DAYS','transferCandidates\x20currently\x20supports\x20FIXED\x20only.','.pageId','metadata','Notification\x20recipient\x20must\x20be\x20an\x20object.','.detailMarkdown','\x20facts.','add','.resultVariable','CONDITION\x20node\x20requires\x20exactly\x20one\x20default\x20outgoing\x20edge.','EXPRESSION','retryInterval','duration\x20unit\x20must\x20be\x20SECONDS,\x20MINUTES,\x20HOURS,\x20or\x20DAYS.','actions','Default\x20cc\x20is\x20only\x20supported\x20by\x20APPROVAL\x20or\x20END\x20node.','NOTIFICATION\x20node\x20requires\x20config.','3090165TTDsZL','flowName\x20is\x20required.','Notification\x20action\x20must\x20be\x20an\x20object.','Notification\x20recipients\x20must\x20be\x20an\x20array.','approvalMode','approval_sys_','waypoints\x20must\x20be\x20an\x20array.','.template','scriptName','.assignee','HANDLE\x20task\x20timeout\x20only\x20supports\x20EXECUTE_BFF.','edge\x20name\x20must\x20be\x20a\x20string.','.transferCandidates.strategy','APPROVED','\x5c$&','approval_sys_initiatorUsername','Notification\x20recipient.role\x20must\x20be\x20a\x20string.','.async.retryCount','async\x20execution\x20is\x20only\x20supported\x20by\x20SCRIPT\x20node.','MINUTES','target','.assignee.strategy','HANDLE\x20task\x20outgoing\x20edge\x20must\x20use\x20ALWAYS\x20without\x20defaultFlow\x20or\x20expression.','matchAll','Every\x20node\x20requires\x20position.x\x20and\x20position.y.','approval.simple-flow.v1','assignee','value\x20must\x20be\x20an\x20array.','approval_sys_processInstanceId','SCRIPT\x20async\x20retryCount\x20must\x20be\x20between\x201\x20and\x20','NOTIFICATION','toUpperCase','length','.timeout.duration','.assignee.roleId','\x20value\x20and\x20was\x20removed\x20from\x20the\x20portable\x20FlowConfig.','map','string','.waypoints','SINGLE','.tmp','readSources','.url','FIXED\x20assignee\x20requires\x20userIds.','.cc.readSources','.waypoints[','catch','flowType','EMAIL','pageId\x20must\x20be\x20a\x20non-negative\x20integer.','test','strategy','get','.async','isFinite','.target','7362168NLAUVf','isSafeInteger','pageId','\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.','#/$defs/position','role','Notification\x20template.facts\x20must\x20be\x20an\x20array.','cc\x20recipient\x20userId\x20must\x20be\x20a\x20non-empty\x20string.','HANDLE\x20task\x20requires\x20exactly\x20one\x20outgoing\x20edge.',',\x20but\x20node\x20','300yrFwdi','.failurePolicy','approval_sys_operationType','findIndex','.name','assignee.strategy\x20must\x20be\x20FIXED\x20or\x20ROLE.','Duplicate\x20node\x20id:\x20','CONDITION\x20non-default\x20edge\x20must\x20use\x20conditionType\x20EXPRESSION.','detailMarkdown','Notification\x20fact.','datasetCode','18Udkgdi','flowJson.pageMode','includes','\x20is\x20not\x20on\x20every\x20upstream\x20path\x20to\x20','cc.recipientUserIds\x20supports\x20at\x20most\x20','defaultFlow','flowJson.nodes','flowKey','No\x20END\x20node\x20is\x20reachable\x20from\x20START.','version','pid','Unsupported\x20task\x20mode:\x20','^[A-Za-z_][A-Za-z0-9_]*$','resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','appCode','utf8','parse','.recipients','forEach','configCode','Notification\x20template\x20supports\x20at\x20most\x20','.async.enabled','flowJson.edges[','formSchema','Notification\x20configCode\x20must\x20be\x20a\x20fixed\x20value.','flowJson\x20must\x20be\x20an\x20object.','legacy_field_removed','END\x20node\x20must\x20not\x20have\x20outgoing\x20edges.','delete','flowJson.schemaVersion','FIXED','config','node\x20pageId\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','Notification\x20template.','number','schemaVersion','.value','Node\x20has\x20no\x20outgoing\x20edge.','expression','label','async.enabled\x20must\x20be\x20a\x20boolean.','slice','ANY','every','size','.actions','APPROVAL\x20task\x20decision\x20edges\x20must\x20not\x20be\x20default\x20flows.','INDEPENDENT_FLOW\x20cannot\x20bind\x20pageId.','filter','INDEPENDENT_FLOW','timeout.interrupting\x20must\x20be\x20a\x20boolean.','^[1-9][0-9]*$','sourceNodeId','#/$defs/userId','.defaultFlow','call','.timeout.action','A\x20default\x20flow\x20must\x20not\x20have\x20an\x20expression.','Flow\x20must\x20contain\x20exactly\x20one\x20START\x20node.','SECONDS','FORM_FLOW','waypoints','EXECUTE_BFF\x20timeout\x20requires\x20scriptName.','HOURS','defaultFlow\x20must\x20be\x20a\x20boolean.','.cc','.transferCandidates','CONTINUE','\x20is\x20required.','replace','fixed\x20assignee\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','APPROVAL\x20node\x20requires\x20assignee.','template','START','flowJson.edges','edges','facts','recipientUserIds','Duplicate\x20value:\x20','.facts','unit','bindDatasetCode','text','439440OFcQMp','approval_sys_datasetCode','Duplicate\x20cc\x20recipient\x20userId:\x20','flowJson.nodes.','duration\x20value\x20must\x20be\x20a\x20positive\x20integer.','set','Notification\x20action.text\x20is\x20required.','FAIL','flowJson.','object','Notification\x20text\x20contains\x20a\x20malformed\x20placeholder.','.type','\x20must\x20be\x20a\x20finite\x20number.','APPROVAL\x20node\x20requires\x20exactly\x20one\x20APPROVED\x20outgoing\x20edge.','empty_metadata_removed','SCRIPT','edge\x20target\x20is\x20required.','flowCode','formPermissions','7201FDeXky','APPROVAL\x20node\x20outgoing\x20edges\x20must\x20use\x20APPROVED\x20or\x20REJECTED.','edges\x20must\x20be\x20an\x20array.','waypoint\x20must\x20contain\x20numeric\x20x\x20and\x20y\x20coordinates.','flowDesc\x20must\x20be\x20a\x20string.','.timeout.resultVariable','AUTO_REJECT','isArray','AUTO_APPROVE','templateName','Edge\x20target\x20node\x20not\x20found:\x20','startsWith','CONDITION','hasOwnProperty','targetNodeId','#/$defs/flowEdge','41805XZLzqd','Every\x20node\x20requires\x20a\x20non-empty\x20name.','pageMode\x20applies\x20only\x20to\x20INDEPENDENT_FLOW.','flowJson','node\x20pageId\x20must\x20be\x20a\x20positive\x20integer.','APPROVAL','.text','Notification\x20recipient.type\x20is\x20required.','integer','sequential','Notification\x20template.actions\x20must\x20be\x20an\x20array.','node\x20pageId\x20is\x20supported\x20only\x20on\x20APPROVAL\x20user\x20tasks.','#/$defs/flowNode','#/$defs/timeAmount','CUSTOM_PAGE','type','Unsupported\x20notification\x20placeholder:\x20','USER','datasetCode\x20must\x20be\x20a\x20string.','async','Unsupported\x20approval\x20mode:\x20','name','timeout','Explicit\x20notification\x20recipients\x20require\x20at\x20least\x20one\x20TO.','duration\x20requires\x20value\x20and\x20unit.','scriptResult','START\x20node\x20must\x20not\x20have\x20incoming\x20edges.','userIds','ALL','isInteger','position','source','result','interrupting','timeout\x20must\x20be\x20an\x20object.','.sequential','resultVariable','\x20must\x20be\x20a\x20finite\x20number\x20greater\x20than\x20or\x20equal\x20to\x200.','.approvalMode','15Tvzouw','PLATFORM_FORM','action','].pageId','.role','edge\x20must\x20be\x20an\x20object.','.transferCandidates.userIds','some','REJECTED','Notification\x20fact\x20must\x20be\x20an\x20object.','Accepted\x20as\x20legacy\x20input\x20and\x20removed\x20during\x20normalization;\x20other\x20versions\x20are\x20unsupported.','CONDITION\x20default\x20edge\x20must\x20use\x20conditionType\x20ALWAYS.','async\x20must\x20be\x20an\x20object.','keys','(?![A-Za-z0-9_])','recipients','.position.','.assignee.userIds['];a281_0x319c=function(){return _0x15be80;};return a281_0x319c();}function a281_0x5c5c(_0x45204d,_0x1c5927){_0x45204d=_0x45204d-0x1af;const _0x319c6f=a281_0x319c();let _0x5c5cf0=_0x319c6f[_0x45204d];return _0x5c5cf0;}function validateNotificationFacts(_0xd56989,_0x576293,_0x18ffb6){const _0x523741=a281_0xb8329f;if(_0xd56989===undefined||_0xd56989===null)return;if(!Array[_0x523741(0x1d4)](_0xd56989)){_0x18ffb6[_0x523741(0x257)]({'path':_0x576293,'message':_0x523741(0x2bd)});return;}_0xd56989[_0x523741(0x29f)]>MAX_NOTIFICATION_FACTS&&_0x18ffb6['push']({'path':_0x576293,'message':_0x523741(0x2e0)+MAX_NOTIFICATION_FACTS+_0x523741(0x275)}),_0xd56989['forEach']((_0x5de107,_0x3622a0)=>{const _0x593a3a=_0x523741,_0x9af7c0=_0x576293+'['+_0x3622a0+']';if(!isRecord(_0x5de107)){_0x18ffb6[_0x593a3a(0x257)]({'path':_0x9af7c0,'message':_0x593a3a(0x20d)});return;}for(const _0x21d260 of[_0x593a3a(0x2f3),_0x593a3a(0x262)]){const _0x2f909c=requireNotificationString(_0x5de107[_0x21d260],_0x9af7c0+'.'+_0x21d260,_0x593a3a(0x2ca)+_0x21d260+_0x593a3a(0x310),_0x18ffb6);_0x2f909c&&validateNotificationPlaceholders(_0x2f909c,_0x9af7c0+'.'+_0x21d260,_0x18ffb6);}});}function validateNotificationActions(_0x458d80,_0x492173,_0x174de4){const _0x2d9433=a281_0xb8329f;if(_0x458d80===undefined||_0x458d80===null)return;if(!Array[_0x2d9433(0x1d4)](_0x458d80)){_0x174de4[_0x2d9433(0x257)]({'path':_0x492173,'message':_0x2d9433(0x1e7)});return;}_0x458d80[_0x2d9433(0x29f)]>MAX_NOTIFICATION_ACTIONS&&_0x174de4[_0x2d9433(0x257)]({'path':_0x492173,'message':_0x2d9433(0x2e0)+MAX_NOTIFICATION_ACTIONS+'\x20actions.'}),_0x458d80['forEach']((_0x164638,_0x685ee9)=>{const _0x3ab6cd=_0x2d9433,_0x569ea0=_0x492173+'['+_0x685ee9+']';if(!isRecord(_0x164638)){_0x174de4['push']({'path':_0x569ea0,'message':_0x3ab6cd(0x281)});return;}const _0x4610c7=requireNotificationString(_0x164638[_0x3ab6cd(0x1b9)],_0x569ea0+_0x3ab6cd(0x1e3),_0x3ab6cd(0x1c0),_0x174de4);if(_0x4610c7)validateNotificationPlaceholders(_0x4610c7,_0x569ea0+_0x3ab6cd(0x1e3),_0x174de4);const _0xa828a2=requireNotificationString(_0x164638[_0x3ab6cd(0x21d)],_0x569ea0+'.url','Notification\x20action.url\x20is\x20required.',_0x174de4);if(!_0xa828a2)return;validateNotificationPlaceholders(_0xa828a2,_0x569ea0+_0x3ab6cd(0x2a9),_0x174de4),!/^https?:\/\//i[_0x3ab6cd(0x2b1)](_0xa828a2)&&!NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN[_0x3ab6cd(0x2b1)](_0xa828a2)&&_0x174de4[_0x3ab6cd(0x257)]({'path':_0x569ea0+_0x3ab6cd(0x2a9),'message':'Notification\x20action.url\x20must\x20use\x20http/https\x20or\x20a\x20complete\x20supported\x20placeholder.'});});}function validateNotificationRecipients(_0x550b5b,_0x4b430b,_0x3825cc){const _0x4191e5=a281_0xb8329f;if(_0x550b5b===undefined||_0x550b5b===null)return;if(!Array[_0x4191e5(0x1d4)](_0x550b5b)){_0x3825cc['push']({'path':_0x4b430b,'message':_0x4191e5(0x282)});return;}let _0x3b4332=![];_0x550b5b[_0x4191e5(0x2de)]((_0x50933b,_0x2d05b0)=>{const _0x37a702=_0x4191e5,_0x192751=_0x4b430b+'['+_0x2d05b0+']';if(!isRecord(_0x50933b)){_0x3825cc['push']({'path':_0x192751,'message':_0x37a702(0x273)});return;}const _0x37b67d=requireNotificationString(_0x50933b[_0x37a702(0x1ec)],_0x192751+_0x37a702(0x1c5),_0x37a702(0x1e4),_0x3825cc);_0x37b67d&&!NOTIFICATION_RECIPIENT_TYPES[_0x37a702(0x229)](_0x37b67d['toUpperCase']())&&_0x3825cc[_0x37a702(0x257)]({'path':_0x192751+_0x37a702(0x1c5),'message':_0x37a702(0x231)});let _0x3cb0c9='TO';_0x50933b[_0x37a702(0x2bc)]!==undefined&&_0x50933b['role']!==null&&(typeof _0x50933b['role']!=='string'?(_0x3825cc[_0x37a702(0x257)]({'path':_0x192751+_0x37a702(0x208),'message':_0x37a702(0x28f)}),_0x3cb0c9=''):(_0x3cb0c9=_0x50933b[_0x37a702(0x2bc)]['trim']()[_0x37a702(0x29e)](),!NOTIFICATION_RECIPIENT_ROLES[_0x37a702(0x229)](_0x3cb0c9)&&_0x3825cc[_0x37a702(0x257)]({'path':_0x192751+_0x37a702(0x208),'message':_0x37a702(0x21e)})));if(_0x3cb0c9==='TO')_0x3b4332=!![];const _0x5d0843=requireNotificationString(_0x50933b[_0x37a702(0x262)],_0x192751+_0x37a702(0x2f0),'Notification\x20recipient.value\x20is\x20required.',_0x3825cc);_0x5d0843&&validateNotificationPlaceholders(_0x5d0843,_0x192751+_0x37a702(0x2f0),_0x3825cc);}),_0x550b5b[_0x4191e5(0x29f)]>0x0&&!_0x3b4332&&_0x3825cc[_0x4191e5(0x257)]({'path':_0x4b430b,'message':_0x4191e5(0x1f4)});}function requireNotificationString(_0x58914d,_0x10d1f6,_0x58bad6,_0x59dbc5){const _0x17d81f=a281_0xb8329f;if(typeof _0x58914d!==_0x17d81f(0x2a4)||_0x58914d[_0x17d81f(0x235)]()==='')return _0x59dbc5[_0x17d81f(0x257)]({'path':_0x10d1f6,'message':_0x58bad6}),undefined;return _0x58914d[_0x17d81f(0x235)]();}function validateNotificationPlaceholders(_0x1ab0dd,_0x3a3476,_0x23cbe9){const _0x5bc262=a281_0xb8329f;for(const _0x46e174 of _0x1ab0dd[_0x5bc262(0x296)](NOTIFICATION_PLACEHOLDER_PATTERN)){const _0x5d4a2f=_0x46e174[0x1]?.[_0x5bc262(0x235)]()??'',_0x2ce711=_0x5d4a2f['indexOf']('.'),_0x50c296=_0x2ce711>=0x0?_0x5d4a2f[_0x5bc262(0x2f5)](0x0,_0x2ce711):_0x5d4a2f,_0x13e229=_0x2ce711>=0x0?_0x5d4a2f[_0x5bc262(0x2f5)](_0x2ce711+0x1)[_0x5bc262(0x235)]():'';(!['event',_0x5bc262(0x218),_0x5bc262(0x245)][_0x5bc262(0x2ce)](_0x50c296)||_0x13e229==='')&&_0x23cbe9[_0x5bc262(0x257)]({'path':_0x3a3476,'message':_0x5bc262(0x1ed)+_0x46e174[0x0]+'.'});}_0x1ab0dd[_0x5bc262(0x311)](NOTIFICATION_PLACEHOLDER_PATTERN,'')[_0x5bc262(0x2ce)]('${')&&_0x23cbe9['push']({'path':_0x3a3476,'message':_0x5bc262(0x1c4)});}function validateEdge(_0x5943f8,_0x3eae5d,_0x1b55a8){const _0x27adc7=a281_0xb8329f;_0x5943f8[_0x27adc7(0x1f2)]!==undefined&&typeof _0x5943f8[_0x27adc7(0x1f2)]!==_0x27adc7(0x2a4)&&_0x1b55a8[_0x27adc7(0x257)]({'path':_0x3eae5d+_0x27adc7(0x2c5),'message':_0x27adc7(0x28a)}),_0x5943f8[_0x27adc7(0x2d1)]!==undefined&&typeof _0x5943f8[_0x27adc7(0x2d1)]!==_0x27adc7(0x230)&&_0x1b55a8[_0x27adc7(0x257)]({'path':_0x3eae5d+_0x27adc7(0x302),'message':_0x27adc7(0x30c)}),_0x5943f8['waypoints']!==undefined&&(!Array[_0x27adc7(0x1d4)](_0x5943f8['waypoints'])?_0x1b55a8[_0x27adc7(0x257)]({'path':_0x3eae5d+_0x27adc7(0x2a5),'message':_0x27adc7(0x285)}):_0x5943f8[_0x27adc7(0x309)][_0x27adc7(0x2de)]((_0x3574b5,_0x4223d8)=>{const _0x10d8a1=_0x27adc7;if(!isRecord(_0x3574b5)){_0x1b55a8[_0x10d8a1(0x257)]({'path':_0x3eae5d+_0x10d8a1(0x2ac)+_0x4223d8+']','message':_0x10d8a1(0x1d0)});return;}for(const _0x849057 of['x','y']){const _0x342296=_0x3574b5[_0x849057];(typeof _0x342296!==_0x10d8a1(0x2ee)||!Number['isFinite'](_0x342296))&&_0x1b55a8[_0x10d8a1(0x257)]({'path':_0x3eae5d+_0x10d8a1(0x2ac)+_0x4223d8+'].'+_0x849057,'message':'waypoint.'+_0x849057+_0x10d8a1(0x1c6)});}})),_0x5943f8['conditionType']!==undefined&&!CONDITION_TYPES[_0x27adc7(0x229)](_0x5943f8[_0x27adc7(0x256)])&&_0x1b55a8['push']({'path':_0x3eae5d+_0x27adc7(0x265),'message':_0x27adc7(0x22f)+String(_0x5943f8['conditionType'])+'.'}),_0x5943f8[_0x27adc7(0x256)]==='EXPRESSION'&&(typeof _0x5943f8['expression']!==_0x27adc7(0x2a4)||_0x5943f8[_0x27adc7(0x2f2)][_0x27adc7(0x235)]()==='')&&_0x1b55a8[_0x27adc7(0x257)]({'path':_0x3eae5d+_0x27adc7(0x260),'message':'EXPRESSION\x20edge\x20requires\x20expression.'}),_0x5943f8[_0x27adc7(0x2d1)]===!![]&&_0x5943f8[_0x27adc7(0x256)]!==_0x27adc7(0x232)&&_0x1b55a8['push']({'path':_0x3eae5d+_0x27adc7(0x302),'message':'A\x20default\x20flow\x20must\x20use\x20conditionType\x20ALWAYS.'}),_0x5943f8['defaultFlow']===!![]&&typeof _0x5943f8['expression']===_0x27adc7(0x2a4)&&_0x5943f8[_0x27adc7(0x2f2)][_0x27adc7(0x235)]()!==''&&_0x1b55a8['push']({'path':_0x3eae5d+_0x27adc7(0x260),'message':_0x27adc7(0x305)});}function validateGraphShape(_0x29ec0b,_0x34d505,_0x31473a,_0x95a577,_0x17cc61,_0x457e58,_0x58ba3e){const _0x195d59=a281_0xb8329f;for(const [_0x21315f,_0x40df2a]of _0x29ec0b){const _0x494332=_0x17cc61[_0x195d59(0x2b3)](_0x21315f)??[],_0x280737=_0x95a577[_0x195d59(0x2b3)](_0x21315f)??[];_0x40df2a[_0x195d59(0x1ec)]!==_0x195d59(0x1b0)&&_0x494332[_0x195d59(0x29f)]===0x0&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x195d59(0x1bd)+_0x21315f,'message':'Node\x20has\x20no\x20incoming\x20edge.'});_0x40df2a[_0x195d59(0x1ec)]!==_0x195d59(0x24e)&&_0x280737[_0x195d59(0x29f)]===0x0&&_0x58ba3e['push']({'path':_0x195d59(0x1bd)+_0x21315f,'message':_0x195d59(0x2f1)});_0x40df2a['type']==='START'&&_0x494332['length']>0x0&&_0x58ba3e[_0x195d59(0x257)]({'path':'flowJson.nodes.'+_0x21315f,'message':_0x195d59(0x1f7)});_0x40df2a['type']===_0x195d59(0x24e)&&_0x280737[_0x195d59(0x29f)]>0x0&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x195d59(0x1bd)+_0x21315f,'message':_0x195d59(0x2e7)});if(_0x40df2a['type']===_0x195d59(0x1d9)){_0x280737[_0x195d59(0x29f)]<0x2&&_0x58ba3e['push']({'path':_0x195d59(0x1bd)+_0x21315f,'message':_0x195d59(0x24b)});const _0x566291=_0x280737[_0x195d59(0x2fc)](_0x38babf=>_0x38babf['defaultFlow']===!![]);_0x566291[_0x195d59(0x29f)]!==0x1&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x195d59(0x1bd)+_0x21315f,'message':_0x195d59(0x278)});if(_0x566291[_0x195d59(0x29f)]===0x1){const _0x45f0af=_0x566291[0x0],_0x3d1a26=_0x457e58[_0x195d59(0x2b3)](_0x45f0af)??'flowJson.edges';_0x45f0af[_0x195d59(0x256)]!==_0x195d59(0x232)&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x3d1a26+'.conditionType','message':_0x195d59(0x20f)});_0x45f0af['expression']!==undefined&&_0x58ba3e['push']({'path':_0x3d1a26+'.expression','message':'CONDITION\x20default\x20edge\x20must\x20not\x20define\x20expression.'});for(const _0x50e8b7 of _0x280737){if(_0x50e8b7===_0x45f0af)continue;const _0x5d8249=_0x457e58[_0x195d59(0x2b3)](_0x50e8b7)??'flowJson.edges';if(_0x50e8b7[_0x195d59(0x256)]!==_0x195d59(0x279))_0x58ba3e[_0x195d59(0x257)]({'path':_0x5d8249+_0x195d59(0x265),'message':_0x195d59(0x2c8)});else(typeof _0x50e8b7[_0x195d59(0x2f2)]!==_0x195d59(0x2a4)||_0x50e8b7['expression'][_0x195d59(0x235)]()==='')&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x5d8249+_0x195d59(0x260),'message':'CONDITION\x20non-default\x20edge\x20requires\x20a\x20non-empty\x20expression.'});}}}if(_0x40df2a[_0x195d59(0x1ec)]===_0x195d59(0x1e2)&&(_0x40df2a[_0x195d59(0x22b)]??'APPROVAL')===_0x195d59(0x25c)){if(_0x280737[_0x195d59(0x29f)]!==0x1)_0x58ba3e[_0x195d59(0x257)]({'path':_0x195d59(0x1bd)+_0x21315f,'message':_0x195d59(0x2bf)});else{const _0x348a77=_0x280737[0x0];((_0x348a77[_0x195d59(0x256)]??_0x195d59(0x232))!==_0x195d59(0x232)||_0x348a77['defaultFlow']===!![]||typeof _0x348a77['expression']===_0x195d59(0x2a4)&&_0x348a77['expression'][_0x195d59(0x235)]()!=='')&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x457e58['get'](_0x348a77)??_0x195d59(0x1b1),'message':_0x195d59(0x295)});}}else{if(_0x40df2a[_0x195d59(0x1ec)]===_0x195d59(0x1e2)){const _0x2b400f=_0x280737['map'](_0x158787=>_0x158787[_0x195d59(0x256)]??'ALWAYS'),_0x3ddd2d=_0x2b400f[_0x195d59(0x2fc)](_0x4621d1=>_0x4621d1!==_0x195d59(0x28c)&&_0x4621d1!==_0x195d59(0x20c));_0x3ddd2d[_0x195d59(0x29f)]>0x0&&_0x58ba3e['push']({'path':'flowJson.nodes.'+_0x21315f,'message':_0x195d59(0x1ce)}),_0x2b400f[_0x195d59(0x2fc)](_0x13df95=>_0x13df95===_0x195d59(0x28c))[_0x195d59(0x29f)]!==0x1&&_0x58ba3e[_0x195d59(0x257)]({'path':'flowJson.nodes.'+_0x21315f,'message':_0x195d59(0x1c7)}),_0x2b400f[_0x195d59(0x2fc)](_0x38a0be=>_0x38a0be===_0x195d59(0x20c))['length']!==0x1&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x195d59(0x1bd)+_0x21315f,'message':_0x195d59(0x224)}),_0x280737[_0x195d59(0x20b)](_0x212a18=>_0x212a18[_0x195d59(0x2d1)]===!![])&&_0x58ba3e[_0x195d59(0x257)]({'path':'flowJson.nodes.'+_0x21315f,'message':_0x195d59(0x2fa)});}}}const _0x3f5b90=new Set(),_0x27b7e8=_0x60a200=>{const _0x314680=_0x195d59;if(_0x3f5b90[_0x314680(0x229)](_0x60a200))return;_0x3f5b90[_0x314680(0x276)](_0x60a200);for(const _0x46723a of _0x95a577[_0x314680(0x2b3)](_0x60a200)??[]){const _0x4d7f73=resolveEdgeEndpoint(_0x46723a['target'],_0x46723a[_0x314680(0x1db)]);if(_0x4d7f73&&_0x29ec0b[_0x314680(0x229)](_0x4d7f73))_0x27b7e8(_0x4d7f73);}};_0x27b7e8(_0x34d505);for(const _0x3f933c of _0x29ec0b[_0x195d59(0x211)]()){!_0x3f5b90['has'](_0x3f933c)&&_0x58ba3e[_0x195d59(0x257)]({'path':'flowJson.nodes.'+_0x3f933c,'message':_0x195d59(0x24f)});}const _0x17d90a=_0x31473a[_0x195d59(0x20b)](_0x1686f5=>_0x3f5b90[_0x195d59(0x229)](_0x1686f5));if(!_0x17d90a){_0x58ba3e['push']({'path':_0x195d59(0x1b1),'message':_0x195d59(0x2d4)});return;}const _0x47dd97=new Set(),_0x1bdc05=_0x5a044b=>{const _0x182083=_0x195d59;if(_0x47dd97[_0x182083(0x229)](_0x5a044b))return;_0x47dd97[_0x182083(0x276)](_0x5a044b);for(const _0x14a7ee of _0x17cc61[_0x182083(0x2b3)](_0x5a044b)??[]){const _0x625074=resolveEdgeEndpoint(_0x14a7ee['source'],_0x14a7ee['sourceNodeId']);if(_0x625074&&_0x29ec0b[_0x182083(0x229)](_0x625074))_0x1bdc05(_0x625074);}};for(const _0x47f28b of _0x31473a){if(_0x29ec0b[_0x195d59(0x229)](_0x47f28b))_0x1bdc05(_0x47f28b);}for(const _0xb3273c of _0x3f5b90){!_0x47dd97['has'](_0xb3273c)&&_0x58ba3e[_0x195d59(0x257)]({'path':_0x195d59(0x1bd)+_0xb3273c,'message':_0x195d59(0x269)});}}function validateApprovalResults(_0x5df239,_0x5c9867,_0x1c5d84,_0x1aba14){const _0x2cdd70=a281_0xb8329f;if(_0x5c9867===0x0)return;const _0x3239b1=new Set(_0x1c5d84[_0x2cdd70(0x2a3)](_0x4b7d2=>_0x5df239[_0x2cdd70(0x2b3)](_0x4b7d2)?.[_0x2cdd70(0x1fd)])[_0x2cdd70(0x2fc)](_0x46075f=>typeof _0x46075f===_0x2cdd70(0x2a4)));for(const _0x143839 of[_0x2cdd70(0x28c),_0x2cdd70(0x20c)]){!_0x3239b1['has'](_0x143839)&&_0x1aba14[_0x2cdd70(0x257)]({'path':_0x2cdd70(0x2d2),'message':_0x2cdd70(0x241)+_0x143839+'.'});}}function validateScriptResultReferences(_0x4ffada,_0x46bdb2,_0x5a72d8,_0x4fa96f,_0x41de8b,_0x42ae96,_0x3d17d6){const _0x2e4bb0=a281_0xb8329f;if(_0x42ae96[_0x2e4bb0(0x2f8)]===0x0)return;const _0x3c192e=new Set(),_0x480e49=_0x3b9026=>{const _0x509ec0=_0x2e4bb0;if(!_0x3c192e[_0x509ec0(0x229)](_0x3b9026)&&_0x4ffada['has'](_0x3b9026)){_0x3c192e[_0x509ec0(0x276)](_0x3b9026);for(const _0x2a0bcf of _0x5a72d8[_0x509ec0(0x2b3)](_0x3b9026)??[]){const _0x3a0d66=resolveEdgeEndpoint(_0x2a0bcf[_0x509ec0(0x293)],_0x2a0bcf[_0x509ec0(0x1db)]);if(_0x3a0d66)_0x480e49(_0x3a0d66);}}};_0x480e49(_0x46bdb2);const _0x58cd70=new Map();for(const _0x365171 of _0x3c192e){_0x58cd70['set'](_0x365171,_0x365171===_0x46bdb2?new Set([_0x46bdb2]):new Set(_0x3c192e));}let _0x449f2d=!![];while(_0x449f2d){_0x449f2d=![];for(const _0x1fad13 of _0x3c192e){if(_0x1fad13===_0x46bdb2)continue;const _0xb95dc9=(_0x4fa96f[_0x2e4bb0(0x2b3)](_0x1fad13)??[])[_0x2e4bb0(0x2a3)](_0x3437f5=>resolveEdgeEndpoint(_0x3437f5[_0x2e4bb0(0x1fc)],_0x3437f5[_0x2e4bb0(0x300)]))['filter'](_0x1bbb38=>Boolean(_0x1bbb38&&_0x3c192e['has'](_0x1bbb38)));if(_0xb95dc9[_0x2e4bb0(0x29f)]===0x0)continue;const _0x262e12=new Set(_0x58cd70[_0x2e4bb0(0x2b3)](_0xb95dc9[0x0])??[]);for(const _0x3a6f2a of _0xb95dc9['slice'](0x1)){const _0xaf2494=_0x58cd70[_0x2e4bb0(0x2b3)](_0x3a6f2a)??new Set();for(const _0x34cd8b of _0x262e12){if(!_0xaf2494['has'](_0x34cd8b))_0x262e12[_0x2e4bb0(0x2e8)](_0x34cd8b);}}_0x262e12[_0x2e4bb0(0x276)](_0x1fad13);const _0x48a028=_0x58cd70['get'](_0x1fad13);!setsEqual(_0x48a028,_0x262e12)&&(_0x58cd70[_0x2e4bb0(0x1bf)](_0x1fad13,_0x262e12),_0x449f2d=!![]);}}for(const [_0x335866,_0xe08285]of _0x5a72d8){const _0x59a8dc=_0x58cd70[_0x2e4bb0(0x2b3)](_0x335866);if(!_0x59a8dc)continue;for(const _0x4f3ea7 of _0xe08285){if(_0x4f3ea7[_0x2e4bb0(0x256)]!==_0x2e4bb0(0x279)||typeof _0x4f3ea7[_0x2e4bb0(0x2f2)]!==_0x2e4bb0(0x2a4))continue;for(const [_0x187242,_0x4231ed]of _0x42ae96){expressionReferencesVariable(_0x4f3ea7[_0x2e4bb0(0x2f2)],_0x187242)&&!_0x59a8dc[_0x2e4bb0(0x229)](_0x4231ed)&&_0x3d17d6[_0x2e4bb0(0x257)]({'path':(_0x41de8b['get'](_0x4f3ea7)??_0x2e4bb0(0x1b1))+_0x2e4bb0(0x260),'message':'Expression\x20references\x20SCRIPT\x20resultVariable\x20'+_0x187242+_0x2e4bb0(0x2c0)+_0x4231ed+_0x2e4bb0(0x2cf)+_0x335866+'.'});}}}}function expressionReferencesVariable(_0x135d73,_0x223a01){const _0xfa1f04=a281_0xb8329f,_0x444ad1=_0x223a01[_0xfa1f04(0x311)](/[.*+?^${}()|[\]\\]/g,_0xfa1f04(0x28d));return new RegExp(_0xfa1f04(0x226)+_0x444ad1+_0xfa1f04(0x212))[_0xfa1f04(0x2b1)](_0x135d73);}function resolveEffectiveResultVariable(_0x4a06e8,_0x144c85){const _0x4ac489=a281_0xb8329f;if(_0x4a06e8===undefined||_0x4a06e8===null||_0x144c85&&_0x4a06e8==='')return DEFAULT_SCRIPT_RESULT_VARIABLE;if(typeof _0x4a06e8!==_0x4ac489(0x2a4)||!VARIABLE_PATTERN[_0x4ac489(0x2b1)](_0x4a06e8)||RESERVED_RESULT_VARIABLES[_0x4ac489(0x229)](_0x4a06e8)||_0x4a06e8['startsWith'](_0x4ac489(0x284)))return undefined;return _0x4a06e8;}function registerResultVariableOwner(_0x15a349,_0x479115,_0x5809be,_0x1a0a4a){const _0x4f5dba=a281_0xb8329f;if(_0x15a349['has'](_0x479115)){_0x1a0a4a[_0x4f5dba(0x257)]({'path':_0x4f5dba(0x2d2),'message':'Duplicate\x20resultVariable:\x20'+_0x479115+'.'});return;}_0x15a349['set'](_0x479115,_0x5809be);}function setsEqual(_0x59e82b,_0x4dfa1f){const _0xf2c870=a281_0xb8329f;return _0x59e82b['size']===_0x4dfa1f[_0xf2c870(0x2f8)]&&[..._0x59e82b][_0xf2c870(0x2f7)](_0x31e252=>_0x4dfa1f['has'](_0x31e252));}function isValidUserId(_0x10e759){const _0x12ad84=a281_0xb8329f;if(typeof _0x10e759===_0x12ad84(0x2a4))return _0x10e759[_0x12ad84(0x235)]()[_0x12ad84(0x29f)]>0x0;return Number[_0x12ad84(0x2b8)](_0x10e759)&&Number(_0x10e759)>0x0;}function resolveEdgeEndpoint(_0xc38ad7,_0x32906f){const _0x4e93d0=a281_0xb8329f;if(typeof _0xc38ad7==='string'&&_0xc38ad7[_0x4e93d0(0x235)]())return _0xc38ad7['trim']();if(typeof _0x32906f===_0x4e93d0(0x2a4)&&_0x32906f[_0x4e93d0(0x235)]())return _0x32906f[_0x4e93d0(0x235)]();return undefined;}function removeEmptyMetadata(_0x1a7c10,_0x42c3f5,_0x2b17c0,_0x2fb9a6){const _0x52fadf=a281_0xb8329f;if(Array['isArray'](_0x1a7c10)){_0x1a7c10[_0x52fadf(0x2de)]((_0x189a0,_0x31576f)=>removeEmptyMetadata(_0x189a0,_0x42c3f5+'['+_0x31576f+']',_0x2b17c0,_0x2fb9a6));return;}if(!isRecord(_0x1a7c10))return;for(const [_0x2b7d1b,_0x4994ff]of Object['entries'](_0x1a7c10)){const _0x1e0bce=_0x42c3f5+'.'+_0x2b7d1b;if(_0x2b7d1b===_0x52fadf(0x272)&&isEmptyJsonValue(_0x4994ff)){delete _0x1a7c10[_0x2b7d1b],_0x2fb9a6['push'](_0x1e0bce),_0x2b17c0[_0x52fadf(0x257)]({'code':_0x52fadf(0x1c8),'path':_0x1e0bce,'message':_0x1e0bce+_0x52fadf(0x249)});continue;}removeEmptyMetadata(_0x4994ff,_0x1e0bce,_0x2b17c0,_0x2fb9a6);}}function isEmptyJsonValue(_0x1927a9){const _0x5867ae=a281_0xb8329f;if(_0x1927a9===null||_0x1927a9===undefined)return!![];if(typeof _0x1927a9===_0x5867ae(0x2a4))return _0x1927a9[_0x5867ae(0x235)]()==='';if(Array[_0x5867ae(0x1d4)](_0x1927a9))return _0x1927a9[_0x5867ae(0x29f)]===0x0;return isRecord(_0x1927a9)&&Object[_0x5867ae(0x211)](_0x1927a9)[_0x5867ae(0x29f)]===0x0;}function isRecord(_0x23d333){const _0x922e1f=a281_0xb8329f;return typeof _0x23d333==='object'&&_0x23d333!==null&&!Array[_0x922e1f(0x1d4)](_0x23d333);}function cloneJsonValue(_0x3fb50d){const _0x4a8ad7=a281_0xb8329f;return JSON[_0x4a8ad7(0x2dc)](JSON[_0x4a8ad7(0x240)](_0x3fb50d));}export async function readFlowConfigFile(_0x4d6450){const _0x67a603=a281_0xb8329f,_0x5c699d=await readFile(resolve(_0x4d6450),'utf8');return JSON[_0x67a603(0x2dc)](_0x5c699d);}
|