@lovrabet/rabetbase-cli 2.5.4 → 2.5.5-beta.1
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.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- 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.js +1 -1
- package/lib/api/model-registry-file.js +1 -1
- package/lib/api/model-registry-scaffold.js +1 -1
- package/lib/api/model-source.js +1 -1
- 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/detail.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.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.js +1 -1
- package/lib/commands/dataset/cross-relation-delete.js +1 -1
- package/lib/commands/dataset/cross-relation-list.js +1 -1
- package/lib/commands/dataset/cross-relation-shared.js +1 -1
- package/lib/commands/dataset/cross-relation-update.js +1 -1
- 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/path.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/subapp-assets.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/subapp-assets-status.js +1 -1
- package/lib/commands/menu/subapp-assets-update.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.js +1 -1
- 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.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/feishu-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.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.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- 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.js +1 -1
- 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.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.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/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.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 +2 -1
- package/skills/rabetbase/SKILL.md +1 -1
- package/skills/rabetbase-page-generation/SKILL.md +35 -0
- package/skills/rabetbase-page-generation/references/component-baseline.md +18 -0
- package/skills/rabetbase-page-generation/references/generation.md +77 -0
- package/skills/rabetbase-page-generation/templates/onepage/build.mjs +63 -0
- package/skills/rabetbase-page-generation/templates/onepage/create/README.md +20 -0
- package/skills/rabetbase-page-generation/templates/onepage/create/index.jsx +4 -0
- package/skills/rabetbase-page-generation/templates/onepage/create/preview.png +0 -0
- package/skills/rabetbase-page-generation/templates/onepage/detail/README.md +20 -0
- package/skills/rabetbase-page-generation/templates/onepage/detail/index.jsx +194 -0
- package/skills/rabetbase-page-generation/templates/onepage/detail/preview.png +0 -0
- package/skills/rabetbase-page-generation/templates/onepage/list/README.md +20 -0
- package/skills/rabetbase-page-generation/templates/onepage/list/index.jsx +717 -0
- package/skills/rabetbase-page-generation/templates/onepage/list/preview.png +0 -0
- package/skills/rabetbase-page-generation/templates/onepage/shared/editor.jsx +395 -0
- package/skills/rabetbase-page-generation/templates/onepage/shared/model.js +141 -0
- package/skills/rabetbase-page-generation/templates/onepage/shared/page.css +377 -0
- package/skills/rabetbase-page-generation/templates/onepage/shared/record-layout.jsx +90 -0
- package/skills/rabetbase-page-generation/templates/onepage/shared/responsive.jsx +70 -0
- package/skills/rabetbase-page-generation/templates/onepage/update/README.md +21 -0
- package/skills/rabetbase-page-generation/templates/onepage/update/index.jsx +4 -0
- package/skills/rabetbase-page-generation/templates/onepage/update/preview.png +0 -0
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x3ec328,_0x38c47c){const _0x430972=a281_0x3254,_0x52f2bc=_0x3ec328();while(!![]){try{const _0x4a1f84=-parseInt(_0x430972(0xe8))/0x1*(-parseInt(_0x430972(0xde))/0x2)+-parseInt(_0x430972(0xf5))/0x3+parseInt(_0x430972(0xc3))/0x4+parseInt(_0x430972(0xda))/0x5+parseInt(_0x430972(0xef))/0x6+-parseInt(_0x430972(0xdc))/0x7+-parseInt(_0x430972(0xd4))/0x8;if(_0x4a1f84===_0x38c47c)break;else _0x52f2bc['push'](_0x52f2bc['shift']());}catch(_0x3714cd){_0x52f2bc['push'](_0x52f2bc['shift']());}}}(a281_0x1798,0x5f40d));import{CliError}from'../../errors.js';export function trackedHookDirectoryMappings(_0x512280){const _0x739556=a281_0x3254,_0x2ebd00=[];for(const [_0x35b2d1,_0x9d174]of Object[_0x739556(0xd5)](_0x512280[_0x739556(0xd2)])){const [_0x5d56dd,_0x323a58]=_0x35b2d1[_0x739556(0xce)]('/');if(_0x5d56dd!=='HOOK'||!_0x323a58||!_0x9d174[_0x739556(0xcf)])continue;_0x2ebd00[_0x739556(0xe0)]({'alias':_0x323a58,'datasetCode':_0x9d174[_0x739556(0xcf)]});}return _0x2ebd00;}export function uniqueTrackedHookDirectoryByDataset(_0x5d7eba){const _0x49d464=a281_0x3254,_0x50a1de=new Map();for(const _0x38ae9d of trackedHookDirectoryMappings(_0x5d7eba)){const _0x2718a0=directoryIdentity(_0x38ae9d[_0x49d464(0xcf)]),_0x45b229=_0x50a1de['get'](_0x2718a0)??new Map();_0x45b229[_0x49d464(0xe7)](directoryIdentity(_0x38ae9d[_0x49d464(0xf1)]),_0x38ae9d[_0x49d464(0xf1)]),_0x50a1de[_0x49d464(0xe7)](_0x2718a0,_0x45b229);}const _0x565bb1=new Map();for(const [_0x275fb9,_0x78af73]of _0x50a1de){if(_0x78af73[_0x49d464(0xdd)]>0x1)throw hookDirectoryError(_0x49d464(0xd9),_0x49d464(0xea)+_0x275fb9+_0x49d464(0xeb)+[..._0x78af73['values']()][_0x49d464(0xcb)](',\x20')+'.',{'datasetCode':_0x275fb9,'directories':[..._0x78af73[_0x49d464(0xc8)]()]});_0x565bb1[_0x49d464(0xe7)](_0x275fb9,[..._0x78af73[_0x49d464(0xc8)]()][0x0]);}return _0x565bb1;}export function assertUnambiguousHookDirectoryMappings(_0x311def){const _0x5c97a9=a281_0x3254,_0x14dcdc=new Map();for(const {alias:_0x4c4187,datasetCode:_0x4caedc}of _0x311def){const _0x2489cf=directoryIdentity(_0x4c4187),_0x105c87=_0x14dcdc[_0x5c97a9(0xd0)](_0x2489cf)??new Set();_0x105c87['add'](_0x4caedc),_0x14dcdc[_0x5c97a9(0xe7)](_0x2489cf,_0x105c87);}for(const [_0x529434,_0x4f16fe]of _0x14dcdc){if(_0x4f16fe['size']>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS',_0x5c97a9(0xe1)+_0x529434+_0x5c97a9(0xca),{'directoryName':_0x529434,'datasetCodes':[..._0x4f16fe]});}}export function assertUnambiguousHookAliases(_0x455827){const _0x196ea7=a281_0x3254,_0x4eecba=[..._0x455827],_0x45dbb1=new Map(),_0x97c539=new Map();for(const {alias:_0x22111e,datasetCode:_0x4ed6b7}of _0x4eecba){const _0x18f960=directoryIdentity(_0x22111e),_0x3c70c0=directoryIdentity(_0x4ed6b7),_0x4db20c=_0x45dbb1['get'](_0x18f960)??new Set();_0x4db20c[_0x196ea7(0xcd)](_0x4ed6b7),_0x45dbb1['set'](_0x18f960,_0x4db20c);const _0xf33447=_0x97c539['get'](_0x3c70c0)??new Set();_0xf33447[_0x196ea7(0xcd)](_0x22111e),_0x97c539['set'](_0x3c70c0,_0xf33447);}for(const [_0x36419e,_0x557a13]of _0x45dbb1){if(_0x557a13[_0x196ea7(0xdd)]>0x1)throw hookDirectoryError('HOOK_ALIAS_AMBIGUOUS',_0x196ea7(0xed)+_0x36419e+_0x196ea7(0xca),{'alias':_0x36419e,'datasetCodes':[..._0x557a13]});}for(const [_0x30a228,_0x489dcc]of _0x97c539){if(_0x489dcc[_0x196ea7(0xdd)]>0x1)throw hookDirectoryError(_0x196ea7(0xf2),_0x196ea7(0xea)+_0x30a228+'\x22\x20has\x20multiple\x20SDK\x20aliases\x20and\x20has\x20no\x20unique\x20HOOK\x20directory.',{'datasetCode':_0x30a228,'aliases':[..._0x489dcc]});}}export function buildHookDirectoryIndexes(_0x46528c,_0x8efbb3=[]){const _0x4fd9e7=a281_0x3254,_0x57c013=[..._0x8efbb3];assertUnambiguousHookDirectoryMappings(_0x57c013['map'](([_0x1b03b0,_0x5de580])=>({'alias':_0x1b03b0,'datasetCode':_0x5de580})));const _0x854a7d=new Map(),_0x4ddaf4=new Map();for(const _0x4b1418 of _0x46528c){appendUnique(_0x854a7d,directoryIdentity(_0x4b1418[_0x4fd9e7(0xd7)]),_0x4b1418,_0x107904=>_0x107904[_0x4fd9e7(0xd7)]);}for(const [_0x267c65,_0x528a30]of _0x57c013){appendUnique(_0x4ddaf4,directoryIdentity(_0x267c65),_0x528a30,_0x25336e=>_0x25336e);}return{'datasetCodeToDatasets':_0x854a7d,'aliasToDatasetCodes':_0x4ddaf4};}export function resolvePushHookDirectory(_0xce70c9,_0x7053c4,_0x358c49){const _0x195b1e=a281_0x3254,_0x1fb9cb=directoryIdentity(_0xce70c9),_0x393b01=_0x358c49[_0x195b1e(0xc9)][_0x195b1e(0xd0)](_0x1fb9cb)??[],_0x2f70d1=_0x358c49['aliasToDatasetCodes'][_0x195b1e(0xd0)](_0x1fb9cb)??[],_0x1241ad=new Set([..._0x393b01[_0x195b1e(0xe9)](_0x1ab7fb=>_0x1ab7fb[_0x195b1e(0xd7)]),..._0x2f70d1]);if(_0x1241ad[_0x195b1e(0xdd)]>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS',_0x195b1e(0xe1)+_0xce70c9+_0x195b1e(0xe2),{'directoryName':_0xce70c9,'datasetCodes':[..._0x1241ad]});const _0x2be483=[..._0x1241ad][0x0];if(_0x2be483&&_0x7053c4?.['datasetCode']&&_0x2be483!==_0x7053c4[_0x195b1e(0xcf)])throw hookDirectoryError(_0x195b1e(0xd8),_0x195b1e(0xe1)+_0xce70c9+'\x22\x20changed\x20mapping\x20from\x20Dataset\x20\x22'+_0x7053c4['datasetCode']+_0x195b1e(0xdf)+_0x2be483+'\x22.',{'directoryName':_0xce70c9,'datasetCode':_0x2be483,'lockedDatasetCode':_0x7053c4[_0x195b1e(0xcf)]});const _0xaea957=_0x2be483?findDatasetByCode(_0x358c49,_0x2be483):undefined,_0x53be19=!!_0x2be483&&_0x2f70d1[_0x195b1e(0xe5)](_0x2be483);if(_0xaea957)return{'dataset':_0xaea957,'datasetCode':_0xaea957[_0x195b1e(0xd7)],..._0x53be19?{'alias':_0xce70c9}:{},'directoryProtocol':_0x53be19?_0x195b1e(0xf1):_0x195b1e(0xcf),'warnings':[]};const _0x888a0f=_0x7053c4?.[_0x195b1e(0xcf)];if(_0x888a0f){const _0x2754c7=findDatasetByCode(_0x358c49,_0x888a0f);if(_0x2754c7)return{'dataset':_0x2754c7,'datasetCode':_0x2754c7[_0x195b1e(0xd7)],..._0x7053c4['alias']?{'alias':_0x7053c4[_0x195b1e(0xf1)]}:{},'directoryProtocol':_0x7053c4[_0x195b1e(0xf1)]?_0x195b1e(0xf1):_0x195b1e(0xcf),'warnings':[]};}if(_0x2be483||_0x888a0f){const _0x746d79=_0x2be483??_0x888a0f;throw hookDirectoryError(_0x195b1e(0xe3),'HOOK\x20directory\x20\x22'+_0xce70c9+_0x195b1e(0xd6),{'directoryName':_0xce70c9,'datasetCode':_0x746d79});}throw hookDirectoryError(_0x195b1e(0xd1),_0x195b1e(0xc7)+_0xce70c9+'\x22\x20to\x20a\x20Dataset\x20alias\x20or\x20datasetCode.',{'directoryName':_0xce70c9});}function a281_0x1798(){const _0x7e7fd9=['code','HOOK_MAPPING_DRIFT','HOOK_DUPLICATE_DIRECTORIES','3706700TAGULE','Incomplete\x20HOOK\x20path:\x20','5202897NgXiJp','size','12ymSClK','\x22\x20to\x20\x22','push','HOOK\x20directory\x20\x22','\x22\x20collides\x20across\x20datasetCode\x20and\x20alias\x20namespaces.','HOOK_DATASET_NOT_FOUND','lockKey','includes','toLowerCase','set','67697GBSjZS','map','Dataset\x20\x22','\x22\x20has\x20multiple\x20tracked\x20HOOK\x20directories:\x20','message','SDK\x20alias\x20\x22','HOOK','1035666Tnmtht','Dataset\x20code\x20\x22','alias','HOOK_ALIAS_AMBIGUOUS','\x22\x20is\x20represented\x20by\x20multiple\x20HOOK\x20directories:\x20','type','169335zNRALu','NFC','2988584izFItu','name','HOOK_DATASET_CODE_AMBIGUOUS','normalize','Cannot\x20resolve\x20HOOK\x20directory\x20\x22','values','datasetCodeToDatasets','\x22\x20resolves\x20to\x20multiple\x20Datasets.','join','some','add','split','datasetCode','get','HOOK_DIRECTORY_UNRESOLVED','functions','\x22\x20differs\x20only\x20by\x20case\x20from\x20another\x20Dataset\x20code.','7019248JmSUxd','entries','\x22\x20points\x20to\x20a\x20Dataset\x20that\x20is\x20absent\x20from\x20current\x20platform\x20metadata.'];a281_0x1798=function(){return _0x7e7fd9;};return a281_0x1798();}export function preflightPushHookDirectories(_0x4b01a4,_0x2f22bb,_0x4205b0,_0x50d5fb){const _0x57bc9f=a281_0x3254,_0xf6e6d7=new Map(),_0x181548=new Map();for(const _0x3a4eae of _0x4b01a4){if(_0x3a4eae[_0x57bc9f(0xf4)]!==_0x57bc9f(0xee))continue;const _0x44492b=_0x3a4eae[_0x57bc9f(0xf1)];if(!_0x44492b)throw hookDirectoryError(_0x57bc9f(0xd1),_0x57bc9f(0xdb)+_0x3a4eae[_0x57bc9f(0xe4)],{'lockKey':_0x3a4eae[_0x57bc9f(0xe4)]});let _0x5b8b0e;try{_0x5b8b0e=resolvePushHookDirectory(_0x44492b,_0x2f22bb[_0x57bc9f(0xd2)][_0x3a4eae[_0x57bc9f(0xe4)]],_0x4205b0);}catch(_0x1ae17b){if(_0x50d5fb&&_0x1ae17b instanceof CliError&&[_0x57bc9f(0xe3),_0x57bc9f(0xd1)][_0x57bc9f(0xe5)](_0x1ae17b[_0x57bc9f(0xd7)])){_0x50d5fb[_0x57bc9f(0xe7)](_0x3a4eae[_0x57bc9f(0xe4)],_0x1ae17b[_0x57bc9f(0xec)]);continue;}throw _0x1ae17b;}_0xf6e6d7['set'](_0x3a4eae[_0x57bc9f(0xe4)],_0x5b8b0e);const _0x482f25=_0x181548[_0x57bc9f(0xd0)](_0x5b8b0e[_0x57bc9f(0xcf)])??new Set();_0x482f25[_0x57bc9f(0xcd)](_0x44492b),_0x181548[_0x57bc9f(0xe7)](_0x5b8b0e[_0x57bc9f(0xcf)],_0x482f25);}for(const [_0x3054d1,_0x1e0634]of _0x181548){if(_0x1e0634['size']>0x1)throw hookDirectoryError(_0x57bc9f(0xd9),_0x57bc9f(0xea)+_0x3054d1+_0x57bc9f(0xf3)+[..._0x1e0634][_0x57bc9f(0xcb)](',\x20')+'.',{'datasetCode':_0x3054d1,'directories':[..._0x1e0634]});}return _0xf6e6d7;}export function hookDirectoryError(_0x3f067f,_0x12e0ea,_0x317842){const _0x1a69c0=new CliError(_0x3f067f,0x2,_0x3f067f+':\x20'+_0x12e0ea);return _0x1a69c0['details']=_0x317842,_0x1a69c0;}function findDatasetByCode(_0x1cc408,_0x20f49f){const _0xd6b3cb=a281_0x3254,_0x9df8ed=_0x1cc408[_0xd6b3cb(0xc9)][_0xd6b3cb(0xd0)](directoryIdentity(_0x20f49f))??[];if(_0x9df8ed['length']>0x1)throw hookDirectoryError(_0xd6b3cb(0xc5),_0xd6b3cb(0xf0)+_0x20f49f+_0xd6b3cb(0xd3),{'datasetCode':_0x20f49f,'candidates':_0x9df8ed[_0xd6b3cb(0xe9)](datasetFact)});return _0x9df8ed[0x0];}function a281_0x3254(_0xb85f85,_0x3701ea){_0xb85f85=_0xb85f85-0xc3;const _0x17986f=a281_0x1798();let _0x3254ad=_0x17986f[_0xb85f85];return _0x3254ad;}function directoryIdentity(_0x529445){const _0x22bb4e=a281_0x3254;return _0x529445[_0x22bb4e(0xc6)](_0x22bb4e(0xf6))[_0x22bb4e(0xe6)]();}function appendUnique(_0x173887,_0x1b1071,_0x4aa76d,_0x26b77d){const _0x41ac62=a281_0x3254,_0x10f7d4=_0x173887[_0x41ac62(0xd0)](_0x1b1071)??[];!_0x10f7d4[_0x41ac62(0xcc)](_0x4c1372=>_0x26b77d(_0x4c1372)===_0x26b77d(_0x4aa76d))&&_0x10f7d4[_0x41ac62(0xe0)](_0x4aa76d),_0x173887[_0x41ac62(0xe7)](_0x1b1071,_0x10f7d4);}function datasetFact(_0x4549d1){const _0x4a3b07=a281_0x3254;return{'id':_0x4549d1['id'],'name':_0x4549d1[_0x4a3b07(0xc4)],'datasetCode':_0x4549d1[_0x4a3b07(0xd7)]};}
|
|
1
|
+
(function(_0x433641,_0x318cf5){const _0x199b11=a281_0x2614,_0x3b8433=_0x433641();while(!![]){try{const _0x41fb85=parseInt(_0x199b11(0x84))/0x1*(parseInt(_0x199b11(0x6b))/0x2)+-parseInt(_0x199b11(0x6d))/0x3*(parseInt(_0x199b11(0x68))/0x4)+-parseInt(_0x199b11(0x6a))/0x5*(parseInt(_0x199b11(0x91))/0x6)+-parseInt(_0x199b11(0x97))/0x7+parseInt(_0x199b11(0x7a))/0x8+parseInt(_0x199b11(0x92))/0x9*(parseInt(_0x199b11(0x93))/0xa)+parseInt(_0x199b11(0x95))/0xb;if(_0x41fb85===_0x318cf5)break;else _0x3b8433['push'](_0x3b8433['shift']());}catch(_0x3b8b29){_0x3b8433['push'](_0x3b8433['shift']());}}}(a281_0x5716,0xe6a88));import{CliError}from'../../errors.js';export function trackedHookDirectoryMappings(_0x4e1d68){const _0x51d314=a281_0x2614,_0x156f64=[];for(const [_0x5ba63b,_0x5667d5]of Object['entries'](_0x4e1d68[_0x51d314(0x90)])){const [_0x484e03,_0xca6577]=_0x5ba63b[_0x51d314(0x8b)]('/');if(_0x484e03!==_0x51d314(0x85)||!_0xca6577||!_0x5667d5[_0x51d314(0x86)])continue;_0x156f64[_0x51d314(0x8a)]({'alias':_0xca6577,'datasetCode':_0x5667d5[_0x51d314(0x86)]});}return _0x156f64;}export function uniqueTrackedHookDirectoryByDataset(_0x246ea0){const _0x1522e3=a281_0x2614,_0x6aad0a=new Map();for(const _0x25f0ce of trackedHookDirectoryMappings(_0x246ea0)){const _0x176dbc=directoryIdentity(_0x25f0ce['datasetCode']),_0x58abfa=_0x6aad0a[_0x1522e3(0x66)](_0x176dbc)??new Map();_0x58abfa['set'](directoryIdentity(_0x25f0ce[_0x1522e3(0x9c)]),_0x25f0ce[_0x1522e3(0x9c)]),_0x6aad0a[_0x1522e3(0x98)](_0x176dbc,_0x58abfa);}const _0x5e17de=new Map();for(const [_0xf04603,_0x3b1168]of _0x6aad0a){if(_0x3b1168[_0x1522e3(0x8d)]>0x1)throw hookDirectoryError(_0x1522e3(0x74),_0x1522e3(0x71)+_0xf04603+'\x22\x20has\x20multiple\x20tracked\x20HOOK\x20directories:\x20'+[..._0x3b1168[_0x1522e3(0x78)]()][_0x1522e3(0x64)](',\x20')+'.',{'datasetCode':_0xf04603,'directories':[..._0x3b1168['values']()]});_0x5e17de[_0x1522e3(0x98)](_0xf04603,[..._0x3b1168[_0x1522e3(0x78)]()][0x0]);}return _0x5e17de;}export function assertUnambiguousHookDirectoryMappings(_0x598b28){const _0x339724=a281_0x2614,_0x57e324=new Map();for(const {alias:_0x4accf4,datasetCode:_0x50e637}of _0x598b28){const _0x136d93=directoryIdentity(_0x4accf4),_0x211975=_0x57e324[_0x339724(0x66)](_0x136d93)??new Set();_0x211975[_0x339724(0x79)](_0x50e637),_0x57e324['set'](_0x136d93,_0x211975);}for(const [_0x9511d,_0x431ec2]of _0x57e324){if(_0x431ec2['size']>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS','HOOK\x20directory\x20\x22'+_0x9511d+_0x339724(0x8f),{'directoryName':_0x9511d,'datasetCodes':[..._0x431ec2]});}}function a281_0x2614(_0xdbd2db,_0x514f07){_0xdbd2db=_0xdbd2db-0x64;const _0x571615=a281_0x5716();let _0x26147a=_0x571615[_0xdbd2db];return _0x26147a;}function a281_0x5716(){const _0x593fa8=['\x22\x20changed\x20mapping\x20from\x20Dataset\x20\x22','normalize','push','split','\x22\x20has\x20multiple\x20SDK\x20aliases\x20and\x20has\x20no\x20unique\x20HOOK\x20directory.','size','details','\x22\x20resolves\x20to\x20multiple\x20Datasets.','functions','198mUpQIY','801135SCMVFL','170hsoLrB','HOOK_DIRECTORY_UNRESOLVED','22757669xCTzuc','code','4345397uwJkJT','set','lockKey','\x22\x20to\x20\x22','HOOK\x20directory\x20\x22','alias','join','toLowerCase','get','HOOK_DATASET_CODE_AMBIGUOUS','3811188hZQXQC','HOOK_DATASET_NOT_FOUND','185525SoFwZR','208422ibYaXe','HOOK_ALIAS_AMBIGUOUS','3hvpWOh','datasetCodeToDatasets','\x22\x20collides\x20across\x20datasetCode\x20and\x20alias\x20namespaces.','\x22\x20to\x20a\x20Dataset\x20alias\x20or\x20datasetCode.','Dataset\x20\x22','some','includes','HOOK_DUPLICATE_DIRECTORIES','length','map','SDK\x20alias\x20\x22','values','add','451712QjaAbl','\x22\x20differs\x20only\x20by\x20case\x20from\x20another\x20Dataset\x20code.','message','Dataset\x20code\x20\x22','name','Cannot\x20resolve\x20HOOK\x20directory\x20\x22','HOOK_MAPPING_DRIFT','\x22\x20points\x20to\x20a\x20Dataset\x20that\x20is\x20absent\x20from\x20current\x20platform\x20metadata.','aliasToDatasetCodes','NFC','1pezKNJ','HOOK','datasetCode','Incomplete\x20HOOK\x20path:\x20'];a281_0x5716=function(){return _0x593fa8;};return a281_0x5716();}export function assertUnambiguousHookAliases(_0x2555b8){const _0x4d739f=a281_0x2614,_0x52a527=[..._0x2555b8],_0xeb1834=new Map(),_0x33265d=new Map();for(const {alias:_0x1f7075,datasetCode:_0x1604d8}of _0x52a527){const _0x53150a=directoryIdentity(_0x1f7075),_0xe25e90=directoryIdentity(_0x1604d8),_0x2d385b=_0xeb1834['get'](_0x53150a)??new Set();_0x2d385b[_0x4d739f(0x79)](_0x1604d8),_0xeb1834[_0x4d739f(0x98)](_0x53150a,_0x2d385b);const _0x320711=_0x33265d['get'](_0xe25e90)??new Set();_0x320711['add'](_0x1f7075),_0x33265d[_0x4d739f(0x98)](_0xe25e90,_0x320711);}for(const [_0x20affb,_0x5d7944]of _0xeb1834){if(_0x5d7944[_0x4d739f(0x8d)]>0x1)throw hookDirectoryError(_0x4d739f(0x6c),_0x4d739f(0x77)+_0x20affb+_0x4d739f(0x8f),{'alias':_0x20affb,'datasetCodes':[..._0x5d7944]});}for(const [_0x246739,_0x198202]of _0x33265d){if(_0x198202['size']>0x1)throw hookDirectoryError(_0x4d739f(0x6c),_0x4d739f(0x71)+_0x246739+_0x4d739f(0x8c),{'datasetCode':_0x246739,'aliases':[..._0x198202]});}}export function buildHookDirectoryIndexes(_0x29d759,_0x25e660=[]){const _0x572318=a281_0x2614,_0x5aed8e=[..._0x25e660];assertUnambiguousHookDirectoryMappings(_0x5aed8e[_0x572318(0x76)](([_0x4b3149,_0x5d5061])=>({'alias':_0x4b3149,'datasetCode':_0x5d5061})));const _0x2b39f8=new Map(),_0x1f8e3c=new Map();for(const _0x22b90b of _0x29d759){appendUnique(_0x2b39f8,directoryIdentity(_0x22b90b[_0x572318(0x96)]),_0x22b90b,_0x4555af=>_0x4555af[_0x572318(0x96)]);}for(const [_0x27e82e,_0x286534]of _0x5aed8e){appendUnique(_0x1f8e3c,directoryIdentity(_0x27e82e),_0x286534,_0x2438ef=>_0x2438ef);}return{'datasetCodeToDatasets':_0x2b39f8,'aliasToDatasetCodes':_0x1f8e3c};}export function resolvePushHookDirectory(_0x3cdd1f,_0x7b606b,_0x58bc66){const _0x1d7070=a281_0x2614,_0x135393=directoryIdentity(_0x3cdd1f),_0xea4a32=_0x58bc66[_0x1d7070(0x6e)][_0x1d7070(0x66)](_0x135393)??[],_0x3b9b9f=_0x58bc66[_0x1d7070(0x82)][_0x1d7070(0x66)](_0x135393)??[],_0x3033de=new Set([..._0xea4a32[_0x1d7070(0x76)](_0x3b8203=>_0x3b8203[_0x1d7070(0x96)]),..._0x3b9b9f]);if(_0x3033de['size']>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS',_0x1d7070(0x9b)+_0x3cdd1f+_0x1d7070(0x6f),{'directoryName':_0x3cdd1f,'datasetCodes':[..._0x3033de]});const _0x6d8506=[..._0x3033de][0x0];if(_0x6d8506&&_0x7b606b?.[_0x1d7070(0x86)]&&_0x6d8506!==_0x7b606b[_0x1d7070(0x86)])throw hookDirectoryError(_0x1d7070(0x80),'HOOK\x20directory\x20\x22'+_0x3cdd1f+_0x1d7070(0x88)+_0x7b606b[_0x1d7070(0x86)]+_0x1d7070(0x9a)+_0x6d8506+'\x22.',{'directoryName':_0x3cdd1f,'datasetCode':_0x6d8506,'lockedDatasetCode':_0x7b606b[_0x1d7070(0x86)]});const _0x56e06c=_0x6d8506?findDatasetByCode(_0x58bc66,_0x6d8506):undefined,_0x4bc8d3=!!_0x6d8506&&_0x3b9b9f[_0x1d7070(0x73)](_0x6d8506);if(_0x56e06c)return{'dataset':_0x56e06c,'datasetCode':_0x56e06c['code'],..._0x4bc8d3?{'alias':_0x3cdd1f}:{},'directoryProtocol':_0x4bc8d3?_0x1d7070(0x9c):'datasetCode','warnings':[]};const _0x4814cb=_0x7b606b?.[_0x1d7070(0x86)];if(_0x4814cb){const _0x396937=findDatasetByCode(_0x58bc66,_0x4814cb);if(_0x396937)return{'dataset':_0x396937,'datasetCode':_0x396937['code'],..._0x7b606b['alias']?{'alias':_0x7b606b[_0x1d7070(0x9c)]}:{},'directoryProtocol':_0x7b606b['alias']?_0x1d7070(0x9c):'datasetCode','warnings':[]};}if(_0x6d8506||_0x4814cb){const _0x24ed95=_0x6d8506??_0x4814cb;throw hookDirectoryError(_0x1d7070(0x69),_0x1d7070(0x9b)+_0x3cdd1f+_0x1d7070(0x81),{'directoryName':_0x3cdd1f,'datasetCode':_0x24ed95});}throw hookDirectoryError(_0x1d7070(0x94),_0x1d7070(0x7f)+_0x3cdd1f+_0x1d7070(0x70),{'directoryName':_0x3cdd1f});}export function preflightPushHookDirectories(_0x118a78,_0x5c4957,_0xc2b0fe,_0x11579c){const _0x4430c8=a281_0x2614,_0xfce598=new Map(),_0x5d4bfa=new Map();for(const _0x44f5fa of _0x118a78){if(_0x44f5fa['type']!==_0x4430c8(0x85))continue;const _0x220e2b=_0x44f5fa[_0x4430c8(0x9c)];if(!_0x220e2b)throw hookDirectoryError(_0x4430c8(0x94),_0x4430c8(0x87)+_0x44f5fa[_0x4430c8(0x99)],{'lockKey':_0x44f5fa['lockKey']});let _0x173e4d;try{_0x173e4d=resolvePushHookDirectory(_0x220e2b,_0x5c4957[_0x4430c8(0x90)][_0x44f5fa[_0x4430c8(0x99)]],_0xc2b0fe);}catch(_0x4d2753){if(_0x11579c&&_0x4d2753 instanceof CliError&&[_0x4430c8(0x69),_0x4430c8(0x94)][_0x4430c8(0x73)](_0x4d2753['code'])){_0x11579c['set'](_0x44f5fa[_0x4430c8(0x99)],_0x4d2753[_0x4430c8(0x7c)]);continue;}throw _0x4d2753;}_0xfce598['set'](_0x44f5fa[_0x4430c8(0x99)],_0x173e4d);const _0x561d84=_0x5d4bfa[_0x4430c8(0x66)](_0x173e4d[_0x4430c8(0x86)])??new Set();_0x561d84[_0x4430c8(0x79)](_0x220e2b),_0x5d4bfa[_0x4430c8(0x98)](_0x173e4d[_0x4430c8(0x86)],_0x561d84);}for(const [_0xaf10d1,_0x4ad6ab]of _0x5d4bfa){if(_0x4ad6ab[_0x4430c8(0x8d)]>0x1)throw hookDirectoryError(_0x4430c8(0x74),'Dataset\x20\x22'+_0xaf10d1+'\x22\x20is\x20represented\x20by\x20multiple\x20HOOK\x20directories:\x20'+[..._0x4ad6ab][_0x4430c8(0x64)](',\x20')+'.',{'datasetCode':_0xaf10d1,'directories':[..._0x4ad6ab]});}return _0xfce598;}export function hookDirectoryError(_0x28421f,_0x38c710,_0x218ffe){const _0x1ea6ac=a281_0x2614,_0x32c36c=new CliError(_0x28421f,0x2,_0x28421f+':\x20'+_0x38c710);return _0x32c36c[_0x1ea6ac(0x8e)]=_0x218ffe,_0x32c36c;}function findDatasetByCode(_0x1ecd34,_0x2863da){const _0x1e7aab=a281_0x2614,_0x1c249f=_0x1ecd34[_0x1e7aab(0x6e)][_0x1e7aab(0x66)](directoryIdentity(_0x2863da))??[];if(_0x1c249f[_0x1e7aab(0x75)]>0x1)throw hookDirectoryError(_0x1e7aab(0x67),_0x1e7aab(0x7d)+_0x2863da+_0x1e7aab(0x7b),{'datasetCode':_0x2863da,'candidates':_0x1c249f[_0x1e7aab(0x76)](datasetFact)});return _0x1c249f[0x0];}function directoryIdentity(_0x491c68){const _0x220c00=a281_0x2614;return _0x491c68[_0x220c00(0x89)](_0x220c00(0x83))[_0x220c00(0x65)]();}function appendUnique(_0x5398f7,_0x3273a9,_0x481666,_0x41ec1b){const _0x4c0ebc=a281_0x2614,_0x4d4c36=_0x5398f7['get'](_0x3273a9)??[];!_0x4d4c36[_0x4c0ebc(0x72)](_0x57fb35=>_0x41ec1b(_0x57fb35)===_0x41ec1b(_0x481666))&&_0x4d4c36[_0x4c0ebc(0x8a)](_0x481666),_0x5398f7[_0x4c0ebc(0x98)](_0x3273a9,_0x4d4c36);}function datasetFact(_0x182a87){const _0x2bb3b6=a281_0x2614;return{'id':_0x182a87['id'],'name':_0x182a87[_0x2bb3b6(0x7e)],'datasetCode':_0x182a87[_0x2bb3b6(0x96)]};}
|
package/lib/core/bff/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x42b2cc,_0xa85951){const _0x512ca0=a282_0xf6c5,_0x9ccfbe=_0x42b2cc();while(!![]){try{const _0x44eb3d=parseInt(_0x512ca0(0xec))/0x1*(-parseInt(_0x512ca0(0xfc))/0x2)+-parseInt(_0x512ca0(0xf5))/0x3+parseInt(_0x512ca0(0xfa))/0x4+parseInt(_0x512ca0(0xf9))/0x5*(parseInt(_0x512ca0(0xf8))/0x6)+parseInt(_0x512ca0(0xf1))/0x7+parseInt(_0x512ca0(0xed))/0x8+parseInt(_0x512ca0(0x100))/0x9*(-parseInt(_0x512ca0(0xff))/0xa);if(_0x44eb3d===_0xa85951)break;else _0x9ccfbe['push'](_0x9ccfbe['shift']());}catch(_0x43967f){_0x9ccfbe['push'](_0x9ccfbe['shift']());}}}(a282_0x4ecb,0xb477e));function a282_0xf6c5(_0x5eff67,_0x2418b8){_0x5eff67=_0x5eff67-0xea;const _0x4ecbf6=a282_0x4ecb();let _0xf6c522=_0x4ecbf6[_0x5eff67];return _0xf6c522;}import{mkdir,readFile,writeFile}from'node:fs/promises';function a282_0x4ecb(){const _0x4e454e=['lastSync','parse','ENOENT','3885138ZMDSJW','\x22.\x20','functions','12qWymRl','2226795NRcdZn','5710964sCiwvo','apps','2402392MHBxxg','object','Check\x20.rabetbase/bff.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','50TTeAeJ','538047YzIGpG','scriptsRoot','stringify','1ACNikX','4810856vIrzrZ','Failed\x20to\x20read\x20Backend\x20Function\x20lock\x20file:\x20','code','utf8','4301773eQfyeN'];a282_0x4ecb=function(){return _0x4e454e;};return a282_0x4ecb();}import{dirname}from'node:path';export function createEmptyBffLock(){return{'apps':{}};}export function ensureLockScope(_0x3dd525,_0x595bfc,_0x11982b,_0x556155){const _0xe8075a=a282_0xf6c5,_0x16413={'apps':_0x3dd525[_0xe8075a(0xfb)]&&typeof _0x3dd525[_0xe8075a(0xfb)]==='object'?_0x3dd525[_0xe8075a(0xfb)]:{}};let _0x3f3427=_0x16413['apps'][_0x595bfc];if(!_0x3f3427)return _0x3f3427={'scriptsRoot':_0x11982b,'lastSync':'','functions':{}},_0x16413['apps'][_0x595bfc]=_0x3f3427,{'lockData':_0x16413,'appLock':_0x3f3427};if(!_0x3f3427[_0xe8075a(0xea)])_0x3f3427[_0xe8075a(0xea)]=_0x11982b;else{if(_0x3f3427[_0xe8075a(0xea)]!==_0x11982b)throw new Error(_0x556155+':\x20scriptsRoot\x20mismatch\x20—\x20'+('current\x20\x22'+_0x11982b+'\x22\x20vs\x20lock\x20\x22'+_0x3f3427[_0xe8075a(0xea)]+_0xe8075a(0xf6))+_0xe8075a(0xfe));}return!_0x3f3427[_0xe8075a(0xf7)]&&(_0x3f3427[_0xe8075a(0xf7)]={}),!_0x3f3427[_0xe8075a(0xf2)]&&(_0x3f3427[_0xe8075a(0xf2)]=''),{'lockData':_0x16413,'appLock':_0x3f3427};}export async function readBffLockFile(_0x4388f5){const _0x20fcf0=a282_0xf6c5;try{const _0x2d1f24=await readFile(_0x4388f5,_0x20fcf0(0xf0)),_0x51ab89=JSON[_0x20fcf0(0xf3)](_0x2d1f24);return{'apps':_0x51ab89[_0x20fcf0(0xfb)]&&typeof _0x51ab89[_0x20fcf0(0xfb)]===_0x20fcf0(0xfd)?_0x51ab89[_0x20fcf0(0xfb)]:{}};}catch(_0x1caf6f){if(_0x1caf6f[_0x20fcf0(0xef)]===_0x20fcf0(0xf4))return null;throw new Error(_0x20fcf0(0xee)+String(_0x1caf6f));}}export async function writeBffLockFile(_0x18467b,_0x18e65a){const _0x5e7c7a=a282_0xf6c5;await mkdir(dirname(_0x18467b),{'recursive':!![]}),await writeFile(_0x18467b,JSON[_0x5e7c7a(0xeb)](_0x18e65a,null,0x2),'utf8');}
|
package/lib/core/bff/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a284_0x284558=a284_0x5875;function a284_0x50b7(){const _0x275df5=['3285192WzPleL','TODO:\x20补充脚本功能描述','entries','39288wJBesC','operationType','replace','some','functionNode','9xXeSgF','split','13504964yGRVUF','6132340cEmtPy','test','1184793hLhTKY','startsWith','toLowerCase','before','remoteId','alias','497WNgpLR','10DEooQj','22uuizIL','4717448wceJmG','toUpperCase','match','after','31748XNZTBN','trim','datasetCode'];a284_0x50b7=function(){return _0x275df5;};return a284_0x50b7();}(function(_0x540685,_0x2ba9dc){const _0x627669=a284_0x5875,_0x27f15b=_0x540685();while(!![]){try{const _0xf984bd=-parseInt(_0x627669(0x1c6))/0x1*(parseInt(_0x627669(0x1cb))/0x2)+parseInt(_0x627669(0x1be))/0x3+parseInt(_0x627669(0x1b1))/0x4+parseInt(_0x627669(0x1bc))/0x5+parseInt(_0x627669(0x1b4))/0x6*(parseInt(_0x627669(0x1c4))/0x7)+parseInt(_0x627669(0x1c7))/0x8*(-parseInt(_0x627669(0x1b9))/0x9)+-parseInt(_0x627669(0x1c5))/0xa*(parseInt(_0x627669(0x1bb))/0xb);if(_0xf984bd===_0x2ba9dc)break;else _0x27f15b['push'](_0x27f15b['shift']());}catch(_0x4b49f7){_0x27f15b['push'](_0x27f15b['shift']());}}}(a284_0x50b7,0xb4e6c));export const DEFAULT_BFF_SCRIPT_DESCRIPTION=a284_0x284558(0x1b2);const LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION='TODO:\x20add\x20script\x20description';function a284_0x5875(_0x4839df,_0x198262){_0x4839df=_0x4839df-0x1af;const _0x50b7a1=a284_0x50b7();let _0x587536=_0x50b7a1[_0x4839df];return _0x587536;}export function snakeToCamel(_0x578259){const _0x134797=a284_0x284558;return _0x578259[_0x134797(0x1c0)]()[_0x134797(0x1b6)](/_([a-z])/g,(_0x562a36,_0xee404b)=>_0xee404b[_0x134797(0x1c8)]());}export function findHookLocationByRemoteId(_0x375000,_0xfa37f3){const _0x5562cd=a284_0x284558;if(!_0xfa37f3)return undefined;for(const [_0x4cba7b,_0x50149b]of Object[_0x5562cd(0x1b3)](_0x375000)){if(_0x50149b[_0x5562cd(0x1c2)]===_0xfa37f3&&_0x50149b[_0x5562cd(0x1b0)]&&_0x50149b[_0x5562cd(0x1b5)]&&_0x50149b[_0x5562cd(0x1b8)]){const _0x144d7e=_0x4cba7b[_0x5562cd(0x1ba)]('/')[0x1];return{'alias':_0x144d7e||_0x50149b[_0x5562cd(0x1c3)],'datasetCode':_0x50149b[_0x5562cd(0x1b0)],'operationType':_0x50149b[_0x5562cd(0x1b5)],'functionNode':_0x50149b[_0x5562cd(0x1b8)]};}}return undefined;}export function extractScriptDescription(_0x34f748){const _0x5b6368=a284_0x284558,_0x23b77f=_0x34f748[_0x5b6368(0x1c9)](/^\s*\/\*\*([\s\S]*?)\*\//);if(!_0x23b77f?.[0x1])return undefined;const _0x44b3e3=_0x23b77f[0x1],_0x5ceb4b=_0x4eb01c=>{const _0x1ab945=_0x5b6368,_0x3f43d1=_0x4eb01c?.[_0x1ab945(0x1af)]();if(!_0x3f43d1||_0x3f43d1===DEFAULT_BFF_SCRIPT_DESCRIPTION||_0x3f43d1===LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION)return undefined;return _0x3f43d1;},_0x4884fa=_0x44b3e3['match'](/^\s*\*\s*\[\s*脚本描述\s*]\s*(.+)$/m);if(_0x4884fa)return _0x5ceb4b(_0x4884fa[0x1]);const _0xd79a06=_0x44b3e3['split'](/\r?\n/)['map'](_0x158889=>_0x158889[_0x5b6368(0x1b6)](/^\s*\*\s?/,'')['trim']()),_0xdfb03a=_0xd79a06[_0x5b6368(0x1b7)](_0x111eba=>/^\[\s*脚本类型\s*]\s*\S+/[_0x5b6368(0x1bd)](_0x111eba))&&_0xd79a06[_0x5b6368(0x1b7)](_0x391b95=>/^\[\s*脚本名称\s*]\s*\S+/['test'](_0x391b95));if(!_0xdfb03a)return undefined;for(const _0x161600 of _0xd79a06){if(!_0x161600||_0x161600[_0x5b6368(0x1bf)]('@')||/^\[[^\]]+]\s*/[_0x5b6368(0x1bd)](_0x161600))continue;return _0x5ceb4b(_0x161600);}return undefined;}export function isValidBffFunctionName(_0x535ea6){const _0x2bfd63=a284_0x284558;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0x2bfd63(0x1bd)](_0x535ea6);}export function normalizeHookFunctionNode(_0x4ed09e){const _0x269c0f=a284_0x284558;if(!_0x4ed09e)return undefined;const _0x28e54a=_0x4ed09e[_0x269c0f(0x1af)]()[_0x269c0f(0x1c0)]();if(_0x28e54a===_0x269c0f(0x1c1)||_0x28e54a===_0x269c0f(0x1ca))return _0x28e54a;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a285_0x34d172=a285_0x39cc;function a285_0x2464(){const _0x360f42=['7238010ECDUXo','/smartapi/cross-db-relation/update','4PUbTuZ','/smartapi/cross-db-relation/query','636036VZhKXz','1919309CDDnqO','/smartapi/cross-db-relation/create','984882OhxDek','3379023klYNdG','2203596fEgENB','/smartapi/cross-db-relation/delete','1099575zwIupK','48opqhYP'];a285_0x2464=function(){return _0x360f42;};return a285_0x2464();}(function(_0x24b176,_0x380f5b){const _0x524363=a285_0x39cc,_0x560d60=_0x24b176();while(!![]){try{const _0xa7c845=-parseInt(_0x524363(0x191))/0x1+parseInt(_0x524363(0x186))/0x2+parseInt(_0x524363(0x18e))/0x3*(-parseInt(_0x524363(0x18c))/0x4)+parseInt(_0x524363(0x188))/0x5+-parseInt(_0x524363(0x18a))/0x6+parseInt(_0x524363(0x18f))/0x7*(parseInt(_0x524363(0x189))/0x8)+parseInt(_0x524363(0x192))/0x9;if(_0xa7c845===_0x380f5b)break;else _0x560d60['push'](_0x560d60['shift']());}catch(_0x1ceae6){_0x560d60['push'](_0x560d60['shift']());}}}(a285_0x2464,0xe542d));function a285_0x39cc(_0x53e203,_0x427e58){_0x53e203=_0x53e203-0x186;const _0x2464e0=a285_0x2464();let _0x39cc28=_0x2464e0[_0x53e203];return _0x39cc28;}export const CROSS_DB_RELATION_PATHS={'list':a285_0x34d172(0x18d),'create':a285_0x34d172(0x190),'update':a285_0x34d172(0x18b),'delete':a285_0x34d172(0x187)};
|
package/lib/core/db-resolver.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a286_0x1a9b(){const _0x4f78f4=['db-','No\x20database\x20matching\x20\x22','1560836JbTcmi','.\x20Be\x20more\x20specific.','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','10712lmDoUU','has','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','map','98PBkwUo','\x22.\x20Available:\x20','length','11gIRmWA','join','7317SjJPIf','dbId','\x22\x20under\x20app\x20\x22','\x22\x20matches\x20multiple\x20databases:\x20','get','9uFzvqX','dbtableConfig','5843887ETXaVa','find','4152810muanIG','entries','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','isNaN','toLowerCase','11293730VKqAmg','22214rxwDYB','filter','set','dbName','3288635yqVeah'];a286_0x1a9b=function(){return _0x4f78f4;};return a286_0x1a9b();}(function(_0x2b0533,_0x35ab9c){const _0x58ad4d=a286_0x5335,_0x132568=_0x2b0533();while(!![]){try{const _0xa2786c=parseInt(_0x58ad4d(0xed))/0x1*(-parseInt(_0x58ad4d(0xfb))/0x2)+-parseInt(_0x58ad4d(0xe3))/0x3*(-parseInt(_0x58ad4d(0xf4))/0x4)+parseInt(_0x58ad4d(0xf1))/0x5+-parseInt(_0x58ad4d(0xe7))/0x6+parseInt(_0x58ad4d(0xe5))/0x7+parseInt(_0x58ad4d(0xf7))/0x8*(parseInt(_0x58ad4d(0x100))/0x9)+-parseInt(_0x58ad4d(0xec))/0xa*(parseInt(_0x58ad4d(0xfe))/0xb);if(_0xa2786c===_0x35ab9c)break;else _0x132568['push'](_0x132568['shift']());}catch(_0x59bdf3){_0x132568['push'](_0x132568['shift']());}}}(a286_0x1a9b,0xcd850));import{listDatasets}from'../core/api-client.js';const cache=new Map();export async function listDatabases(_0x35fa41){const _0x586d8a=a286_0x5335;if(cache[_0x586d8a(0xf8)](_0x35fa41))return cache[_0x586d8a(0xe2)](_0x35fa41);const _0x559078=await listDatasets(_0x35fa41),_0x41c5c9=new Map();for(const _0x22fa5b of _0x559078){const _0x24d57d=_0x22fa5b[_0x586d8a(0xe4)];_0x24d57d?.[_0x586d8a(0x101)]!=null&&_0x41c5c9[_0x586d8a(0xef)](_0x24d57d[_0x586d8a(0x101)],_0x24d57d[_0x586d8a(0xf0)]??_0x586d8a(0xf2)+_0x24d57d['dbId']);}const _0x41caba=[..._0x41c5c9[_0x586d8a(0xe8)]()][_0x586d8a(0xfa)](([_0x3ebbf0,_0xe274e5])=>({'dbId':_0x3ebbf0,'dbName':_0xe274e5}));return cache[_0x586d8a(0xef)](_0x35fa41,_0x41caba),_0x41caba;}export async function resolveDb(_0x4fc5da,_0x5b7672){const _0x26c9a5=a286_0x5335,_0x4d2353=await listDatabases(_0x4fc5da);if(_0x4d2353[_0x26c9a5(0xfd)]===0x0)return{'resolved':[],'error':_0x26c9a5(0xf9)+_0x4fc5da+_0x26c9a5(0xf6)};if(!_0x5b7672)return{'resolved':_0x4d2353};const _0xb854ec=Number(_0x5b7672);if(!Number[_0x26c9a5(0xea)](_0xb854ec)){const _0x484e9f=_0x4d2353[_0x26c9a5(0xe6)](_0xef84aa=>_0xef84aa[_0x26c9a5(0x101)]===_0xb854ec);if(_0x484e9f)return{'resolved':[_0x484e9f]};}const _0x68dcec=_0x5b7672[_0x26c9a5(0xeb)](),_0x59c910=_0x4d2353[_0x26c9a5(0xee)](_0x1b0198=>_0x1b0198[_0x26c9a5(0xf0)][_0x26c9a5(0xeb)]()['includes'](_0x68dcec));if(_0x59c910[_0x26c9a5(0xfd)]>0x0)return{'resolved':_0x59c910};const _0x30337e=_0x4d2353[_0x26c9a5(0xfa)](_0xe648b7=>_0xe648b7['dbName']+'\x20('+_0xe648b7['dbId']+')')[_0x26c9a5(0xff)](',\x20');return{'resolved':[],'error':_0x26c9a5(0xf3)+_0x5b7672+_0x26c9a5(0xe0)+_0x4fc5da+_0x26c9a5(0xfc)+_0x30337e+_0x26c9a5(0xe9)};}function a286_0x5335(_0x5232d5,_0x24079c){_0x5232d5=_0x5232d5-0xe0;const _0x1a9bdb=a286_0x1a9b();let _0x533590=_0x1a9bdb[_0x5232d5];return _0x533590;}export async function resolveOneDb(_0xfa0b9f,_0x157fe7){const _0x52918d=a286_0x5335,{resolved:_0x5fc7ce,error:_0x397022}=await resolveDb(_0xfa0b9f,_0x157fe7);if(_0x397022)return{'db':null,'error':_0x397022};if(_0x5fc7ce['length']===0x1)return{'db':_0x5fc7ce[0x0]};if(!_0x157fe7){const _0xbd607c=_0x5fc7ce[_0x52918d(0xfa)](_0xe97334=>_0xe97334[_0x52918d(0xf0)]+'\x20('+_0xe97334[_0x52918d(0x101)]+')')[_0x52918d(0xff)](',\x20');return{'db':null,'error':'Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20'+_0xbd607c};}const _0x23163a=_0x5fc7ce[_0x52918d(0xfa)](_0x26fae1=>_0x26fae1[_0x52918d(0xf0)]+'\x20('+_0x26fae1['dbId']+')')['join'](',\x20');return{'db':null,'error':'\x22'+_0x157fe7+_0x52918d(0xe1)+_0x23163a+_0x52918d(0xf5)};}export async function getDbName(_0x14de1f,_0x7adda1){const _0x29e52b=a286_0x5335,_0x5064c7=await listDatabases(_0x14de1f);return _0x5064c7[_0x29e52b(0xe6)](_0x1e9bb3=>_0x1e9bb3[_0x29e52b(0x101)]===_0x7adda1)?.[_0x29e52b(0xf0)];}
|
package/lib/core/flow-config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a287_0x571368=a287_0x2b53;(function(_0x349b65,_0x45948c){const _0x598157=a287_0x2b53,_0x2b96ff=_0x349b65();while(!![]){try{const _0x1b6114=-parseInt(_0x598157(0x203))/0x1*(parseInt(_0x598157(0x168))/0x2)+-parseInt(_0x598157(0x1ce))/0x3+parseInt(_0x598157(0x1f1))/0x4+parseInt(_0x598157(0x18c))/0x5*(-parseInt(_0x598157(0x142))/0x6)+-parseInt(_0x598157(0x1e9))/0x7+-parseInt(_0x598157(0x1c1))/0x8+parseInt(_0x598157(0x1db))/0x9;if(_0x1b6114===_0x45948c)break;else _0x2b96ff['push'](_0x2b96ff['shift']());}catch(_0x27c619){_0x2b96ff['push'](_0x2b96ff['shift']());}}}(a287_0x4097,0x6d5ec));import{randomUUID}from'node:crypto';import{chmod,link,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{resolve}from'node:path';function a287_0x4097(){const _0x3c8b08=['Notification\x20recipient.role\x20must\x20be\x20a\x20string.','template','SCRIPT\x20node\x20requires\x20scriptName.','.cc','3405208hQfEdW','flowJson.','.template','object','duration','CONDITION\x20default\x20edge\x20must\x20not\x20define\x20expression.','node\x20path\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','formPermissions','appCode','EXECUTE_BFF\x20timeout\x20must\x20not\x20interrupt\x20the\x20approval\x20task.','Notification\x20fact\x20must\x20be\x20an\x20object.','Rabetbase\x20FlowConfig','visible','2476257oztNdv','timeout\x20is\x20only\x20supported\x20by\x20APPROVAL\x20node.','Notification\x20template.','mode','flowJson.nodes.','.name','trim','edge\x20source\x20is\x20required.','formPermission','path','edge\x20must\x20be\x20an\x20object.','Notification\x20action\x20must\x20be\x20an\x20object.','CONTINUE','14694813rhQDHb','.role','BCC','FIXED','.timeout.action','EMAIL','.text','startPageId','stringify','SINGLE','push','version','slice','utf8','1688785kUQrFk','Accepted\x20as\x20legacy\x20input\x20and\x20removed\x20during\x20normalization;\x20other\x20versions\x20are\x20unsupported.','keys','approval_sys_dataId','\x20value\x20and\x20was\x20removed\x20from\x20the\x20portable\x20FlowConfig.','AUTO_APPROVE','detailMarkdown','metadata','1949648ndcKvI','every','pageMode\x20applies\x20only\x20to\x20INDEPENDENT_FLOW.','Node\x20has\x20no\x20incoming\x20edge.','\x20is\x20required.','isFinite','map','resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','Unsupported\x20node\x20type:\x20','Edge\x20target\x20node\x20not\x20found:\x20','flowJson.edges','CONDITION','.cc.readSources','position','edges\x20must\x20be\x20an\x20array.','replace','flowJson','isSafeInteger','35514JbrpTA','.async','flowKey','.tmp','warnings','resultVariable',',\x20but\x20node\x20','cc\x20recipient\x20userId\x20must\x20be\x20a\x20non-empty\x20string.','templateName','retryInterval','timeout.action\x20must\x20be\x20AUTO_APPROVE,\x20AUTO_REJECT,\x20or\x20EXECUTE_BFF.','defaultFlow','Notification\x20action.url\x20must\x20use\x20http/https\x20or\x20a\x20complete\x20supported\x20placeholder.','pageId','NOTIFICATION','EXPRESSION\x20edge\x20requires\x20expression.','HANDLE','Flow\x20must\x20contain\x20at\x20least\x20one\x20END\x20node.','configCode','FORM_FLOW','bindDatasetCode','node\x20must\x20be\x20an\x20object.','value\x20must\x20be\x20a\x20non-empty\x20string.','PLATFORM_FORM','Notification\x20recipient.value\x20is\x20required.','add','.expression','Notification\x20template.facts\x20must\x20be\x20an\x20array.','duration\x20unit\x20must\x20be\x20SECONDS,\x20MINUTES,\x20HOURS,\x20or\x20DAYS.','unit','actions','MINUTES','has','.waypoints[','EXPRESSION','flowJson.pageMode','.waypoints','approval_sys_initiatorUserId','.approvalMode','START','https://lovrabet.com/schema/rabetbase-flow-config.json','nodes','async\x20execution\x20is\x20only\x20supported\x20by\x20SCRIPT\x20node.','isInteger','https://json-schema.org/draft/2020-12/schema','facts','CONDITION\x20default\x20edge\x20must\x20use\x20conditionType\x20ALWAYS.','waypoint\x20must\x20contain\x20numeric\x20x\x20and\x20y\x20coordinates.','assignee.strategy\x20must\x20be\x20FIXED\x20or\x20ROLE.','node\x20path\x20is\x20supported\x20only\x20on\x20APPROVAL\x20or\x20END\x20nodes.','HANDLE\x20task\x20outgoing\x20edge\x20must\x20use\x20ALWAYS\x20without\x20defaultFlow\x20or\x20expression.','flowJson.startPath','startPageId\x20is\x20no\x20longer\x20supported;\x20use\x20startPath\x20instead.','retryCount','expression','Unsupported\x20schemaVersion:\x20','conditionType','indexOf','#/$defs/timeAmount','CONDITION\x20node\x20requires\x20at\x20least\x20two\x20outgoing\x20edges.','.transferCandidates.userIds[','startPath\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','value\x20must\x20be\x20an\x20array.','timeout\x20must\x20be\x20an\x20object.','flowJson.startPageId','.type','targetNodeId','sequential\x20must\x20be\x20a\x20boolean.','Approval\x20flow\x20requires\x20an\x20END\x20node\x20with\x20result\x20','CONDITION\x20non-default\x20edge\x20must\x20use\x20conditionType\x20EXPRESSION.','timeout.interrupting\x20must\x20be\x20a\x20boolean.','CONDITION\x20non-default\x20edge\x20requires\x20a\x20non-empty\x20expression.','.cc.recipientUserIds','.cc.recipientUserIds[','.timeout.interrupting','flowJson.nodes','config','approval_sys_appCode','length','userIds','timeout','^[A-Za-z_][A-Za-z0-9_]*$','toUpperCase','Notification\x20template.actions\x20must\x20be\x20an\x20array.','failurePolicy\x20must\x20be\x20a\x20string.','catch','AUTO_REJECT','node\x20pageId\x20is\x20no\x20longer\x20supported;\x20use\x20node\x20path\x20instead.','array','\x20was\x20empty\x20and\x20was\x20removed.','END','sequential','\x20is\x20not\x20on\x20every\x20upstream\x20path\x20to\x20','Duplicate\x20edge\x20route:\x20','.timeout.enabled','Notification\x20template\x20supports\x20at\x20most\x20','APPROVED','.config','title','Reserved\x20resultVariable:\x20','Duplicate\x20node\x20id:\x20','transferCandidates\x20currently\x20supports\x20FIXED\x20only.','Flow\x20must\x20contain\x20exactly\x20one\x20START\x20node.','^[1-9][0-9]*$','string','approvalMode','strategy','size','.failurePolicy','Unsupported\x20notification\x20version:\x20','recipientUserIds','CONDITION\x20node\x20requires\x20exactly\x20one\x20default\x20outgoing\x20edge.','sourceNodeId','Node\x20cannot\x20reach\x20any\x20END.','EXECUTE_BFF','roleId','flowJson.nodes[','.detailMarkdown','EXECUTE_BFF\x20timeout\x20requires\x20scriptName.','flowCode','CUSTOM_PAGE','.value','scriptName','formDefinitions','interrupting','delete','\x20->\x20','filter','ANY','.version','APPROVAL','Every\x20node\x20requires\x20position.x\x20and\x20position.y.','cc.recipientUserIds\x20supports\x20at\x20most\x20','name','APPROVAL\x20node\x20outgoing\x20edges\x20must\x20use\x20APPROVED\x20or\x20REJECTED.','Unsupported\x20approval\x20mode:\x20','context','APPROVAL\x20node\x20requires\x20exactly\x20one\x20APPROVED\x20outgoing\x20edge.','waypoint.','Notification\x20recipient.type\x20must\x20be\x20USER,\x20ROLE,\x20or\x20EMAIL.','.transferCandidates.strategy','position.','async.enabled\x20must\x20be\x20a\x20boolean.','.timeout.duration','readSources','label','edges','Notification\x20template.detailMarkdown\x20must\x20be\x20a\x20string.','.configCode','integer','.timeout.scriptName','event','isArray','waypoints\x20must\x20be\x20an\x20array.','No\x20END\x20node\x20is\x20reachable\x20from\x20START.','url','flowName','Expression\x20references\x20SCRIPT\x20resultVariable\x20','Notification\x20fact.','\x20facts.','204JSdsEh','form','transferCandidates','Node\x20has\x20no\x20outgoing\x20edge.','hasOwnProperty','edge\x20name\x20must\x20be\x20a\x20string.','\x20was\x20empty\x20or\x20used\x20the\x20default\x20','.resultVariable','Notification\x20recipient.type\x20is\x20required.','NOTIFICATION\x20node\x20requires\x20config.','ROLE','datasetCode','flowDesc','__rabetbase_local_validation__','Duplicate\x20BPMN\x20element\x20id:\x20','target','FIXED\x20assignee\x20requires\x20userIds.','Notification\x20recipient\x20must\x20be\x20an\x20object.','call','flowType','set','flowJson\x20must\x20be\x20an\x20object.','findIndex','node\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','node\x20path\x20must\x20be\x20a\x20non-empty\x20string.','includes','assignee','.scriptName','.source','number','START\x20node\x20must\x20not\x20have\x20incoming\x20edges.','.async.retryCount','Notification\x20recipients\x20must\x20be\x20an\x20array.','#/$defs/position','.unit','duration\x20requires\x20value\x20and\x20unit.','role','prototype','8dyFdAK','REJECTED','.position','.url','A\x20default\x20flow\x20must\x20not\x20have\x20an\x20expression.','source','boolean','.id','Notification\x20configCode\x20must\x20be\x20a\x20fixed\x20value.','].taskMode','test','fixed\x20assignee\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','recipients','.transferCandidates.userIds','\x20timeout\x20must\x20interrupt\x20the\x20approval\x20task.','ALL','.defaultFlow','cc\x20must\x20be\x20an\x20object.','USER','edge\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','NOTIFICATION\x20node\x20requires\x20template.','APPROVAL\x20node\x20requires\x20assignee.','some','flowDesc\x20must\x20be\x20a\x20string.','Notification\x20text\x20contains\x20a\x20malformed\x20placeholder.','pageMode','waypoints','cc.recipientUserIds\x20must\x20be\x20a\x20non-empty\x20array.','.target','FAIL','HANDLE\x20task\x20timeout\x20only\x20supports\x20EXECUTE_BFF.','Explicit\x20notification\x20recipients\x20require\x20at\x20least\x20one\x20TO.','nodes\x20must\x20be\x20an\x20array.','approved','ALWAYS','async','5560pCUdvn','Unsupported\x20flowType:\x20','forEach','#/$defs/userId','value','taskMode','Duplicate\x20value:\x20','async\x20must\x20be\x20an\x20object.','formData','approval_sys_datasetCode','.timeout','type','DAYS','startsWith','.conditionType','Notification\x20version\x20must\x20be\x20a\x20string.','failurePolicy','INDEPENDENT_FLOW','FIXED\x20transferCandidates\x20requires\x20non-empty\x20userIds.','get','.timeout.resultVariable','\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.','startPath','FORM_FLOW\x20is\x20an\x20approval\x20flow\x20and\x20cannot\x20contain\x20HANDLE\x20tasks;\x20use\x20INDEPENDENT_FLOW\x20for\x20workflows.','approval_sys_','NaN','approval_sys_pageId','summary','.assignee.userIds[','.assignee.userIds','SECONDS','text','#/$defs/flowNode','scriptResult','INDEPENDENT_FLOW\x20cannot\x20bind\x20datasetCode.','action','enabled','SCRIPT','.path','Unsupported\x20condition\x20type:\x20','Duplicate\x20cc\x20recipient\x20userId:\x20','FlowConfig\x20must\x20be\x20a\x20JSON\x20object.','legacy_field_removed','schemaVersion','flowJson.schemaVersion','parse','\x20must\x20be\x20a\x20finite\x20number.','datasetCode\x20must\x20be\x20a\x20string.','message'];a287_0x4097=function(){return _0x3c8b08;};return a287_0x4097();}export const FLOW_CONFIG_JSON_SCHEMA={'$schema':a287_0x571368(0x22f),'$id':a287_0x571368(0x22b),'title':a287_0x571368(0x1cc),'type':'object','required':[a287_0x571368(0x13e),a287_0x571368(0x155),a287_0x571368(0x201)],'$defs':{'userId':{'anyOf':[{'type':a287_0x571368(0x10a),'minLength':0x1},{'type':'integer','minimum':0x1}]},'position':{'type':a287_0x571368(0x1c4),'required':['x','y'],'properties':{'x':{'type':a287_0x571368(0x15f),'minimum':0x0},'y':{'type':'number','minimum':0x0}},'additionalProperties':!![]},'timeAmount':{'type':a287_0x571368(0x1c4),'required':[a287_0x571368(0x190),a287_0x571368(0x220)],'properties':{'value':{'type':a287_0x571368(0x137),'minimum':0x1},'unit':{'enum':['SECONDS',a287_0x571368(0x222),'HOURS',a287_0x571368(0x198)]}},'additionalProperties':!![]},'flowNode':{'type':a287_0x571368(0x1c4),'required':['id',a287_0x571368(0x197),a287_0x571368(0x127),'position'],'properties':{'id':{'type':a287_0x571368(0x10a),'pattern':a287_0x571368(0x254)},'type':{'enum':[a287_0x571368(0x22a),a287_0x571368(0xfc),a287_0x571368(0x124),a287_0x571368(0x1fc),'SCRIPT',a287_0x571368(0x211)]},'name':{'type':a287_0x571368(0x10a),'minLength':0x1},'path':{'type':a287_0x571368(0x10a),'minLength':0x1},'position':{'$ref':a287_0x571368(0x163)},'approvalMode':{'enum':[a287_0x571368(0x1e4),a287_0x571368(0x177),a287_0x571368(0x122)]},'taskMode':{'enum':[a287_0x571368(0x124),a287_0x571368(0x213)]},'assignee':{'type':a287_0x571368(0x1c4),'required':[a287_0x571368(0x10c)],'properties':{'strategy':{'enum':['FIXED',a287_0x571368(0x14c)]},'userIds':{'type':a287_0x571368(0xfa),'minItems':0x1,'items':{'$ref':a287_0x571368(0x18f)}},'roleId':{'anyOf':[{'type':a287_0x571368(0x137),'minimum':0x1},{'type':'string','pattern':a287_0x571368(0x109)}]}},'additionalProperties':!![]},'transferCandidates':{'type':a287_0x571368(0x1c4),'required':['strategy','userIds'],'properties':{'strategy':{'const':'FIXED'},'userIds':{'type':'array','minItems':0x1,'items':{'$ref':a287_0x571368(0x18f)}}},'additionalProperties':!![]},'sequential':{'type':'boolean'},'result':{'enum':[a287_0x571368(0x102),a287_0x571368(0x169)]},'scriptName':{'type':a287_0x571368(0x10a),'minLength':0x1},'resultVariable':{'type':a287_0x571368(0x10a),'pattern':a287_0x571368(0x254)},'async':{'type':a287_0x571368(0x1c4),'properties':{'enabled':{'type':a287_0x571368(0x16e)},'retryCount':{'type':a287_0x571368(0x137),'minimum':0x1,'maximum':0xa},'retryInterval':{'$ref':a287_0x571368(0x23d)}},'additionalProperties':!![]},'timeout':{'type':'object','properties':{'enabled':{'type':a287_0x571368(0x16e)},'duration':{'$ref':'#/$defs/timeAmount'},'action':{'enum':[a287_0x571368(0x1ee),a287_0x571368(0xf8),a287_0x571368(0x114)]},'interrupting':{'type':'boolean'},'scriptName':{'type':'string','minLength':0x1},'resultVariable':{'type':a287_0x571368(0x10a),'pattern':a287_0x571368(0x254)}},'additionalProperties':!![]},'cc':{'type':a287_0x571368(0x1c4),'required':['recipientUserIds'],'properties':{'recipientUserIds':{'type':a287_0x571368(0xfa),'minItems':0x1,'maxItems':0x64,'uniqueItems':!![],'items':{'type':a287_0x571368(0x10a),'minLength':0x1}},'visible':{'type':a287_0x571368(0xfa),'uniqueItems':!![],'items':{'type':'string','minLength':0x1}},'readSources':![]},'additionalProperties':!![]},'config':{'type':a287_0x571368(0x1c4),'required':['configCode',a287_0x571368(0x1be)],'properties':{'version':{'enum':['v1']},'configCode':{'type':'string','minLength':0x1},'failurePolicy':{'enum':['CONTINUE',a287_0x571368(0x185)]},'template':{'type':'object','required':[a287_0x571368(0x104),'summary'],'properties':{'title':{'type':'string','minLength':0x1},'summary':{'type':a287_0x571368(0x10a),'minLength':0x1},'detailMarkdown':{'type':'string'},'facts':{'type':'array','maxItems':0x8,'items':{'type':a287_0x571368(0x1c4),'required':['label','value'],'properties':{'label':{'type':'string','minLength':0x1},'value':{'type':a287_0x571368(0x10a),'minLength':0x1}},'additionalProperties':!![]}},'actions':{'type':a287_0x571368(0xfa),'maxItems':0x2,'items':{'type':a287_0x571368(0x1c4),'required':[a287_0x571368(0x1ab),a287_0x571368(0x13d)],'properties':{'text':{'type':a287_0x571368(0x10a),'minLength':0x1},'url':{'type':'string','minLength':0x1}},'additionalProperties':!![]}}},'additionalProperties':!![]},'recipients':{'type':a287_0x571368(0xfa),'items':{'type':a287_0x571368(0x1c4),'required':[a287_0x571368(0x197),a287_0x571368(0x190)],'properties':{'type':{'enum':[a287_0x571368(0x17a),a287_0x571368(0x14c),a287_0x571368(0x1e0)]},'value':{'type':'string','minLength':0x1},'role':{'enum':['TO','CC',a287_0x571368(0x1dd)]}},'additionalProperties':!![]}}},'additionalProperties':!![]},'form':![],'formPermission':![]},'additionalProperties':!![]},'flowEdge':{'type':a287_0x571368(0x1c4),'properties':{'id':{'type':a287_0x571368(0x10a),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'},'source':{'type':'string','minLength':0x1},'target':{'type':a287_0x571368(0x10a),'minLength':0x1},'sourceNodeId':{'type':a287_0x571368(0x10a),'minLength':0x1},'targetNodeId':{'type':'string','minLength':0x1},'conditionType':{'enum':['ALWAYS',a287_0x571368(0x102),a287_0x571368(0x169),a287_0x571368(0x225)]},'expression':{'type':'string'},'defaultFlow':{'type':a287_0x571368(0x16e)},'name':{'type':a287_0x571368(0x10a)},'waypoints':{'type':a287_0x571368(0xfa),'items':{'$ref':a287_0x571368(0x163)}}},'allOf':[{'anyOf':[{'required':[a287_0x571368(0x16d)]},{'required':['sourceNodeId']}]},{'anyOf':[{'required':[a287_0x571368(0x151)]},{'required':['targetNodeId']}]}],'additionalProperties':!![]}},'properties':{'id':![],'appCode':![],'flowName':{'type':a287_0x571368(0x10a),'minLength':0x1},'flowDesc':{'type':'string'},'flowType':{'enum':['FORM_FLOW',a287_0x571368(0x19d)]},'datasetCode':{'type':'string','minLength':0x1},'pageId':{'type':a287_0x571368(0x137)},'templateName':![],'flowJson':{'type':a287_0x571368(0x1c4),'required':[a287_0x571368(0x22c),a287_0x571368(0x134)],'properties':{'flowKey':![],'flowCode':![],'flowName':![],'bindDatasetCode':![],'datasetCode':![],'appCode':![],'pageId':![],'templateName':![],'schemaVersion':{'type':'string','const':'approval.simple-flow.v1','description':a287_0x571368(0x1ea)},'formSchema':![],'formDefinitions':![],'formPermissions':![],'pageMode':{'const':'CUSTOM_PAGE'},'startPageId':![],'startPath':{'type':'string','minLength':0x1},'nodes':{'type':a287_0x571368(0xfa),'minItems':0x1,'items':{'$ref':a287_0x571368(0x1ac)}},'edges':{'type':a287_0x571368(0xfa),'minItems':0x1,'items':{'$ref':'#/$defs/flowEdge'}}},'additionalProperties':!![]}},'additionalProperties':!![]};const REMOVED_FLOW_JSON_FIELDS=[a287_0x571368(0x205),a287_0x571368(0x119),a287_0x571368(0x13e),a287_0x571368(0x217),a287_0x571368(0x14d),a287_0x571368(0x1c9),a287_0x571368(0x210),a287_0x571368(0x20b)],REMOVED_ROOT_FIELDS=['id',a287_0x571368(0x1c9),'templateName'],DEFAULT_FLOW_SCHEMA_VERSION='approval.simple-flow.v1',NODE_TYPES=new Set([a287_0x571368(0x22a),a287_0x571368(0xfc),a287_0x571368(0x124),a287_0x571368(0x1fc),a287_0x571368(0x1b1),'NOTIFICATION']),CONDITION_TYPES=new Set([a287_0x571368(0x18a),'APPROVED','REJECTED',a287_0x571368(0x225)]),APPROVAL_MODES=new Set([a287_0x571368(0x1e4),a287_0x571368(0x177),a287_0x571368(0x122)]),APPROVAL_TASK_MODES=new Set([a287_0x571368(0x124),a287_0x571368(0x213)]),FLOW_TIME_UNITS=new Set([a287_0x571368(0x1aa),a287_0x571368(0x222),'HOURS',a287_0x571368(0x198)]),APPROVAL_TIMEOUT_ACTIONS=new Set(['AUTO_APPROVE',a287_0x571368(0xf8),a287_0x571368(0x114)]),FLOW_TYPES=new Set([a287_0x571368(0x216),'INDEPENDENT_FLOW']),FLOW_PAGE_MODES=new Set(['CUSTOM_PAGE',a287_0x571368(0x21a)]),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([a287_0x571368(0x1da),a287_0x571368(0x185)]),NOTIFICATION_RECIPIENT_TYPES=new Set([a287_0x571368(0x17a),'ROLE',a287_0x571368(0x1e0)]),NOTIFICATION_RECIPIENT_ROLES=new Set(['TO','CC',a287_0x571368(0x1dd)]),MAX_NOTIFICATION_FACTS=0x8,MAX_NOTIFICATION_ACTIONS=0x2,MAX_ASYNC_RETRY_COUNT=0xa,MAX_CC_RECIPIENTS=0x64,DEFAULT_SCRIPT_RESULT_VARIABLE=a287_0x571368(0x1ad),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([a287_0x571368(0x194),a287_0x571368(0x189),a287_0x571368(0x250),'approval_sys_processInstanceId',a287_0x571368(0x228),'approval_sys_initiatorUsername',a287_0x571368(0x195),a287_0x571368(0x1a6),'approval_sys_operationType',a287_0x571368(0x1ec)]);export function normalizeFlowConfig(_0x4ebe55){const _0x29b6e3=a287_0x571368;if(!isRecord(_0x4ebe55))throw new TypeError(_0x29b6e3(0x1b5));const _0x2b182e=cloneJsonValue(_0x4ebe55),_0xa8a781=_0x2b182e['flowJson'],_0x1d785c=isRecord(_0xa8a781)?cloneJsonValue(_0xa8a781):{},_0x1b43b7=[],_0x540fff=[];for(const _0x1a5afe of REMOVED_ROOT_FIELDS){if(!Object[_0x29b6e3(0x167)]['hasOwnProperty']['call'](_0x2b182e,_0x1a5afe))continue;delete _0x2b182e[_0x1a5afe],_0x540fff['push'](_0x1a5afe),_0x1b43b7[_0x29b6e3(0x1e5)]({'code':'legacy_field_removed','path':_0x1a5afe,'message':_0x1a5afe+_0x29b6e3(0x1a1)});}for(const _0x51496e of REMOVED_FLOW_JSON_FIELDS){if(!Object['prototype'][_0x29b6e3(0x146)]['call'](_0x1d785c,_0x51496e))continue;const _0x5af604='flowJson.'+_0x51496e;delete _0x1d785c[_0x51496e],_0x540fff[_0x29b6e3(0x1e5)](_0x5af604),_0x1b43b7['push']({'code':_0x29b6e3(0x1b6),'path':_0x5af604,'message':_0x5af604+_0x29b6e3(0x1a1)});}if(Object[_0x29b6e3(0x167)][_0x29b6e3(0x146)][_0x29b6e3(0x154)](_0x1d785c,_0x29b6e3(0x1b7))){const _0x258ddc=_0x1d785c[_0x29b6e3(0x1b7)],_0x369d15=typeof _0x258ddc===_0x29b6e3(0x10a)?_0x258ddc[_0x29b6e3(0x1d4)]():_0x258ddc;if(isEmptyJsonValue(_0x258ddc)||_0x369d15===DEFAULT_FLOW_SCHEMA_VERSION){const _0x5a15e9=_0x29b6e3(0x1b8);delete _0x1d785c[_0x29b6e3(0x1b7)],_0x540fff[_0x29b6e3(0x1e5)](_0x5a15e9),_0x1b43b7[_0x29b6e3(0x1e5)]({'code':_0x29b6e3(0x1b6),'path':_0x5a15e9,'message':_0x5a15e9+_0x29b6e3(0x148)+DEFAULT_FLOW_SCHEMA_VERSION+_0x29b6e3(0x1ed)});}}removeEmptyMetadata(_0x1d785c,_0x29b6e3(0x201),_0x1b43b7,_0x540fff);_0x2b182e['flowType']===_0x29b6e3(0x19d)&&!Object[_0x29b6e3(0x167)][_0x29b6e3(0x146)]['call'](_0x1d785c,_0x29b6e3(0x181))&&(_0x1d785c['pageMode']=_0x29b6e3(0x11a));_0x2b182e[_0x29b6e3(0x201)]=_0x1d785c;if(typeof _0x2b182e[_0x29b6e3(0x13e)]===_0x29b6e3(0x10a))_0x2b182e[_0x29b6e3(0x13e)]=_0x2b182e[_0x29b6e3(0x13e)][_0x29b6e3(0x1d4)]();return{'config':_0x2b182e,'warnings':_0x1b43b7,'removedPaths':_0x540fff};}function a287_0x2b53(_0x37c8db,_0x1b11d1){_0x37c8db=_0x37c8db-0xf5;const _0x4097f9=a287_0x4097();let _0x2b5337=_0x4097f9[_0x37c8db];return _0x2b5337;}export function validateFlowConfig(_0x1af917){const _0x5697e6=a287_0x571368;let _0x2ff934;try{_0x2ff934=normalizeFlowConfig(_0x1af917);}catch(_0x3945c0){const _0x4166b4=_0x3945c0 instanceof Error?_0x3945c0[_0x5697e6(0x1bc)]:String(_0x3945c0),_0x4d11fe={'flowJson':{}};return{'valid':![],'errors':[{'path':'$','message':_0x4166b4}],'warnings':[],'normalized':_0x4d11fe,'validationConfig':_0x4d11fe};}const _0x19e30e=_0x2ff934['config'],_0x202c89=cloneJsonValue(_0x19e30e),_0x34486e=_0x202c89[_0x5697e6(0x201)];_0x34486e['flowKey']=_0x5697e6(0x14f),_0x34486e[_0x5697e6(0x13e)]=_0x19e30e[_0x5697e6(0x13e)];typeof _0x19e30e[_0x5697e6(0x14d)]===_0x5697e6(0x10a)&&_0x19e30e['datasetCode'][_0x5697e6(0x1d4)]()&&(_0x34486e['bindDatasetCode']=_0x19e30e[_0x5697e6(0x14d)][_0x5697e6(0x1d4)]());const _0x16f512=[];return validateOuterMetadata(_0x19e30e,_0x16f512),validateFlowClassification(_0x19e30e,_0x16f512),validateGraph(_0x19e30e[_0x5697e6(0x201)],_0x16f512),{'valid':_0x16f512[_0x5697e6(0x251)]===0x0,'errors':_0x16f512,'warnings':_0x2ff934[_0x5697e6(0x207)],'normalized':_0x19e30e,'validationConfig':_0x202c89};}function validateFlowClassification(_0x2540ac,_0x105eae){const _0x3dcca8=a287_0x571368;if(!isRecord(_0x2540ac[_0x3dcca8(0x201)]))return;const _0x22899e=_0x2540ac[_0x3dcca8(0x155)],_0xcca33c=_0x2540ac[_0x3dcca8(0x201)][_0x3dcca8(0x181)];_0xcca33c!==undefined&&(typeof _0xcca33c!=='string'||!FLOW_PAGE_MODES[_0x3dcca8(0x223)](_0xcca33c))&&_0x105eae[_0x3dcca8(0x1e5)]({'path':_0x3dcca8(0x226),'message':'Unsupported\x20pageMode:\x20'+String(_0xcca33c)+'.'});_0x22899e==='FORM_FLOW'&&_0xcca33c!==undefined&&_0x105eae['push']({'path':'flowJson.pageMode','message':_0x3dcca8(0x1f3)});_0x22899e==='INDEPENDENT_FLOW'&&_0xcca33c==='PLATFORM_FORM'&&_0x105eae['push']({'path':_0x3dcca8(0x226),'message':UNSUPPORTED_PLATFORM_FORM_MESSAGE});(_0x22899e===_0x3dcca8(0x216)||_0x22899e==='INDEPENDENT_FLOW')&&validateCustomPageNavigation(_0x2540ac,_0x22899e,_0xcca33c,_0x105eae);if(_0x22899e!==_0x3dcca8(0x216)||!Array[_0x3dcca8(0x13a)](_0x2540ac[_0x3dcca8(0x201)][_0x3dcca8(0x22c)]))return;_0x2540ac['flowJson'][_0x3dcca8(0x22c)][_0x3dcca8(0x18e)]((_0x24458a,_0x3ee65a)=>{const _0x320f31=_0x3dcca8;isRecord(_0x24458a)&&_0x24458a['type']==='APPROVAL'&&_0x24458a['taskMode']===_0x320f31(0x213)&&_0x105eae['push']({'path':_0x320f31(0x116)+_0x3ee65a+_0x320f31(0x171),'message':_0x320f31(0x1a3)});});}function validateCustomPageNavigation(_0x1dbe34,_0x5056a3,_0x30e102,_0x2766aa){const _0x543afd=a287_0x571368,_0x4321b5=_0x1dbe34[_0x543afd(0x201)][_0x543afd(0x1e2)];_0x4321b5!==undefined&&_0x2766aa['push']({'path':_0x543afd(0x243),'message':_0x543afd(0x237)});const _0x1c77dd=_0x1dbe34['flowJson'][_0x543afd(0x1a2)];_0x1c77dd!==undefined&&(typeof _0x1c77dd!==_0x543afd(0x10a)||_0x1c77dd['trim']()==='')&&_0x2766aa[_0x543afd(0x1e5)]({'path':_0x543afd(0x236),'message':'startPath\x20must\x20be\x20a\x20non-empty\x20string.'});const _0x57abc7=Array['isArray'](_0x1dbe34[_0x543afd(0x201)][_0x543afd(0x22c)])?_0x1dbe34[_0x543afd(0x201)][_0x543afd(0x22c)][_0x543afd(0x1f7)]((_0xc44b8c,_0x1b4962)=>({'node':_0xc44b8c,'index':_0x1b4962}))[_0x543afd(0x121)](({node:_0x4c2d43})=>isRecord(_0x4c2d43)&&_0x4c2d43[_0x543afd(0x1d7)]!==undefined):[],_0x8720ca=_0x1c77dd!==undefined||_0x57abc7[_0x543afd(0x251)]>0x0,_0x1d44db=_0x30e102===undefined&&_0x5056a3===_0x543afd(0x19d)?_0x543afd(0x11a):_0x30e102;_0x8720ca&&(_0x5056a3!==_0x543afd(0x19d)||_0x1d44db!==_0x543afd(0x11a))&&(_0x1c77dd!==undefined&&_0x2766aa['push']({'path':_0x543afd(0x236),'message':_0x543afd(0x240)}),_0x57abc7['forEach'](({index:_0x2c7a19})=>{const _0x1ea220=_0x543afd;_0x2766aa[_0x1ea220(0x1e5)]({'path':'flowJson.nodes['+_0x2c7a19+'].path','message':_0x1ea220(0x1c7)});}));}export async function writeNormalizedFlowConfig(_0x2112b1,_0x5410b0,_0x20a723={}){const _0x290e48=a287_0x571368,_0x3e9c9b=resolve(_0x2112b1),_0x2f5ef1=_0x3e9c9b+'.'+process['pid']+'.'+randomUUID()+_0x290e48(0x206),_0x79c502=JSON[_0x290e48(0x1e3)](_0x5410b0,null,0x2)+'\x0a';let _0x15781d;try{try{_0x15781d=(await stat(_0x3e9c9b))[_0x290e48(0x1d1)]&0x1ff;}catch{_0x15781d=undefined;}await writeFile(_0x2f5ef1,_0x79c502,{'encoding':'utf8','flag':'wx','mode':_0x15781d??0x1a4});if(_0x15781d!==undefined)await chmod(_0x2f5ef1,_0x15781d);_0x20a723['overwrite']===![]?(await link(_0x2f5ef1,_0x3e9c9b),await unlink(_0x2f5ef1)):await rename(_0x2f5ef1,_0x3e9c9b);}finally{await unlink(_0x2f5ef1)[_0x290e48(0xf7)](()=>undefined);}}function validateOuterMetadata(_0x4812d9,_0xb358ed){const _0x4745aa=a287_0x571368;(typeof _0x4812d9[_0x4745aa(0x13e)]!==_0x4745aa(0x10a)||_0x4812d9[_0x4745aa(0x13e)][_0x4745aa(0x1d4)]()==='')&&_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x13e),'message':'flowName\x20is\x20required.'});_0x4812d9[_0x4745aa(0x14e)]!==undefined&&typeof _0x4812d9['flowDesc']!==_0x4745aa(0x10a)&&_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x14e),'message':_0x4745aa(0x17f)});if(_0x4812d9[_0x4745aa(0x155)]===undefined||_0x4812d9['flowType']===null)_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x155),'message':'flowType\x20is\x20required.'});else(typeof _0x4812d9[_0x4745aa(0x155)]!==_0x4745aa(0x10a)||!FLOW_TYPES[_0x4745aa(0x223)](_0x4812d9[_0x4745aa(0x155)]))&&_0xb358ed['push']({'path':'flowType','message':_0x4745aa(0x18d)+String(_0x4812d9['flowType'])+'.'});_0x4812d9['datasetCode']!==undefined&&typeof _0x4812d9[_0x4745aa(0x14d)]!=='string'&&_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x14d),'message':_0x4745aa(0x1bb)}),_0x4812d9[_0x4745aa(0x210)]!==undefined&&(!Number['isInteger'](_0x4812d9[_0x4745aa(0x210)])||_0x4812d9['pageId']<0x0)&&_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x210),'message':'pageId\x20must\x20be\x20a\x20non-negative\x20integer.'}),_0x4812d9[_0x4745aa(0x155)]===_0x4745aa(0x19d)&&_0x4812d9[_0x4745aa(0x14d)]!==undefined&&_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x14d),'message':_0x4745aa(0x1ae)}),_0x4812d9['flowType']==='INDEPENDENT_FLOW'&&_0x4812d9[_0x4745aa(0x210)]!==undefined&&_0xb358ed[_0x4745aa(0x1e5)]({'path':_0x4745aa(0x210),'message':'INDEPENDENT_FLOW\x20cannot\x20bind\x20pageId.'});}function validateGraph(_0x4d8347,_0x49cf12){const _0x3d4d01=a287_0x571368;if(!isRecord(_0x4d8347)){_0x49cf12['push']({'path':'flowJson','message':_0x3d4d01(0x157)});return;}!Array[_0x3d4d01(0x13a)](_0x4d8347['nodes'])&&_0x49cf12[_0x3d4d01(0x1e5)]({'path':'flowJson.nodes','message':_0x3d4d01(0x188)});!Array[_0x3d4d01(0x13a)](_0x4d8347[_0x3d4d01(0x134)])&&_0x49cf12[_0x3d4d01(0x1e5)]({'path':_0x3d4d01(0x1fb),'message':_0x3d4d01(0x1ff)});Object[_0x3d4d01(0x167)][_0x3d4d01(0x146)][_0x3d4d01(0x154)](_0x4d8347,_0x3d4d01(0x1b7))&&_0x49cf12[_0x3d4d01(0x1e5)]({'path':_0x3d4d01(0x1b8),'message':_0x3d4d01(0x23a)+String(_0x4d8347[_0x3d4d01(0x1b7)])+'.\x20This\x20CLI\x20supports\x20only\x20'+DEFAULT_FLOW_SCHEMA_VERSION+'.'});for(const _0x52e84c of['formSchema',_0x3d4d01(0x11d),_0x3d4d01(0x1c8)]){Object[_0x3d4d01(0x167)]['hasOwnProperty'][_0x3d4d01(0x154)](_0x4d8347,_0x52e84c)&&_0x49cf12[_0x3d4d01(0x1e5)]({'path':_0x3d4d01(0x1c2)+_0x52e84c,'message':UNSUPPORTED_FORM_MESSAGE});}if(!Array[_0x3d4d01(0x13a)](_0x4d8347['nodes'])||!Array['isArray'](_0x4d8347[_0x3d4d01(0x134)]))return;const _0x2d3c44=new Map(),_0xcb1e73=[],_0xb839ea=[],_0x38a3ad=new Map(),_0x55db1b=new Map(),_0x4a5345=new Set();let _0x7c278d=0x0;_0x4d8347['nodes'][_0x3d4d01(0x18e)]((_0x238f01,_0x535cb4)=>{const _0x268424=_0x3d4d01,_0x585cde=_0x268424(0x116)+_0x535cb4+']';if(!isRecord(_0x238f01)){_0x49cf12[_0x268424(0x1e5)]({'path':_0x585cde,'message':_0x268424(0x218)});return;}const _0x21a110=_0x238f01;if(typeof _0x21a110['id']!==_0x268424(0x10a)||!BPMN_ID_PATTERN[_0x268424(0x172)](_0x21a110['id']))_0x49cf12['push']({'path':_0x585cde+_0x268424(0x16f),'message':_0x268424(0x159)});else _0x2d3c44[_0x268424(0x223)](_0x21a110['id'])?_0x49cf12['push']({'path':_0x585cde+_0x268424(0x16f),'message':_0x268424(0x106)+_0x21a110['id']+'.'}):(_0x2d3c44['set'](_0x21a110['id'],_0x21a110),_0x4a5345[_0x268424(0x21c)](_0x21a110['id']));if(!NODE_TYPES[_0x268424(0x223)](_0x21a110[_0x268424(0x197)]))_0x49cf12[_0x268424(0x1e5)]({'path':_0x585cde+'.type','message':_0x268424(0x1f9)+String(_0x21a110['type'])+'.'});else{if(_0x21a110[_0x268424(0x197)]===_0x268424(0x22a))_0xcb1e73['push'](_0x21a110['id']);else _0x21a110['type']===_0x268424(0xfc)&&_0xb839ea[_0x268424(0x1e5)](_0x21a110['id']);}_0x21a110[_0x268424(0x197)]===_0x268424(0x124)&&(_0x21a110[_0x268424(0x191)]===undefined||_0x21a110['taskMode']===_0x268424(0x124))&&(_0x7c278d+=0x1);validateNode(_0x21a110,_0x585cde,_0x49cf12);if(_0x21a110[_0x268424(0x197)]===_0x268424(0x1b1)){const _0x5d4887=resolveEffectiveResultVariable(_0x21a110[_0x268424(0x208)],![]);_0x5d4887&&(registerResultVariableOwner(_0x55db1b,_0x5d4887,_0x21a110['id'],_0x49cf12),!_0x38a3ad['has'](_0x5d4887)&&_0x38a3ad[_0x268424(0x156)](_0x5d4887,_0x21a110['id']));}if(_0x21a110[_0x268424(0x197)]==='APPROVAL'&&isRecord(_0x21a110[_0x268424(0x253)])&&_0x21a110[_0x268424(0x253)]['enabled']===!![]&&_0x21a110['timeout'][_0x268424(0x1af)]===_0x268424(0x114)){const _0x443ba1=resolveEffectiveResultVariable(_0x21a110[_0x268424(0x253)][_0x268424(0x208)],!![]);_0x443ba1&®isterResultVariableOwner(_0x55db1b,_0x443ba1,_0x21a110['id']+'.timeout',_0x49cf12);}});_0xcb1e73[_0x3d4d01(0x251)]!==0x1&&_0x49cf12[_0x3d4d01(0x1e5)]({'path':_0x3d4d01(0x24e),'message':_0x3d4d01(0x108)});_0xb839ea[_0x3d4d01(0x251)]===0x0&&_0x49cf12['push']({'path':'flowJson.nodes','message':_0x3d4d01(0x214)});const _0x1ca070=new Map(),_0x15fe0e=new Map(),_0x3e0a65=new Map(),_0x44089c=new Set();_0x4d8347['edges'][_0x3d4d01(0x18e)]((_0x1305dd,_0x1f14cf)=>{const _0x10b54d=_0x3d4d01,_0x1067fb='flowJson.edges['+_0x1f14cf+']';if(!isRecord(_0x1305dd)){_0x49cf12[_0x10b54d(0x1e5)]({'path':_0x1067fb,'message':_0x10b54d(0x1d8)});return;}const _0x1130d1=_0x1305dd;_0x3e0a65['set'](_0x1130d1,_0x1067fb);const _0x4ef417=resolveEdgeEndpoint(_0x1130d1[_0x10b54d(0x16d)],_0x1130d1[_0x10b54d(0x112)]),_0x1ceb56=resolveEdgeEndpoint(_0x1130d1[_0x10b54d(0x151)],_0x1130d1['targetNodeId']);if(!_0x4ef417)_0x49cf12[_0x10b54d(0x1e5)]({'path':_0x1067fb+_0x10b54d(0x15e),'message':_0x10b54d(0x1d5)});if(!_0x1ceb56)_0x49cf12['push']({'path':_0x1067fb+_0x10b54d(0x184),'message':'edge\x20target\x20is\x20required.'});_0x4ef417&&!_0x2d3c44[_0x10b54d(0x223)](_0x4ef417)&&_0x49cf12[_0x10b54d(0x1e5)]({'path':_0x1067fb+_0x10b54d(0x15e),'message':'Edge\x20source\x20node\x20not\x20found:\x20'+_0x4ef417+'.'});_0x1ceb56&&!_0x2d3c44['has'](_0x1ceb56)&&_0x49cf12['push']({'path':_0x1067fb+_0x10b54d(0x184),'message':_0x10b54d(0x1fa)+_0x1ceb56+'.'});if(_0x1130d1['id']!==undefined){if(typeof _0x1130d1['id']!==_0x10b54d(0x10a)||!BPMN_ID_PATTERN['test'](_0x1130d1['id']))_0x49cf12[_0x10b54d(0x1e5)]({'path':_0x1067fb+_0x10b54d(0x16f),'message':_0x10b54d(0x17b)});else{if(_0x4a5345[_0x10b54d(0x223)](_0x1130d1['id']))_0x49cf12[_0x10b54d(0x1e5)]({'path':_0x1067fb+_0x10b54d(0x16f),'message':_0x10b54d(0x150)+_0x1130d1['id']+'.'});else!_0x4a5345[_0x10b54d(0x223)](_0x1130d1['id'])&&_0x4a5345[_0x10b54d(0x21c)](_0x1130d1['id']);}}if(_0x4ef417&&_0x1ceb56){const _0x542f1c=_0x4ef417+'\x00'+_0x1ceb56+'\x00'+(_0x1130d1[_0x10b54d(0x23b)]??_0x10b54d(0x18a));_0x44089c[_0x10b54d(0x223)](_0x542f1c)?_0x49cf12[_0x10b54d(0x1e5)]({'path':_0x1067fb,'message':_0x10b54d(0xff)+_0x4ef417+_0x10b54d(0x120)+_0x1ceb56+'\x20('+(_0x1130d1[_0x10b54d(0x23b)]??'ALWAYS')+').'}):_0x44089c[_0x10b54d(0x21c)](_0x542f1c);}validateEdge(_0x1130d1,_0x1067fb,_0x49cf12),_0x4ef417&&_0x1ceb56&&(_0x1ca070[_0x10b54d(0x19f)](_0x4ef417)?.[_0x10b54d(0x1e5)](_0x1130d1)??_0x1ca070['set'](_0x4ef417,[_0x1130d1]),_0x15fe0e[_0x10b54d(0x19f)](_0x1ceb56)?.[_0x10b54d(0x1e5)](_0x1130d1)??_0x15fe0e[_0x10b54d(0x156)](_0x1ceb56,[_0x1130d1]));});if(_0xcb1e73[_0x3d4d01(0x251)]!==0x1)return;validateGraphShape(_0x2d3c44,_0xcb1e73[0x0],_0xb839ea,_0x1ca070,_0x15fe0e,_0x3e0a65,_0x49cf12),validateScriptResultReferences(_0x2d3c44,_0xcb1e73[0x0],_0x1ca070,_0x15fe0e,_0x3e0a65,_0x38a3ad,_0x49cf12),validateApprovalResults(_0x2d3c44,_0x7c278d,_0xb839ea,_0x49cf12);}function validateNode(_0x34b384,_0x2e9598,_0x180b59){const _0x54bbb3=a287_0x571368;for(const _0x4e2fa0 of[_0x54bbb3(0x143),_0x54bbb3(0x1d6)]){Object[_0x54bbb3(0x167)][_0x54bbb3(0x146)][_0x54bbb3(0x154)](_0x34b384,_0x4e2fa0)&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.'+_0x4e2fa0,'message':UNSUPPORTED_FORM_MESSAGE});}if(!NODE_TYPES[_0x54bbb3(0x223)](_0x34b384[_0x54bbb3(0x197)]))return;(typeof _0x34b384[_0x54bbb3(0x127)]!=='string'||_0x34b384[_0x54bbb3(0x127)][_0x54bbb3(0x1d4)]()==='')&&_0x180b59['push']({'path':_0x2e9598+_0x54bbb3(0x1d3),'message':'Every\x20node\x20requires\x20a\x20non-empty\x20name.'});_0x34b384['pageId']!==undefined&&_0x180b59['push']({'path':_0x2e9598+'.pageId','message':_0x54bbb3(0xf9)});if(_0x34b384['path']!==undefined){if(typeof _0x34b384[_0x54bbb3(0x1d7)]!==_0x54bbb3(0x10a)||_0x34b384[_0x54bbb3(0x1d7)][_0x54bbb3(0x1d4)]()==='')_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x1b2),'message':_0x54bbb3(0x15a)});else _0x34b384['type']!==_0x54bbb3(0x124)&&_0x34b384[_0x54bbb3(0x197)]!==_0x54bbb3(0xfc)&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x1b2),'message':_0x54bbb3(0x234)});}const _0x37da25=_0x34b384[_0x54bbb3(0x1fe)];if(!isRecord(_0x37da25))_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x16a),'message':_0x54bbb3(0x125)});else for(const _0x54db46 of['x','y']){const _0x180c1d=_0x37da25[_0x54db46];(typeof _0x180c1d!==_0x54bbb3(0x15f)||!Number[_0x54bbb3(0x1f6)](_0x180c1d)||_0x180c1d<0x0)&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.position.'+_0x54db46,'message':_0x54bbb3(0x12f)+_0x54db46+'\x20must\x20be\x20a\x20finite\x20number\x20greater\x20than\x20or\x20equal\x20to\x200.'});}if(_0x34b384['type']===_0x54bbb3(0x124)){const _0x439764=_0x34b384[_0x54bbb3(0x10b)]??_0x54bbb3(0x1e4),_0x299213=_0x34b384[_0x54bbb3(0x191)]??_0x54bbb3(0x124);!APPROVAL_TASK_MODES[_0x54bbb3(0x223)](_0x299213)&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.taskMode','message':'Unsupported\x20task\x20mode:\x20'+String(_0x299213)+'.'});!APPROVAL_MODES[_0x54bbb3(0x223)](_0x439764)&&_0x180b59['push']({'path':_0x2e9598+_0x54bbb3(0x229),'message':_0x54bbb3(0x129)+String(_0x439764)+'.'});if(!isRecord(_0x34b384[_0x54bbb3(0x15c)]))_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.assignee','message':_0x54bbb3(0x17d)});else{const _0x583161=_0x34b384[_0x54bbb3(0x15c)][_0x54bbb3(0x10c)];_0x583161!==_0x54bbb3(0x1de)&&_0x583161!==_0x54bbb3(0x14c)&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.assignee.strategy','message':_0x54bbb3(0x233)});if(_0x583161===_0x54bbb3(0x1de)){const _0x51fcd0=_0x34b384[_0x54bbb3(0x15c)]['userIds'];if(!Array[_0x54bbb3(0x13a)](_0x51fcd0)||_0x51fcd0[_0x54bbb3(0x251)]===0x0)_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x1a9),'message':_0x54bbb3(0x152)});else{const _0x2447ce=_0x51fcd0[_0x54bbb3(0x158)](_0x5a26b0=>!isValidUserId(_0x5a26b0));_0x2447ce>=0x0&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x1a8)+_0x2447ce+']','message':_0x54bbb3(0x173)});const _0x2a94b8=new Set(_0x51fcd0[_0x54bbb3(0x121)](isValidUserId)[_0x54bbb3(0x1f7)](_0x10c011=>String(_0x10c011)[_0x54bbb3(0x1d4)]()));_0x439764===_0x54bbb3(0x1e4)&&_0x2a94b8['size']>0x1&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x1a9),'message':'SINGLE\x20approval\x20supports\x20only\x20one\x20fixed\x20user.'});}}if(_0x583161===_0x54bbb3(0x14c)){const _0x5f0ca3=_0x34b384['assignee'][_0x54bbb3(0x115)],_0xbcf82e=typeof _0x5f0ca3===_0x54bbb3(0x15f)||typeof _0x5f0ca3===_0x54bbb3(0x10a)?Number(String(_0x5f0ca3)['trim']()):Number[_0x54bbb3(0x1a5)];(!Number[_0x54bbb3(0x202)](_0xbcf82e)||_0xbcf82e<=0x0)&&_0x180b59['push']({'path':_0x2e9598+'.assignee.roleId','message':'ROLE\x20assignee\x20requires\x20a\x20positive\x20integer\x20roleId.'});}}if(_0x34b384['transferCandidates']!==undefined){if(!isRecord(_0x34b384[_0x54bbb3(0x144)]))_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.transferCandidates','message':'transferCandidates\x20must\x20be\x20an\x20object.'});else{if(_0x34b384[_0x54bbb3(0x144)]['strategy']!==_0x54bbb3(0x1de))_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x12e),'message':_0x54bbb3(0x107)});else{const _0x3346f3=_0x34b384[_0x54bbb3(0x144)][_0x54bbb3(0x252)];if(!Array[_0x54bbb3(0x13a)](_0x3346f3)||_0x3346f3[_0x54bbb3(0x251)]===0x0)_0x180b59['push']({'path':_0x2e9598+_0x54bbb3(0x175),'message':_0x54bbb3(0x19e)});else{const _0x37b49f=_0x3346f3[_0x54bbb3(0x158)](_0xe50e06=>!isValidUserId(_0xe50e06));_0x37b49f>=0x0&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x23f)+_0x37b49f+']','message':'transfer\x20candidate\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.'});}}}}}_0x34b384[_0x54bbb3(0xfd)]!==undefined&&typeof _0x34b384[_0x54bbb3(0xfd)]!==_0x54bbb3(0x16e)&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+'.sequential','message':_0x54bbb3(0x246)});if(_0x34b384[_0x54bbb3(0x197)]===_0x54bbb3(0x1b1)){(typeof _0x34b384[_0x54bbb3(0x11c)]!=='string'||_0x34b384['scriptName'][_0x54bbb3(0x1d4)]()==='')&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x15d),'message':_0x54bbb3(0x1bf)});if(_0x34b384[_0x54bbb3(0x208)]!==undefined){if(typeof _0x34b384[_0x54bbb3(0x208)]!==_0x54bbb3(0x10a)||!VARIABLE_PATTERN[_0x54bbb3(0x172)](_0x34b384[_0x54bbb3(0x208)]))_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x149),'message':_0x54bbb3(0x1f8)});else(RESERVED_RESULT_VARIABLES[_0x54bbb3(0x223)](_0x34b384[_0x54bbb3(0x208)])||_0x34b384['resultVariable'][_0x54bbb3(0x199)](_0x54bbb3(0x1a4)))&&_0x180b59[_0x54bbb3(0x1e5)]({'path':_0x2e9598+_0x54bbb3(0x149),'message':_0x54bbb3(0x105)+_0x34b384['resultVariable']+'.'});}}validateAsyncExecution(_0x34b384,_0x2e9598,_0x180b59),validateApprovalTimeout(_0x34b384,_0x2e9598,_0x180b59),validateCcConfig(_0x34b384,_0x2e9598,_0x180b59),_0x34b384[_0x54bbb3(0x197)]===_0x54bbb3(0x211)&&validateNotificationConfig(_0x34b384[_0x54bbb3(0x24f)],_0x2e9598+_0x54bbb3(0x103),_0x180b59);}function validateAsyncExecution(_0xf81579,_0x1d1372,_0x18801b){const _0xf70028=a287_0x571368;if(_0xf81579[_0xf70028(0x18b)]===undefined)return;if(!isRecord(_0xf81579[_0xf70028(0x18b)])){_0x18801b['push']({'path':_0x1d1372+_0xf70028(0x204),'message':_0xf70028(0x193)});return;}if(_0xf81579[_0xf70028(0x18b)]['enabled']!==undefined&&typeof _0xf81579[_0xf70028(0x18b)][_0xf70028(0x1b0)]!=='boolean'){_0x18801b[_0xf70028(0x1e5)]({'path':_0x1d1372+'.async.enabled','message':_0xf70028(0x130)});return;}if(_0xf81579[_0xf70028(0x18b)][_0xf70028(0x1b0)]!==!![])return;_0xf81579[_0xf70028(0x197)]!==_0xf70028(0x1b1)&&_0x18801b['push']({'path':_0x1d1372+_0xf70028(0x204),'message':_0xf70028(0x22d)});const _0x2e2869=_0xf81579[_0xf70028(0x18b)][_0xf70028(0x238)]??0x3;(!Number['isInteger'](_0x2e2869)||_0x2e2869<0x1||_0x2e2869>MAX_ASYNC_RETRY_COUNT)&&_0x18801b[_0xf70028(0x1e5)]({'path':_0x1d1372+_0xf70028(0x161),'message':'SCRIPT\x20async\x20retryCount\x20must\x20be\x20between\x201\x20and\x20'+MAX_ASYNC_RETRY_COUNT+'.'}),_0xf81579[_0xf70028(0x18b)][_0xf70028(0x20c)]!==undefined&&validateTimeAmount(_0xf81579[_0xf70028(0x18b)][_0xf70028(0x20c)],_0x1d1372+'.async.retryInterval',_0x18801b);}function validateApprovalTimeout(_0x7d778d,_0x361af4,_0xb1c558){const _0x5532e8=a287_0x571368;if(_0x7d778d['timeout']===undefined)return;if(!isRecord(_0x7d778d[_0x5532e8(0x253)])){_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+_0x5532e8(0x196),'message':_0x5532e8(0x242)});return;}if(_0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x1b0)]!==undefined&&typeof _0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x1b0)]!==_0x5532e8(0x16e)){_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+_0x5532e8(0x100),'message':'timeout.enabled\x20must\x20be\x20a\x20boolean.'});return;}if(_0x7d778d['timeout'][_0x5532e8(0x1b0)]!==!![])return;if(_0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x11e)]!==undefined&&typeof _0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x11e)]!=='boolean'){_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+'.timeout.interrupting','message':_0x5532e8(0x249)});return;}_0x7d778d['type']!==_0x5532e8(0x124)&&_0xb1c558['push']({'path':_0x361af4+_0x5532e8(0x196),'message':_0x5532e8(0x1cf)});validateTimeAmount(_0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x1c5)],_0x361af4+_0x5532e8(0x131),_0xb1c558);const _0x23c0ed=_0x7d778d['timeout'][_0x5532e8(0x1af)];if(!APPROVAL_TIMEOUT_ACTIONS['has'](_0x23c0ed)){_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+'.timeout.action','message':_0x5532e8(0x20d)});return;}(_0x7d778d[_0x5532e8(0x191)]??_0x5532e8(0x124))===_0x5532e8(0x213)&&_0x23c0ed!=='EXECUTE_BFF'&&_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+_0x5532e8(0x1df),'message':_0x5532e8(0x186)});const _0x26091c=_0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x11e)]??_0x23c0ed!=='EXECUTE_BFF';if(_0x23c0ed===_0x5532e8(0x114))_0x26091c&&_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+'.timeout.interrupting','message':_0x5532e8(0x1ca)}),(typeof _0x7d778d[_0x5532e8(0x253)]['scriptName']!==_0x5532e8(0x10a)||_0x7d778d['timeout'][_0x5532e8(0x11c)]['trim']()==='')&&_0xb1c558[_0x5532e8(0x1e5)]({'path':_0x361af4+_0x5532e8(0x138),'message':_0x5532e8(0x118)}),validateOptionalResultVariable(_0x7d778d[_0x5532e8(0x253)][_0x5532e8(0x208)],_0x361af4+_0x5532e8(0x1a0),_0xb1c558);else!_0x26091c&&_0xb1c558['push']({'path':_0x361af4+_0x5532e8(0x24d),'message':_0x23c0ed+_0x5532e8(0x176)});}function validateTimeAmount(_0x5e2733,_0x4557d0,_0x207d76){const _0x2e0ec8=a287_0x571368;if(!isRecord(_0x5e2733)){_0x207d76[_0x2e0ec8(0x1e5)]({'path':_0x4557d0,'message':_0x2e0ec8(0x165)});return;}(!Number[_0x2e0ec8(0x22e)](_0x5e2733[_0x2e0ec8(0x190)])||Number(_0x5e2733['value'])<=0x0)&&_0x207d76['push']({'path':_0x4557d0+_0x2e0ec8(0x11b),'message':'duration\x20value\x20must\x20be\x20a\x20positive\x20integer.'}),!FLOW_TIME_UNITS[_0x2e0ec8(0x223)](_0x5e2733[_0x2e0ec8(0x220)])&&_0x207d76[_0x2e0ec8(0x1e5)]({'path':_0x4557d0+_0x2e0ec8(0x164),'message':_0x2e0ec8(0x21f)});}function validateOptionalResultVariable(_0x145817,_0x4318fc,_0x1dc2db){const _0x32e7c5=a287_0x571368;if(_0x145817===undefined||_0x145817===null||_0x145817==='')return;if(typeof _0x145817!=='string'||!VARIABLE_PATTERN[_0x32e7c5(0x172)](_0x145817))_0x1dc2db[_0x32e7c5(0x1e5)]({'path':_0x4318fc,'message':_0x32e7c5(0x1f8)});else(RESERVED_RESULT_VARIABLES[_0x32e7c5(0x223)](_0x145817)||_0x145817[_0x32e7c5(0x199)](_0x32e7c5(0x1a4)))&&_0x1dc2db[_0x32e7c5(0x1e5)]({'path':_0x4318fc,'message':_0x32e7c5(0x105)+_0x145817+'.'});}function validateCcConfig(_0x285cd7,_0x583be8,_0x386bcf){const _0x95d910=a287_0x571368;if(_0x285cd7['cc']===undefined)return;if(!isRecord(_0x285cd7['cc'])){_0x386bcf[_0x95d910(0x1e5)]({'path':_0x583be8+_0x95d910(0x1c0),'message':_0x95d910(0x179)});return;}_0x285cd7[_0x95d910(0x197)]!=='END'&&_0x285cd7[_0x95d910(0x197)]!==_0x95d910(0x124)&&_0x386bcf[_0x95d910(0x1e5)]({'path':_0x583be8+'.cc','message':'Default\x20cc\x20is\x20only\x20supported\x20by\x20APPROVAL\x20or\x20END\x20node.'});Object[_0x95d910(0x167)][_0x95d910(0x146)][_0x95d910(0x154)](_0x285cd7['cc'],_0x95d910(0x132))&&_0x386bcf[_0x95d910(0x1e5)]({'path':_0x583be8+_0x95d910(0x1fd),'message':UNSUPPORTED_FORM_MESSAGE});const _0x23792f=_0x285cd7['cc'][_0x95d910(0x110)];if(!Array[_0x95d910(0x13a)](_0x23792f)||_0x23792f[_0x95d910(0x251)]===0x0)_0x386bcf['push']({'path':_0x583be8+_0x95d910(0x24b),'message':_0x95d910(0x183)});else{_0x23792f['length']>MAX_CC_RECIPIENTS&&_0x386bcf[_0x95d910(0x1e5)]({'path':_0x583be8+_0x95d910(0x24b),'message':_0x95d910(0x126)+MAX_CC_RECIPIENTS+'\x20users.'});const _0x4999ae=new Set();_0x23792f[_0x95d910(0x18e)]((_0x123fc3,_0x145ad1)=>{const _0x58637d=_0x95d910;if(typeof _0x123fc3!==_0x58637d(0x10a)||_0x123fc3[_0x58637d(0x1d4)]()==='')_0x386bcf[_0x58637d(0x1e5)]({'path':_0x583be8+_0x58637d(0x24c)+_0x145ad1+']','message':_0x58637d(0x20a)});else _0x4999ae[_0x58637d(0x223)](_0x123fc3[_0x58637d(0x1d4)]())?_0x386bcf[_0x58637d(0x1e5)]({'path':_0x583be8+_0x58637d(0x24c)+_0x145ad1+']','message':_0x58637d(0x1b4)+_0x123fc3[_0x58637d(0x1d4)]()+'.'}):_0x4999ae['add'](_0x123fc3['trim']());});}validateStringArray(_0x285cd7['cc'][_0x95d910(0x1cd)],_0x583be8+'.cc.visible',_0x386bcf);}function validateStringArray(_0x4d66cb,_0x540796,_0x40c35f){const _0x3ab9e6=a287_0x571368;if(_0x4d66cb===undefined)return;if(!Array[_0x3ab9e6(0x13a)](_0x4d66cb)){_0x40c35f[_0x3ab9e6(0x1e5)]({'path':_0x540796,'message':_0x3ab9e6(0x241)});return;}const _0x1199f2=new Set();_0x4d66cb[_0x3ab9e6(0x18e)]((_0x1067e6,_0x4c7d7f)=>{const _0x5921c2=_0x3ab9e6;if(typeof _0x1067e6!=='string'||_0x1067e6[_0x5921c2(0x1d4)]()==='')_0x40c35f[_0x5921c2(0x1e5)]({'path':_0x540796+'['+_0x4c7d7f+']','message':_0x5921c2(0x219)});else _0x1199f2[_0x5921c2(0x223)](_0x1067e6[_0x5921c2(0x1d4)]())?_0x40c35f[_0x5921c2(0x1e5)]({'path':_0x540796+'['+_0x4c7d7f+']','message':_0x5921c2(0x192)+_0x1067e6[_0x5921c2(0x1d4)]()+'.'}):_0x1199f2[_0x5921c2(0x21c)](_0x1067e6[_0x5921c2(0x1d4)]());});}function validateNotificationConfig(_0x2200b6,_0x3295c9,_0x28a022){const _0x5f3d2c=a287_0x571368;if(!isRecord(_0x2200b6)){_0x28a022['push']({'path':_0x3295c9,'message':_0x5f3d2c(0x14b)});return;}if(_0x2200b6[_0x5f3d2c(0x1e6)]!==undefined&&_0x2200b6[_0x5f3d2c(0x1e6)]!==null){if(typeof _0x2200b6['version']!==_0x5f3d2c(0x10a))_0x28a022['push']({'path':_0x3295c9+'.version','message':_0x5f3d2c(0x19b)});else _0x2200b6[_0x5f3d2c(0x1e6)][_0x5f3d2c(0x1d4)]()&&_0x2200b6[_0x5f3d2c(0x1e6)][_0x5f3d2c(0x1d4)]()!=='v1'&&_0x28a022[_0x5f3d2c(0x1e5)]({'path':_0x3295c9+_0x5f3d2c(0x123),'message':_0x5f3d2c(0x10f)+_0x2200b6[_0x5f3d2c(0x1e6)]+'.'});}const _0x3caf32=requireNotificationString(_0x2200b6[_0x5f3d2c(0x215)],_0x3295c9+_0x5f3d2c(0x136),'Notification\x20configCode\x20is\x20required.',_0x28a022);_0x3caf32?.['includes']('${')&&_0x28a022[_0x5f3d2c(0x1e5)]({'path':_0x3295c9+_0x5f3d2c(0x136),'message':_0x5f3d2c(0x170)});if(_0x2200b6[_0x5f3d2c(0x19c)]!==undefined&&_0x2200b6[_0x5f3d2c(0x19c)]!==null){if(typeof _0x2200b6[_0x5f3d2c(0x19c)]!==_0x5f3d2c(0x10a))_0x28a022[_0x5f3d2c(0x1e5)]({'path':_0x3295c9+_0x5f3d2c(0x10e),'message':_0x5f3d2c(0xf6)});else!NOTIFICATION_FAILURE_POLICIES[_0x5f3d2c(0x223)](_0x2200b6[_0x5f3d2c(0x19c)]['trim']()[_0x5f3d2c(0x255)]())&&_0x28a022[_0x5f3d2c(0x1e5)]({'path':_0x3295c9+_0x5f3d2c(0x10e),'message':'failurePolicy\x20must\x20be\x20CONTINUE\x20or\x20FAIL.'});}!isRecord(_0x2200b6[_0x5f3d2c(0x1be)])?_0x28a022[_0x5f3d2c(0x1e5)]({'path':_0x3295c9+_0x5f3d2c(0x1c3),'message':_0x5f3d2c(0x17c)}):validateNotificationTemplate(_0x2200b6['template'],_0x3295c9+_0x5f3d2c(0x1c3),_0x28a022),validateNotificationRecipients(_0x2200b6[_0x5f3d2c(0x174)],_0x3295c9+'.recipients',_0x28a022);}function validateNotificationTemplate(_0x2900d7,_0x17412e,_0x3f3730){const _0x2807b7=a287_0x571368;for(const _0x5c2d72 of[_0x2807b7(0x104),_0x2807b7(0x1a7)]){const _0x1c9281=requireNotificationString(_0x2900d7[_0x5c2d72],_0x17412e+'.'+_0x5c2d72,_0x2807b7(0x1d0)+_0x5c2d72+_0x2807b7(0x1f5),_0x3f3730);if(_0x1c9281)validateNotificationPlaceholders(_0x1c9281,_0x17412e+'.'+_0x5c2d72,_0x3f3730);}_0x2900d7[_0x2807b7(0x1ef)]!==undefined&&_0x2900d7[_0x2807b7(0x1ef)]!==null&&(typeof _0x2900d7[_0x2807b7(0x1ef)]!=='string'?_0x3f3730['push']({'path':_0x17412e+'.detailMarkdown','message':_0x2807b7(0x135)}):validateNotificationPlaceholders(_0x2900d7['detailMarkdown'],_0x17412e+_0x2807b7(0x117),_0x3f3730)),validateNotificationFacts(_0x2900d7[_0x2807b7(0x230)],_0x17412e+'.facts',_0x3f3730),validateNotificationActions(_0x2900d7[_0x2807b7(0x221)],_0x17412e+'.actions',_0x3f3730);}function validateNotificationFacts(_0x4ed697,_0x3791dd,_0x35a76c){const _0x1404ff=a287_0x571368;if(_0x4ed697===undefined||_0x4ed697===null)return;if(!Array[_0x1404ff(0x13a)](_0x4ed697)){_0x35a76c[_0x1404ff(0x1e5)]({'path':_0x3791dd,'message':_0x1404ff(0x21e)});return;}_0x4ed697[_0x1404ff(0x251)]>MAX_NOTIFICATION_FACTS&&_0x35a76c[_0x1404ff(0x1e5)]({'path':_0x3791dd,'message':_0x1404ff(0x101)+MAX_NOTIFICATION_FACTS+_0x1404ff(0x141)}),_0x4ed697[_0x1404ff(0x18e)]((_0x165663,_0x3a3df2)=>{const _0x1056cd=_0x1404ff,_0xd6a11a=_0x3791dd+'['+_0x3a3df2+']';if(!isRecord(_0x165663)){_0x35a76c['push']({'path':_0xd6a11a,'message':_0x1056cd(0x1cb)});return;}for(const _0xc8bbc8 of[_0x1056cd(0x133),'value']){const _0x4f5779=requireNotificationString(_0x165663[_0xc8bbc8],_0xd6a11a+'.'+_0xc8bbc8,_0x1056cd(0x140)+_0xc8bbc8+_0x1056cd(0x1f5),_0x35a76c);_0x4f5779&&validateNotificationPlaceholders(_0x4f5779,_0xd6a11a+'.'+_0xc8bbc8,_0x35a76c);}});}function validateNotificationActions(_0x28e142,_0x506a0a,_0x54960c){const _0x5ba567=a287_0x571368;if(_0x28e142===undefined||_0x28e142===null)return;if(!Array[_0x5ba567(0x13a)](_0x28e142)){_0x54960c[_0x5ba567(0x1e5)]({'path':_0x506a0a,'message':_0x5ba567(0xf5)});return;}_0x28e142[_0x5ba567(0x251)]>MAX_NOTIFICATION_ACTIONS&&_0x54960c[_0x5ba567(0x1e5)]({'path':_0x506a0a,'message':_0x5ba567(0x101)+MAX_NOTIFICATION_ACTIONS+'\x20actions.'}),_0x28e142['forEach']((_0x23395f,_0x56b422)=>{const _0x51620f=_0x5ba567,_0x303f06=_0x506a0a+'['+_0x56b422+']';if(!isRecord(_0x23395f)){_0x54960c[_0x51620f(0x1e5)]({'path':_0x303f06,'message':_0x51620f(0x1d9)});return;}const _0x1686d2=requireNotificationString(_0x23395f['text'],_0x303f06+_0x51620f(0x1e1),'Notification\x20action.text\x20is\x20required.',_0x54960c);if(_0x1686d2)validateNotificationPlaceholders(_0x1686d2,_0x303f06+_0x51620f(0x1e1),_0x54960c);const _0x385f17=requireNotificationString(_0x23395f[_0x51620f(0x13d)],_0x303f06+_0x51620f(0x16b),'Notification\x20action.url\x20is\x20required.',_0x54960c);if(!_0x385f17)return;validateNotificationPlaceholders(_0x385f17,_0x303f06+_0x51620f(0x16b),_0x54960c),!/^https?:\/\//i[_0x51620f(0x172)](_0x385f17)&&!NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN[_0x51620f(0x172)](_0x385f17)&&_0x54960c[_0x51620f(0x1e5)]({'path':_0x303f06+_0x51620f(0x16b),'message':_0x51620f(0x20f)});});}function validateNotificationRecipients(_0x586410,_0x31c45e,_0x4310ff){const _0x2642d4=a287_0x571368;if(_0x586410===undefined||_0x586410===null)return;if(!Array['isArray'](_0x586410)){_0x4310ff[_0x2642d4(0x1e5)]({'path':_0x31c45e,'message':_0x2642d4(0x162)});return;}let _0x29c700=![];_0x586410['forEach']((_0x484320,_0x5b05e6)=>{const _0x3cec7e=_0x2642d4,_0x51b351=_0x31c45e+'['+_0x5b05e6+']';if(!isRecord(_0x484320)){_0x4310ff[_0x3cec7e(0x1e5)]({'path':_0x51b351,'message':_0x3cec7e(0x153)});return;}const _0x278ca1=requireNotificationString(_0x484320[_0x3cec7e(0x197)],_0x51b351+_0x3cec7e(0x244),_0x3cec7e(0x14a),_0x4310ff);_0x278ca1&&!NOTIFICATION_RECIPIENT_TYPES[_0x3cec7e(0x223)](_0x278ca1['toUpperCase']())&&_0x4310ff[_0x3cec7e(0x1e5)]({'path':_0x51b351+_0x3cec7e(0x244),'message':_0x3cec7e(0x12d)});let _0x351bc5='TO';_0x484320[_0x3cec7e(0x166)]!==undefined&&_0x484320['role']!==null&&(typeof _0x484320[_0x3cec7e(0x166)]!==_0x3cec7e(0x10a)?(_0x4310ff[_0x3cec7e(0x1e5)]({'path':_0x51b351+_0x3cec7e(0x1dc),'message':_0x3cec7e(0x1bd)}),_0x351bc5=''):(_0x351bc5=_0x484320['role'][_0x3cec7e(0x1d4)]()['toUpperCase'](),!NOTIFICATION_RECIPIENT_ROLES[_0x3cec7e(0x223)](_0x351bc5)&&_0x4310ff[_0x3cec7e(0x1e5)]({'path':_0x51b351+_0x3cec7e(0x1dc),'message':'Notification\x20recipient.role\x20must\x20be\x20TO,\x20CC,\x20or\x20BCC.'})));if(_0x351bc5==='TO')_0x29c700=!![];const _0x5c720e=requireNotificationString(_0x484320['value'],_0x51b351+_0x3cec7e(0x11b),_0x3cec7e(0x21b),_0x4310ff);_0x5c720e&&validateNotificationPlaceholders(_0x5c720e,_0x51b351+_0x3cec7e(0x11b),_0x4310ff);}),_0x586410['length']>0x0&&!_0x29c700&&_0x4310ff[_0x2642d4(0x1e5)]({'path':_0x31c45e,'message':_0x2642d4(0x187)});}function requireNotificationString(_0x4f29d5,_0x48a9e8,_0x58b439,_0x5e4320){const _0x3765b9=a287_0x571368;if(typeof _0x4f29d5!==_0x3765b9(0x10a)||_0x4f29d5[_0x3765b9(0x1d4)]()==='')return _0x5e4320[_0x3765b9(0x1e5)]({'path':_0x48a9e8,'message':_0x58b439}),undefined;return _0x4f29d5['trim']();}function validateNotificationPlaceholders(_0x33006d,_0xac492b,_0x16dea7){const _0xd2de64=a287_0x571368;for(const _0x2bd9c5 of _0x33006d['matchAll'](NOTIFICATION_PLACEHOLDER_PATTERN)){const _0x4e76eb=_0x2bd9c5[0x1]?.['trim']()??'',_0x2aaf8e=_0x4e76eb[_0xd2de64(0x23c)]('.'),_0x4a396c=_0x2aaf8e>=0x0?_0x4e76eb['slice'](0x0,_0x2aaf8e):_0x4e76eb,_0xc29e2e=_0x2aaf8e>=0x0?_0x4e76eb[_0xd2de64(0x1e7)](_0x2aaf8e+0x1)[_0xd2de64(0x1d4)]():'';(![_0xd2de64(0x139),_0xd2de64(0x12a),'variables'][_0xd2de64(0x15b)](_0x4a396c)||_0xc29e2e==='')&&_0x16dea7[_0xd2de64(0x1e5)]({'path':_0xac492b,'message':'Unsupported\x20notification\x20placeholder:\x20'+_0x2bd9c5[0x0]+'.'});}_0x33006d[_0xd2de64(0x200)](NOTIFICATION_PLACEHOLDER_PATTERN,'')[_0xd2de64(0x15b)]('${')&&_0x16dea7['push']({'path':_0xac492b,'message':_0xd2de64(0x180)});}function validateEdge(_0x20d935,_0x5b1ef0,_0x418a1c){const _0x502fa7=a287_0x571368;_0x20d935[_0x502fa7(0x127)]!==undefined&&typeof _0x20d935[_0x502fa7(0x127)]!==_0x502fa7(0x10a)&&_0x418a1c[_0x502fa7(0x1e5)]({'path':_0x5b1ef0+_0x502fa7(0x1d3),'message':_0x502fa7(0x147)}),_0x20d935[_0x502fa7(0x20e)]!==undefined&&typeof _0x20d935[_0x502fa7(0x20e)]!==_0x502fa7(0x16e)&&_0x418a1c[_0x502fa7(0x1e5)]({'path':_0x5b1ef0+_0x502fa7(0x178),'message':'defaultFlow\x20must\x20be\x20a\x20boolean.'}),_0x20d935[_0x502fa7(0x182)]!==undefined&&(!Array[_0x502fa7(0x13a)](_0x20d935[_0x502fa7(0x182)])?_0x418a1c[_0x502fa7(0x1e5)]({'path':_0x5b1ef0+_0x502fa7(0x227),'message':_0x502fa7(0x13b)}):_0x20d935[_0x502fa7(0x182)][_0x502fa7(0x18e)]((_0x232bdf,_0x153858)=>{const _0x2b59de=_0x502fa7;if(!isRecord(_0x232bdf)){_0x418a1c['push']({'path':_0x5b1ef0+_0x2b59de(0x224)+_0x153858+']','message':_0x2b59de(0x232)});return;}for(const _0x3633c6 of['x','y']){const _0x583a23=_0x232bdf[_0x3633c6];(typeof _0x583a23!==_0x2b59de(0x15f)||!Number[_0x2b59de(0x1f6)](_0x583a23))&&_0x418a1c[_0x2b59de(0x1e5)]({'path':_0x5b1ef0+'.waypoints['+_0x153858+'].'+_0x3633c6,'message':_0x2b59de(0x12c)+_0x3633c6+_0x2b59de(0x1ba)});}})),_0x20d935['conditionType']!==undefined&&!CONDITION_TYPES[_0x502fa7(0x223)](_0x20d935[_0x502fa7(0x23b)])&&_0x418a1c['push']({'path':_0x5b1ef0+_0x502fa7(0x19a),'message':_0x502fa7(0x1b3)+String(_0x20d935['conditionType'])+'.'}),_0x20d935[_0x502fa7(0x23b)]===_0x502fa7(0x225)&&(typeof _0x20d935['expression']!==_0x502fa7(0x10a)||_0x20d935[_0x502fa7(0x239)]['trim']()==='')&&_0x418a1c[_0x502fa7(0x1e5)]({'path':_0x5b1ef0+_0x502fa7(0x21d),'message':_0x502fa7(0x212)}),_0x20d935[_0x502fa7(0x20e)]===!![]&&_0x20d935['conditionType']!==_0x502fa7(0x18a)&&_0x418a1c['push']({'path':_0x5b1ef0+_0x502fa7(0x178),'message':'A\x20default\x20flow\x20must\x20use\x20conditionType\x20ALWAYS.'}),_0x20d935[_0x502fa7(0x20e)]===!![]&&typeof _0x20d935[_0x502fa7(0x239)]===_0x502fa7(0x10a)&&_0x20d935[_0x502fa7(0x239)][_0x502fa7(0x1d4)]()!==''&&_0x418a1c['push']({'path':_0x5b1ef0+_0x502fa7(0x21d),'message':_0x502fa7(0x16c)});}function validateGraphShape(_0x32d509,_0x140a86,_0x297484,_0x14e133,_0x2c7499,_0x4497b9,_0x355590){const _0x3ffe76=a287_0x571368;for(const [_0x4fce7f,_0x47af26]of _0x32d509){const _0x272608=_0x2c7499['get'](_0x4fce7f)??[],_0x32456a=_0x14e133[_0x3ffe76(0x19f)](_0x4fce7f)??[];_0x47af26[_0x3ffe76(0x197)]!==_0x3ffe76(0x22a)&&_0x272608[_0x3ffe76(0x251)]===0x0&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':_0x3ffe76(0x1f4)});_0x47af26[_0x3ffe76(0x197)]!==_0x3ffe76(0xfc)&&_0x32456a[_0x3ffe76(0x251)]===0x0&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':_0x3ffe76(0x145)});_0x47af26[_0x3ffe76(0x197)]===_0x3ffe76(0x22a)&&_0x272608['length']>0x0&&_0x355590[_0x3ffe76(0x1e5)]({'path':'flowJson.nodes.'+_0x4fce7f,'message':_0x3ffe76(0x160)});_0x47af26[_0x3ffe76(0x197)]==='END'&&_0x32456a[_0x3ffe76(0x251)]>0x0&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':'END\x20node\x20must\x20not\x20have\x20outgoing\x20edges.'});if(_0x47af26['type']===_0x3ffe76(0x1fc)){_0x32456a[_0x3ffe76(0x251)]<0x2&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':_0x3ffe76(0x23e)});const _0x5e2e7=_0x32456a['filter'](_0x4f3950=>_0x4f3950[_0x3ffe76(0x20e)]===!![]);_0x5e2e7[_0x3ffe76(0x251)]!==0x1&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':_0x3ffe76(0x111)});if(_0x5e2e7[_0x3ffe76(0x251)]===0x1){const _0xc637ac=_0x5e2e7[0x0],_0x46d407=_0x4497b9['get'](_0xc637ac)??_0x3ffe76(0x1fb);_0xc637ac[_0x3ffe76(0x23b)]!==_0x3ffe76(0x18a)&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x46d407+'.conditionType','message':_0x3ffe76(0x231)});_0xc637ac[_0x3ffe76(0x239)]!==undefined&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x46d407+'.expression','message':_0x3ffe76(0x1c6)});for(const _0x2cbb86 of _0x32456a){if(_0x2cbb86===_0xc637ac)continue;const _0x1196fa=_0x4497b9[_0x3ffe76(0x19f)](_0x2cbb86)??'flowJson.edges';if(_0x2cbb86[_0x3ffe76(0x23b)]!==_0x3ffe76(0x225))_0x355590[_0x3ffe76(0x1e5)]({'path':_0x1196fa+_0x3ffe76(0x19a),'message':_0x3ffe76(0x248)});else(typeof _0x2cbb86[_0x3ffe76(0x239)]!=='string'||_0x2cbb86['expression'][_0x3ffe76(0x1d4)]()==='')&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x1196fa+_0x3ffe76(0x21d),'message':_0x3ffe76(0x24a)});}}}if(_0x47af26[_0x3ffe76(0x197)]===_0x3ffe76(0x124)&&(_0x47af26[_0x3ffe76(0x191)]??_0x3ffe76(0x124))===_0x3ffe76(0x213)){if(_0x32456a[_0x3ffe76(0x251)]!==0x1)_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':'HANDLE\x20task\x20requires\x20exactly\x20one\x20outgoing\x20edge.'});else{const _0x194328=_0x32456a[0x0];((_0x194328[_0x3ffe76(0x23b)]??'ALWAYS')!==_0x3ffe76(0x18a)||_0x194328[_0x3ffe76(0x20e)]===!![]||typeof _0x194328['expression']==='string'&&_0x194328[_0x3ffe76(0x239)]['trim']()!=='')&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x4497b9[_0x3ffe76(0x19f)](_0x194328)??_0x3ffe76(0x1fb),'message':_0x3ffe76(0x235)});}}else{if(_0x47af26[_0x3ffe76(0x197)]==='APPROVAL'){const _0x14bcc6=_0x32456a[_0x3ffe76(0x1f7)](_0x33382a=>_0x33382a[_0x3ffe76(0x23b)]??_0x3ffe76(0x18a)),_0x43d282=_0x14bcc6['filter'](_0x8003a5=>_0x8003a5!==_0x3ffe76(0x102)&&_0x8003a5!==_0x3ffe76(0x169));_0x43d282['length']>0x0&&_0x355590[_0x3ffe76(0x1e5)]({'path':'flowJson.nodes.'+_0x4fce7f,'message':_0x3ffe76(0x128)}),_0x14bcc6['filter'](_0x2e8a5e=>_0x2e8a5e===_0x3ffe76(0x102))[_0x3ffe76(0x251)]!==0x1&&_0x355590[_0x3ffe76(0x1e5)]({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':_0x3ffe76(0x12b)}),_0x14bcc6[_0x3ffe76(0x121)](_0x4da2d9=>_0x4da2d9===_0x3ffe76(0x169))['length']!==0x1&&_0x355590['push']({'path':_0x3ffe76(0x1d2)+_0x4fce7f,'message':'APPROVAL\x20node\x20requires\x20exactly\x20one\x20REJECTED\x20outgoing\x20edge.'}),_0x32456a[_0x3ffe76(0x17e)](_0x4a0b7f=>_0x4a0b7f['defaultFlow']===!![])&&_0x355590['push']({'path':'flowJson.nodes.'+_0x4fce7f,'message':'APPROVAL\x20task\x20decision\x20edges\x20must\x20not\x20be\x20default\x20flows.'});}}}const _0x3bb34c=new Set(),_0x105d4b=_0x3412d4=>{const _0x5be179=_0x3ffe76;if(_0x3bb34c[_0x5be179(0x223)](_0x3412d4))return;_0x3bb34c[_0x5be179(0x21c)](_0x3412d4);for(const _0x36217b of _0x14e133[_0x5be179(0x19f)](_0x3412d4)??[]){const _0x4b2bf1=resolveEdgeEndpoint(_0x36217b[_0x5be179(0x151)],_0x36217b[_0x5be179(0x245)]);if(_0x4b2bf1&&_0x32d509[_0x5be179(0x223)](_0x4b2bf1))_0x105d4b(_0x4b2bf1);}};_0x105d4b(_0x140a86);for(const _0x3e0b1d of _0x32d509[_0x3ffe76(0x1eb)]()){!_0x3bb34c[_0x3ffe76(0x223)](_0x3e0b1d)&&_0x355590['push']({'path':'flowJson.nodes.'+_0x3e0b1d,'message':'Node\x20is\x20not\x20reachable\x20from\x20START.'});}const _0x543591=_0x297484[_0x3ffe76(0x17e)](_0x310c0c=>_0x3bb34c[_0x3ffe76(0x223)](_0x310c0c));if(!_0x543591){_0x355590[_0x3ffe76(0x1e5)]({'path':'flowJson.edges','message':_0x3ffe76(0x13c)});return;}const _0x36ceb3=new Set(),_0x3962b8=_0x560df4=>{const _0x2d9793=_0x3ffe76;if(_0x36ceb3[_0x2d9793(0x223)](_0x560df4))return;_0x36ceb3[_0x2d9793(0x21c)](_0x560df4);for(const _0x3d567f of _0x2c7499['get'](_0x560df4)??[]){const _0x5cc4cf=resolveEdgeEndpoint(_0x3d567f[_0x2d9793(0x16d)],_0x3d567f[_0x2d9793(0x112)]);if(_0x5cc4cf&&_0x32d509['has'](_0x5cc4cf))_0x3962b8(_0x5cc4cf);}};for(const _0x5e4a3d of _0x297484){if(_0x32d509[_0x3ffe76(0x223)](_0x5e4a3d))_0x3962b8(_0x5e4a3d);}for(const _0x115f22 of _0x3bb34c){!_0x36ceb3[_0x3ffe76(0x223)](_0x115f22)&&_0x355590[_0x3ffe76(0x1e5)]({'path':'flowJson.nodes.'+_0x115f22,'message':_0x3ffe76(0x113)});}}function validateApprovalResults(_0xfef2df,_0x2ffcab,_0x3ad10,_0x5dced3){const _0x3cbf0a=a287_0x571368;if(_0x2ffcab===0x0)return;const _0x33768f=new Set(_0x3ad10[_0x3cbf0a(0x1f7)](_0x1bd9fd=>_0xfef2df[_0x3cbf0a(0x19f)](_0x1bd9fd)?.['result'])[_0x3cbf0a(0x121)](_0x31b81e=>typeof _0x31b81e===_0x3cbf0a(0x10a)));for(const _0x390aa6 of[_0x3cbf0a(0x102),_0x3cbf0a(0x169)]){!_0x33768f[_0x3cbf0a(0x223)](_0x390aa6)&&_0x5dced3['push']({'path':_0x3cbf0a(0x24e),'message':_0x3cbf0a(0x247)+_0x390aa6+'.'});}}function validateScriptResultReferences(_0x4f570d,_0x52fc0c,_0x155434,_0x8a5f1f,_0x45af32,_0x3ff6a2,_0x2c39b8){const _0x1c1bcb=a287_0x571368;if(_0x3ff6a2[_0x1c1bcb(0x10d)]===0x0)return;const _0x452865=new Set(),_0x23d376=_0x4e4c01=>{const _0x3d5733=_0x1c1bcb;if(!_0x452865[_0x3d5733(0x223)](_0x4e4c01)&&_0x4f570d[_0x3d5733(0x223)](_0x4e4c01)){_0x452865[_0x3d5733(0x21c)](_0x4e4c01);for(const _0x58d4c7 of _0x155434[_0x3d5733(0x19f)](_0x4e4c01)??[]){const _0xc62f70=resolveEdgeEndpoint(_0x58d4c7[_0x3d5733(0x151)],_0x58d4c7['targetNodeId']);if(_0xc62f70)_0x23d376(_0xc62f70);}}};_0x23d376(_0x52fc0c);const _0x23dcb4=new Map();for(const _0x3d80a3 of _0x452865){_0x23dcb4['set'](_0x3d80a3,_0x3d80a3===_0x52fc0c?new Set([_0x52fc0c]):new Set(_0x452865));}let _0x227059=!![];while(_0x227059){_0x227059=![];for(const _0x2ed395 of _0x452865){if(_0x2ed395===_0x52fc0c)continue;const _0x30c7b3=(_0x8a5f1f[_0x1c1bcb(0x19f)](_0x2ed395)??[])[_0x1c1bcb(0x1f7)](_0x59a2b9=>resolveEdgeEndpoint(_0x59a2b9['source'],_0x59a2b9['sourceNodeId']))[_0x1c1bcb(0x121)](_0xb85d47=>Boolean(_0xb85d47&&_0x452865[_0x1c1bcb(0x223)](_0xb85d47)));if(_0x30c7b3[_0x1c1bcb(0x251)]===0x0)continue;const _0x6dfc42=new Set(_0x23dcb4[_0x1c1bcb(0x19f)](_0x30c7b3[0x0])??[]);for(const _0x516d6e of _0x30c7b3['slice'](0x1)){const _0x5b29f5=_0x23dcb4[_0x1c1bcb(0x19f)](_0x516d6e)??new Set();for(const _0x2cb75c of _0x6dfc42){if(!_0x5b29f5[_0x1c1bcb(0x223)](_0x2cb75c))_0x6dfc42[_0x1c1bcb(0x11f)](_0x2cb75c);}}_0x6dfc42[_0x1c1bcb(0x21c)](_0x2ed395);const _0x326a3a=_0x23dcb4[_0x1c1bcb(0x19f)](_0x2ed395);!setsEqual(_0x326a3a,_0x6dfc42)&&(_0x23dcb4[_0x1c1bcb(0x156)](_0x2ed395,_0x6dfc42),_0x227059=!![]);}}for(const [_0x26df53,_0x1cd992]of _0x155434){const _0x1162e4=_0x23dcb4[_0x1c1bcb(0x19f)](_0x26df53);if(!_0x1162e4)continue;for(const _0x53dd95 of _0x1cd992){if(_0x53dd95[_0x1c1bcb(0x23b)]!==_0x1c1bcb(0x225)||typeof _0x53dd95['expression']!==_0x1c1bcb(0x10a))continue;for(const [_0x2d5fc7,_0x4969da]of _0x3ff6a2){expressionReferencesVariable(_0x53dd95[_0x1c1bcb(0x239)],_0x2d5fc7)&&!_0x1162e4['has'](_0x4969da)&&_0x2c39b8['push']({'path':(_0x45af32[_0x1c1bcb(0x19f)](_0x53dd95)??_0x1c1bcb(0x1fb))+_0x1c1bcb(0x21d),'message':_0x1c1bcb(0x13f)+_0x2d5fc7+_0x1c1bcb(0x209)+_0x4969da+_0x1c1bcb(0xfe)+_0x26df53+'.'});}}}}function expressionReferencesVariable(_0x30c3e3,_0x39fb70){const _0x4600f3=a287_0x571368;let _0x18743f=0x0;while(_0x18743f<_0x30c3e3[_0x4600f3(0x251)]){const _0x25c972=_0x30c3e3[_0x18743f];if(_0x25c972==='\x27'||_0x25c972==='\x22'){_0x18743f=skipQuotedExpressionSegment(_0x30c3e3,_0x18743f,_0x25c972);continue;}if(!/[A-Za-z_]/[_0x4600f3(0x172)](_0x25c972)){_0x18743f+=0x1;continue;}const _0x47211c=_0x18743f;_0x18743f+=0x1;while(_0x18743f<_0x30c3e3['length']&&/[A-Za-z0-9_]/[_0x4600f3(0x172)](_0x30c3e3[_0x18743f])){_0x18743f+=0x1;}if(_0x30c3e3[_0x4600f3(0x1e7)](_0x47211c,_0x18743f)!==_0x39fb70)continue;let _0x3141ec=_0x47211c-0x1;while(_0x3141ec>=0x0&&/\s/[_0x4600f3(0x172)](_0x30c3e3[_0x3141ec])){_0x3141ec-=0x1;}if(_0x30c3e3[_0x3141ec]!=='.')return!![];}return![];}function skipQuotedExpressionSegment(_0x42db57,_0x480125,_0x140080){const _0x2342e6=a287_0x571368;let _0x30af34=_0x480125+0x1;while(_0x30af34<_0x42db57[_0x2342e6(0x251)]){if(_0x42db57[_0x30af34]==='\x5c'){_0x30af34+=0x2;continue;}if(_0x42db57[_0x30af34]===_0x140080)return _0x30af34+0x1;_0x30af34+=0x1;}return _0x30af34;}function resolveEffectiveResultVariable(_0x9a91b6,_0x4a0f05){const _0x58cfad=a287_0x571368;if(_0x9a91b6===undefined||_0x9a91b6===null||_0x4a0f05&&_0x9a91b6==='')return DEFAULT_SCRIPT_RESULT_VARIABLE;if(typeof _0x9a91b6!==_0x58cfad(0x10a)||!VARIABLE_PATTERN[_0x58cfad(0x172)](_0x9a91b6)||RESERVED_RESULT_VARIABLES[_0x58cfad(0x223)](_0x9a91b6)||_0x9a91b6[_0x58cfad(0x199)](_0x58cfad(0x1a4)))return undefined;return _0x9a91b6;}function registerResultVariableOwner(_0x512dc1,_0x313a25,_0x59a6e4,_0x1f2489){const _0x46f3d4=a287_0x571368;if(_0x512dc1[_0x46f3d4(0x223)](_0x313a25)){_0x1f2489[_0x46f3d4(0x1e5)]({'path':'flowJson.nodes','message':'Duplicate\x20resultVariable:\x20'+_0x313a25+'.'});return;}_0x512dc1[_0x46f3d4(0x156)](_0x313a25,_0x59a6e4);}function setsEqual(_0x22dbb8,_0x404a19){const _0x11b838=a287_0x571368;return _0x22dbb8[_0x11b838(0x10d)]===_0x404a19[_0x11b838(0x10d)]&&[..._0x22dbb8][_0x11b838(0x1f2)](_0x1683b8=>_0x404a19[_0x11b838(0x223)](_0x1683b8));}function isValidUserId(_0x60b95e){const _0x530bea=a287_0x571368;if(typeof _0x60b95e===_0x530bea(0x10a))return _0x60b95e[_0x530bea(0x1d4)]()['length']>0x0;return Number[_0x530bea(0x202)](_0x60b95e)&&Number(_0x60b95e)>0x0;}function resolveEdgeEndpoint(_0x5e6d08,_0x1c8707){const _0x29f639=a287_0x571368;if(typeof _0x5e6d08==='string'&&_0x5e6d08[_0x29f639(0x1d4)]())return _0x5e6d08[_0x29f639(0x1d4)]();if(typeof _0x1c8707==='string'&&_0x1c8707[_0x29f639(0x1d4)]())return _0x1c8707[_0x29f639(0x1d4)]();return undefined;}function removeEmptyMetadata(_0x332a7a,_0x116f54,_0x4afbb1,_0x19560e){const _0x5491a1=a287_0x571368;if(Array[_0x5491a1(0x13a)](_0x332a7a)){_0x332a7a[_0x5491a1(0x18e)]((_0x2c6f28,_0x2b2b3f)=>removeEmptyMetadata(_0x2c6f28,_0x116f54+'['+_0x2b2b3f+']',_0x4afbb1,_0x19560e));return;}if(!isRecord(_0x332a7a))return;for(const [_0x474167,_0x5d8026]of Object['entries'](_0x332a7a)){const _0x3093f4=_0x116f54+'.'+_0x474167;if(_0x474167===_0x5491a1(0x1f0)&&isEmptyJsonValue(_0x5d8026)){delete _0x332a7a[_0x474167],_0x19560e[_0x5491a1(0x1e5)](_0x3093f4),_0x4afbb1['push']({'code':'empty_metadata_removed','path':_0x3093f4,'message':_0x3093f4+_0x5491a1(0xfb)});continue;}removeEmptyMetadata(_0x5d8026,_0x3093f4,_0x4afbb1,_0x19560e);}}function isEmptyJsonValue(_0x28a594){const _0x2e02be=a287_0x571368;if(_0x28a594===null||_0x28a594===undefined)return!![];if(typeof _0x28a594==='string')return _0x28a594[_0x2e02be(0x1d4)]()==='';if(Array[_0x2e02be(0x13a)](_0x28a594))return _0x28a594[_0x2e02be(0x251)]===0x0;return isRecord(_0x28a594)&&Object[_0x2e02be(0x1eb)](_0x28a594)[_0x2e02be(0x251)]===0x0;}function isRecord(_0x20b865){const _0x594ffc=a287_0x571368;return typeof _0x20b865===_0x594ffc(0x1c4)&&_0x20b865!==null&&!Array[_0x594ffc(0x13a)](_0x20b865);}function cloneJsonValue(_0x5f5190){const _0x1328bb=a287_0x571368;return JSON['parse'](JSON[_0x1328bb(0x1e3)](_0x5f5190));}export async function readFlowConfigFile(_0x4e6e2e){const _0xd5e296=a287_0x571368,_0x3e0dd1=await readFile(resolve(_0x4e6e2e),_0xd5e296(0x1e8));return JSON[_0xd5e296(0x1b9)](_0x3e0dd1);}
|
|
1
|
+
const a287_0x8cf25c=a287_0x3c35;(function(_0x2514b3,_0x2a1707){const _0xaff9c8=a287_0x3c35,_0x4a3b54=_0x2514b3();while(!![]){try{const _0x26d730=-parseInt(_0xaff9c8(0x2f0))/0x1*(parseInt(_0xaff9c8(0x1d4))/0x2)+parseInt(_0xaff9c8(0x290))/0x3*(-parseInt(_0xaff9c8(0x2d0))/0x4)+parseInt(_0xaff9c8(0x30b))/0x5*(parseInt(_0xaff9c8(0x1c1))/0x6)+parseInt(_0xaff9c8(0x259))/0x7*(-parseInt(_0xaff9c8(0x1b7))/0x8)+parseInt(_0xaff9c8(0x257))/0x9+-parseInt(_0xaff9c8(0x2a8))/0xa+parseInt(_0xaff9c8(0x233))/0xb;if(_0x26d730===_0x2a1707)break;else _0x4a3b54['push'](_0x4a3b54['shift']());}catch(_0x25912b){_0x4a3b54['push'](_0x4a3b54['shift']());}}}(a287_0x182b,0x88390));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':a287_0x8cf25c(0x207),'$id':a287_0x8cf25c(0x31f),'title':a287_0x8cf25c(0x1c8),'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x1fa),a287_0x8cf25c(0x286),a287_0x8cf25c(0x2fb)],'$defs':{'userId':{'anyOf':[{'type':a287_0x8cf25c(0x1da),'minLength':0x1},{'type':a287_0x8cf25c(0x245),'minimum':0x1}]},'position':{'type':a287_0x8cf25c(0x2c7),'required':['x','y'],'properties':{'x':{'type':a287_0x8cf25c(0x22f),'minimum':0x0},'y':{'type':'number','minimum':0x0}},'additionalProperties':!![]},'timeAmount':{'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x1c0),'unit'],'properties':{'value':{'type':a287_0x8cf25c(0x245),'minimum':0x1},'unit':{'enum':[a287_0x8cf25c(0x2d9),a287_0x8cf25c(0x31b),a287_0x8cf25c(0x254),'DAYS']}},'additionalProperties':!![]},'flowNode':{'type':a287_0x8cf25c(0x2c7),'required':['id','type','name','position'],'properties':{'id':{'type':a287_0x8cf25c(0x1da),'pattern':a287_0x8cf25c(0x2a3)},'type':{'enum':['START',a287_0x8cf25c(0x20c),a287_0x8cf25c(0x307),a287_0x8cf25c(0x300),a287_0x8cf25c(0x1df),a287_0x8cf25c(0x2ea)]},'name':{'type':'string','minLength':0x1},'path':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'position':{'$ref':a287_0x8cf25c(0x241)},'approvalMode':{'enum':[a287_0x8cf25c(0x2e2),'ALL',a287_0x8cf25c(0x288)]},'taskMode':{'enum':['APPROVAL','HANDLE']},'assignee':{'type':'object','required':['strategy'],'properties':{'strategy':{'enum':['FIXED',a287_0x8cf25c(0x278)]},'userIds':{'type':a287_0x8cf25c(0x2db),'minItems':0x1,'items':{'$ref':a287_0x8cf25c(0x1f8)}},'roleId':{'anyOf':[{'type':'integer','minimum':0x1},{'type':a287_0x8cf25c(0x1da),'pattern':a287_0x8cf25c(0x211)}]}},'additionalProperties':!![]},'transferCandidates':{'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x2f6),a287_0x8cf25c(0x1d7)],'properties':{'strategy':{'const':a287_0x8cf25c(0x309)},'userIds':{'type':a287_0x8cf25c(0x2db),'minItems':0x1,'items':{'$ref':'#/$defs/userId'}}},'additionalProperties':!![]},'sequential':{'type':a287_0x8cf25c(0x1e4)},'result':{'enum':[a287_0x8cf25c(0x253),a287_0x8cf25c(0x2cf)]},'scriptName':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'resultVariable':{'type':a287_0x8cf25c(0x1da),'pattern':a287_0x8cf25c(0x2a3)},'async':{'type':'object','properties':{'enabled':{'type':a287_0x8cf25c(0x1e4)},'retryCount':{'type':a287_0x8cf25c(0x245),'minimum':0x1,'maximum':0xa},'retryInterval':{'$ref':a287_0x8cf25c(0x2da)}},'additionalProperties':!![]},'timeout':{'type':a287_0x8cf25c(0x2c7),'properties':{'enabled':{'type':'boolean'},'duration':{'$ref':a287_0x8cf25c(0x2da)},'action':{'enum':[a287_0x8cf25c(0x214),a287_0x8cf25c(0x25a),'EXECUTE_BFF']},'interrupting':{'type':a287_0x8cf25c(0x1e4)},'scriptName':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'resultVariable':{'type':a287_0x8cf25c(0x1da),'pattern':a287_0x8cf25c(0x2a3)}},'additionalProperties':!![]},'cc':{'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x28f)],'properties':{'recipientUserIds':{'type':a287_0x8cf25c(0x2db),'minItems':0x1,'maxItems':0x64,'uniqueItems':!![],'items':{'type':'string','minLength':0x1}},'visible':{'type':a287_0x8cf25c(0x2db),'uniqueItems':!![],'items':{'type':a287_0x8cf25c(0x1da),'minLength':0x1}},'readSources':![]},'additionalProperties':!![]},'config':{'type':a287_0x8cf25c(0x2c7),'required':['configCode',a287_0x8cf25c(0x1b9)],'properties':{'version':{'enum':['v1']},'configCode':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'failurePolicy':{'enum':[a287_0x8cf25c(0x280),a287_0x8cf25c(0x293)]},'template':{'type':'object','required':['title','summary'],'properties':{'title':{'type':'string','minLength':0x1},'summary':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'detailMarkdown':{'type':a287_0x8cf25c(0x1da)},'facts':{'type':a287_0x8cf25c(0x2db),'maxItems':0x8,'items':{'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x311),a287_0x8cf25c(0x1c0)],'properties':{'label':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'value':{'type':a287_0x8cf25c(0x1da),'minLength':0x1}},'additionalProperties':!![]}},'actions':{'type':a287_0x8cf25c(0x2db),'maxItems':0x2,'items':{'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x26b),a287_0x8cf25c(0x23c)],'properties':{'text':{'type':'string','minLength':0x1},'url':{'type':a287_0x8cf25c(0x1da),'minLength':0x1}},'additionalProperties':!![]}}},'additionalProperties':!![]},'recipients':{'type':a287_0x8cf25c(0x2db),'items':{'type':a287_0x8cf25c(0x2c7),'required':[a287_0x8cf25c(0x23e),a287_0x8cf25c(0x1c0)],'properties':{'type':{'enum':[a287_0x8cf25c(0x28b),a287_0x8cf25c(0x278),a287_0x8cf25c(0x267)]},'value':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'role':{'enum':['TO','CC',a287_0x8cf25c(0x287)]}},'additionalProperties':!![]}}},'additionalProperties':!![]},'form':![],'formPermission':![]},'additionalProperties':!![]},'flowEdge':{'type':a287_0x8cf25c(0x2c7),'properties':{'id':{'type':a287_0x8cf25c(0x1da),'pattern':a287_0x8cf25c(0x2a3)},'source':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'target':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'sourceNodeId':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'targetNodeId':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'conditionType':{'enum':['ALWAYS',a287_0x8cf25c(0x253),a287_0x8cf25c(0x2cf),'EXPRESSION']},'expression':{'type':a287_0x8cf25c(0x1da)},'defaultFlow':{'type':'boolean'},'name':{'type':a287_0x8cf25c(0x1da)},'waypoints':{'type':a287_0x8cf25c(0x2db),'items':{'$ref':a287_0x8cf25c(0x241)}}},'allOf':[{'anyOf':[{'required':[a287_0x8cf25c(0x25d)]},{'required':[a287_0x8cf25c(0x26f)]}]},{'anyOf':[{'required':['target']},{'required':[a287_0x8cf25c(0x25e)]}]}],'additionalProperties':!![]}},'properties':{'id':![],'appCode':![],'flowName':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'flowDesc':{'type':a287_0x8cf25c(0x1da)},'flowType':{'enum':[a287_0x8cf25c(0x1e0),a287_0x8cf25c(0x315)]},'datasetCode':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'pageId':{'type':a287_0x8cf25c(0x245)},'templateName':![],'flowJson':{'type':'object','required':[a287_0x8cf25c(0x24b),a287_0x8cf25c(0x1e7)],'properties':{'flowKey':![],'flowCode':![],'flowName':![],'bindDatasetCode':![],'datasetCode':![],'appCode':![],'pageId':![],'templateName':![],'schemaVersion':{'type':a287_0x8cf25c(0x1da),'const':a287_0x8cf25c(0x21d),'description':'Accepted\x20as\x20legacy\x20input\x20and\x20removed\x20during\x20normalization;\x20other\x20versions\x20are\x20unsupported.'},'formSchema':![],'formDefinitions':![],'formPermissions':![],'pageMode':{'const':'CUSTOM_PAGE'},'startPageId':![],'startPath':{'type':a287_0x8cf25c(0x1da),'minLength':0x1},'nodes':{'type':a287_0x8cf25c(0x2db),'minItems':0x1,'items':{'$ref':a287_0x8cf25c(0x1ff)}},'edges':{'type':a287_0x8cf25c(0x2db),'minItems':0x1,'items':{'$ref':a287_0x8cf25c(0x1f3)}}},'additionalProperties':!![]}},'additionalProperties':!![]};const REMOVED_FLOW_JSON_FIELDS=[a287_0x8cf25c(0x27e),a287_0x8cf25c(0x249),'flowName',a287_0x8cf25c(0x28a),a287_0x8cf25c(0x204),a287_0x8cf25c(0x2e3),'pageId',a287_0x8cf25c(0x1c2)],REMOVED_ROOT_FIELDS=['id','appCode','templateName'],DEFAULT_FLOW_SCHEMA_VERSION=a287_0x8cf25c(0x21d),NODE_TYPES=new Set(['START',a287_0x8cf25c(0x20c),'APPROVAL','CONDITION',a287_0x8cf25c(0x1df),a287_0x8cf25c(0x2ea)]),CONDITION_TYPES=new Set(['ALWAYS',a287_0x8cf25c(0x253),a287_0x8cf25c(0x2cf),a287_0x8cf25c(0x21b)]),APPROVAL_MODES=new Set(['SINGLE',a287_0x8cf25c(0x2ad),a287_0x8cf25c(0x288)]),APPROVAL_TASK_MODES=new Set([a287_0x8cf25c(0x307),a287_0x8cf25c(0x1f1)]),FLOW_TIME_UNITS=new Set([a287_0x8cf25c(0x2d9),a287_0x8cf25c(0x31b),a287_0x8cf25c(0x254),a287_0x8cf25c(0x2dc)]),APPROVAL_TIMEOUT_ACTIONS=new Set(['AUTO_APPROVE',a287_0x8cf25c(0x25a),a287_0x8cf25c(0x2c3)]),FLOW_TYPES=new Set([a287_0x8cf25c(0x1e0),a287_0x8cf25c(0x315)]),FLOW_PAGE_MODES=new Set([a287_0x8cf25c(0x230),a287_0x8cf25c(0x292)]),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([a287_0x8cf25c(0x280),a287_0x8cf25c(0x293)]),NOTIFICATION_RECIPIENT_TYPES=new Set([a287_0x8cf25c(0x28b),a287_0x8cf25c(0x278),a287_0x8cf25c(0x267)]),NOTIFICATION_RECIPIENT_ROLES=new Set(['TO','CC',a287_0x8cf25c(0x287)]),MAX_NOTIFICATION_FACTS=0x8,MAX_NOTIFICATION_ACTIONS=0x2,MAX_ASYNC_RETRY_COUNT=0xa,MAX_CC_RECIPIENTS=0x64,DEFAULT_SCRIPT_RESULT_VARIABLE=a287_0x8cf25c(0x1ee),UNSUPPORTED_FORM_MESSAGE=a287_0x8cf25c(0x24a),UNSUPPORTED_PLATFORM_FORM_MESSAGE=a287_0x8cf25c(0x27a),RESERVED_RESULT_VARIABLES=new Set([a287_0x8cf25c(0x2ca),a287_0x8cf25c(0x1f5),a287_0x8cf25c(0x2a4),a287_0x8cf25c(0x222),a287_0x8cf25c(0x213),a287_0x8cf25c(0x2a1),a287_0x8cf25c(0x252),'approval_sys_pageId',a287_0x8cf25c(0x303),a287_0x8cf25c(0x308)]);export function normalizeFlowConfig(_0x1ea783){const _0x4bf56d=a287_0x8cf25c;if(!isRecord(_0x1ea783))throw new TypeError('FlowConfig\x20must\x20be\x20a\x20JSON\x20object.');const _0x388f2a=cloneJsonValue(_0x1ea783),_0x3facda=_0x388f2a[_0x4bf56d(0x2fb)],_0x3f9721=isRecord(_0x3facda)?cloneJsonValue(_0x3facda):{},_0x579740=[],_0x5d3dd3=[];for(const _0x52d4bf of REMOVED_ROOT_FIELDS){if(!Object['prototype'][_0x4bf56d(0x1de)]['call'](_0x388f2a,_0x52d4bf))continue;delete _0x388f2a[_0x52d4bf],_0x5d3dd3[_0x4bf56d(0x1db)](_0x52d4bf),_0x579740[_0x4bf56d(0x1db)]({'code':'legacy_field_removed','path':_0x52d4bf,'message':_0x52d4bf+_0x4bf56d(0x2bc)});}for(const _0x36b92e of REMOVED_FLOW_JSON_FIELDS){if(!Object[_0x4bf56d(0x2ac)][_0x4bf56d(0x1de)][_0x4bf56d(0x2c6)](_0x3f9721,_0x36b92e))continue;const _0x445da7='flowJson.'+_0x36b92e;delete _0x3f9721[_0x36b92e],_0x5d3dd3[_0x4bf56d(0x1db)](_0x445da7),_0x579740['push']({'code':_0x4bf56d(0x2cc),'path':_0x445da7,'message':_0x445da7+_0x4bf56d(0x2bc)});}if(Object[_0x4bf56d(0x2ac)][_0x4bf56d(0x1de)][_0x4bf56d(0x2c6)](_0x3f9721,_0x4bf56d(0x2af))){const _0x5e6b17=_0x3f9721[_0x4bf56d(0x2af)],_0x20f75a=typeof _0x5e6b17===_0x4bf56d(0x1da)?_0x5e6b17['trim']():_0x5e6b17;if(isEmptyJsonValue(_0x5e6b17)||_0x20f75a===DEFAULT_FLOW_SCHEMA_VERSION){const _0x4db7e1=_0x4bf56d(0x221);delete _0x3f9721['schemaVersion'],_0x5d3dd3['push'](_0x4db7e1),_0x579740[_0x4bf56d(0x1db)]({'code':'legacy_field_removed','path':_0x4db7e1,'message':_0x4db7e1+'\x20was\x20empty\x20or\x20used\x20the\x20default\x20'+DEFAULT_FLOW_SCHEMA_VERSION+_0x4bf56d(0x235)});}}removeEmptyMetadata(_0x3f9721,'flowJson',_0x579740,_0x5d3dd3);_0x388f2a[_0x4bf56d(0x286)]===_0x4bf56d(0x315)&&!Object[_0x4bf56d(0x2ac)][_0x4bf56d(0x1de)][_0x4bf56d(0x2c6)](_0x3f9721,_0x4bf56d(0x212))&&(_0x3f9721['pageMode']=_0x4bf56d(0x230));_0x388f2a['flowJson']=_0x3f9721;if(typeof _0x388f2a[_0x4bf56d(0x1fa)]==='string')_0x388f2a[_0x4bf56d(0x1fa)]=_0x388f2a['flowName']['trim']();return{'config':_0x388f2a,'warnings':_0x579740,'removedPaths':_0x5d3dd3};}export function validateFlowConfig(_0x3e97cc){const _0x54e224=a287_0x8cf25c;let _0x5054e8;try{_0x5054e8=normalizeFlowConfig(_0x3e97cc);}catch(_0x802251){const _0x58aa13=_0x802251 instanceof Error?_0x802251['message']:String(_0x802251),_0x35aeea={'flowJson':{}};return{'valid':![],'errors':[{'path':'$','message':_0x58aa13}],'warnings':[],'normalized':_0x35aeea,'validationConfig':_0x35aeea};}const _0xa55f8d=_0x5054e8[_0x54e224(0x28d)],_0x2f7997=cloneJsonValue(_0xa55f8d),_0x3cd3e5=_0x2f7997[_0x54e224(0x2fb)];_0x3cd3e5[_0x54e224(0x27e)]=_0x54e224(0x237),_0x3cd3e5[_0x54e224(0x1fa)]=_0xa55f8d[_0x54e224(0x1fa)];typeof _0xa55f8d[_0x54e224(0x204)]==='string'&&_0xa55f8d['datasetCode'][_0x54e224(0x1d3)]()&&(_0x3cd3e5[_0x54e224(0x28a)]=_0xa55f8d[_0x54e224(0x204)][_0x54e224(0x1d3)]());const _0x404d7d=[];return validateOuterMetadata(_0xa55f8d,_0x404d7d),validateFlowClassification(_0xa55f8d,_0x404d7d),validateGraph(_0xa55f8d[_0x54e224(0x2fb)],_0x404d7d),{'valid':_0x404d7d[_0x54e224(0x318)]===0x0,'errors':_0x404d7d,'warnings':_0x5054e8['warnings'],'normalized':_0xa55f8d,'validationConfig':_0x2f7997};}function validateFlowClassification(_0x4df875,_0x1c25be){const _0x328cf6=a287_0x8cf25c;if(!isRecord(_0x4df875['flowJson']))return;const _0x28cc01=_0x4df875[_0x328cf6(0x286)],_0x5d4f3c=_0x4df875[_0x328cf6(0x2fb)][_0x328cf6(0x212)];_0x5d4f3c!==undefined&&(typeof _0x5d4f3c!==_0x328cf6(0x1da)||!FLOW_PAGE_MODES[_0x328cf6(0x2ae)](_0x5d4f3c))&&_0x1c25be[_0x328cf6(0x1db)]({'path':_0x328cf6(0x283),'message':_0x328cf6(0x23a)+String(_0x5d4f3c)+'.'});_0x28cc01===_0x328cf6(0x1e0)&&_0x5d4f3c!==undefined&&_0x1c25be[_0x328cf6(0x1db)]({'path':'flowJson.pageMode','message':_0x328cf6(0x22c)});_0x28cc01===_0x328cf6(0x315)&&_0x5d4f3c==='PLATFORM_FORM'&&_0x1c25be['push']({'path':'flowJson.pageMode','message':UNSUPPORTED_PLATFORM_FORM_MESSAGE});(_0x28cc01===_0x328cf6(0x1e0)||_0x28cc01===_0x328cf6(0x315))&&validateCustomPageNavigation(_0x4df875,_0x28cc01,_0x5d4f3c,_0x1c25be);if(_0x28cc01!==_0x328cf6(0x1e0)||!Array[_0x328cf6(0x2df)](_0x4df875[_0x328cf6(0x2fb)][_0x328cf6(0x24b)]))return;_0x4df875[_0x328cf6(0x2fb)][_0x328cf6(0x24b)][_0x328cf6(0x236)]((_0x43751f,_0x48d12e)=>{const _0x4e8649=_0x328cf6;isRecord(_0x43751f)&&_0x43751f[_0x4e8649(0x23e)]===_0x4e8649(0x307)&&_0x43751f[_0x4e8649(0x2a0)]==='HANDLE'&&_0x1c25be['push']({'path':_0x4e8649(0x2fa)+_0x48d12e+_0x4e8649(0x2e4),'message':_0x4e8649(0x1cb)});});}function validateCustomPageNavigation(_0x4af14d,_0x5edb3b,_0x252f6c,_0xc29c9c){const _0x2284fc=a287_0x8cf25c,_0x5d9953=_0x4af14d[_0x2284fc(0x2fb)][_0x2284fc(0x2b2)];_0x5d9953!==undefined&&_0xc29c9c['push']({'path':_0x2284fc(0x304),'message':_0x2284fc(0x1ec)});const _0x417f70=_0x4af14d['flowJson'][_0x2284fc(0x240)];_0x417f70!==undefined&&(typeof _0x417f70!==_0x2284fc(0x1da)||_0x417f70[_0x2284fc(0x1d3)]()==='')&&_0xc29c9c[_0x2284fc(0x1db)]({'path':_0x2284fc(0x1c7),'message':_0x2284fc(0x1bf)});const _0x2eaa0c=Array[_0x2284fc(0x2df)](_0x4af14d[_0x2284fc(0x2fb)][_0x2284fc(0x24b)])?_0x4af14d[_0x2284fc(0x2fb)][_0x2284fc(0x24b)][_0x2284fc(0x2ab)]((_0x3c0bfd,_0x28991e)=>({'node':_0x3c0bfd,'index':_0x28991e}))[_0x2284fc(0x255)](({node:_0x540bb0})=>isRecord(_0x540bb0)&&_0x540bb0['path']!==undefined):[],_0xf58da5=_0x417f70!==undefined||_0x2eaa0c[_0x2284fc(0x318)]>0x0,_0x479509=_0x252f6c===undefined&&_0x5edb3b===_0x2284fc(0x315)?_0x2284fc(0x230):_0x252f6c;_0xf58da5&&(_0x5edb3b!=='INDEPENDENT_FLOW'||_0x479509!=='CUSTOM_PAGE')&&(_0x417f70!==undefined&&_0xc29c9c[_0x2284fc(0x1db)]({'path':_0x2284fc(0x1c7),'message':'startPath\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.'}),_0x2eaa0c[_0x2284fc(0x236)](({index:_0x3a949e})=>{const _0x37d374=_0x2284fc;_0xc29c9c[_0x37d374(0x1db)]({'path':_0x37d374(0x2fa)+_0x3a949e+_0x37d374(0x265),'message':'node\x20path\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.'});}));}export async function writeNormalizedFlowConfig(_0x461c0d,_0x3c2706,_0x3b8978={}){const _0x2a0a1f=a287_0x8cf25c,_0x2addab=resolve(_0x461c0d),_0x5cd8a9=_0x2addab+'.'+process['pid']+'.'+randomUUID()+_0x2a0a1f(0x262),_0x147c4a=JSON[_0x2a0a1f(0x246)](_0x3c2706,null,0x2)+'\x0a';let _0x153ac3;try{try{_0x153ac3=(await stat(_0x2addab))['mode']&0x1ff;}catch{_0x153ac3=undefined;}await writeFile(_0x5cd8a9,_0x147c4a,{'encoding':_0x2a0a1f(0x219),'flag':'wx','mode':_0x153ac3??0x1a4});if(_0x153ac3!==undefined)await chmod(_0x5cd8a9,_0x153ac3);_0x3b8978[_0x2a0a1f(0x270)]===![]?(await link(_0x5cd8a9,_0x2addab),await unlink(_0x5cd8a9)):await rename(_0x5cd8a9,_0x2addab);}finally{await unlink(_0x5cd8a9)[_0x2a0a1f(0x2fc)](()=>undefined);}}function validateOuterMetadata(_0x4b8c86,_0x5ecbe2){const _0x14598d=a287_0x8cf25c;(typeof _0x4b8c86[_0x14598d(0x1fa)]!==_0x14598d(0x1da)||_0x4b8c86['flowName'][_0x14598d(0x1d3)]()==='')&&_0x5ecbe2[_0x14598d(0x1db)]({'path':_0x14598d(0x1fa),'message':_0x14598d(0x2e1)});_0x4b8c86[_0x14598d(0x2e5)]!==undefined&&typeof _0x4b8c86[_0x14598d(0x2e5)]!=='string'&&_0x5ecbe2[_0x14598d(0x1db)]({'path':'flowDesc','message':_0x14598d(0x26c)});if(_0x4b8c86['flowType']===undefined||_0x4b8c86['flowType']===null)_0x5ecbe2[_0x14598d(0x1db)]({'path':_0x14598d(0x286),'message':_0x14598d(0x25c)});else(typeof _0x4b8c86['flowType']!==_0x14598d(0x1da)||!FLOW_TYPES[_0x14598d(0x2ae)](_0x4b8c86[_0x14598d(0x286)]))&&_0x5ecbe2[_0x14598d(0x1db)]({'path':_0x14598d(0x286),'message':_0x14598d(0x2ff)+String(_0x4b8c86[_0x14598d(0x286)])+'.'});_0x4b8c86['datasetCode']!==undefined&&typeof _0x4b8c86[_0x14598d(0x204)]!==_0x14598d(0x1da)&&_0x5ecbe2[_0x14598d(0x1db)]({'path':'datasetCode','message':_0x14598d(0x268)}),_0x4b8c86['pageId']!==undefined&&(!Number['isInteger'](_0x4b8c86[_0x14598d(0x2f3)])||_0x4b8c86['pageId']<0x0)&&_0x5ecbe2[_0x14598d(0x1db)]({'path':_0x14598d(0x2f3),'message':'pageId\x20must\x20be\x20a\x20non-negative\x20integer.'}),_0x4b8c86[_0x14598d(0x286)]==='INDEPENDENT_FLOW'&&_0x4b8c86[_0x14598d(0x204)]!==undefined&&_0x5ecbe2[_0x14598d(0x1db)]({'path':_0x14598d(0x204),'message':_0x14598d(0x305)}),_0x4b8c86['flowType']===_0x14598d(0x315)&&_0x4b8c86[_0x14598d(0x2f3)]!==undefined&&_0x5ecbe2['push']({'path':_0x14598d(0x2f3),'message':_0x14598d(0x1fb)});}function validateGraph(_0x589d41,_0x52bae6){const _0x47a8e9=a287_0x8cf25c;if(!isRecord(_0x589d41)){_0x52bae6['push']({'path':_0x47a8e9(0x2fb),'message':_0x47a8e9(0x266)});return;}!Array[_0x47a8e9(0x2df)](_0x589d41[_0x47a8e9(0x24b)])&&_0x52bae6[_0x47a8e9(0x1db)]({'path':'flowJson.nodes','message':_0x47a8e9(0x2ef)});!Array['isArray'](_0x589d41[_0x47a8e9(0x1e7)])&&_0x52bae6['push']({'path':_0x47a8e9(0x247),'message':_0x47a8e9(0x2b7)});Object[_0x47a8e9(0x2ac)][_0x47a8e9(0x1de)][_0x47a8e9(0x2c6)](_0x589d41,'schemaVersion')&&_0x52bae6[_0x47a8e9(0x1db)]({'path':_0x47a8e9(0x221),'message':_0x47a8e9(0x1d2)+String(_0x589d41[_0x47a8e9(0x2af)])+_0x47a8e9(0x28e)+DEFAULT_FLOW_SCHEMA_VERSION+'.'});for(const _0x270225 of[_0x47a8e9(0x273),_0x47a8e9(0x1bd),_0x47a8e9(0x239)]){Object[_0x47a8e9(0x2ac)][_0x47a8e9(0x1de)][_0x47a8e9(0x2c6)](_0x589d41,_0x270225)&&_0x52bae6[_0x47a8e9(0x1db)]({'path':_0x47a8e9(0x23d)+_0x270225,'message':UNSUPPORTED_FORM_MESSAGE});}if(!Array[_0x47a8e9(0x2df)](_0x589d41[_0x47a8e9(0x24b)])||!Array[_0x47a8e9(0x2df)](_0x589d41[_0x47a8e9(0x1e7)]))return;const _0x37ab1d=new Map(),_0x1554bd=[],_0x44d7b8=[],_0x19506c=new Map(),_0x4f9224=new Map(),_0xff4204=new Set();let _0x126ba6=0x0;_0x589d41[_0x47a8e9(0x24b)][_0x47a8e9(0x236)]((_0x45a113,_0xd8b788)=>{const _0x4e9c58=_0x47a8e9,_0x608797=_0x4e9c58(0x2fa)+_0xd8b788+']';if(!isRecord(_0x45a113)){_0x52bae6[_0x4e9c58(0x1db)]({'path':_0x608797,'message':_0x4e9c58(0x1cf)});return;}const _0x26aff1=_0x45a113;if(typeof _0x26aff1['id']!==_0x4e9c58(0x1da)||!BPMN_ID_PATTERN[_0x4e9c58(0x1ea)](_0x26aff1['id']))_0x52bae6['push']({'path':_0x608797+_0x4e9c58(0x2d3),'message':'node\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.'});else _0x37ab1d[_0x4e9c58(0x2ae)](_0x26aff1['id'])?_0x52bae6['push']({'path':_0x608797+'.id','message':'Duplicate\x20node\x20id:\x20'+_0x26aff1['id']+'.'}):(_0x37ab1d['set'](_0x26aff1['id'],_0x26aff1),_0xff4204[_0x4e9c58(0x238)](_0x26aff1['id']));if(!NODE_TYPES[_0x4e9c58(0x2ae)](_0x26aff1[_0x4e9c58(0x23e)]))_0x52bae6[_0x4e9c58(0x1db)]({'path':_0x608797+_0x4e9c58(0x20e),'message':_0x4e9c58(0x2ba)+String(_0x26aff1[_0x4e9c58(0x23e)])+'.'});else{if(_0x26aff1[_0x4e9c58(0x23e)]===_0x4e9c58(0x209))_0x1554bd[_0x4e9c58(0x1db)](_0x26aff1['id']);else _0x26aff1[_0x4e9c58(0x23e)]===_0x4e9c58(0x20c)&&_0x44d7b8['push'](_0x26aff1['id']);}_0x26aff1[_0x4e9c58(0x23e)]===_0x4e9c58(0x307)&&(_0x26aff1['taskMode']===undefined||_0x26aff1[_0x4e9c58(0x2a0)]===_0x4e9c58(0x307))&&(_0x126ba6+=0x1);validateNode(_0x26aff1,_0x608797,_0x52bae6);if(_0x26aff1[_0x4e9c58(0x23e)]===_0x4e9c58(0x1df)){const _0x206c23=resolveEffectiveResultVariable(_0x26aff1['resultVariable'],![]);_0x206c23&&(registerResultVariableOwner(_0x4f9224,_0x206c23,_0x26aff1['id'],_0x52bae6),!_0x19506c[_0x4e9c58(0x2ae)](_0x206c23)&&_0x19506c[_0x4e9c58(0x1e2)](_0x206c23,_0x26aff1['id']));}if(_0x26aff1[_0x4e9c58(0x23e)]===_0x4e9c58(0x307)&&isRecord(_0x26aff1['timeout'])&&_0x26aff1[_0x4e9c58(0x24f)]['enabled']===!![]&&_0x26aff1['timeout'][_0x4e9c58(0x31e)]===_0x4e9c58(0x2c3)){const _0x369034=resolveEffectiveResultVariable(_0x26aff1[_0x4e9c58(0x24f)][_0x4e9c58(0x234)],!![]);_0x369034&®isterResultVariableOwner(_0x4f9224,_0x369034,_0x26aff1['id']+_0x4e9c58(0x216),_0x52bae6);}});_0x1554bd['length']!==0x1&&_0x52bae6[_0x47a8e9(0x1db)]({'path':_0x47a8e9(0x2e0),'message':_0x47a8e9(0x277)});_0x44d7b8[_0x47a8e9(0x318)]===0x0&&_0x52bae6['push']({'path':'flowJson.nodes','message':_0x47a8e9(0x217)});const _0x1f3374=new Map(),_0x2d3a90=new Map(),_0x4674b0=new Map(),_0x3d1802=new Set();_0x589d41[_0x47a8e9(0x1e7)]['forEach']((_0x31d77f,_0x477aa9)=>{const _0x21688a=_0x47a8e9,_0x510eeb=_0x21688a(0x2c1)+_0x477aa9+']';if(!isRecord(_0x31d77f)){_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb,'message':_0x21688a(0x26d)});return;}const _0x4e9fb0=_0x31d77f;_0x4674b0[_0x21688a(0x1e2)](_0x4e9fb0,_0x510eeb);const _0x477c96=resolveEdgeEndpoint(_0x4e9fb0[_0x21688a(0x25d)],_0x4e9fb0['sourceNodeId']),_0x3d7869=resolveEdgeEndpoint(_0x4e9fb0[_0x21688a(0x25f)],_0x4e9fb0[_0x21688a(0x25e)]);if(!_0x477c96)_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb+_0x21688a(0x2d7),'message':'edge\x20source\x20is\x20required.'});if(!_0x3d7869)_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb+_0x21688a(0x298),'message':_0x21688a(0x1dc)});_0x477c96&&!_0x37ab1d['has'](_0x477c96)&&_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb+_0x21688a(0x2d7),'message':_0x21688a(0x229)+_0x477c96+'.'});_0x3d7869&&!_0x37ab1d[_0x21688a(0x2ae)](_0x3d7869)&&_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb+_0x21688a(0x298),'message':_0x21688a(0x316)+_0x3d7869+'.'});if(_0x4e9fb0['id']!==undefined){if(typeof _0x4e9fb0['id']!==_0x21688a(0x1da)||!BPMN_ID_PATTERN[_0x21688a(0x1ea)](_0x4e9fb0['id']))_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb+_0x21688a(0x2d3),'message':_0x21688a(0x282)});else{if(_0xff4204[_0x21688a(0x2ae)](_0x4e9fb0['id']))_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb+_0x21688a(0x2d3),'message':_0x21688a(0x27f)+_0x4e9fb0['id']+'.'});else!_0xff4204[_0x21688a(0x2ae)](_0x4e9fb0['id'])&&_0xff4204[_0x21688a(0x238)](_0x4e9fb0['id']);}}if(_0x477c96&&_0x3d7869){const _0x40a087=_0x477c96+'\x00'+_0x3d7869+'\x00'+(_0x4e9fb0[_0x21688a(0x297)]??_0x21688a(0x1fe));_0x3d1802[_0x21688a(0x2ae)](_0x40a087)?_0x52bae6[_0x21688a(0x1db)]({'path':_0x510eeb,'message':_0x21688a(0x276)+_0x477c96+_0x21688a(0x1d9)+_0x3d7869+'\x20('+(_0x4e9fb0[_0x21688a(0x297)]??_0x21688a(0x1fe))+').'}):_0x3d1802['add'](_0x40a087);}validateEdge(_0x4e9fb0,_0x510eeb,_0x52bae6),_0x477c96&&_0x3d7869&&(_0x1f3374[_0x21688a(0x22d)](_0x477c96)?.['push'](_0x4e9fb0)??_0x1f3374[_0x21688a(0x1e2)](_0x477c96,[_0x4e9fb0]),_0x2d3a90['get'](_0x3d7869)?.[_0x21688a(0x1db)](_0x4e9fb0)??_0x2d3a90[_0x21688a(0x1e2)](_0x3d7869,[_0x4e9fb0]));});if(_0x1554bd[_0x47a8e9(0x318)]!==0x1)return;validateGraphShape(_0x37ab1d,_0x1554bd[0x0],_0x44d7b8,_0x1f3374,_0x2d3a90,_0x4674b0,_0x52bae6),validateScriptResultReferences(_0x37ab1d,_0x1554bd[0x0],_0x1f3374,_0x2d3a90,_0x4674b0,_0x19506c,_0x52bae6),validateApprovalResults(_0x37ab1d,_0x126ba6,_0x44d7b8,_0x52bae6);}function a287_0x182b(){const _0x4fd0be=['waypoints','boolean','.waypoints[','NOTIFICATION\x20node\x20requires\x20template.','edges','detailMarkdown','Notification\x20recipient.role\x20must\x20be\x20TO,\x20CC,\x20or\x20BCC.','test','cc.recipientUserIds\x20must\x20be\x20a\x20non-empty\x20array.','startPageId\x20is\x20no\x20longer\x20supported;\x20use\x20startPath\x20instead.','cc\x20recipient\x20userId\x20must\x20be\x20a\x20non-empty\x20string.','scriptResult','.cc.recipientUserIds[','matchAll','HANDLE','role','#/$defs/flowEdge','empty_metadata_removed','approved','cc\x20must\x20be\x20an\x20object.','\x20is\x20required.','#/$defs/userId','context','flowName','INDEPENDENT_FLOW\x20cannot\x20bind\x20pageId.','.text','isSafeInteger','ALWAYS','#/$defs/flowNode','\x20must\x20be\x20a\x20finite\x20number.','.transferCandidates.userIds','.cc.visible','indexOf','datasetCode','transfer\x20candidate\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','APPROVAL\x20node\x20outgoing\x20edges\x20must\x20use\x20APPROVED\x20or\x20REJECTED.','https://json-schema.org/draft/2020-12/schema','Unsupported\x20notification\x20version:\x20','START','Node\x20cannot\x20reach\x20any\x20END.','Duplicate\x20resultVariable:\x20','END','.cc','.type','timeout.enabled\x20must\x20be\x20a\x20boolean.','timeout\x20must\x20be\x20an\x20object.','^[1-9][0-9]*$','pageMode','approval_sys_initiatorUserId','AUTO_APPROVE','retryInterval','.timeout','Flow\x20must\x20contain\x20at\x20least\x20one\x20END\x20node.','form','utf8','.assignee.roleId','EXPRESSION','.path','approval.simple-flow.v1','Node\x20has\x20no\x20incoming\x20edge.','Unsupported\x20condition\x20type:\x20','waypoint.','flowJson.schemaVersion','approval_sys_processInstanceId','Default\x20cc\x20is\x20only\x20supported\x20by\x20APPROVAL\x20or\x20END\x20node.','START\x20node\x20must\x20not\x20have\x20incoming\x20edges.','.configCode','HANDLE\x20task\x20timeout\x20only\x20supports\x20EXECUTE_BFF.','.assignee.userIds','Notification\x20recipients\x20must\x20be\x20an\x20array.','Edge\x20source\x20node\x20not\x20found:\x20','CONDITION\x20non-default\x20edge\x20requires\x20a\x20non-empty\x20expression.','.facts','pageMode\x20applies\x20only\x20to\x20INDEPENDENT_FLOW.','get','interrupting','number','CUSTOM_PAGE','duration\x20value\x20must\x20be\x20a\x20positive\x20integer.','APPROVAL\x20task\x20decision\x20edges\x20must\x20not\x20be\x20default\x20flows.','25100669NiTiXu','resultVariable','\x20value\x20and\x20was\x20removed\x20from\x20the\x20portable\x20FlowConfig.','forEach','__rabetbase_local_validation__','add','formPermissions','Unsupported\x20pageMode:\x20','path','url','flowJson.','type','.name','startPath','#/$defs/position','SINGLE\x20approval\x20supports\x20only\x20one\x20fixed\x20user.','defaultFlow\x20must\x20be\x20a\x20boolean.','.detailMarkdown','integer','stringify','flowJson.edges','HANDLE\x20task\x20outgoing\x20edge\x20must\x20use\x20ALWAYS\x20without\x20defaultFlow\x20or\x20expression.','flowCode','Custom\x20form\x20configuration\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20a\x20business\x20custom\x20page\x20instead.','nodes','.value','.defaultFlow','Notification\x20recipient.role\x20must\x20be\x20a\x20string.','timeout','isInteger','\x20was\x20empty\x20and\x20was\x20removed.','approval_sys_datasetCode','APPROVED','HOURS','filter','Expression\x20references\x20SCRIPT\x20resultVariable\x20','8283942jyrdgf','startsWith','679FAtWXn','AUTO_REJECT','\x20actions.','flowType\x20is\x20required.','source','targetNodeId','target','.conditionType','\x20users.','.tmp','Notification\x20recipient.type\x20must\x20be\x20USER,\x20ROLE,\x20or\x20EMAIL.','version','].path','flowJson\x20must\x20be\x20an\x20object.','EMAIL','datasetCode\x20must\x20be\x20a\x20string.','replace','cc.recipientUserIds\x20supports\x20at\x20most\x20','text','flowDesc\x20must\x20be\x20a\x20string.','edge\x20must\x20be\x20an\x20object.','.url','sourceNodeId','overwrite','name','Notification\x20template.actions\x20must\x20be\x20an\x20array.','formSchema','.async','Node\x20is\x20not\x20reachable\x20from\x20START.','Duplicate\x20edge\x20route:\x20','Flow\x20must\x20contain\x20exactly\x20one\x20START\x20node.','ROLE','transferCandidates\x20must\x20be\x20an\x20object.','PLATFORM_FORM\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','defaultFlow','\x20facts.','.timeout.resultVariable','flowKey','Duplicate\x20BPMN\x20element\x20id:\x20','CONTINUE','failurePolicy\x20must\x20be\x20a\x20string.','edge\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','flowJson.pageMode','approval_sys_','.timeout.action','flowType','BCC','ANY','.assignee.strategy','bindDatasetCode','USER','Notification\x20configCode\x20is\x20required.','config','.\x20This\x20CLI\x20supports\x20only\x20','recipientUserIds','3zejwqe','parse','PLATFORM_FORM','FAIL','Notification\x20recipient\x20must\x20be\x20an\x20object.','Duplicate\x20value:\x20','enabled','conditionType','.target','Notification\x20recipient.type\x20is\x20required.','.resultVariable','visible','keys','timeout.interrupting\x20must\x20be\x20a\x20boolean.','node\x20path\x20must\x20be\x20a\x20non-empty\x20string.','Node\x20has\x20no\x20outgoing\x20edge.','taskMode','approval_sys_initiatorUsername','.taskMode','^[A-Za-z_][A-Za-z0-9_]*$','approval_sys_appCode','Notification\x20template\x20supports\x20at\x20most\x20','failurePolicy','FIXED\x20transferCandidates\x20requires\x20non-empty\x20userIds.','5817610KrTqXY','node\x20path\x20is\x20supported\x20only\x20on\x20APPROVAL\x20or\x20END\x20nodes.','Notification\x20action.text\x20is\x20required.','map','prototype','ALL','has','schemaVersion','size','Notification\x20fact.','startPageId','variables','Notification\x20action.url\x20must\x20use\x20http/https\x20or\x20a\x20complete\x20supported\x20placeholder.','formPermission','every','edges\x20must\x20be\x20an\x20array.','END\x20node\x20must\x20not\x20have\x20outgoing\x20edges.','failurePolicy\x20must\x20be\x20CONTINUE\x20or\x20FAIL.','Unsupported\x20node\x20type:\x20','actions','\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.','async\x20must\x20be\x20an\x20object.',',\x20but\x20node\x20','NOTIFICATION\x20node\x20requires\x20config.','duration\x20requires\x20value\x20and\x20unit.','flowJson.edges[','.transferCandidates.strategy','EXECUTE_BFF','Explicit\x20notification\x20recipients\x20require\x20at\x20least\x20one\x20TO.','recipients','call','object','APPROVAL\x20node\x20requires\x20assignee.','\x20timeout\x20must\x20interrupt\x20the\x20approval\x20task.','formData','some','legacy_field_removed','position','roleId','REJECTED','3604980AKrQuG','.recipients','edge\x20name\x20must\x20be\x20a\x20string.','.id','.role','.timeout.scriptName','.pageId','.source','value\x20must\x20be\x20a\x20non-empty\x20string.','SECONDS','#/$defs/timeAmount','array','DAYS','summary','sequential\x20must\x20be\x20a\x20boolean.','isArray','flowJson.nodes','flowName\x20is\x20required.','SINGLE','appCode','].taskMode','flowDesc','\x20must\x20be\x20a\x20finite\x20number\x20greater\x20than\x20or\x20equal\x20to\x200.','value\x20must\x20be\x20an\x20array.','result','.timeout.enabled','NOTIFICATION','.scriptName','.timeout.interrupting','.unit','timeout\x20is\x20only\x20supported\x20by\x20APPROVAL\x20node.','nodes\x20must\x20be\x20an\x20array.','829MBalmM','toUpperCase','Duplicate\x20cc\x20recipient\x20userId:\x20','pageId','sequential','.transferCandidates','strategy','SCRIPT\x20async\x20retryCount\x20must\x20be\x20between\x201\x20and\x20','title','includes','flowJson.nodes[','flowJson','catch','.actions','async.enabled\x20must\x20be\x20a\x20boolean.','Unsupported\x20flowType:\x20','CONDITION','Notification\x20fact\x20must\x20be\x20an\x20object.','.transferCandidates.userIds[','approval_sys_operationType','flowJson.startPageId','INDEPENDENT_FLOW\x20cannot\x20bind\x20datasetCode.','entries','APPROVAL','approval_sys_dataId','FIXED','.expression','2229065cszuxL','CONDITION\x20default\x20edge\x20must\x20use\x20conditionType\x20ALWAYS.','flowJson.nodes.','.failurePolicy','Unsupported\x20approval\x20mode:\x20','scriptName','label','assignee','findIndex','.cc.recipientUserIds','INDEPENDENT_FLOW','Edge\x20target\x20node\x20not\x20found:\x20','async\x20execution\x20is\x20only\x20supported\x20by\x20SCRIPT\x20node.','length','async','duration\x20unit\x20must\x20be\x20SECONDS,\x20MINUTES,\x20HOURS,\x20or\x20DAYS.','MINUTES','.version','transferCandidates','action','https://lovrabet.com/schema/rabetbase-flow-config.json','.timeout.duration','.template','67528YdrXHP','.waypoints','template','.sequential','facts','fixed\x20assignee\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','formDefinitions','slice','startPath\x20must\x20be\x20a\x20non-empty\x20string.','value','6vBlvqS','templateName','approvalMode','waypoint\x20must\x20contain\x20numeric\x20x\x20and\x20y\x20coordinates.','delete','duration','flowJson.startPath','Rabetbase\x20FlowConfig','A\x20default\x20flow\x20must\x20use\x20conditionType\x20ALWAYS.','event','FORM_FLOW\x20is\x20an\x20approval\x20flow\x20and\x20cannot\x20contain\x20HANDLE\x20tasks;\x20use\x20INDEPENDENT_FLOW\x20for\x20workflows.','transferCandidates\x20currently\x20supports\x20FIXED\x20only.','resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','Reserved\x20resultVariable:\x20','node\x20must\x20be\x20an\x20object.','EXECUTE_BFF\x20timeout\x20must\x20not\x20interrupt\x20the\x20approval\x20task.','expression','Unsupported\x20schemaVersion:\x20','trim','1902OueavS','readSources','HANDLE\x20task\x20requires\x20exactly\x20one\x20outgoing\x20edge.','userIds','.config','\x20->\x20','string','push','edge\x20target\x20is\x20required.','metadata','hasOwnProperty','SCRIPT','FORM_FLOW','EXPRESSION\x20edge\x20requires\x20expression.','set'];a287_0x182b=function(){return _0x4fd0be;};return a287_0x182b();}function validateNode(_0x1cc795,_0x2ba99f,_0xfa54fc){const _0x2db691=a287_0x8cf25c;for(const _0x31a857 of[_0x2db691(0x218),_0x2db691(0x2b5)]){Object[_0x2db691(0x2ac)][_0x2db691(0x1de)]['call'](_0x1cc795,_0x31a857)&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.'+_0x31a857,'message':UNSUPPORTED_FORM_MESSAGE});}if(!NODE_TYPES['has'](_0x1cc795[_0x2db691(0x23e)]))return;(typeof _0x1cc795['name']!==_0x2db691(0x1da)||_0x1cc795[_0x2db691(0x271)][_0x2db691(0x1d3)]()==='')&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.name','message':'Every\x20node\x20requires\x20a\x20non-empty\x20name.'});_0x1cc795[_0x2db691(0x2f3)]!==undefined&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x2d6),'message':'node\x20pageId\x20is\x20no\x20longer\x20supported;\x20use\x20node\x20path\x20instead.'});if(_0x1cc795[_0x2db691(0x23b)]!==undefined){if(typeof _0x1cc795[_0x2db691(0x23b)]!==_0x2db691(0x1da)||_0x1cc795[_0x2db691(0x23b)][_0x2db691(0x1d3)]()==='')_0xfa54fc['push']({'path':_0x2ba99f+_0x2db691(0x21c),'message':_0x2db691(0x29e)});else _0x1cc795[_0x2db691(0x23e)]!==_0x2db691(0x307)&&_0x1cc795[_0x2db691(0x23e)]!==_0x2db691(0x20c)&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.path','message':_0x2db691(0x2a9)});}const _0x3eb26d=_0x1cc795[_0x2db691(0x2cd)];if(!isRecord(_0x3eb26d))_0xfa54fc['push']({'path':_0x2ba99f+'.position','message':'Every\x20node\x20requires\x20position.x\x20and\x20position.y.'});else for(const _0x5c2209 of['x','y']){const _0x4d563a=_0x3eb26d[_0x5c2209];(typeof _0x4d563a!=='number'||!Number['isFinite'](_0x4d563a)||_0x4d563a<0x0)&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.position.'+_0x5c2209,'message':'position.'+_0x5c2209+_0x2db691(0x2e6)});}if(_0x1cc795[_0x2db691(0x23e)]===_0x2db691(0x307)){const _0x47acf3=_0x1cc795[_0x2db691(0x1c3)]??'SINGLE',_0x372deb=_0x1cc795[_0x2db691(0x2a0)]??_0x2db691(0x307);!APPROVAL_TASK_MODES[_0x2db691(0x2ae)](_0x372deb)&&_0xfa54fc['push']({'path':_0x2ba99f+_0x2db691(0x2a2),'message':'Unsupported\x20task\x20mode:\x20'+String(_0x372deb)+'.'});!APPROVAL_MODES[_0x2db691(0x2ae)](_0x47acf3)&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.approvalMode','message':_0x2db691(0x30f)+String(_0x47acf3)+'.'});if(!isRecord(_0x1cc795[_0x2db691(0x312)]))_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.assignee','message':_0x2db691(0x2c8)});else{const _0xda3a=_0x1cc795[_0x2db691(0x312)][_0x2db691(0x2f6)];_0xda3a!==_0x2db691(0x309)&&_0xda3a!==_0x2db691(0x278)&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x289),'message':'assignee.strategy\x20must\x20be\x20FIXED\x20or\x20ROLE.'});if(_0xda3a==='FIXED'){const _0x54a7da=_0x1cc795[_0x2db691(0x312)][_0x2db691(0x1d7)];if(!Array[_0x2db691(0x2df)](_0x54a7da)||_0x54a7da[_0x2db691(0x318)]===0x0)_0xfa54fc['push']({'path':_0x2ba99f+'.assignee.userIds','message':'FIXED\x20assignee\x20requires\x20userIds.'});else{const _0x110c18=_0x54a7da[_0x2db691(0x313)](_0x148149=>!isValidUserId(_0x148149));_0x110c18>=0x0&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+'.assignee.userIds['+_0x110c18+']','message':_0x2db691(0x1bc)});const _0x10ea52=new Set(_0x54a7da['filter'](isValidUserId)['map'](_0x58c8d9=>String(_0x58c8d9)[_0x2db691(0x1d3)]()));_0x47acf3==='SINGLE'&&_0x10ea52[_0x2db691(0x2b0)]>0x1&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x227),'message':_0x2db691(0x242)});}}if(_0xda3a==='ROLE'){const _0x24e380=_0x1cc795[_0x2db691(0x312)][_0x2db691(0x2ce)],_0x45d507=typeof _0x24e380==='number'||typeof _0x24e380===_0x2db691(0x1da)?Number(String(_0x24e380)['trim']()):Number['NaN'];(!Number['isSafeInteger'](_0x45d507)||_0x45d507<=0x0)&&_0xfa54fc['push']({'path':_0x2ba99f+_0x2db691(0x21a),'message':'ROLE\x20assignee\x20requires\x20a\x20positive\x20integer\x20roleId.'});}}if(_0x1cc795[_0x2db691(0x31d)]!==undefined){if(!isRecord(_0x1cc795[_0x2db691(0x31d)]))_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x2f5),'message':_0x2db691(0x279)});else{if(_0x1cc795['transferCandidates'][_0x2db691(0x2f6)]!==_0x2db691(0x309))_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x2c2),'message':_0x2db691(0x1cc)});else{const _0x1b53c7=_0x1cc795[_0x2db691(0x31d)]['userIds'];if(!Array[_0x2db691(0x2df)](_0x1b53c7)||_0x1b53c7[_0x2db691(0x318)]===0x0)_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x201),'message':_0x2db691(0x2a7)});else{const _0x250a80=_0x1b53c7[_0x2db691(0x313)](_0x26840f=>!isValidUserId(_0x26840f));_0x250a80>=0x0&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x302)+_0x250a80+']','message':_0x2db691(0x205)});}}}}}_0x1cc795['sequential']!==undefined&&typeof _0x1cc795[_0x2db691(0x2f4)]!==_0x2db691(0x1e4)&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x1ba),'message':_0x2db691(0x2de)});if(_0x1cc795[_0x2db691(0x23e)]===_0x2db691(0x1df)){(typeof _0x1cc795[_0x2db691(0x310)]!=='string'||_0x1cc795[_0x2db691(0x310)]['trim']()==='')&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x2eb),'message':'SCRIPT\x20node\x20requires\x20scriptName.'});if(_0x1cc795['resultVariable']!==undefined){if(typeof _0x1cc795[_0x2db691(0x234)]!=='string'||!VARIABLE_PATTERN[_0x2db691(0x1ea)](_0x1cc795[_0x2db691(0x234)]))_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x29a),'message':_0x2db691(0x1cd)});else(RESERVED_RESULT_VARIABLES[_0x2db691(0x2ae)](_0x1cc795[_0x2db691(0x234)])||_0x1cc795['resultVariable'][_0x2db691(0x258)](_0x2db691(0x284)))&&_0xfa54fc[_0x2db691(0x1db)]({'path':_0x2ba99f+_0x2db691(0x29a),'message':_0x2db691(0x1ce)+_0x1cc795[_0x2db691(0x234)]+'.'});}}validateAsyncExecution(_0x1cc795,_0x2ba99f,_0xfa54fc),validateApprovalTimeout(_0x1cc795,_0x2ba99f,_0xfa54fc),validateCcConfig(_0x1cc795,_0x2ba99f,_0xfa54fc),_0x1cc795['type']===_0x2db691(0x2ea)&&validateNotificationConfig(_0x1cc795[_0x2db691(0x28d)],_0x2ba99f+_0x2db691(0x1d8),_0xfa54fc);}function validateAsyncExecution(_0x21a114,_0x66bbbb,_0x5e0d7a){const _0x181949=a287_0x8cf25c;if(_0x21a114[_0x181949(0x319)]===undefined)return;if(!isRecord(_0x21a114[_0x181949(0x319)])){_0x5e0d7a[_0x181949(0x1db)]({'path':_0x66bbbb+_0x181949(0x274),'message':_0x181949(0x2bd)});return;}if(_0x21a114[_0x181949(0x319)][_0x181949(0x296)]!==undefined&&typeof _0x21a114['async'][_0x181949(0x296)]!==_0x181949(0x1e4)){_0x5e0d7a[_0x181949(0x1db)]({'path':_0x66bbbb+'.async.enabled','message':_0x181949(0x2fe)});return;}if(_0x21a114['async'][_0x181949(0x296)]!==!![])return;_0x21a114['type']!==_0x181949(0x1df)&&_0x5e0d7a['push']({'path':_0x66bbbb+_0x181949(0x274),'message':_0x181949(0x317)});const _0x664e28=_0x21a114['async']['retryCount']??0x3;(!Number[_0x181949(0x250)](_0x664e28)||_0x664e28<0x1||_0x664e28>MAX_ASYNC_RETRY_COUNT)&&_0x5e0d7a[_0x181949(0x1db)]({'path':_0x66bbbb+'.async.retryCount','message':_0x181949(0x2f7)+MAX_ASYNC_RETRY_COUNT+'.'}),_0x21a114['async'][_0x181949(0x215)]!==undefined&&validateTimeAmount(_0x21a114[_0x181949(0x319)][_0x181949(0x215)],_0x66bbbb+'.async.retryInterval',_0x5e0d7a);}function a287_0x3c35(_0x1291ee,_0x27d0c6){_0x1291ee=_0x1291ee-0x1b5;const _0x182b79=a287_0x182b();let _0x3c3577=_0x182b79[_0x1291ee];return _0x3c3577;}function validateApprovalTimeout(_0x51ad82,_0x2589c8,_0x3ac0f0){const _0x5c4d99=a287_0x8cf25c;if(_0x51ad82[_0x5c4d99(0x24f)]===undefined)return;if(!isRecord(_0x51ad82[_0x5c4d99(0x24f)])){_0x3ac0f0['push']({'path':_0x2589c8+_0x5c4d99(0x216),'message':_0x5c4d99(0x210)});return;}if(_0x51ad82[_0x5c4d99(0x24f)][_0x5c4d99(0x296)]!==undefined&&typeof _0x51ad82[_0x5c4d99(0x24f)][_0x5c4d99(0x296)]!==_0x5c4d99(0x1e4)){_0x3ac0f0['push']({'path':_0x2589c8+_0x5c4d99(0x2e9),'message':_0x5c4d99(0x20f)});return;}if(_0x51ad82['timeout']['enabled']!==!![])return;if(_0x51ad82['timeout'][_0x5c4d99(0x22e)]!==undefined&&typeof _0x51ad82['timeout'][_0x5c4d99(0x22e)]!==_0x5c4d99(0x1e4)){_0x3ac0f0[_0x5c4d99(0x1db)]({'path':_0x2589c8+_0x5c4d99(0x2ec),'message':_0x5c4d99(0x29d)});return;}_0x51ad82[_0x5c4d99(0x23e)]!==_0x5c4d99(0x307)&&_0x3ac0f0[_0x5c4d99(0x1db)]({'path':_0x2589c8+'.timeout','message':_0x5c4d99(0x2ee)});validateTimeAmount(_0x51ad82[_0x5c4d99(0x24f)][_0x5c4d99(0x1c6)],_0x2589c8+_0x5c4d99(0x1b5),_0x3ac0f0);const _0x5c67d3=_0x51ad82[_0x5c4d99(0x24f)][_0x5c4d99(0x31e)];if(!APPROVAL_TIMEOUT_ACTIONS['has'](_0x5c67d3)){_0x3ac0f0[_0x5c4d99(0x1db)]({'path':_0x2589c8+_0x5c4d99(0x285),'message':'timeout.action\x20must\x20be\x20AUTO_APPROVE,\x20AUTO_REJECT,\x20or\x20EXECUTE_BFF.'});return;}(_0x51ad82[_0x5c4d99(0x2a0)]??_0x5c4d99(0x307))===_0x5c4d99(0x1f1)&&_0x5c67d3!=='EXECUTE_BFF'&&_0x3ac0f0['push']({'path':_0x2589c8+'.timeout.action','message':_0x5c4d99(0x226)});const _0x14f781=_0x51ad82[_0x5c4d99(0x24f)][_0x5c4d99(0x22e)]??_0x5c67d3!==_0x5c4d99(0x2c3);if(_0x5c67d3===_0x5c4d99(0x2c3))_0x14f781&&_0x3ac0f0['push']({'path':_0x2589c8+_0x5c4d99(0x2ec),'message':_0x5c4d99(0x1d0)}),(typeof _0x51ad82[_0x5c4d99(0x24f)][_0x5c4d99(0x310)]!==_0x5c4d99(0x1da)||_0x51ad82[_0x5c4d99(0x24f)]['scriptName']['trim']()==='')&&_0x3ac0f0[_0x5c4d99(0x1db)]({'path':_0x2589c8+_0x5c4d99(0x2d5),'message':'EXECUTE_BFF\x20timeout\x20requires\x20scriptName.'}),validateOptionalResultVariable(_0x51ad82[_0x5c4d99(0x24f)]['resultVariable'],_0x2589c8+_0x5c4d99(0x27d),_0x3ac0f0);else!_0x14f781&&_0x3ac0f0[_0x5c4d99(0x1db)]({'path':_0x2589c8+_0x5c4d99(0x2ec),'message':_0x5c67d3+_0x5c4d99(0x2c9)});}function validateTimeAmount(_0xff7374,_0x1c3a23,_0x1207fb){const _0x43f884=a287_0x8cf25c;if(!isRecord(_0xff7374)){_0x1207fb[_0x43f884(0x1db)]({'path':_0x1c3a23,'message':_0x43f884(0x2c0)});return;}(!Number[_0x43f884(0x250)](_0xff7374[_0x43f884(0x1c0)])||Number(_0xff7374['value'])<=0x0)&&_0x1207fb[_0x43f884(0x1db)]({'path':_0x1c3a23+_0x43f884(0x24c),'message':_0x43f884(0x231)}),!FLOW_TIME_UNITS[_0x43f884(0x2ae)](_0xff7374['unit'])&&_0x1207fb[_0x43f884(0x1db)]({'path':_0x1c3a23+_0x43f884(0x2ed),'message':_0x43f884(0x31a)});}function validateOptionalResultVariable(_0x51c9cf,_0x1bbe87,_0x387abf){const _0x1d1e4f=a287_0x8cf25c;if(_0x51c9cf===undefined||_0x51c9cf===null||_0x51c9cf==='')return;if(typeof _0x51c9cf!==_0x1d1e4f(0x1da)||!VARIABLE_PATTERN[_0x1d1e4f(0x1ea)](_0x51c9cf))_0x387abf['push']({'path':_0x1bbe87,'message':_0x1d1e4f(0x1cd)});else(RESERVED_RESULT_VARIABLES[_0x1d1e4f(0x2ae)](_0x51c9cf)||_0x51c9cf[_0x1d1e4f(0x258)](_0x1d1e4f(0x284)))&&_0x387abf[_0x1d1e4f(0x1db)]({'path':_0x1bbe87,'message':'Reserved\x20resultVariable:\x20'+_0x51c9cf+'.'});}function validateCcConfig(_0x50bfac,_0x84de71,_0x5aa82a){const _0x59b4e9=a287_0x8cf25c;if(_0x50bfac['cc']===undefined)return;if(!isRecord(_0x50bfac['cc'])){_0x5aa82a['push']({'path':_0x84de71+_0x59b4e9(0x20d),'message':_0x59b4e9(0x1f6)});return;}_0x50bfac[_0x59b4e9(0x23e)]!==_0x59b4e9(0x20c)&&_0x50bfac[_0x59b4e9(0x23e)]!==_0x59b4e9(0x307)&&_0x5aa82a[_0x59b4e9(0x1db)]({'path':_0x84de71+_0x59b4e9(0x20d),'message':_0x59b4e9(0x223)});Object[_0x59b4e9(0x2ac)][_0x59b4e9(0x1de)][_0x59b4e9(0x2c6)](_0x50bfac['cc'],_0x59b4e9(0x1d5))&&_0x5aa82a[_0x59b4e9(0x1db)]({'path':_0x84de71+'.cc.readSources','message':UNSUPPORTED_FORM_MESSAGE});const _0x93118=_0x50bfac['cc'][_0x59b4e9(0x28f)];if(!Array[_0x59b4e9(0x2df)](_0x93118)||_0x93118[_0x59b4e9(0x318)]===0x0)_0x5aa82a[_0x59b4e9(0x1db)]({'path':_0x84de71+_0x59b4e9(0x314),'message':_0x59b4e9(0x1eb)});else{_0x93118['length']>MAX_CC_RECIPIENTS&&_0x5aa82a[_0x59b4e9(0x1db)]({'path':_0x84de71+_0x59b4e9(0x314),'message':_0x59b4e9(0x26a)+MAX_CC_RECIPIENTS+_0x59b4e9(0x261)});const _0x521cde=new Set();_0x93118[_0x59b4e9(0x236)]((_0x43e44a,_0x5118d7)=>{const _0x2fd1a3=_0x59b4e9;if(typeof _0x43e44a!==_0x2fd1a3(0x1da)||_0x43e44a['trim']()==='')_0x5aa82a[_0x2fd1a3(0x1db)]({'path':_0x84de71+'.cc.recipientUserIds['+_0x5118d7+']','message':_0x2fd1a3(0x1ed)});else _0x521cde[_0x2fd1a3(0x2ae)](_0x43e44a[_0x2fd1a3(0x1d3)]())?_0x5aa82a['push']({'path':_0x84de71+_0x2fd1a3(0x1ef)+_0x5118d7+']','message':_0x2fd1a3(0x2f2)+_0x43e44a['trim']()+'.'}):_0x521cde[_0x2fd1a3(0x238)](_0x43e44a[_0x2fd1a3(0x1d3)]());});}validateStringArray(_0x50bfac['cc'][_0x59b4e9(0x29b)],_0x84de71+_0x59b4e9(0x202),_0x5aa82a);}function validateStringArray(_0x440f32,_0x4267ac,_0xf5d352){const _0x2be6de=a287_0x8cf25c;if(_0x440f32===undefined)return;if(!Array['isArray'](_0x440f32)){_0xf5d352[_0x2be6de(0x1db)]({'path':_0x4267ac,'message':_0x2be6de(0x2e7)});return;}const _0x19f924=new Set();_0x440f32[_0x2be6de(0x236)]((_0x49b30c,_0x452f3e)=>{const _0x25a64b=_0x2be6de;if(typeof _0x49b30c!==_0x25a64b(0x1da)||_0x49b30c[_0x25a64b(0x1d3)]()==='')_0xf5d352[_0x25a64b(0x1db)]({'path':_0x4267ac+'['+_0x452f3e+']','message':_0x25a64b(0x2d8)});else _0x19f924[_0x25a64b(0x2ae)](_0x49b30c[_0x25a64b(0x1d3)]())?_0xf5d352[_0x25a64b(0x1db)]({'path':_0x4267ac+'['+_0x452f3e+']','message':_0x25a64b(0x295)+_0x49b30c[_0x25a64b(0x1d3)]()+'.'}):_0x19f924['add'](_0x49b30c[_0x25a64b(0x1d3)]());});}function validateNotificationConfig(_0x2f8761,_0x2ff5c6,_0x2c3afa){const _0x56b86a=a287_0x8cf25c;if(!isRecord(_0x2f8761)){_0x2c3afa['push']({'path':_0x2ff5c6,'message':_0x56b86a(0x2bf)});return;}if(_0x2f8761[_0x56b86a(0x264)]!==undefined&&_0x2f8761[_0x56b86a(0x264)]!==null){if(typeof _0x2f8761[_0x56b86a(0x264)]!=='string')_0x2c3afa['push']({'path':_0x2ff5c6+_0x56b86a(0x31c),'message':'Notification\x20version\x20must\x20be\x20a\x20string.'});else _0x2f8761[_0x56b86a(0x264)][_0x56b86a(0x1d3)]()&&_0x2f8761[_0x56b86a(0x264)][_0x56b86a(0x1d3)]()!=='v1'&&_0x2c3afa[_0x56b86a(0x1db)]({'path':_0x2ff5c6+_0x56b86a(0x31c),'message':_0x56b86a(0x208)+_0x2f8761[_0x56b86a(0x264)]+'.'});}const _0x4e71a3=requireNotificationString(_0x2f8761['configCode'],_0x2ff5c6+_0x56b86a(0x225),_0x56b86a(0x28c),_0x2c3afa);_0x4e71a3?.[_0x56b86a(0x2f9)]('${')&&_0x2c3afa['push']({'path':_0x2ff5c6+_0x56b86a(0x225),'message':'Notification\x20configCode\x20must\x20be\x20a\x20fixed\x20value.'});if(_0x2f8761[_0x56b86a(0x2a6)]!==undefined&&_0x2f8761[_0x56b86a(0x2a6)]!==null){if(typeof _0x2f8761[_0x56b86a(0x2a6)]!==_0x56b86a(0x1da))_0x2c3afa['push']({'path':_0x2ff5c6+_0x56b86a(0x30e),'message':_0x56b86a(0x281)});else!NOTIFICATION_FAILURE_POLICIES[_0x56b86a(0x2ae)](_0x2f8761['failurePolicy'][_0x56b86a(0x1d3)]()[_0x56b86a(0x2f1)]())&&_0x2c3afa[_0x56b86a(0x1db)]({'path':_0x2ff5c6+_0x56b86a(0x30e),'message':_0x56b86a(0x2b9)});}!isRecord(_0x2f8761[_0x56b86a(0x1b9)])?_0x2c3afa[_0x56b86a(0x1db)]({'path':_0x2ff5c6+_0x56b86a(0x1b6),'message':_0x56b86a(0x1e6)}):validateNotificationTemplate(_0x2f8761[_0x56b86a(0x1b9)],_0x2ff5c6+_0x56b86a(0x1b6),_0x2c3afa),validateNotificationRecipients(_0x2f8761[_0x56b86a(0x2c5)],_0x2ff5c6+_0x56b86a(0x2d1),_0x2c3afa);}function validateNotificationTemplate(_0x2f83b0,_0xe9dcbe,_0x56d5cb){const _0x1d6366=a287_0x8cf25c;for(const _0x53126e of[_0x1d6366(0x2f8),_0x1d6366(0x2dd)]){const _0x2dc9c6=requireNotificationString(_0x2f83b0[_0x53126e],_0xe9dcbe+'.'+_0x53126e,'Notification\x20template.'+_0x53126e+_0x1d6366(0x1f7),_0x56d5cb);if(_0x2dc9c6)validateNotificationPlaceholders(_0x2dc9c6,_0xe9dcbe+'.'+_0x53126e,_0x56d5cb);}_0x2f83b0[_0x1d6366(0x1e8)]!==undefined&&_0x2f83b0[_0x1d6366(0x1e8)]!==null&&(typeof _0x2f83b0[_0x1d6366(0x1e8)]!==_0x1d6366(0x1da)?_0x56d5cb['push']({'path':_0xe9dcbe+_0x1d6366(0x244),'message':'Notification\x20template.detailMarkdown\x20must\x20be\x20a\x20string.'}):validateNotificationPlaceholders(_0x2f83b0[_0x1d6366(0x1e8)],_0xe9dcbe+_0x1d6366(0x244),_0x56d5cb)),validateNotificationFacts(_0x2f83b0[_0x1d6366(0x1bb)],_0xe9dcbe+_0x1d6366(0x22b),_0x56d5cb),validateNotificationActions(_0x2f83b0[_0x1d6366(0x2bb)],_0xe9dcbe+_0x1d6366(0x2fd),_0x56d5cb);}function validateNotificationFacts(_0x1516eb,_0x3b2618,_0xf7a46b){const _0x263ae3=a287_0x8cf25c;if(_0x1516eb===undefined||_0x1516eb===null)return;if(!Array[_0x263ae3(0x2df)](_0x1516eb)){_0xf7a46b['push']({'path':_0x3b2618,'message':'Notification\x20template.facts\x20must\x20be\x20an\x20array.'});return;}_0x1516eb[_0x263ae3(0x318)]>MAX_NOTIFICATION_FACTS&&_0xf7a46b['push']({'path':_0x3b2618,'message':'Notification\x20template\x20supports\x20at\x20most\x20'+MAX_NOTIFICATION_FACTS+_0x263ae3(0x27c)}),_0x1516eb[_0x263ae3(0x236)]((_0x6d0d2f,_0x456178)=>{const _0xf43599=_0x263ae3,_0x4dbc39=_0x3b2618+'['+_0x456178+']';if(!isRecord(_0x6d0d2f)){_0xf7a46b['push']({'path':_0x4dbc39,'message':_0xf43599(0x301)});return;}for(const _0x1c8c4b of[_0xf43599(0x311),_0xf43599(0x1c0)]){const _0x314c55=requireNotificationString(_0x6d0d2f[_0x1c8c4b],_0x4dbc39+'.'+_0x1c8c4b,_0xf43599(0x2b1)+_0x1c8c4b+'\x20is\x20required.',_0xf7a46b);_0x314c55&&validateNotificationPlaceholders(_0x314c55,_0x4dbc39+'.'+_0x1c8c4b,_0xf7a46b);}});}function validateNotificationActions(_0x4cef8a,_0x308bc4,_0x260cd9){const _0x194175=a287_0x8cf25c;if(_0x4cef8a===undefined||_0x4cef8a===null)return;if(!Array['isArray'](_0x4cef8a)){_0x260cd9[_0x194175(0x1db)]({'path':_0x308bc4,'message':_0x194175(0x272)});return;}_0x4cef8a[_0x194175(0x318)]>MAX_NOTIFICATION_ACTIONS&&_0x260cd9[_0x194175(0x1db)]({'path':_0x308bc4,'message':_0x194175(0x2a5)+MAX_NOTIFICATION_ACTIONS+_0x194175(0x25b)}),_0x4cef8a[_0x194175(0x236)]((_0x240550,_0x1c5a0d)=>{const _0xf59a5d=_0x194175,_0xc80927=_0x308bc4+'['+_0x1c5a0d+']';if(!isRecord(_0x240550)){_0x260cd9['push']({'path':_0xc80927,'message':'Notification\x20action\x20must\x20be\x20an\x20object.'});return;}const _0x261f90=requireNotificationString(_0x240550[_0xf59a5d(0x26b)],_0xc80927+_0xf59a5d(0x1fc),_0xf59a5d(0x2aa),_0x260cd9);if(_0x261f90)validateNotificationPlaceholders(_0x261f90,_0xc80927+_0xf59a5d(0x1fc),_0x260cd9);const _0x7dd010=requireNotificationString(_0x240550[_0xf59a5d(0x23c)],_0xc80927+_0xf59a5d(0x26e),'Notification\x20action.url\x20is\x20required.',_0x260cd9);if(!_0x7dd010)return;validateNotificationPlaceholders(_0x7dd010,_0xc80927+_0xf59a5d(0x26e),_0x260cd9),!/^https?:\/\//i[_0xf59a5d(0x1ea)](_0x7dd010)&&!NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN[_0xf59a5d(0x1ea)](_0x7dd010)&&_0x260cd9['push']({'path':_0xc80927+_0xf59a5d(0x26e),'message':_0xf59a5d(0x2b4)});});}function validateNotificationRecipients(_0x114794,_0x170707,_0x1e6077){const _0x486554=a287_0x8cf25c;if(_0x114794===undefined||_0x114794===null)return;if(!Array[_0x486554(0x2df)](_0x114794)){_0x1e6077[_0x486554(0x1db)]({'path':_0x170707,'message':_0x486554(0x228)});return;}let _0x20d9a1=![];_0x114794[_0x486554(0x236)]((_0x5ca662,_0xeb077c)=>{const _0x20885e=_0x486554,_0x327cf3=_0x170707+'['+_0xeb077c+']';if(!isRecord(_0x5ca662)){_0x1e6077['push']({'path':_0x327cf3,'message':_0x20885e(0x294)});return;}const _0x2e415f=requireNotificationString(_0x5ca662[_0x20885e(0x23e)],_0x327cf3+'.type',_0x20885e(0x299),_0x1e6077);_0x2e415f&&!NOTIFICATION_RECIPIENT_TYPES[_0x20885e(0x2ae)](_0x2e415f['toUpperCase']())&&_0x1e6077['push']({'path':_0x327cf3+_0x20885e(0x20e),'message':_0x20885e(0x263)});let _0x26839d='TO';_0x5ca662[_0x20885e(0x1f2)]!==undefined&&_0x5ca662['role']!==null&&(typeof _0x5ca662[_0x20885e(0x1f2)]!=='string'?(_0x1e6077[_0x20885e(0x1db)]({'path':_0x327cf3+_0x20885e(0x2d4),'message':_0x20885e(0x24e)}),_0x26839d=''):(_0x26839d=_0x5ca662['role'][_0x20885e(0x1d3)]()[_0x20885e(0x2f1)](),!NOTIFICATION_RECIPIENT_ROLES[_0x20885e(0x2ae)](_0x26839d)&&_0x1e6077[_0x20885e(0x1db)]({'path':_0x327cf3+_0x20885e(0x2d4),'message':_0x20885e(0x1e9)})));if(_0x26839d==='TO')_0x20d9a1=!![];const _0x26c0ef=requireNotificationString(_0x5ca662[_0x20885e(0x1c0)],_0x327cf3+_0x20885e(0x24c),'Notification\x20recipient.value\x20is\x20required.',_0x1e6077);_0x26c0ef&&validateNotificationPlaceholders(_0x26c0ef,_0x327cf3+_0x20885e(0x24c),_0x1e6077);}),_0x114794[_0x486554(0x318)]>0x0&&!_0x20d9a1&&_0x1e6077[_0x486554(0x1db)]({'path':_0x170707,'message':_0x486554(0x2c4)});}function requireNotificationString(_0x1dfca1,_0x1f09f1,_0xa06c4f,_0x13bc0c){const _0x315ef3=a287_0x8cf25c;if(typeof _0x1dfca1!==_0x315ef3(0x1da)||_0x1dfca1[_0x315ef3(0x1d3)]()==='')return _0x13bc0c[_0x315ef3(0x1db)]({'path':_0x1f09f1,'message':_0xa06c4f}),undefined;return _0x1dfca1[_0x315ef3(0x1d3)]();}function validateNotificationPlaceholders(_0x594adb,_0x2b75b1,_0x2b9d58){const _0x463c15=a287_0x8cf25c;for(const _0x581a5c of _0x594adb[_0x463c15(0x1f0)](NOTIFICATION_PLACEHOLDER_PATTERN)){const _0x402758=_0x581a5c[0x1]?.['trim']()??'',_0x5af08b=_0x402758[_0x463c15(0x203)]('.'),_0x1e1613=_0x5af08b>=0x0?_0x402758[_0x463c15(0x1be)](0x0,_0x5af08b):_0x402758,_0x5d3c11=_0x5af08b>=0x0?_0x402758[_0x463c15(0x1be)](_0x5af08b+0x1)[_0x463c15(0x1d3)]():'';(![_0x463c15(0x1ca),_0x463c15(0x1f9),_0x463c15(0x2b3)][_0x463c15(0x2f9)](_0x1e1613)||_0x5d3c11==='')&&_0x2b9d58['push']({'path':_0x2b75b1,'message':'Unsupported\x20notification\x20placeholder:\x20'+_0x581a5c[0x0]+'.'});}_0x594adb[_0x463c15(0x269)](NOTIFICATION_PLACEHOLDER_PATTERN,'')[_0x463c15(0x2f9)]('${')&&_0x2b9d58['push']({'path':_0x2b75b1,'message':'Notification\x20text\x20contains\x20a\x20malformed\x20placeholder.'});}function validateEdge(_0x5e21bd,_0x1d18bd,_0x2bd912){const _0xaaa425=a287_0x8cf25c;_0x5e21bd['name']!==undefined&&typeof _0x5e21bd[_0xaaa425(0x271)]!==_0xaaa425(0x1da)&&_0x2bd912[_0xaaa425(0x1db)]({'path':_0x1d18bd+_0xaaa425(0x23f),'message':_0xaaa425(0x2d2)}),_0x5e21bd['defaultFlow']!==undefined&&typeof _0x5e21bd['defaultFlow']!=='boolean'&&_0x2bd912[_0xaaa425(0x1db)]({'path':_0x1d18bd+_0xaaa425(0x24d),'message':_0xaaa425(0x243)}),_0x5e21bd[_0xaaa425(0x1e3)]!==undefined&&(!Array[_0xaaa425(0x2df)](_0x5e21bd[_0xaaa425(0x1e3)])?_0x2bd912['push']({'path':_0x1d18bd+_0xaaa425(0x1b8),'message':'waypoints\x20must\x20be\x20an\x20array.'}):_0x5e21bd[_0xaaa425(0x1e3)][_0xaaa425(0x236)]((_0x31bba9,_0x322fb3)=>{const _0x4543be=_0xaaa425;if(!isRecord(_0x31bba9)){_0x2bd912[_0x4543be(0x1db)]({'path':_0x1d18bd+_0x4543be(0x1e5)+_0x322fb3+']','message':_0x4543be(0x1c4)});return;}for(const _0x400d97 of['x','y']){const _0x2e7ee0=_0x31bba9[_0x400d97];(typeof _0x2e7ee0!==_0x4543be(0x22f)||!Number['isFinite'](_0x2e7ee0))&&_0x2bd912[_0x4543be(0x1db)]({'path':_0x1d18bd+'.waypoints['+_0x322fb3+'].'+_0x400d97,'message':_0x4543be(0x220)+_0x400d97+_0x4543be(0x200)});}})),_0x5e21bd[_0xaaa425(0x297)]!==undefined&&!CONDITION_TYPES['has'](_0x5e21bd[_0xaaa425(0x297)])&&_0x2bd912[_0xaaa425(0x1db)]({'path':_0x1d18bd+_0xaaa425(0x260),'message':_0xaaa425(0x21f)+String(_0x5e21bd[_0xaaa425(0x297)])+'.'}),_0x5e21bd[_0xaaa425(0x297)]===_0xaaa425(0x21b)&&(typeof _0x5e21bd[_0xaaa425(0x1d1)]!==_0xaaa425(0x1da)||_0x5e21bd[_0xaaa425(0x1d1)][_0xaaa425(0x1d3)]()==='')&&_0x2bd912[_0xaaa425(0x1db)]({'path':_0x1d18bd+_0xaaa425(0x30a),'message':_0xaaa425(0x1e1)}),_0x5e21bd[_0xaaa425(0x27b)]===!![]&&_0x5e21bd[_0xaaa425(0x297)]!==_0xaaa425(0x1fe)&&_0x2bd912[_0xaaa425(0x1db)]({'path':_0x1d18bd+_0xaaa425(0x24d),'message':_0xaaa425(0x1c9)}),_0x5e21bd[_0xaaa425(0x27b)]===!![]&&typeof _0x5e21bd['expression']===_0xaaa425(0x1da)&&_0x5e21bd['expression'][_0xaaa425(0x1d3)]()!==''&&_0x2bd912['push']({'path':_0x1d18bd+'.expression','message':'A\x20default\x20flow\x20must\x20not\x20have\x20an\x20expression.'});}function validateGraphShape(_0x10816f,_0x2a4a90,_0x241e39,_0x2def50,_0x4f0158,_0x50874d,_0x336d82){const _0x38ed16=a287_0x8cf25c;for(const [_0x4b87d7,_0x544632]of _0x10816f){const _0x2ddc28=_0x4f0158[_0x38ed16(0x22d)](_0x4b87d7)??[],_0x380d71=_0x2def50[_0x38ed16(0x22d)](_0x4b87d7)??[];_0x544632['type']!==_0x38ed16(0x209)&&_0x2ddc28[_0x38ed16(0x318)]===0x0&&_0x336d82[_0x38ed16(0x1db)]({'path':'flowJson.nodes.'+_0x4b87d7,'message':_0x38ed16(0x21e)});_0x544632[_0x38ed16(0x23e)]!==_0x38ed16(0x20c)&&_0x380d71['length']===0x0&&_0x336d82['push']({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':_0x38ed16(0x29f)});_0x544632[_0x38ed16(0x23e)]===_0x38ed16(0x209)&&_0x2ddc28[_0x38ed16(0x318)]>0x0&&_0x336d82['push']({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':_0x38ed16(0x224)});_0x544632[_0x38ed16(0x23e)]===_0x38ed16(0x20c)&&_0x380d71[_0x38ed16(0x318)]>0x0&&_0x336d82[_0x38ed16(0x1db)]({'path':'flowJson.nodes.'+_0x4b87d7,'message':_0x38ed16(0x2b8)});if(_0x544632[_0x38ed16(0x23e)]==='CONDITION'){_0x380d71['length']<0x2&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':'CONDITION\x20node\x20requires\x20at\x20least\x20two\x20outgoing\x20edges.'});const _0x8f7b02=_0x380d71['filter'](_0x40ec54=>_0x40ec54['defaultFlow']===!![]);_0x8f7b02['length']!==0x1&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':'CONDITION\x20node\x20requires\x20exactly\x20one\x20default\x20outgoing\x20edge.'});if(_0x8f7b02[_0x38ed16(0x318)]===0x1){const _0x470ab5=_0x8f7b02[0x0],_0x170143=_0x50874d[_0x38ed16(0x22d)](_0x470ab5)??'flowJson.edges';_0x470ab5[_0x38ed16(0x297)]!==_0x38ed16(0x1fe)&&_0x336d82['push']({'path':_0x170143+_0x38ed16(0x260),'message':_0x38ed16(0x30c)});_0x470ab5[_0x38ed16(0x1d1)]!==undefined&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x170143+_0x38ed16(0x30a),'message':'CONDITION\x20default\x20edge\x20must\x20not\x20define\x20expression.'});for(const _0x3132e4 of _0x380d71){if(_0x3132e4===_0x470ab5)continue;const _0x33e2f2=_0x50874d[_0x38ed16(0x22d)](_0x3132e4)??_0x38ed16(0x247);if(_0x3132e4[_0x38ed16(0x297)]!==_0x38ed16(0x21b))_0x336d82['push']({'path':_0x33e2f2+_0x38ed16(0x260),'message':'CONDITION\x20non-default\x20edge\x20must\x20use\x20conditionType\x20EXPRESSION.'});else(typeof _0x3132e4[_0x38ed16(0x1d1)]!=='string'||_0x3132e4[_0x38ed16(0x1d1)][_0x38ed16(0x1d3)]()==='')&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x33e2f2+'.expression','message':_0x38ed16(0x22a)});}}}if(_0x544632[_0x38ed16(0x23e)]===_0x38ed16(0x307)&&(_0x544632[_0x38ed16(0x2a0)]??'APPROVAL')===_0x38ed16(0x1f1)){if(_0x380d71[_0x38ed16(0x318)]!==0x1)_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':_0x38ed16(0x1d6)});else{const _0x4c8621=_0x380d71[0x0];((_0x4c8621[_0x38ed16(0x297)]??_0x38ed16(0x1fe))!==_0x38ed16(0x1fe)||_0x4c8621['defaultFlow']===!![]||typeof _0x4c8621[_0x38ed16(0x1d1)]===_0x38ed16(0x1da)&&_0x4c8621[_0x38ed16(0x1d1)][_0x38ed16(0x1d3)]()!=='')&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x50874d[_0x38ed16(0x22d)](_0x4c8621)??_0x38ed16(0x247),'message':_0x38ed16(0x248)});}}else{if(_0x544632[_0x38ed16(0x23e)]===_0x38ed16(0x307)){const _0x4c734d=_0x380d71[_0x38ed16(0x2ab)](_0x32fb0f=>_0x32fb0f[_0x38ed16(0x297)]??_0x38ed16(0x1fe)),_0x5508de=_0x4c734d[_0x38ed16(0x255)](_0x555a02=>_0x555a02!=='APPROVED'&&_0x555a02!=='REJECTED');_0x5508de[_0x38ed16(0x318)]>0x0&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':_0x38ed16(0x206)}),_0x4c734d[_0x38ed16(0x255)](_0x17db38=>_0x17db38===_0x38ed16(0x253))['length']!==0x1&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':'APPROVAL\x20node\x20requires\x20exactly\x20one\x20APPROVED\x20outgoing\x20edge.'}),_0x4c734d[_0x38ed16(0x255)](_0x169093=>_0x169093==='REJECTED')[_0x38ed16(0x318)]!==0x1&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x4b87d7,'message':'APPROVAL\x20node\x20requires\x20exactly\x20one\x20REJECTED\x20outgoing\x20edge.'}),_0x380d71[_0x38ed16(0x2cb)](_0x3bc2f7=>_0x3bc2f7['defaultFlow']===!![])&&_0x336d82['push']({'path':'flowJson.nodes.'+_0x4b87d7,'message':_0x38ed16(0x232)});}}}const _0x1b9a71=new Set(),_0x5345dd=_0x8884c4=>{const _0x97230=_0x38ed16;if(_0x1b9a71[_0x97230(0x2ae)](_0x8884c4))return;_0x1b9a71[_0x97230(0x238)](_0x8884c4);for(const _0x351614 of _0x2def50[_0x97230(0x22d)](_0x8884c4)??[]){const _0x281752=resolveEdgeEndpoint(_0x351614[_0x97230(0x25f)],_0x351614[_0x97230(0x25e)]);if(_0x281752&&_0x10816f[_0x97230(0x2ae)](_0x281752))_0x5345dd(_0x281752);}};_0x5345dd(_0x2a4a90);for(const _0x198a36 of _0x10816f[_0x38ed16(0x29c)]()){!_0x1b9a71['has'](_0x198a36)&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x198a36,'message':_0x38ed16(0x275)});}const _0xc9ad1=_0x241e39[_0x38ed16(0x2cb)](_0x272282=>_0x1b9a71[_0x38ed16(0x2ae)](_0x272282));if(!_0xc9ad1){_0x336d82[_0x38ed16(0x1db)]({'path':'flowJson.edges','message':'No\x20END\x20node\x20is\x20reachable\x20from\x20START.'});return;}const _0x35102a=new Set(),_0x51f402=_0x22c912=>{const _0x11195f=_0x38ed16;if(_0x35102a[_0x11195f(0x2ae)](_0x22c912))return;_0x35102a[_0x11195f(0x238)](_0x22c912);for(const _0x4d1ba8 of _0x4f0158['get'](_0x22c912)??[]){const _0x5ac9cd=resolveEdgeEndpoint(_0x4d1ba8[_0x11195f(0x25d)],_0x4d1ba8[_0x11195f(0x26f)]);if(_0x5ac9cd&&_0x10816f['has'](_0x5ac9cd))_0x51f402(_0x5ac9cd);}};for(const _0x2bfeb1 of _0x241e39){if(_0x10816f['has'](_0x2bfeb1))_0x51f402(_0x2bfeb1);}for(const _0x2e9eab of _0x1b9a71){!_0x35102a[_0x38ed16(0x2ae)](_0x2e9eab)&&_0x336d82[_0x38ed16(0x1db)]({'path':_0x38ed16(0x30d)+_0x2e9eab,'message':_0x38ed16(0x20a)});}}function validateApprovalResults(_0xb8ad,_0x3e94ca,_0x24684f,_0x455aa4){const _0x2dd0c1=a287_0x8cf25c;if(_0x3e94ca===0x0)return;const _0x1dfee0=new Set(_0x24684f[_0x2dd0c1(0x2ab)](_0x5cf086=>_0xb8ad['get'](_0x5cf086)?.[_0x2dd0c1(0x2e8)])[_0x2dd0c1(0x255)](_0x3b80f2=>typeof _0x3b80f2===_0x2dd0c1(0x1da)));for(const _0x52ee4d of['APPROVED',_0x2dd0c1(0x2cf)]){!_0x1dfee0[_0x2dd0c1(0x2ae)](_0x52ee4d)&&_0x455aa4[_0x2dd0c1(0x1db)]({'path':_0x2dd0c1(0x2e0),'message':'Approval\x20flow\x20requires\x20an\x20END\x20node\x20with\x20result\x20'+_0x52ee4d+'.'});}}function validateScriptResultReferences(_0x22e431,_0x376a15,_0xaa4b21,_0x46ce93,_0xb20e78,_0x366690,_0x4334a0){const _0x2e9e8a=a287_0x8cf25c;if(_0x366690[_0x2e9e8a(0x2b0)]===0x0)return;const _0x4b38c7=new Set(),_0x2ac6d5=_0x2a027d=>{const _0x1b02ba=_0x2e9e8a;if(!_0x4b38c7[_0x1b02ba(0x2ae)](_0x2a027d)&&_0x22e431['has'](_0x2a027d)){_0x4b38c7['add'](_0x2a027d);for(const _0x267b49 of _0xaa4b21['get'](_0x2a027d)??[]){const _0x512f15=resolveEdgeEndpoint(_0x267b49[_0x1b02ba(0x25f)],_0x267b49['targetNodeId']);if(_0x512f15)_0x2ac6d5(_0x512f15);}}};_0x2ac6d5(_0x376a15);const _0xc56bc2=new Map();for(const _0xcdfeec of _0x4b38c7){_0xc56bc2[_0x2e9e8a(0x1e2)](_0xcdfeec,_0xcdfeec===_0x376a15?new Set([_0x376a15]):new Set(_0x4b38c7));}let _0x4f276a=!![];while(_0x4f276a){_0x4f276a=![];for(const _0x5533fa of _0x4b38c7){if(_0x5533fa===_0x376a15)continue;const _0x201794=(_0x46ce93[_0x2e9e8a(0x22d)](_0x5533fa)??[])[_0x2e9e8a(0x2ab)](_0x4375bb=>resolveEdgeEndpoint(_0x4375bb[_0x2e9e8a(0x25d)],_0x4375bb[_0x2e9e8a(0x26f)]))[_0x2e9e8a(0x255)](_0x18ad08=>Boolean(_0x18ad08&&_0x4b38c7[_0x2e9e8a(0x2ae)](_0x18ad08)));if(_0x201794[_0x2e9e8a(0x318)]===0x0)continue;const _0x2f39a3=new Set(_0xc56bc2[_0x2e9e8a(0x22d)](_0x201794[0x0])??[]);for(const _0x30ad1d of _0x201794['slice'](0x1)){const _0x2c5264=_0xc56bc2[_0x2e9e8a(0x22d)](_0x30ad1d)??new Set();for(const _0x51a5ed of _0x2f39a3){if(!_0x2c5264[_0x2e9e8a(0x2ae)](_0x51a5ed))_0x2f39a3[_0x2e9e8a(0x1c5)](_0x51a5ed);}}_0x2f39a3[_0x2e9e8a(0x238)](_0x5533fa);const _0x120ee0=_0xc56bc2['get'](_0x5533fa);!setsEqual(_0x120ee0,_0x2f39a3)&&(_0xc56bc2[_0x2e9e8a(0x1e2)](_0x5533fa,_0x2f39a3),_0x4f276a=!![]);}}for(const [_0x5c694d,_0x203253]of _0xaa4b21){const _0x19cfd5=_0xc56bc2[_0x2e9e8a(0x22d)](_0x5c694d);if(!_0x19cfd5)continue;for(const _0x4855db of _0x203253){if(_0x4855db[_0x2e9e8a(0x297)]!==_0x2e9e8a(0x21b)||typeof _0x4855db['expression']!=='string')continue;for(const [_0x3108e3,_0x2b270]of _0x366690){expressionReferencesVariable(_0x4855db['expression'],_0x3108e3)&&!_0x19cfd5[_0x2e9e8a(0x2ae)](_0x2b270)&&_0x4334a0[_0x2e9e8a(0x1db)]({'path':(_0xb20e78[_0x2e9e8a(0x22d)](_0x4855db)??_0x2e9e8a(0x247))+_0x2e9e8a(0x30a),'message':_0x2e9e8a(0x256)+_0x3108e3+_0x2e9e8a(0x2be)+_0x2b270+'\x20is\x20not\x20on\x20every\x20upstream\x20path\x20to\x20'+_0x5c694d+'.'});}}}}function expressionReferencesVariable(_0x35fb5d,_0x3b5fb6){const _0x522ffb=a287_0x8cf25c;let _0x293458=0x0;while(_0x293458<_0x35fb5d[_0x522ffb(0x318)]){const _0x280fff=_0x35fb5d[_0x293458];if(_0x280fff==='\x27'||_0x280fff==='\x22'){_0x293458=skipQuotedExpressionSegment(_0x35fb5d,_0x293458,_0x280fff);continue;}if(!/[A-Za-z_]/['test'](_0x280fff)){_0x293458+=0x1;continue;}const _0x227317=_0x293458;_0x293458+=0x1;while(_0x293458<_0x35fb5d['length']&&/[A-Za-z0-9_]/[_0x522ffb(0x1ea)](_0x35fb5d[_0x293458])){_0x293458+=0x1;}if(_0x35fb5d[_0x522ffb(0x1be)](_0x227317,_0x293458)!==_0x3b5fb6)continue;let _0x54ce7c=_0x227317-0x1;while(_0x54ce7c>=0x0&&/\s/[_0x522ffb(0x1ea)](_0x35fb5d[_0x54ce7c])){_0x54ce7c-=0x1;}if(_0x35fb5d[_0x54ce7c]!=='.')return!![];}return![];}function skipQuotedExpressionSegment(_0x5152b6,_0x2ea36e,_0x322f17){let _0x141381=_0x2ea36e+0x1;while(_0x141381<_0x5152b6['length']){if(_0x5152b6[_0x141381]==='\x5c'){_0x141381+=0x2;continue;}if(_0x5152b6[_0x141381]===_0x322f17)return _0x141381+0x1;_0x141381+=0x1;}return _0x141381;}function resolveEffectiveResultVariable(_0x3f41cf,_0x27d974){const _0x5eba17=a287_0x8cf25c;if(_0x3f41cf===undefined||_0x3f41cf===null||_0x27d974&&_0x3f41cf==='')return DEFAULT_SCRIPT_RESULT_VARIABLE;if(typeof _0x3f41cf!=='string'||!VARIABLE_PATTERN[_0x5eba17(0x1ea)](_0x3f41cf)||RESERVED_RESULT_VARIABLES['has'](_0x3f41cf)||_0x3f41cf['startsWith'](_0x5eba17(0x284)))return undefined;return _0x3f41cf;}function registerResultVariableOwner(_0x4acc40,_0x3dc654,_0x54dfc0,_0x36f9d3){const _0x34f8ad=a287_0x8cf25c;if(_0x4acc40[_0x34f8ad(0x2ae)](_0x3dc654)){_0x36f9d3[_0x34f8ad(0x1db)]({'path':'flowJson.nodes','message':_0x34f8ad(0x20b)+_0x3dc654+'.'});return;}_0x4acc40[_0x34f8ad(0x1e2)](_0x3dc654,_0x54dfc0);}function setsEqual(_0x48fd59,_0x2187c0){const _0x393492=a287_0x8cf25c;return _0x48fd59['size']===_0x2187c0[_0x393492(0x2b0)]&&[..._0x48fd59][_0x393492(0x2b6)](_0x8c3b79=>_0x2187c0[_0x393492(0x2ae)](_0x8c3b79));}function isValidUserId(_0x5e4754){const _0x1638ab=a287_0x8cf25c;if(typeof _0x5e4754===_0x1638ab(0x1da))return _0x5e4754[_0x1638ab(0x1d3)]()['length']>0x0;return Number[_0x1638ab(0x1fd)](_0x5e4754)&&Number(_0x5e4754)>0x0;}function resolveEdgeEndpoint(_0x2fefcc,_0x1da43a){const _0x48862c=a287_0x8cf25c;if(typeof _0x2fefcc===_0x48862c(0x1da)&&_0x2fefcc['trim']())return _0x2fefcc['trim']();if(typeof _0x1da43a===_0x48862c(0x1da)&&_0x1da43a['trim']())return _0x1da43a['trim']();return undefined;}function removeEmptyMetadata(_0x250efc,_0x455f4f,_0x5b17a1,_0x23df5c){const _0x4c1569=a287_0x8cf25c;if(Array[_0x4c1569(0x2df)](_0x250efc)){_0x250efc[_0x4c1569(0x236)]((_0x1d2f7b,_0x3ef439)=>removeEmptyMetadata(_0x1d2f7b,_0x455f4f+'['+_0x3ef439+']',_0x5b17a1,_0x23df5c));return;}if(!isRecord(_0x250efc))return;for(const [_0x569bd5,_0x1b9457]of Object[_0x4c1569(0x306)](_0x250efc)){const _0x387dd3=_0x455f4f+'.'+_0x569bd5;if(_0x569bd5===_0x4c1569(0x1dd)&&isEmptyJsonValue(_0x1b9457)){delete _0x250efc[_0x569bd5],_0x23df5c[_0x4c1569(0x1db)](_0x387dd3),_0x5b17a1['push']({'code':_0x4c1569(0x1f4),'path':_0x387dd3,'message':_0x387dd3+_0x4c1569(0x251)});continue;}removeEmptyMetadata(_0x1b9457,_0x387dd3,_0x5b17a1,_0x23df5c);}}function isEmptyJsonValue(_0x87eedf){const _0x2c7e66=a287_0x8cf25c;if(_0x87eedf===null||_0x87eedf===undefined)return!![];if(typeof _0x87eedf===_0x2c7e66(0x1da))return _0x87eedf[_0x2c7e66(0x1d3)]()==='';if(Array[_0x2c7e66(0x2df)](_0x87eedf))return _0x87eedf[_0x2c7e66(0x318)]===0x0;return isRecord(_0x87eedf)&&Object[_0x2c7e66(0x29c)](_0x87eedf)['length']===0x0;}function isRecord(_0x37e695){const _0xc3bcb6=a287_0x8cf25c;return typeof _0x37e695===_0xc3bcb6(0x2c7)&&_0x37e695!==null&&!Array[_0xc3bcb6(0x2df)](_0x37e695);}function cloneJsonValue(_0x47aa71){const _0x470dbe=a287_0x8cf25c;return JSON['parse'](JSON[_0x470dbe(0x246)](_0x47aa71));}export async function readFlowConfigFile(_0x1cf172){const _0x20d176=a287_0x8cf25c,_0x50bcd1=await readFile(resolve(_0x1cf172),_0x20d176(0x219));return JSON[_0x20d176(0x291)](_0x50bcd1);}
|