@lovrabet/rabetbase-cli 2.5.4-beta.2 → 2.5.4-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/api-group.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/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/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/api-architecture-upgrade.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.d.ts +2 -0
- package/lib/commands/user-account/feishu-bind.js +1 -0
- 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.d.ts +2 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/hook-directory.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/cross-db-relation.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 +1 -1
- package/skills/rabetbase/SKILL.md +3 -2
- package/skills/rabetbase/references/rabetbase-user-account.md +20 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x14c73f,_0x20281e){const _0x3a4dd1=a275_0x241c,_0x502f18=_0x14c73f();while(!![]){try{const _0x3e2d60=parseInt(_0x3a4dd1(0x152))/0x1*(-parseInt(_0x3a4dd1(0x164))/0x2)+parseInt(_0x3a4dd1(0x156))/0x3*(-parseInt(_0x3a4dd1(0x17a))/0x4)+parseInt(_0x3a4dd1(0x16e))/0x5*(-parseInt(_0x3a4dd1(0x168))/0x6)+-parseInt(_0x3a4dd1(0x16f))/0x7+-parseInt(_0x3a4dd1(0x170))/0x8*(parseInt(_0x3a4dd1(0x185))/0x9)+parseInt(_0x3a4dd1(0x14d))/0xa+parseInt(_0x3a4dd1(0x187))/0xb;if(_0x3e2d60===_0x20281e)break;else _0x502f18['push'](_0x502f18['shift']());}catch(_0x5272ef){_0x502f18['push'](_0x502f18['shift']());}}}(a275_0x5e1b,0x21755));import{CliError}from'../../errors.js';export function trackedHookDirectoryMappings(_0x48896b){const _0x121fe6=a275_0x241c,_0x461c7c=[];for(const [_0x23608e,_0x320888]of Object[_0x121fe6(0x171)](_0x48896b[_0x121fe6(0x14f)])){const [_0x2a48a4,_0x4249e7]=_0x23608e[_0x121fe6(0x15b)]('/');if(_0x2a48a4!==_0x121fe6(0x15c)||!_0x4249e7||!_0x320888[_0x121fe6(0x16c)])continue;_0x461c7c['push']({'alias':_0x4249e7,'datasetCode':_0x320888[_0x121fe6(0x16c)]});}return _0x461c7c;}export function uniqueTrackedHookDirectoryByDataset(_0x2b27d2){const _0x2cc591=a275_0x241c,_0x3a2ad5=new Map();for(const _0x18ab0d of trackedHookDirectoryMappings(_0x2b27d2)){const _0x3cda11=directoryIdentity(_0x18ab0d['datasetCode']),_0x5330b3=_0x3a2ad5[_0x2cc591(0x16b)](_0x3cda11)??new Map();_0x5330b3['set'](directoryIdentity(_0x18ab0d['alias']),_0x18ab0d[_0x2cc591(0x17b)]),_0x3a2ad5['set'](_0x3cda11,_0x5330b3);}const _0x37757b=new Map();for(const [_0x1a187d,_0x2f8bee]of _0x3a2ad5){if(_0x2f8bee['size']>0x1)throw hookDirectoryError(_0x2cc591(0x159),_0x2cc591(0x184)+_0x1a187d+_0x2cc591(0x17f)+[..._0x2f8bee['values']()]['join'](',\x20')+'.',{'datasetCode':_0x1a187d,'directories':[..._0x2f8bee[_0x2cc591(0x151)]()]});_0x37757b[_0x2cc591(0x17e)](_0x1a187d,[..._0x2f8bee['values']()][0x0]);}return _0x37757b;}export function assertUnambiguousHookDirectoryMappings(_0x1e7147){const _0x5c0cfd=a275_0x241c,_0x1213a5=new Map();for(const {alias:_0x1bdfca,datasetCode:_0x37f1a1}of _0x1e7147){const _0x15726d=directoryIdentity(_0x1bdfca),_0x55be00=_0x1213a5[_0x5c0cfd(0x16b)](_0x15726d)??new Set();_0x55be00[_0x5c0cfd(0x155)](_0x37f1a1),_0x1213a5[_0x5c0cfd(0x17e)](_0x15726d,_0x55be00);}for(const [_0x51f413,_0x1bca78]of _0x1213a5){if(_0x1bca78[_0x5c0cfd(0x150)]>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS',_0x5c0cfd(0x175)+_0x51f413+'\x22\x20resolves\x20to\x20multiple\x20Datasets.',{'directoryName':_0x51f413,'datasetCodes':[..._0x1bca78]});}}export function assertUnambiguousHookAliases(_0x4f592c){const _0x5e2240=a275_0x241c,_0x44ee80=[..._0x4f592c],_0x2fb12c=new Map(),_0x5853d7=new Map();for(const {alias:_0xebe7d3,datasetCode:_0x4a24d2}of _0x44ee80){const _0xd0573=directoryIdentity(_0xebe7d3),_0x38f639=directoryIdentity(_0x4a24d2),_0x18fc9d=_0x2fb12c[_0x5e2240(0x16b)](_0xd0573)??new Set();_0x18fc9d['add'](_0x4a24d2),_0x2fb12c[_0x5e2240(0x17e)](_0xd0573,_0x18fc9d);const _0x3e20aa=_0x5853d7[_0x5e2240(0x16b)](_0x38f639)??new Set();_0x3e20aa['add'](_0xebe7d3),_0x5853d7['set'](_0x38f639,_0x3e20aa);}for(const [_0xdd7c61,_0x5e6160]of _0x2fb12c){if(_0x5e6160[_0x5e2240(0x150)]>0x1)throw hookDirectoryError('HOOK_ALIAS_AMBIGUOUS',_0x5e2240(0x15a)+_0xdd7c61+_0x5e2240(0x16d),{'alias':_0xdd7c61,'datasetCodes':[..._0x5e6160]});}for(const [_0x152304,_0xaf481c]of _0x5853d7){if(_0xaf481c[_0x5e2240(0x150)]>0x1)throw hookDirectoryError(_0x5e2240(0x182),_0x5e2240(0x184)+_0x152304+'\x22\x20has\x20multiple\x20SDK\x20aliases\x20and\x20has\x20no\x20unique\x20HOOK\x20directory.',{'datasetCode':_0x152304,'aliases':[..._0xaf481c]});}}export function buildHookDirectoryIndexes(_0x1e95d0,_0x233d81=[]){const _0x3cbdfe=a275_0x241c,_0x4a79f8=[..._0x233d81];assertUnambiguousHookDirectoryMappings(_0x4a79f8[_0x3cbdfe(0x181)](([_0x1d6f0a,_0x1a83aa])=>({'alias':_0x1d6f0a,'datasetCode':_0x1a83aa})));const _0x44c464=new Map(),_0x36ad71=new Map();for(const _0x55aa9c of _0x1e95d0){appendUnique(_0x44c464,directoryIdentity(_0x55aa9c[_0x3cbdfe(0x17c)]),_0x55aa9c,_0xf3b962=>_0xf3b962[_0x3cbdfe(0x17c)]);}for(const [_0x24028b,_0x34df3c]of _0x4a79f8){appendUnique(_0x36ad71,directoryIdentity(_0x24028b),_0x34df3c,_0x3105d4=>_0x3105d4);}return{'datasetCodeToDatasets':_0x44c464,'aliasToDatasetCodes':_0x36ad71};}function a275_0x241c(_0x5e984b,_0x239487){_0x5e984b=_0x5e984b-0x14d;const _0x5e1b83=a275_0x5e1b();let _0x241c10=_0x5e1b83[_0x5e984b];return _0x241c10;}export function resolvePushHookDirectory(_0xbabc3e,_0x21e688,_0x3b6846){const _0x487e66=a275_0x241c,_0x253d03=directoryIdentity(_0xbabc3e),_0x59053e=_0x3b6846[_0x487e66(0x163)][_0x487e66(0x16b)](_0x253d03)??[],_0x29c46f=_0x3b6846[_0x487e66(0x172)][_0x487e66(0x16b)](_0x253d03)??[],_0x24e58b=new Set([..._0x59053e[_0x487e66(0x181)](_0x3ae0a6=>_0x3ae0a6[_0x487e66(0x17c)]),..._0x29c46f]);if(_0x24e58b['size']>0x1)throw hookDirectoryError(_0x487e66(0x176),'HOOK\x20directory\x20\x22'+_0xbabc3e+_0x487e66(0x169),{'directoryName':_0xbabc3e,'datasetCodes':[..._0x24e58b]});const _0x16d251=[..._0x24e58b][0x0];if(_0x16d251&&_0x21e688?.[_0x487e66(0x16c)]&&_0x16d251!==_0x21e688['datasetCode'])throw hookDirectoryError(_0x487e66(0x188),_0x487e66(0x175)+_0xbabc3e+'\x22\x20changed\x20mapping\x20from\x20Dataset\x20\x22'+_0x21e688[_0x487e66(0x16c)]+_0x487e66(0x16a)+_0x16d251+'\x22.',{'directoryName':_0xbabc3e,'datasetCode':_0x16d251,'lockedDatasetCode':_0x21e688[_0x487e66(0x16c)]});const _0x24cb5c=_0x16d251?findDatasetByCode(_0x3b6846,_0x16d251):undefined,_0x4bff43=!!_0x16d251&&_0x29c46f[_0x487e66(0x158)](_0x16d251);if(_0x24cb5c)return{'dataset':_0x24cb5c,'datasetCode':_0x24cb5c['code'],..._0x4bff43?{'alias':_0xbabc3e}:{},'directoryProtocol':_0x4bff43?'alias':_0x487e66(0x16c),'warnings':[]};const _0x223298=_0x21e688?.[_0x487e66(0x16c)];if(_0x223298){const _0x39e609=findDatasetByCode(_0x3b6846,_0x223298);if(_0x39e609)return{'dataset':_0x39e609,'datasetCode':_0x39e609[_0x487e66(0x17c)],..._0x21e688[_0x487e66(0x17b)]?{'alias':_0x21e688['alias']}:{},'directoryProtocol':_0x21e688['alias']?_0x487e66(0x17b):_0x487e66(0x16c),'warnings':[]};}if(_0x16d251||_0x223298){const _0x584b0f=_0x16d251??_0x223298;throw hookDirectoryError(_0x487e66(0x161),_0x487e66(0x175)+_0xbabc3e+_0x487e66(0x178),{'directoryName':_0xbabc3e,'datasetCode':_0x584b0f});}throw hookDirectoryError(_0x487e66(0x183),_0x487e66(0x166)+_0xbabc3e+_0x487e66(0x186),{'directoryName':_0xbabc3e});}export function preflightPushHookDirectories(_0x233402,_0x17c2a7,_0x2478f6,_0x4186a4){const _0x237510=a275_0x241c,_0x13785a=new Map(),_0x42682a=new Map();for(const _0x16dfa5 of _0x233402){if(_0x16dfa5[_0x237510(0x15e)]!==_0x237510(0x15c))continue;const _0x38b12a=_0x16dfa5[_0x237510(0x17b)];if(!_0x38b12a)throw hookDirectoryError(_0x237510(0x183),_0x237510(0x160)+_0x16dfa5[_0x237510(0x157)],{'lockKey':_0x16dfa5[_0x237510(0x157)]});let _0x186834;try{_0x186834=resolvePushHookDirectory(_0x38b12a,_0x17c2a7[_0x237510(0x14f)][_0x16dfa5[_0x237510(0x157)]],_0x2478f6);}catch(_0x4ddb01){if(_0x4186a4&&_0x4ddb01 instanceof CliError&&[_0x237510(0x161),_0x237510(0x183)][_0x237510(0x158)](_0x4ddb01[_0x237510(0x17c)])){_0x4186a4['set'](_0x16dfa5[_0x237510(0x157)],_0x4ddb01[_0x237510(0x14e)]);continue;}throw _0x4ddb01;}_0x13785a['set'](_0x16dfa5['lockKey'],_0x186834);const _0x3dd10a=_0x42682a[_0x237510(0x16b)](_0x186834[_0x237510(0x16c)])??new Set();_0x3dd10a[_0x237510(0x155)](_0x38b12a),_0x42682a[_0x237510(0x17e)](_0x186834[_0x237510(0x16c)],_0x3dd10a);}for(const [_0x7ac124,_0x45ebc5]of _0x42682a){if(_0x45ebc5[_0x237510(0x150)]>0x1)throw hookDirectoryError(_0x237510(0x159),_0x237510(0x184)+_0x7ac124+_0x237510(0x154)+[..._0x45ebc5][_0x237510(0x177)](',\x20')+'.',{'datasetCode':_0x7ac124,'directories':[..._0x45ebc5]});}return _0x13785a;}function a275_0x5e1b(){const _0x175068=['75weeNAr','427854qgJysZ','305344kiVOhR','entries','aliasToDatasetCodes','push','toLowerCase','HOOK\x20directory\x20\x22','HOOK_DIRECTORY_AMBIGUOUS','join','\x22\x20points\x20to\x20a\x20Dataset\x20that\x20is\x20absent\x20from\x20current\x20platform\x20metadata.','name','44WHZUxD','alias','code','some','set','\x22\x20has\x20multiple\x20tracked\x20HOOK\x20directories:\x20','\x22\x20differs\x20only\x20by\x20case\x20from\x20another\x20Dataset\x20code.','map','HOOK_ALIAS_AMBIGUOUS','HOOK_DIRECTORY_UNRESOLVED','Dataset\x20\x22','18rYSphk','\x22\x20to\x20a\x20Dataset\x20alias\x20or\x20datasetCode.','4124296NyWXHO','HOOK_MAPPING_DRIFT','2716110NqNRWq','message','functions','size','values','27376NnYpLp','NFC','\x22\x20is\x20represented\x20by\x20multiple\x20HOOK\x20directories:\x20','add','23259fkFSDx','lockKey','includes','HOOK_DUPLICATE_DIRECTORIES','SDK\x20alias\x20\x22','split','HOOK','Dataset\x20code\x20\x22','type','details','Incomplete\x20HOOK\x20path:\x20','HOOK_DATASET_NOT_FOUND','HOOK_DATASET_CODE_AMBIGUOUS','datasetCodeToDatasets','12gpptUc','normalize','Cannot\x20resolve\x20HOOK\x20directory\x20\x22','length','49002KeNpQK','\x22\x20collides\x20across\x20datasetCode\x20and\x20alias\x20namespaces.','\x22\x20to\x20\x22','get','datasetCode','\x22\x20resolves\x20to\x20multiple\x20Datasets.'];a275_0x5e1b=function(){return _0x175068;};return a275_0x5e1b();}export function hookDirectoryError(_0x335a3c,_0x3da091,_0x125486){const _0x10515a=a275_0x241c,_0xe41e84=new CliError(_0x335a3c,0x2,_0x335a3c+':\x20'+_0x3da091);return _0xe41e84[_0x10515a(0x15f)]=_0x125486,_0xe41e84;}function findDatasetByCode(_0x2fba41,_0xe8dc60){const _0x256926=a275_0x241c,_0x1987be=_0x2fba41['datasetCodeToDatasets'][_0x256926(0x16b)](directoryIdentity(_0xe8dc60))??[];if(_0x1987be[_0x256926(0x167)]>0x1)throw hookDirectoryError(_0x256926(0x162),_0x256926(0x15d)+_0xe8dc60+_0x256926(0x180),{'datasetCode':_0xe8dc60,'candidates':_0x1987be[_0x256926(0x181)](datasetFact)});return _0x1987be[0x0];}function directoryIdentity(_0x50ff33){const _0x27f577=a275_0x241c;return _0x50ff33[_0x27f577(0x165)](_0x27f577(0x153))[_0x27f577(0x174)]();}function appendUnique(_0x7ebd73,_0x55e3a7,_0x5b3c60,_0x29732c){const _0x5eac03=a275_0x241c,_0x8af5f4=_0x7ebd73[_0x5eac03(0x16b)](_0x55e3a7)??[];!_0x8af5f4[_0x5eac03(0x17d)](_0x19da03=>_0x29732c(_0x19da03)===_0x29732c(_0x5b3c60))&&_0x8af5f4[_0x5eac03(0x173)](_0x5b3c60),_0x7ebd73[_0x5eac03(0x17e)](_0x55e3a7,_0x8af5f4);}function datasetFact(_0x7ee948){const _0x57e86a=a275_0x241c;return{'id':_0x7ee948['id'],'name':_0x7ee948[_0x57e86a(0x179)],'datasetCode':_0x7ee948['code']};}
|
|
1
|
+
(function(_0x1e5445,_0x23616e){const _0x13b9a2=a276_0x3e9f,_0x49a63d=_0x1e5445();while(!![]){try{const _0x1f6204=parseInt(_0x13b9a2(0xd8))/0x1*(-parseInt(_0x13b9a2(0xb3))/0x2)+-parseInt(_0x13b9a2(0xd6))/0x3*(parseInt(_0x13b9a2(0xb7))/0x4)+-parseInt(_0x13b9a2(0xaf))/0x5+parseInt(_0x13b9a2(0xca))/0x6+parseInt(_0x13b9a2(0xde))/0x7*(-parseInt(_0x13b9a2(0xac))/0x8)+-parseInt(_0x13b9a2(0xbd))/0x9+parseInt(_0x13b9a2(0xc9))/0xa;if(_0x1f6204===_0x23616e)break;else _0x49a63d['push'](_0x49a63d['shift']());}catch(_0x27223){_0x49a63d['push'](_0x49a63d['shift']());}}}(a276_0x24e4,0xb2f21));import{CliError}from'../../errors.js';export function trackedHookDirectoryMappings(_0x2999c7){const _0xd5f6b6=a276_0x3e9f,_0x367e3c=[];for(const [_0x6d0bb3,_0x116ad0]of Object[_0xd5f6b6(0xcf)](_0x2999c7[_0xd5f6b6(0xad)])){const [_0x21f8df,_0x5957aa]=_0x6d0bb3[_0xd5f6b6(0xc3)]('/');if(_0x21f8df!=='HOOK'||!_0x5957aa||!_0x116ad0[_0xd5f6b6(0xc5)])continue;_0x367e3c[_0xd5f6b6(0xcc)]({'alias':_0x5957aa,'datasetCode':_0x116ad0[_0xd5f6b6(0xc5)]});}return _0x367e3c;}export function uniqueTrackedHookDirectoryByDataset(_0x38551b){const _0x5331fc=a276_0x3e9f,_0x3e368c=new Map();for(const _0x1b630c of trackedHookDirectoryMappings(_0x38551b)){const _0x9f39c=directoryIdentity(_0x1b630c[_0x5331fc(0xc5)]),_0x1cde31=_0x3e368c[_0x5331fc(0xb8)](_0x9f39c)??new Map();_0x1cde31['set'](directoryIdentity(_0x1b630c['alias']),_0x1b630c[_0x5331fc(0xe1)]),_0x3e368c[_0x5331fc(0xc6)](_0x9f39c,_0x1cde31);}const _0x32b5e9=new Map();for(const [_0x4e7c80,_0x14a4de]of _0x3e368c){if(_0x14a4de[_0x5331fc(0xcd)]>0x1)throw hookDirectoryError(_0x5331fc(0xab),_0x5331fc(0xdc)+_0x4e7c80+_0x5331fc(0xae)+[..._0x14a4de[_0x5331fc(0xb6)]()][_0x5331fc(0xd5)](',\x20')+'.',{'datasetCode':_0x4e7c80,'directories':[..._0x14a4de[_0x5331fc(0xb6)]()]});_0x32b5e9[_0x5331fc(0xc6)](_0x4e7c80,[..._0x14a4de[_0x5331fc(0xb6)]()][0x0]);}return _0x32b5e9;}export function assertUnambiguousHookDirectoryMappings(_0x52042b){const _0x1c7a8f=a276_0x3e9f,_0x18da33=new Map();for(const {alias:_0x457d41,datasetCode:_0x644d3d}of _0x52042b){const _0x1998d3=directoryIdentity(_0x457d41),_0x10f165=_0x18da33['get'](_0x1998d3)??new Set();_0x10f165['add'](_0x644d3d),_0x18da33['set'](_0x1998d3,_0x10f165);}for(const [_0x4fbff0,_0x45a2af]of _0x18da33){if(_0x45a2af[_0x1c7a8f(0xcd)]>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS',_0x1c7a8f(0xb1)+_0x4fbff0+'\x22\x20resolves\x20to\x20multiple\x20Datasets.',{'directoryName':_0x4fbff0,'datasetCodes':[..._0x45a2af]});}}export function assertUnambiguousHookAliases(_0x3e9cca){const _0x33816a=a276_0x3e9f,_0x1c0712=[..._0x3e9cca],_0x4fc8cb=new Map(),_0x2c4c67=new Map();for(const {alias:_0x59e63f,datasetCode:_0x32c699}of _0x1c0712){const _0x3dc1ed=directoryIdentity(_0x59e63f),_0x34389d=directoryIdentity(_0x32c699),_0x4540cf=_0x4fc8cb['get'](_0x3dc1ed)??new Set();_0x4540cf[_0x33816a(0xda)](_0x32c699),_0x4fc8cb['set'](_0x3dc1ed,_0x4540cf);const _0x4fbfc5=_0x2c4c67[_0x33816a(0xb8)](_0x34389d)??new Set();_0x4fbfc5['add'](_0x59e63f),_0x2c4c67[_0x33816a(0xc6)](_0x34389d,_0x4fbfc5);}for(const [_0x5f3847,_0x230a6b]of _0x4fc8cb){if(_0x230a6b[_0x33816a(0xcd)]>0x1)throw hookDirectoryError(_0x33816a(0xd0),_0x33816a(0xd4)+_0x5f3847+_0x33816a(0xb2),{'alias':_0x5f3847,'datasetCodes':[..._0x230a6b]});}for(const [_0x3d4e29,_0x39cde5]of _0x2c4c67){if(_0x39cde5[_0x33816a(0xcd)]>0x1)throw hookDirectoryError('HOOK_ALIAS_AMBIGUOUS',_0x33816a(0xdc)+_0x3d4e29+_0x33816a(0xc1),{'datasetCode':_0x3d4e29,'aliases':[..._0x39cde5]});}}export function buildHookDirectoryIndexes(_0x4a6f67,_0xa1649c=[]){const _0x2f7843=a276_0x3e9f,_0x48d39e=[..._0xa1649c];assertUnambiguousHookDirectoryMappings(_0x48d39e[_0x2f7843(0xd3)](([_0x3f1375,_0x2f7427])=>({'alias':_0x3f1375,'datasetCode':_0x2f7427})));const _0x2bf4cf=new Map(),_0x562a00=new Map();for(const _0x36b30a of _0x4a6f67){appendUnique(_0x2bf4cf,directoryIdentity(_0x36b30a[_0x2f7843(0xdd)]),_0x36b30a,_0x2e3f7c=>_0x2e3f7c[_0x2f7843(0xdd)]);}for(const [_0x2c2467,_0x1a5ba3]of _0x48d39e){appendUnique(_0x562a00,directoryIdentity(_0x2c2467),_0x1a5ba3,_0xa94595=>_0xa94595);}return{'datasetCodeToDatasets':_0x2bf4cf,'aliasToDatasetCodes':_0x562a00};}export function resolvePushHookDirectory(_0x30f85b,_0x406c16,_0x1ce10f){const _0x2cbf78=a276_0x3e9f,_0x175561=directoryIdentity(_0x30f85b),_0x4b5991=_0x1ce10f[_0x2cbf78(0xd7)][_0x2cbf78(0xb8)](_0x175561)??[],_0x346dbf=_0x1ce10f[_0x2cbf78(0xd9)][_0x2cbf78(0xb8)](_0x175561)??[],_0x160f67=new Set([..._0x4b5991[_0x2cbf78(0xd3)](_0x185a1=>_0x185a1[_0x2cbf78(0xdd)]),..._0x346dbf]);if(_0x160f67[_0x2cbf78(0xcd)]>0x1)throw hookDirectoryError('HOOK_DIRECTORY_AMBIGUOUS',_0x2cbf78(0xb1)+_0x30f85b+_0x2cbf78(0xc2),{'directoryName':_0x30f85b,'datasetCodes':[..._0x160f67]});const _0x54d396=[..._0x160f67][0x0];if(_0x54d396&&_0x406c16?.[_0x2cbf78(0xc5)]&&_0x54d396!==_0x406c16[_0x2cbf78(0xc5)])throw hookDirectoryError('HOOK_MAPPING_DRIFT',_0x2cbf78(0xb1)+_0x30f85b+_0x2cbf78(0xaa)+_0x406c16[_0x2cbf78(0xc5)]+_0x2cbf78(0xbc)+_0x54d396+'\x22.',{'directoryName':_0x30f85b,'datasetCode':_0x54d396,'lockedDatasetCode':_0x406c16[_0x2cbf78(0xc5)]});const _0x1d1211=_0x54d396?findDatasetByCode(_0x1ce10f,_0x54d396):undefined,_0x14b410=!!_0x54d396&&_0x346dbf[_0x2cbf78(0xba)](_0x54d396);if(_0x1d1211)return{'dataset':_0x1d1211,'datasetCode':_0x1d1211[_0x2cbf78(0xdd)],..._0x14b410?{'alias':_0x30f85b}:{},'directoryProtocol':_0x14b410?_0x2cbf78(0xe1):_0x2cbf78(0xc5),'warnings':[]};const _0x30593e=_0x406c16?.[_0x2cbf78(0xc5)];if(_0x30593e){const _0x2d2f10=findDatasetByCode(_0x1ce10f,_0x30593e);if(_0x2d2f10)return{'dataset':_0x2d2f10,'datasetCode':_0x2d2f10['code'],..._0x406c16['alias']?{'alias':_0x406c16[_0x2cbf78(0xe1)]}:{},'directoryProtocol':_0x406c16['alias']?_0x2cbf78(0xe1):_0x2cbf78(0xc5),'warnings':[]};}if(_0x54d396||_0x30593e){const _0x492971=_0x54d396??_0x30593e;throw hookDirectoryError(_0x2cbf78(0xb9),_0x2cbf78(0xb1)+_0x30f85b+_0x2cbf78(0xbb),{'directoryName':_0x30f85b,'datasetCode':_0x492971});}throw hookDirectoryError(_0x2cbf78(0xb4),'Cannot\x20resolve\x20HOOK\x20directory\x20\x22'+_0x30f85b+'\x22\x20to\x20a\x20Dataset\x20alias\x20or\x20datasetCode.',{'directoryName':_0x30f85b});}export function preflightPushHookDirectories(_0x36d3fd,_0x2cb0d3,_0x52f445,_0x3251d6){const _0x143f7b=a276_0x3e9f,_0x294696=new Map(),_0x3a6ff0=new Map();for(const _0xdb614d of _0x36d3fd){if(_0xdb614d[_0x143f7b(0xbe)]!==_0x143f7b(0xe0))continue;const _0x44c9e2=_0xdb614d['alias'];if(!_0x44c9e2)throw hookDirectoryError(_0x143f7b(0xb4),_0x143f7b(0xc4)+_0xdb614d[_0x143f7b(0xc0)],{'lockKey':_0xdb614d['lockKey']});let _0x215325;try{_0x215325=resolvePushHookDirectory(_0x44c9e2,_0x2cb0d3['functions'][_0xdb614d[_0x143f7b(0xc0)]],_0x52f445);}catch(_0x5e53f7){if(_0x3251d6&&_0x5e53f7 instanceof CliError&&[_0x143f7b(0xb9),_0x143f7b(0xb4)][_0x143f7b(0xba)](_0x5e53f7[_0x143f7b(0xdd)])){_0x3251d6[_0x143f7b(0xc6)](_0xdb614d[_0x143f7b(0xc0)],_0x5e53f7[_0x143f7b(0xb0)]);continue;}throw _0x5e53f7;}_0x294696[_0x143f7b(0xc6)](_0xdb614d[_0x143f7b(0xc0)],_0x215325);const _0x3fe183=_0x3a6ff0[_0x143f7b(0xb8)](_0x215325['datasetCode'])??new Set();_0x3fe183['add'](_0x44c9e2),_0x3a6ff0[_0x143f7b(0xc6)](_0x215325[_0x143f7b(0xc5)],_0x3fe183);}for(const [_0x57a869,_0x550a56]of _0x3a6ff0){if(_0x550a56[_0x143f7b(0xcd)]>0x1)throw hookDirectoryError(_0x143f7b(0xab),_0x143f7b(0xdc)+_0x57a869+_0x143f7b(0xdb)+[..._0x550a56][_0x143f7b(0xd5)](',\x20')+'.',{'datasetCode':_0x57a869,'directories':[..._0x550a56]});}return _0x294696;}function a276_0x24e4(){const _0x4dd4ec=['HOOK_DATASET_CODE_AMBIGUOUS','lockKey','\x22\x20has\x20multiple\x20SDK\x20aliases\x20and\x20has\x20no\x20unique\x20HOOK\x20directory.','\x22\x20collides\x20across\x20datasetCode\x20and\x20alias\x20namespaces.','split','Incomplete\x20HOOK\x20path:\x20','datasetCode','set','NFC','toLowerCase','49138580ADXqwd','6371262JGaDlv','details','push','size','length','entries','HOOK_ALIAS_AMBIGUOUS','name','some','map','SDK\x20alias\x20\x22','join','48ybPzwr','datasetCodeToDatasets','408RiqWqG','aliasToDatasetCodes','add','\x22\x20is\x20represented\x20by\x20multiple\x20HOOK\x20directories:\x20','Dataset\x20\x22','code','2751pTaZPN','Dataset\x20code\x20\x22','HOOK','alias','\x22\x20changed\x20mapping\x20from\x20Dataset\x20\x22','HOOK_DUPLICATE_DIRECTORIES','24096QKJXuX','functions','\x22\x20has\x20multiple\x20tracked\x20HOOK\x20directories:\x20','6202630svUVsQ','message','HOOK\x20directory\x20\x22','\x22\x20resolves\x20to\x20multiple\x20Datasets.','5678HTuaDd','HOOK_DIRECTORY_UNRESOLVED','\x22\x20differs\x20only\x20by\x20case\x20from\x20another\x20Dataset\x20code.','values','325232FUMugR','get','HOOK_DATASET_NOT_FOUND','includes','\x22\x20points\x20to\x20a\x20Dataset\x20that\x20is\x20absent\x20from\x20current\x20platform\x20metadata.','\x22\x20to\x20\x22','3233628uFflDb','type'];a276_0x24e4=function(){return _0x4dd4ec;};return a276_0x24e4();}export function hookDirectoryError(_0x3eb164,_0x414de1,_0x344bd1){const _0x1a34b0=a276_0x3e9f,_0x11edac=new CliError(_0x3eb164,0x2,_0x3eb164+':\x20'+_0x414de1);return _0x11edac[_0x1a34b0(0xcb)]=_0x344bd1,_0x11edac;}function a276_0x3e9f(_0x293416,_0x680ab2){_0x293416=_0x293416-0xaa;const _0x24e4f3=a276_0x24e4();let _0x3e9f64=_0x24e4f3[_0x293416];return _0x3e9f64;}function findDatasetByCode(_0x3282a9,_0x56869a){const _0x208d75=a276_0x3e9f,_0x4f6d42=_0x3282a9[_0x208d75(0xd7)][_0x208d75(0xb8)](directoryIdentity(_0x56869a))??[];if(_0x4f6d42[_0x208d75(0xce)]>0x1)throw hookDirectoryError(_0x208d75(0xbf),_0x208d75(0xdf)+_0x56869a+_0x208d75(0xb5),{'datasetCode':_0x56869a,'candidates':_0x4f6d42[_0x208d75(0xd3)](datasetFact)});return _0x4f6d42[0x0];}function directoryIdentity(_0x1547b3){const _0x20744a=a276_0x3e9f;return _0x1547b3['normalize'](_0x20744a(0xc7))[_0x20744a(0xc8)]();}function appendUnique(_0x48a026,_0xeef9f1,_0x3525d0,_0x466f19){const _0x2059d0=a276_0x3e9f,_0x55b70b=_0x48a026[_0x2059d0(0xb8)](_0xeef9f1)??[];!_0x55b70b[_0x2059d0(0xd2)](_0x55f656=>_0x466f19(_0x55f656)===_0x466f19(_0x3525d0))&&_0x55b70b['push'](_0x3525d0),_0x48a026[_0x2059d0(0xc6)](_0xeef9f1,_0x55b70b);}function datasetFact(_0x47df4f){const _0x564924=a276_0x3e9f;return{'id':_0x47df4f['id'],'name':_0x47df4f[_0x564924(0xd1)],'datasetCode':_0x47df4f[_0x564924(0xdd)]};}
|
package/lib/core/bff/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2cb652,_0x2b0ca0){const _0x53c869=a277_0x5213,_0x5dd693=_0x2cb652();while(!![]){try{const _0xa8fea9=parseInt(_0x53c869(0x1f0))/0x1+-parseInt(_0x53c869(0x1f2))/0x2*(parseInt(_0x53c869(0x1e7))/0x3)+parseInt(_0x53c869(0x1ed))/0x4+-parseInt(_0x53c869(0x1df))/0x5*(-parseInt(_0x53c869(0x1e1))/0x6)+parseInt(_0x53c869(0x1f1))/0x7+parseInt(_0x53c869(0x1ea))/0x8+-parseInt(_0x53c869(0x1e4))/0x9;if(_0xa8fea9===_0x2b0ca0)break;else _0x5dd693['push'](_0x5dd693['shift']());}catch(_0x4dbb29){_0x5dd693['push'](_0x5dd693['shift']());}}}(a277_0x211a,0xa4661));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptyBffLock(){return{'apps':{}};}export function ensureLockScope(_0x293ee2,_0x3a3c17,_0xf1a393,_0x1b93fa){const _0x4c530c=a277_0x5213,_0x11e474={'apps':_0x293ee2[_0x4c530c(0x1e2)]&&typeof _0x293ee2[_0x4c530c(0x1e2)]===_0x4c530c(0x1f3)?_0x293ee2[_0x4c530c(0x1e2)]:{}};let _0x386edc=_0x11e474[_0x4c530c(0x1e2)][_0x3a3c17];if(!_0x386edc)return _0x386edc={'scriptsRoot':_0xf1a393,'lastSync':'','functions':{}},_0x11e474[_0x4c530c(0x1e2)][_0x3a3c17]=_0x386edc,{'lockData':_0x11e474,'appLock':_0x386edc};if(!_0x386edc['scriptsRoot'])_0x386edc[_0x4c530c(0x1e8)]=_0xf1a393;else{if(_0x386edc['scriptsRoot']!==_0xf1a393)throw new Error(_0x1b93fa+_0x4c530c(0x1dd)+(_0x4c530c(0x1ec)+_0xf1a393+'\x22\x20vs\x20lock\x20\x22'+_0x386edc[_0x4c530c(0x1e8)]+_0x4c530c(0x1e5))+_0x4c530c(0x1e9));}return!_0x386edc[_0x4c530c(0x1ee)]&&(_0x386edc[_0x4c530c(0x1ee)]={}),!_0x386edc[_0x4c530c(0x1de)]&&(_0x386edc[_0x4c530c(0x1de)]=''),{'lockData':_0x11e474,'appLock':_0x386edc};}export async function readBffLockFile(_0x286a60){const _0x30d229=a277_0x5213;try{const _0x80bd7e=await readFile(_0x286a60,_0x30d229(0x1e6)),_0x5a0c2f=JSON[_0x30d229(0x1eb)](_0x80bd7e);return{'apps':_0x5a0c2f['apps']&&typeof _0x5a0c2f[_0x30d229(0x1e2)]===_0x30d229(0x1f3)?_0x5a0c2f[_0x30d229(0x1e2)]:{}};}catch(_0x357d3a){if(_0x357d3a[_0x30d229(0x1e3)]===_0x30d229(0x1ef))return null;throw new Error('Failed\x20to\x20read\x20Backend\x20Function\x20lock\x20file:\x20'+String(_0x357d3a));}}function a277_0x5213(_0x48a677,_0x405fb9){_0x48a677=_0x48a677-0x1dd;const _0x211a5b=a277_0x211a();let _0x5213ee=_0x211a5b[_0x48a677];return _0x5213ee;}function a277_0x211a(){const _0x5da311=['19164KlDkeN','scriptsRoot','Check\x20.rabetbase/bff.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','579824jXCMws','parse','current\x20\x22','1007472ZRLmnr','functions','ENOENT','333753ZzYxkg','4769408UmWCwv','4RLIebt','object',':\x20scriptsRoot\x20mismatch\x20—\x20','lastSync','22720vARGTP','stringify','1524Kobsxe','apps','code','16267194TorBTp','\x22.\x20','utf8'];a277_0x211a=function(){return _0x5da311;};return a277_0x211a();}export async function writeBffLockFile(_0x5c37cf,_0x4117a1){const _0x27d173=a277_0x5213;await mkdir(dirname(_0x5c37cf),{'recursive':!![]}),await writeFile(_0x5c37cf,JSON[_0x27d173(0x1e0)](_0x4117a1,null,0x2),_0x27d173(0x1e6));}
|
package/lib/core/bff/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a279_0x5c78da=a279_0xa660;(function(_0x30bc9f,_0x403c8a){const _0x5716e2=a279_0xa660,_0x41c0e4=_0x30bc9f();while(!![]){try{const _0x4bcafd=parseInt(_0x5716e2(0x1f6))/0x1+parseInt(_0x5716e2(0x1ff))/0x2+-parseInt(_0x5716e2(0x1f0))/0x3+parseInt(_0x5716e2(0x207))/0x4*(-parseInt(_0x5716e2(0x1f3))/0x5)+-parseInt(_0x5716e2(0x1f9))/0x6+-parseInt(_0x5716e2(0x20a))/0x7*(parseInt(_0x5716e2(0x206))/0x8)+parseInt(_0x5716e2(0x1f7))/0x9;if(_0x4bcafd===_0x403c8a)break;else _0x41c0e4['push'](_0x41c0e4['shift']());}catch(_0x3c37db){_0x41c0e4['push'](_0x41c0e4['shift']());}}}(a279_0x29a0,0xca63f));export const DEFAULT_BFF_SCRIPT_DESCRIPTION=a279_0x5c78da(0x202);const LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION=a279_0x5c78da(0x1f8);export function snakeToCamel(_0x2cf816){const _0x4e6422=a279_0x5c78da;return _0x2cf816[_0x4e6422(0x203)]()[_0x4e6422(0x204)](/_([a-z])/g,(_0x5d8523,_0x1c6352)=>_0x1c6352[_0x4e6422(0x208)]());}export function findHookLocationByRemoteId(_0x5d5d7d,_0x6404a7){const _0x51c0a6=a279_0x5c78da;if(!_0x6404a7)return undefined;for(const [_0x120151,_0x1ca92c]of Object[_0x51c0a6(0x1fe)](_0x5d5d7d)){if(_0x1ca92c[_0x51c0a6(0x1f2)]===_0x6404a7&&_0x1ca92c[_0x51c0a6(0x1fd)]&&_0x1ca92c[_0x51c0a6(0x1fa)]&&_0x1ca92c[_0x51c0a6(0x1f1)]){const _0x411463=_0x120151['split']('/')[0x1];return{'alias':_0x411463||_0x1ca92c[_0x51c0a6(0x1f5)],'datasetCode':_0x1ca92c[_0x51c0a6(0x1fd)],'operationType':_0x1ca92c[_0x51c0a6(0x1fa)],'functionNode':_0x1ca92c['functionNode']};}}return undefined;}export function extractScriptDescription(_0x1d5f1c){const _0x1688a2=a279_0x5c78da,_0x4af54b=_0x1d5f1c[_0x1688a2(0x209)](/^\s*\/\*\*([\s\S]*?)\*\//);if(!_0x4af54b?.[0x1])return undefined;const _0xd734=_0x4af54b[0x1],_0x42ac4d=_0x426029=>{const _0x5d9646=_0x1688a2,_0x212868=_0x426029?.[_0x5d9646(0x1fb)]();if(!_0x212868||_0x212868===DEFAULT_BFF_SCRIPT_DESCRIPTION||_0x212868===LEGACY_DEFAULT_BFF_SCRIPT_DESCRIPTION)return undefined;return _0x212868;},_0x299cee=_0xd734['match'](/^\s*\*\s*\[\s*脚本描述\s*]\s*(.+)$/m);if(_0x299cee)return _0x42ac4d(_0x299cee[0x1]);const _0x1e8268=_0xd734[_0x1688a2(0x1f4)](/\r?\n/)['map'](_0x2e335c=>_0x2e335c[_0x1688a2(0x204)](/^\s*\*\s?/,'')[_0x1688a2(0x1fb)]()),_0x26b23c=_0x1e8268[_0x1688a2(0x201)](_0x4fa4ec=>/^\[\s*脚本类型\s*]\s*\S+/[_0x1688a2(0x200)](_0x4fa4ec))&&_0x1e8268[_0x1688a2(0x201)](_0x53eafe=>/^\[\s*脚本名称\s*]\s*\S+/['test'](_0x53eafe));if(!_0x26b23c)return undefined;for(const _0x4a6d43 of _0x1e8268){if(!_0x4a6d43||_0x4a6d43[_0x1688a2(0x1fc)]('@')||/^\[[^\]]+]\s*/[_0x1688a2(0x200)](_0x4a6d43))continue;return _0x42ac4d(_0x4a6d43);}return undefined;}function a279_0xa660(_0x2a1627,_0x3d17a0){_0x2a1627=_0x2a1627-0x1f0;const _0x29a061=a279_0x29a0();let _0xa6600c=_0x29a061[_0x2a1627];return _0xa6600c;}function a279_0x29a0(){const _0x4e3185=['943010skOoiS','split','alias','1573703pQgMSV','17417934JHxdjX','TODO:\x20add\x20script\x20description','5017896UZmWqm','operationType','trim','startsWith','datasetCode','entries','1963504jPxnyr','test','some','TODO:\x20补充脚本功能描述','toLowerCase','replace','after','24OoQhxs','24MbpybM','toUpperCase','match','2591456RtNySY','1749714WFpigV','functionNode','remoteId'];a279_0x29a0=function(){return _0x4e3185;};return a279_0x29a0();}export function isValidBffFunctionName(_0x3e3888){const _0x10886d=a279_0x5c78da;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0x10886d(0x200)](_0x3e3888);}export function normalizeHookFunctionNode(_0x1d2ebe){const _0x210e13=a279_0x5c78da;if(!_0x1d2ebe)return undefined;const _0x5221e2=_0x1d2ebe[_0x210e13(0x1fb)]()[_0x210e13(0x203)]();if(_0x5221e2==='before'||_0x5221e2===_0x210e13(0x205))return _0x5221e2;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a280_0x5135(_0x1d4195,_0x3deee2){_0x1d4195=_0x1d4195-0xf0;const _0x31dbfc=a280_0x31db();let _0x5135e6=_0x31dbfc[_0x1d4195];return _0x5135e6;}function a280_0x31db(){const _0x48eddd=['22616oCLYRV','/smartapi/cross-db-relation/query','5878098PxIbCa','/smartapi/cross-db-relation/update','24PQrzFx','4yKyfBE','/smartapi/cross-db-relation/delete','/smartapi/cross-db-relation/create','2688468FWngMc','1610nlrefL','7TOSbXt','95825wutjOB','4761816FUhVmc','5802424ZtHUjV','39RxWhla','2DBQNjN','628100JXltFr'];a280_0x31db=function(){return _0x48eddd;};return a280_0x31db();}const a280_0x38958a=a280_0x5135;(function(_0x23b2d1,_0x35fa88){const _0x352f81=a280_0x5135,_0x52d96c=_0x23b2d1();while(!![]){try{const _0x27fe97=parseInt(_0x352f81(0xfe))/0x1*(parseInt(_0x352f81(0xff))/0x2)+-parseInt(_0x352f81(0xf7))/0x3*(parseInt(_0x352f81(0xf4))/0x4)+-parseInt(_0x352f81(0xfa))/0x5*(-parseInt(_0x352f81(0xf3))/0x6)+-parseInt(_0x352f81(0xf9))/0x7*(parseInt(_0x352f81(0xfc))/0x8)+parseInt(_0x352f81(0xf1))/0x9+-parseInt(_0x352f81(0xf8))/0xa*(parseInt(_0x352f81(0x100))/0xb)+-parseInt(_0x352f81(0xfb))/0xc*(-parseInt(_0x352f81(0xfd))/0xd);if(_0x27fe97===_0x35fa88)break;else _0x52d96c['push'](_0x52d96c['shift']());}catch(_0x50cf05){_0x52d96c['push'](_0x52d96c['shift']());}}}(a280_0x31db,0x91795));export const CROSS_DB_RELATION_PATHS={'list':a280_0x38958a(0xf0),'create':a280_0x38958a(0xf6),'update':a280_0x38958a(0xf2),'delete':a280_0x38958a(0xf5)};
|
package/lib/core/db-resolver.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xd349,_0x4135e0){const _0x5c8a34=a281_0x3461,_0x43bb7a=_0xd349();while(!![]){try{const _0x19720f=-parseInt(_0x5c8a34(0x14d))/0x1+-parseInt(_0x5c8a34(0x14c))/0x2+-parseInt(_0x5c8a34(0x149))/0x3*(parseInt(_0x5c8a34(0x161))/0x4)+-parseInt(_0x5c8a34(0x146))/0x5+parseInt(_0x5c8a34(0x15e))/0x6*(-parseInt(_0x5c8a34(0x156))/0x7)+-parseInt(_0x5c8a34(0x145))/0x8+parseInt(_0x5c8a34(0x157))/0x9;if(_0x19720f===_0x4135e0)break;else _0x43bb7a['push'](_0x43bb7a['shift']());}catch(_0xadc18d){_0x43bb7a['push'](_0x43bb7a['shift']());}}}(a281_0x511b,0xcaf59));import{listDatasets}from'../core/api-client.js';const cache=new Map();function a281_0x511b(){const _0x1c6784=['53162136JWQdGT','dbName','find','has','.\x20Be\x20more\x20specific.','join','db-','704508KqstOr','\x22\x20matches\x20multiple\x20databases:\x20','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','1060732tcnbAq','entries','filter','9759728SZVxig','5913610hGVRzQ','\x22.\x20Available:\x20','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','9PcezbL','dbId','isNaN','1596254VYExmk','726965svhoqW','map','length','dbtableConfig','\x22\x20under\x20app\x20\x22','get','No\x20database\x20matching\x20\x22','set','toLowerCase','21WbzwUF'];a281_0x511b=function(){return _0x1c6784;};return a281_0x511b();}export async function listDatabases(_0x27c09f){const _0x4e7eb2=a281_0x3461;if(cache[_0x4e7eb2(0x15a)](_0x27c09f))return cache[_0x4e7eb2(0x152)](_0x27c09f);const _0x17d521=await listDatasets(_0x27c09f),_0x2466f0=new Map();for(const _0x4a18e1 of _0x17d521){const _0x5bea91=_0x4a18e1[_0x4e7eb2(0x150)];_0x5bea91?.[_0x4e7eb2(0x14a)]!=null&&_0x2466f0[_0x4e7eb2(0x154)](_0x5bea91['dbId'],_0x5bea91['dbName']??_0x4e7eb2(0x15d)+_0x5bea91[_0x4e7eb2(0x14a)]);}const _0x5df666=[..._0x2466f0[_0x4e7eb2(0x162)]()]['map'](([_0x580526,_0x4f8dfc])=>({'dbId':_0x580526,'dbName':_0x4f8dfc}));return cache['set'](_0x27c09f,_0x5df666),_0x5df666;}export async function resolveDb(_0x547f02,_0x1ae7f1){const _0x137438=a281_0x3461,_0x5eee9f=await listDatabases(_0x547f02);if(_0x5eee9f['length']===0x0)return{'resolved':[],'error':_0x137438(0x148)+_0x547f02+_0x137438(0x160)};if(!_0x1ae7f1)return{'resolved':_0x5eee9f};const _0x4ca92a=Number(_0x1ae7f1);if(!Number[_0x137438(0x14b)](_0x4ca92a)){const _0x3ee446=_0x5eee9f[_0x137438(0x159)](_0x290f42=>_0x290f42[_0x137438(0x14a)]===_0x4ca92a);if(_0x3ee446)return{'resolved':[_0x3ee446]};}const _0x10dcdf=_0x1ae7f1[_0x137438(0x155)](),_0x3dd4ea=_0x5eee9f[_0x137438(0x163)](_0x2d0ed3=>_0x2d0ed3[_0x137438(0x158)][_0x137438(0x155)]()['includes'](_0x10dcdf));if(_0x3dd4ea['length']>0x0)return{'resolved':_0x3dd4ea};const _0x1a13e0=_0x5eee9f['map'](_0x3d0e85=>_0x3d0e85[_0x137438(0x158)]+'\x20('+_0x3d0e85[_0x137438(0x14a)]+')')[_0x137438(0x15c)](',\x20');return{'resolved':[],'error':_0x137438(0x153)+_0x1ae7f1+_0x137438(0x151)+_0x547f02+_0x137438(0x147)+_0x1a13e0+'.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.'};}export async function resolveOneDb(_0x4e3f5e,_0x337556){const _0x18f443=a281_0x3461,{resolved:_0x108ba5,error:_0x56590d}=await resolveDb(_0x4e3f5e,_0x337556);if(_0x56590d)return{'db':null,'error':_0x56590d};if(_0x108ba5[_0x18f443(0x14f)]===0x1)return{'db':_0x108ba5[0x0]};if(!_0x337556){const _0x5de0da=_0x108ba5[_0x18f443(0x14e)](_0x5f1e84=>_0x5f1e84[_0x18f443(0x158)]+'\x20('+_0x5f1e84[_0x18f443(0x14a)]+')')[_0x18f443(0x15c)](',\x20');return{'db':null,'error':'Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20'+_0x5de0da};}const _0x2bb6da=_0x108ba5[_0x18f443(0x14e)](_0xda12d3=>_0xda12d3[_0x18f443(0x158)]+'\x20('+_0xda12d3[_0x18f443(0x14a)]+')')['join'](',\x20');return{'db':null,'error':'\x22'+_0x337556+_0x18f443(0x15f)+_0x2bb6da+_0x18f443(0x15b)};}function a281_0x3461(_0x211e3a,_0x4d60b2){_0x211e3a=_0x211e3a-0x145;const _0x511b4b=a281_0x511b();let _0x346155=_0x511b4b[_0x211e3a];return _0x346155;}export async function getDbName(_0xe54e01,_0x191163){const _0x59be2d=a281_0x3461,_0x3a2a3a=await listDatabases(_0xe54e01);return _0x3a2a3a[_0x59be2d(0x159)](_0x47d985=>_0x47d985['dbId']===_0x191163)?.['dbName'];}
|
package/lib/core/flow-config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a281_0x3406bd=a281_0x102f;(function(_0x34602a,_0x4d7cdd){const _0x3bc465=a281_0x102f,_0x1906d4=_0x34602a();while(!![]){try{const _0x3a6160=parseInt(_0x3bc465(0x179))/0x1*(-parseInt(_0x3bc465(0x1b9))/0x2)+-parseInt(_0x3bc465(0x234))/0x3*(parseInt(_0x3bc465(0x241))/0x4)+parseInt(_0x3bc465(0x23a))/0x5*(parseInt(_0x3bc465(0x22d))/0x6)+-parseInt(_0x3bc465(0x290))/0x7+-parseInt(_0x3bc465(0x1db))/0x8*(parseInt(_0x3bc465(0x172))/0x9)+-parseInt(_0x3bc465(0x142))/0xa*(-parseInt(_0x3bc465(0x239))/0xb)+-parseInt(_0x3bc465(0x1e4))/0xc*(-parseInt(_0x3bc465(0x1e9))/0xd);if(_0x3a6160===_0x4d7cdd)break;else _0x1906d4['push'](_0x1906d4['shift']());}catch(_0x1d4cf4){_0x1906d4['push'](_0x1906d4['shift']());}}}(a281_0x1c91,0x810d7));import{randomUUID}from'node:crypto';import{chmod,link,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{resolve}from'node:path';export const FLOW_CONFIG_JSON_SCHEMA={'$schema':a281_0x3406bd(0x1cf),'$id':a281_0x3406bd(0x213),'title':a281_0x3406bd(0x195),'type':a281_0x3406bd(0x190),'required':['flowName',a281_0x3406bd(0x151),a281_0x3406bd(0x283)],'$defs':{'userId':{'anyOf':[{'type':a281_0x3406bd(0x1fe),'minLength':0x1},{'type':a281_0x3406bd(0x14a),'minimum':0x1}]},'position':{'type':a281_0x3406bd(0x190),'required':['x','y'],'properties':{'x':{'type':a281_0x3406bd(0x297),'minimum':0x0},'y':{'type':a281_0x3406bd(0x297),'minimum':0x0}},'additionalProperties':!![]},'timeAmount':{'type':a281_0x3406bd(0x190),'required':[a281_0x3406bd(0x21e),a281_0x3406bd(0x284)],'properties':{'value':{'type':a281_0x3406bd(0x14a),'minimum':0x1},'unit':{'enum':[a281_0x3406bd(0x194),a281_0x3406bd(0x24a),a281_0x3406bd(0x21d),a281_0x3406bd(0x25d)]}},'additionalProperties':!![]},'flowNode':{'type':a281_0x3406bd(0x190),'required':['id',a281_0x3406bd(0x279),a281_0x3406bd(0x206),a281_0x3406bd(0x23f)],'properties':{'id':{'type':a281_0x3406bd(0x1fe),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'},'type':{'enum':[a281_0x3406bd(0x286),a281_0x3406bd(0x1a4),a281_0x3406bd(0x271),a281_0x3406bd(0x281),a281_0x3406bd(0x215),'NOTIFICATION']},'name':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'path':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'position':{'$ref':'#/$defs/position'},'approvalMode':{'enum':[a281_0x3406bd(0x27b),'ALL','ANY']},'taskMode':{'enum':['APPROVAL','HANDLE']},'assignee':{'type':a281_0x3406bd(0x190),'required':[a281_0x3406bd(0x1b8)],'properties':{'strategy':{'enum':['FIXED','ROLE']},'userIds':{'type':a281_0x3406bd(0x27a),'minItems':0x1,'items':{'$ref':a281_0x3406bd(0x157)}},'roleId':{'anyOf':[{'type':a281_0x3406bd(0x14a),'minimum':0x1},{'type':a281_0x3406bd(0x1fe),'pattern':a281_0x3406bd(0x187)}]}},'additionalProperties':!![]},'transferCandidates':{'type':a281_0x3406bd(0x190),'required':[a281_0x3406bd(0x1b8),a281_0x3406bd(0x15d)],'properties':{'strategy':{'const':a281_0x3406bd(0x19a)},'userIds':{'type':a281_0x3406bd(0x27a),'minItems':0x1,'items':{'$ref':a281_0x3406bd(0x157)}}},'additionalProperties':!![]},'sequential':{'type':a281_0x3406bd(0x28f)},'result':{'enum':[a281_0x3406bd(0x293),a281_0x3406bd(0x1cd)]},'scriptName':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'resultVariable':{'type':'string','pattern':a281_0x3406bd(0x144)},'async':{'type':a281_0x3406bd(0x190),'properties':{'enabled':{'type':a281_0x3406bd(0x28f)},'retryCount':{'type':a281_0x3406bd(0x14a),'minimum':0x1,'maximum':0xa},'retryInterval':{'$ref':a281_0x3406bd(0x208)}},'additionalProperties':!![]},'timeout':{'type':a281_0x3406bd(0x190),'properties':{'enabled':{'type':a281_0x3406bd(0x28f)},'duration':{'$ref':a281_0x3406bd(0x208)},'action':{'enum':[a281_0x3406bd(0x1f4),a281_0x3406bd(0x1f6),a281_0x3406bd(0x1c8)]},'interrupting':{'type':a281_0x3406bd(0x28f)},'scriptName':{'type':'string','minLength':0x1},'resultVariable':{'type':a281_0x3406bd(0x1fe),'pattern':a281_0x3406bd(0x144)}},'additionalProperties':!![]},'cc':{'type':a281_0x3406bd(0x190),'required':['recipientUserIds'],'properties':{'recipientUserIds':{'type':a281_0x3406bd(0x27a),'minItems':0x1,'maxItems':0x64,'uniqueItems':!![],'items':{'type':a281_0x3406bd(0x1fe),'minLength':0x1}},'visible':{'type':a281_0x3406bd(0x27a),'uniqueItems':!![],'items':{'type':'string','minLength':0x1}},'readSources':![]},'additionalProperties':!![]},'config':{'type':'object','required':[a281_0x3406bd(0x1b2),a281_0x3406bd(0x2a6)],'properties':{'version':{'enum':['v1']},'configCode':{'type':'string','minLength':0x1},'failurePolicy':{'enum':[a281_0x3406bd(0x2af),a281_0x3406bd(0x292)]},'template':{'type':a281_0x3406bd(0x190),'required':[a281_0x3406bd(0x204),a281_0x3406bd(0x15e)],'properties':{'title':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'summary':{'type':'string','minLength':0x1},'detailMarkdown':{'type':a281_0x3406bd(0x1fe)},'facts':{'type':a281_0x3406bd(0x27a),'maxItems':0x8,'items':{'type':'object','required':[a281_0x3406bd(0x158),'value'],'properties':{'label':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'value':{'type':a281_0x3406bd(0x1fe),'minLength':0x1}},'additionalProperties':!![]}},'actions':{'type':a281_0x3406bd(0x27a),'maxItems':0x2,'items':{'type':'object','required':[a281_0x3406bd(0x1f1),a281_0x3406bd(0x209)],'properties':{'text':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'url':{'type':a281_0x3406bd(0x1fe),'minLength':0x1}},'additionalProperties':!![]}}},'additionalProperties':!![]},'recipients':{'type':'array','items':{'type':'object','required':[a281_0x3406bd(0x279),a281_0x3406bd(0x21e)],'properties':{'type':{'enum':[a281_0x3406bd(0x1e2),a281_0x3406bd(0x16f),a281_0x3406bd(0x1aa)]},'value':{'type':'string','minLength':0x1},'role':{'enum':['TO','CC',a281_0x3406bd(0x1da)]}},'additionalProperties':!![]}}},'additionalProperties':!![]},'form':![],'formPermission':![]},'additionalProperties':!![]},'flowEdge':{'type':a281_0x3406bd(0x190),'properties':{'id':{'type':'string','pattern':a281_0x3406bd(0x144)},'source':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'target':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'sourceNodeId':{'type':'string','minLength':0x1},'targetNodeId':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'conditionType':{'enum':[a281_0x3406bd(0x25e),a281_0x3406bd(0x293),a281_0x3406bd(0x1cd),a281_0x3406bd(0x171)]},'expression':{'type':a281_0x3406bd(0x1fe)},'defaultFlow':{'type':'boolean'},'name':{'type':a281_0x3406bd(0x1fe)},'waypoints':{'type':'array','items':{'$ref':a281_0x3406bd(0x162)}}},'allOf':[{'anyOf':[{'required':[a281_0x3406bd(0x199)]},{'required':[a281_0x3406bd(0x22b)]}]},{'anyOf':[{'required':[a281_0x3406bd(0x257)]},{'required':[a281_0x3406bd(0x1e6)]}]}],'additionalProperties':!![]}},'properties':{'id':![],'appCode':![],'flowName':{'type':'string','minLength':0x1},'flowDesc':{'type':a281_0x3406bd(0x1fe)},'flowType':{'enum':['FORM_FLOW',a281_0x3406bd(0x19e)]},'datasetCode':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'pageId':{'type':a281_0x3406bd(0x14a)},'templateName':![],'flowJson':{'type':'object','required':[a281_0x3406bd(0x1a0),a281_0x3406bd(0x22a)],'properties':{'flowKey':![],'flowCode':![],'flowName':![],'bindDatasetCode':![],'datasetCode':![],'appCode':![],'pageId':![],'templateName':![],'schemaVersion':{'type':a281_0x3406bd(0x1fe),'const':a281_0x3406bd(0x21f),'description':a281_0x3406bd(0x210)},'formSchema':![],'formDefinitions':![],'formPermissions':![],'pageMode':{'const':'CUSTOM_PAGE'},'startPageId':![],'startPath':{'type':a281_0x3406bd(0x1fe),'minLength':0x1},'nodes':{'type':a281_0x3406bd(0x27a),'minItems':0x1,'items':{'$ref':a281_0x3406bd(0x1a9)}},'edges':{'type':a281_0x3406bd(0x27a),'minItems':0x1,'items':{'$ref':a281_0x3406bd(0x25a)}}},'additionalProperties':!![]}},'additionalProperties':!![]};const REMOVED_FLOW_JSON_FIELDS=[a281_0x3406bd(0x20f),a281_0x3406bd(0x156),a281_0x3406bd(0x14f),a281_0x3406bd(0x1f5),a281_0x3406bd(0x201),a281_0x3406bd(0x177),a281_0x3406bd(0x1af),a281_0x3406bd(0x193)],REMOVED_ROOT_FIELDS=['id',a281_0x3406bd(0x177),a281_0x3406bd(0x193)],DEFAULT_FLOW_SCHEMA_VERSION=a281_0x3406bd(0x21f),NODE_TYPES=new Set([a281_0x3406bd(0x286),a281_0x3406bd(0x1a4),a281_0x3406bd(0x271),a281_0x3406bd(0x281),a281_0x3406bd(0x215),a281_0x3406bd(0x1d8)]),CONDITION_TYPES=new Set([a281_0x3406bd(0x25e),a281_0x3406bd(0x293),a281_0x3406bd(0x1cd),a281_0x3406bd(0x171)]),APPROVAL_MODES=new Set([a281_0x3406bd(0x27b),a281_0x3406bd(0x299),a281_0x3406bd(0x1c9)]),APPROVAL_TASK_MODES=new Set([a281_0x3406bd(0x271),'HANDLE']),FLOW_TIME_UNITS=new Set(['SECONDS',a281_0x3406bd(0x24a),a281_0x3406bd(0x21d),a281_0x3406bd(0x25d)]),APPROVAL_TIMEOUT_ACTIONS=new Set([a281_0x3406bd(0x1f4),a281_0x3406bd(0x1f6),a281_0x3406bd(0x1c8)]),FLOW_TYPES=new Set(['FORM_FLOW','INDEPENDENT_FLOW']),FLOW_PAGE_MODES=new Set(['CUSTOM_PAGE',a281_0x3406bd(0x2ac)]),BPMN_ID_PATTERN=/^[A-Za-z_][A-Za-z0-9_]*$/,VARIABLE_PATTERN=/^[A-Za-z_][A-Za-z0-9_]*$/,NOTIFICATION_PLACEHOLDER_PATTERN=/\$\{([^{}]+)\}/g,NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN=/^\$\{(?:event|context|variables)\.[^{}]+\}$/,NOTIFICATION_FAILURE_POLICIES=new Set([a281_0x3406bd(0x2af),a281_0x3406bd(0x292)]),NOTIFICATION_RECIPIENT_TYPES=new Set(['USER',a281_0x3406bd(0x16f),a281_0x3406bd(0x1aa)]),NOTIFICATION_RECIPIENT_ROLES=new Set(['TO','CC',a281_0x3406bd(0x1da)]),MAX_NOTIFICATION_FACTS=0x8,MAX_NOTIFICATION_ACTIONS=0x2,MAX_ASYNC_RETRY_COUNT=0xa,MAX_CC_RECIPIENTS=0x64,DEFAULT_SCRIPT_RESULT_VARIABLE='scriptResult',UNSUPPORTED_FORM_MESSAGE='Custom\x20form\x20configuration\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20a\x20business\x20custom\x20page\x20instead.',UNSUPPORTED_PLATFORM_FORM_MESSAGE=a281_0x3406bd(0x1ac),RESERVED_RESULT_VARIABLES=new Set([a281_0x3406bd(0x176),a281_0x3406bd(0x147),'approval_sys_appCode',a281_0x3406bd(0x261),a281_0x3406bd(0x24b),'approval_sys_initiatorUsername',a281_0x3406bd(0x198),a281_0x3406bd(0x1ef),a281_0x3406bd(0x24c),a281_0x3406bd(0x196)]);export function normalizeFlowConfig(_0x540089){const _0x587928=a281_0x3406bd;if(!isRecord(_0x540089))throw new TypeError(_0x587928(0x1e0));const _0x139e2d=cloneJsonValue(_0x540089),_0x9d5e4a=_0x139e2d[_0x587928(0x283)],_0x55220b=isRecord(_0x9d5e4a)?cloneJsonValue(_0x9d5e4a):{},_0x52af1b=[],_0x15affb=[];for(const _0x1462d2 of REMOVED_ROOT_FIELDS){if(!Object[_0x587928(0x1f7)][_0x587928(0x1ed)][_0x587928(0x256)](_0x139e2d,_0x1462d2))continue;delete _0x139e2d[_0x1462d2],_0x15affb[_0x587928(0x262)](_0x1462d2),_0x52af1b[_0x587928(0x262)]({'code':_0x587928(0x24d),'path':_0x1462d2,'message':_0x1462d2+_0x587928(0x143)});}for(const _0x34a705 of REMOVED_FLOW_JSON_FIELDS){if(!Object[_0x587928(0x1f7)]['hasOwnProperty'][_0x587928(0x256)](_0x55220b,_0x34a705))continue;const _0x504ae6=_0x587928(0x237)+_0x34a705;delete _0x55220b[_0x34a705],_0x15affb['push'](_0x504ae6),_0x52af1b[_0x587928(0x262)]({'code':'legacy_field_removed','path':_0x504ae6,'message':_0x504ae6+_0x587928(0x143)});}if(Object['prototype'][_0x587928(0x1ed)][_0x587928(0x256)](_0x55220b,_0x587928(0x14d))){const _0x31667e=_0x55220b[_0x587928(0x14d)],_0x32c4ad=typeof _0x31667e===_0x587928(0x1fe)?_0x31667e[_0x587928(0x26a)]():_0x31667e;if(isEmptyJsonValue(_0x31667e)||_0x32c4ad===DEFAULT_FLOW_SCHEMA_VERSION){const _0x176150=_0x587928(0x1c5);delete _0x55220b[_0x587928(0x14d)],_0x15affb[_0x587928(0x262)](_0x176150),_0x52af1b[_0x587928(0x262)]({'code':'legacy_field_removed','path':_0x176150,'message':_0x176150+_0x587928(0x25b)+DEFAULT_FLOW_SCHEMA_VERSION+_0x587928(0x218)});}}removeEmptyMetadata(_0x55220b,_0x587928(0x283),_0x52af1b,_0x15affb);_0x139e2d[_0x587928(0x151)]==='INDEPENDENT_FLOW'&&!Object['prototype'][_0x587928(0x1ed)]['call'](_0x55220b,_0x587928(0x276))&&(_0x55220b[_0x587928(0x276)]=_0x587928(0x1c4));_0x139e2d[_0x587928(0x283)]=_0x55220b;if(typeof _0x139e2d[_0x587928(0x14f)]==='string')_0x139e2d['flowName']=_0x139e2d['flowName'][_0x587928(0x26a)]();return{'config':_0x139e2d,'warnings':_0x52af1b,'removedPaths':_0x15affb};}export function validateFlowConfig(_0x20ae3a){const _0x527f94=a281_0x3406bd;let _0x55ea6e;try{_0x55ea6e=normalizeFlowConfig(_0x20ae3a);}catch(_0xe60742){const _0x1accf3=_0xe60742 instanceof Error?_0xe60742['message']:String(_0xe60742),_0x10e2be={'flowJson':{}};return{'valid':![],'errors':[{'path':'$','message':_0x1accf3}],'warnings':[],'normalized':_0x10e2be,'validationConfig':_0x10e2be};}const _0x3f002d=_0x55ea6e[_0x527f94(0x1eb)],_0x59867a=cloneJsonValue(_0x3f002d),_0x1c24cb=_0x59867a[_0x527f94(0x283)];_0x1c24cb[_0x527f94(0x20f)]=_0x527f94(0x202),_0x1c24cb['flowName']=_0x3f002d['flowName'];typeof _0x3f002d[_0x527f94(0x201)]===_0x527f94(0x1fe)&&_0x3f002d[_0x527f94(0x201)][_0x527f94(0x26a)]()&&(_0x1c24cb['bindDatasetCode']=_0x3f002d[_0x527f94(0x201)][_0x527f94(0x26a)]());const _0x25ed8c=[];return validateOuterMetadata(_0x3f002d,_0x25ed8c),validateFlowClassification(_0x3f002d,_0x25ed8c),validateGraph(_0x3f002d[_0x527f94(0x283)],_0x25ed8c),{'valid':_0x25ed8c[_0x527f94(0x203)]===0x0,'errors':_0x25ed8c,'warnings':_0x55ea6e[_0x527f94(0x247)],'normalized':_0x3f002d,'validationConfig':_0x59867a};}function validateFlowClassification(_0x8b5121,_0x3b5f25){const _0x34bd52=a281_0x3406bd;if(!isRecord(_0x8b5121[_0x34bd52(0x283)]))return;const _0x1b0b4c=_0x8b5121[_0x34bd52(0x151)],_0x31f52a=_0x8b5121[_0x34bd52(0x283)][_0x34bd52(0x276)];_0x31f52a!==undefined&&(typeof _0x31f52a!==_0x34bd52(0x1fe)||!FLOW_PAGE_MODES[_0x34bd52(0x152)](_0x31f52a))&&_0x3b5f25['push']({'path':_0x34bd52(0x1d2),'message':_0x34bd52(0x272)+String(_0x31f52a)+'.'});_0x1b0b4c===_0x34bd52(0x17e)&&_0x31f52a!==undefined&&_0x3b5f25[_0x34bd52(0x262)]({'path':_0x34bd52(0x1d2),'message':_0x34bd52(0x188)});_0x1b0b4c==='INDEPENDENT_FLOW'&&_0x31f52a==='PLATFORM_FORM'&&_0x3b5f25[_0x34bd52(0x262)]({'path':_0x34bd52(0x1d2),'message':UNSUPPORTED_PLATFORM_FORM_MESSAGE});(_0x1b0b4c==='FORM_FLOW'||_0x1b0b4c===_0x34bd52(0x19e))&&validateCustomPageNavigation(_0x8b5121,_0x1b0b4c,_0x31f52a,_0x3b5f25);if(_0x1b0b4c!==_0x34bd52(0x17e)||!Array[_0x34bd52(0x1fb)](_0x8b5121[_0x34bd52(0x283)][_0x34bd52(0x1a0)]))return;_0x8b5121['flowJson'][_0x34bd52(0x1a0)][_0x34bd52(0x269)]((_0x5643f9,_0x52c9f6)=>{const _0x7fbedb=_0x34bd52;isRecord(_0x5643f9)&&_0x5643f9[_0x7fbedb(0x279)]===_0x7fbedb(0x271)&&_0x5643f9['taskMode']==='HANDLE'&&_0x3b5f25[_0x7fbedb(0x262)]({'path':'flowJson.nodes['+_0x52c9f6+_0x7fbedb(0x1ff),'message':_0x7fbedb(0x1bd)});});}function validateCustomPageNavigation(_0xb66e75,_0x2ee0af,_0x4aa555,_0x118143){const _0x48329e=a281_0x3406bd,_0x49a478=_0xb66e75[_0x48329e(0x283)]['startPageId'];_0x49a478!==undefined&&_0x118143['push']({'path':'flowJson.startPageId','message':_0x48329e(0x16d)});const _0x35ad31=_0xb66e75['flowJson'][_0x48329e(0x141)];_0x35ad31!==undefined&&(typeof _0x35ad31!==_0x48329e(0x1fe)||_0x35ad31['trim']()==='')&&_0x118143[_0x48329e(0x262)]({'path':_0x48329e(0x2a4),'message':_0x48329e(0x221)});const _0x300040=Array[_0x48329e(0x1fb)](_0xb66e75['flowJson'][_0x48329e(0x1a0)])?_0xb66e75['flowJson'][_0x48329e(0x1a0)][_0x48329e(0x1e5)]((_0x119f7b,_0x1c947b)=>({'node':_0x119f7b,'index':_0x1c947b}))['filter'](({node:_0x5e056a})=>isRecord(_0x5e056a)&&_0x5e056a[_0x48329e(0x223)]!==undefined):[],_0x9f3150=_0x35ad31!==undefined||_0x300040[_0x48329e(0x203)]>0x0,_0x556890=_0x4aa555===undefined&&_0x2ee0af==='INDEPENDENT_FLOW'?'CUSTOM_PAGE':_0x4aa555;_0x9f3150&&(_0x2ee0af!=='INDEPENDENT_FLOW'||_0x556890!==_0x48329e(0x1c4))&&(_0x35ad31!==undefined&&_0x118143[_0x48329e(0x262)]({'path':'flowJson.startPath','message':_0x48329e(0x220)}),_0x300040[_0x48329e(0x269)](({index:_0x4d4c6d})=>{const _0x5b21b9=_0x48329e;_0x118143[_0x5b21b9(0x262)]({'path':_0x5b21b9(0x1a5)+_0x4d4c6d+_0x5b21b9(0x255),'message':_0x5b21b9(0x164)});}));}export async function writeNormalizedFlowConfig(_0x2d056c,_0x42ea13,_0x1312f7={}){const _0x58183d=a281_0x3406bd,_0x83f354=resolve(_0x2d056c),_0x3e7799=_0x83f354+'.'+process['pid']+'.'+randomUUID()+_0x58183d(0x28a),_0x589649=JSON[_0x58183d(0x249)](_0x42ea13,null,0x2)+'\x0a';let _0x12d196;try{try{_0x12d196=(await stat(_0x83f354))['mode']&0x1ff;}catch{_0x12d196=undefined;}await writeFile(_0x3e7799,_0x589649,{'encoding':'utf8','flag':'wx','mode':_0x12d196??0x1a4});if(_0x12d196!==undefined)await chmod(_0x3e7799,_0x12d196);_0x1312f7[_0x58183d(0x1be)]===![]?(await link(_0x3e7799,_0x83f354),await unlink(_0x3e7799)):await rename(_0x3e7799,_0x83f354);}finally{await unlink(_0x3e7799)[_0x58183d(0x2ab)](()=>undefined);}}function validateOuterMetadata(_0x578105,_0x14f87f){const _0x5b4e25=a281_0x3406bd;(typeof _0x578105['flowName']!==_0x5b4e25(0x1fe)||_0x578105['flowName'][_0x5b4e25(0x26a)]()==='')&&_0x14f87f[_0x5b4e25(0x262)]({'path':'flowName','message':_0x5b4e25(0x20e)});_0x578105[_0x5b4e25(0x20a)]!==undefined&&typeof _0x578105[_0x5b4e25(0x20a)]!==_0x5b4e25(0x1fe)&&_0x14f87f[_0x5b4e25(0x262)]({'path':_0x5b4e25(0x20a),'message':_0x5b4e25(0x19d)});if(_0x578105['flowType']===undefined||_0x578105['flowType']===null)_0x14f87f[_0x5b4e25(0x262)]({'path':_0x5b4e25(0x151),'message':_0x5b4e25(0x1b4)});else(typeof _0x578105[_0x5b4e25(0x151)]!==_0x5b4e25(0x1fe)||!FLOW_TYPES[_0x5b4e25(0x152)](_0x578105[_0x5b4e25(0x151)]))&&_0x14f87f[_0x5b4e25(0x262)]({'path':_0x5b4e25(0x151),'message':_0x5b4e25(0x27d)+String(_0x578105[_0x5b4e25(0x151)])+'.'});_0x578105[_0x5b4e25(0x201)]!==undefined&&typeof _0x578105[_0x5b4e25(0x201)]!==_0x5b4e25(0x1fe)&&_0x14f87f[_0x5b4e25(0x262)]({'path':_0x5b4e25(0x201),'message':'datasetCode\x20must\x20be\x20a\x20string.'}),_0x578105[_0x5b4e25(0x1af)]!==undefined&&(!Number[_0x5b4e25(0x231)](_0x578105[_0x5b4e25(0x1af)])||_0x578105[_0x5b4e25(0x1af)]<0x0)&&_0x14f87f[_0x5b4e25(0x262)]({'path':_0x5b4e25(0x1af),'message':_0x5b4e25(0x1ce)}),_0x578105[_0x5b4e25(0x151)]===_0x5b4e25(0x19e)&&_0x578105[_0x5b4e25(0x201)]!==undefined&&_0x14f87f[_0x5b4e25(0x262)]({'path':_0x5b4e25(0x201),'message':_0x5b4e25(0x238)}),_0x578105[_0x5b4e25(0x151)]===_0x5b4e25(0x19e)&&_0x578105[_0x5b4e25(0x1af)]!==undefined&&_0x14f87f['push']({'path':_0x5b4e25(0x1af),'message':_0x5b4e25(0x28c)});}function validateGraph(_0x5a9cb9,_0xfb8c07){const _0x3b1569=a281_0x3406bd;if(!isRecord(_0x5a9cb9)){_0xfb8c07[_0x3b1569(0x262)]({'path':_0x3b1569(0x283),'message':_0x3b1569(0x1ae)});return;}!Array[_0x3b1569(0x1fb)](_0x5a9cb9[_0x3b1569(0x1a0)])&&_0xfb8c07[_0x3b1569(0x262)]({'path':_0x3b1569(0x291),'message':_0x3b1569(0x20b)});!Array[_0x3b1569(0x1fb)](_0x5a9cb9[_0x3b1569(0x22a)])&&_0xfb8c07[_0x3b1569(0x262)]({'path':_0x3b1569(0x167),'message':_0x3b1569(0x244)});Object[_0x3b1569(0x1f7)][_0x3b1569(0x1ed)][_0x3b1569(0x256)](_0x5a9cb9,_0x3b1569(0x14d))&&_0xfb8c07['push']({'path':_0x3b1569(0x1c5),'message':_0x3b1569(0x15f)+String(_0x5a9cb9[_0x3b1569(0x14d)])+'.\x20This\x20CLI\x20supports\x20only\x20'+DEFAULT_FLOW_SCHEMA_VERSION+'.'});for(const _0x53baf6 of[_0x3b1569(0x1ea),_0x3b1569(0x1d6),_0x3b1569(0x277)]){Object[_0x3b1569(0x1f7)][_0x3b1569(0x1ed)]['call'](_0x5a9cb9,_0x53baf6)&&_0xfb8c07['push']({'path':_0x3b1569(0x237)+_0x53baf6,'message':UNSUPPORTED_FORM_MESSAGE});}if(!Array[_0x3b1569(0x1fb)](_0x5a9cb9[_0x3b1569(0x1a0)])||!Array[_0x3b1569(0x1fb)](_0x5a9cb9[_0x3b1569(0x22a)]))return;const _0x33b12=new Map(),_0x55edf=[],_0x4bc0f2=[],_0x27d103=new Map(),_0x260011=new Map(),_0xc6d021=new Set();let _0x36de67=0x0;_0x5a9cb9['nodes']['forEach']((_0x22f65e,_0x2c2530)=>{const _0x190016=_0x3b1569,_0x52eab1=_0x190016(0x1a5)+_0x2c2530+']';if(!isRecord(_0x22f65e)){_0xfb8c07[_0x190016(0x262)]({'path':_0x52eab1,'message':'node\x20must\x20be\x20an\x20object.'});return;}const _0x243324=_0x22f65e;if(typeof _0x243324['id']!==_0x190016(0x1fe)||!BPMN_ID_PATTERN['test'](_0x243324['id']))_0xfb8c07['push']({'path':_0x52eab1+_0x190016(0x1a1),'message':'node\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.'});else _0x33b12[_0x190016(0x152)](_0x243324['id'])?_0xfb8c07[_0x190016(0x262)]({'path':_0x52eab1+_0x190016(0x1a1),'message':_0x190016(0x28d)+_0x243324['id']+'.'}):(_0x33b12[_0x190016(0x26b)](_0x243324['id'],_0x243324),_0xc6d021['add'](_0x243324['id']));if(!NODE_TYPES[_0x190016(0x152)](_0x243324['type']))_0xfb8c07[_0x190016(0x262)]({'path':_0x52eab1+_0x190016(0x267),'message':'Unsupported\x20node\x20type:\x20'+String(_0x243324[_0x190016(0x279)])+'.'});else{if(_0x243324[_0x190016(0x279)]==='START')_0x55edf['push'](_0x243324['id']);else _0x243324[_0x190016(0x279)]===_0x190016(0x1a4)&&_0x4bc0f2[_0x190016(0x262)](_0x243324['id']);}_0x243324['type']===_0x190016(0x271)&&(_0x243324[_0x190016(0x173)]===undefined||_0x243324['taskMode']===_0x190016(0x271))&&(_0x36de67+=0x1);validateNode(_0x243324,_0x52eab1,_0xfb8c07);if(_0x243324[_0x190016(0x279)]==='SCRIPT'){const _0x2256e8=resolveEffectiveResultVariable(_0x243324[_0x190016(0x28b)],![]);_0x2256e8&&(registerResultVariableOwner(_0x260011,_0x2256e8,_0x243324['id'],_0xfb8c07),!_0x27d103['has'](_0x2256e8)&&_0x27d103['set'](_0x2256e8,_0x243324['id']));}if(_0x243324['type']===_0x190016(0x271)&&isRecord(_0x243324[_0x190016(0x227)])&&_0x243324[_0x190016(0x227)]['enabled']===!![]&&_0x243324[_0x190016(0x227)][_0x190016(0x2a3)]===_0x190016(0x1c8)){const _0x4b6ce9=resolveEffectiveResultVariable(_0x243324[_0x190016(0x227)]['resultVariable'],!![]);_0x4b6ce9&®isterResultVariableOwner(_0x260011,_0x4b6ce9,_0x243324['id']+_0x190016(0x22c),_0xfb8c07);}});_0x55edf[_0x3b1569(0x203)]!==0x1&&_0xfb8c07[_0x3b1569(0x262)]({'path':'flowJson.nodes','message':_0x3b1569(0x1c2)});_0x4bc0f2[_0x3b1569(0x203)]===0x0&&_0xfb8c07['push']({'path':_0x3b1569(0x291),'message':_0x3b1569(0x25f)});const _0xbc5efb=new Map(),_0x49d431=new Map(),_0x69a235=new Map(),_0x381286=new Set();_0x5a9cb9[_0x3b1569(0x22a)][_0x3b1569(0x269)]((_0x422e96,_0x28cdba)=>{const _0x5c9427=_0x3b1569,_0x59176e=_0x5c9427(0x16c)+_0x28cdba+']';if(!isRecord(_0x422e96)){_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e,'message':_0x5c9427(0x226)});return;}const _0x330e56=_0x422e96;_0x69a235['set'](_0x330e56,_0x59176e);const _0x5e1ab1=resolveEdgeEndpoint(_0x330e56[_0x5c9427(0x199)],_0x330e56[_0x5c9427(0x22b)]),_0x11448e=resolveEdgeEndpoint(_0x330e56[_0x5c9427(0x257)],_0x330e56[_0x5c9427(0x1e6)]);if(!_0x5e1ab1)_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e+_0x5c9427(0x2a1),'message':_0x5c9427(0x1d7)});if(!_0x11448e)_0xfb8c07['push']({'path':_0x59176e+'.target','message':'edge\x20target\x20is\x20required.'});_0x5e1ab1&&!_0x33b12[_0x5c9427(0x152)](_0x5e1ab1)&&_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e+'.source','message':_0x5c9427(0x233)+_0x5e1ab1+'.'});_0x11448e&&!_0x33b12[_0x5c9427(0x152)](_0x11448e)&&_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e+_0x5c9427(0x236),'message':'Edge\x20target\x20node\x20not\x20found:\x20'+_0x11448e+'.'});if(_0x330e56['id']!==undefined){if(typeof _0x330e56['id']!==_0x5c9427(0x1fe)||!BPMN_ID_PATTERN['test'](_0x330e56['id']))_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e+_0x5c9427(0x1a1),'message':_0x5c9427(0x1a8)});else{if(_0xc6d021[_0x5c9427(0x152)](_0x330e56['id']))_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e+_0x5c9427(0x1a1),'message':_0x5c9427(0x20d)+_0x330e56['id']+'.'});else!_0xc6d021[_0x5c9427(0x152)](_0x330e56['id'])&&_0xc6d021[_0x5c9427(0x224)](_0x330e56['id']);}}if(_0x5e1ab1&&_0x11448e){const _0x32b517=_0x5e1ab1+'\x00'+_0x11448e+'\x00'+(_0x330e56[_0x5c9427(0x264)]??'ALWAYS');_0x381286[_0x5c9427(0x152)](_0x32b517)?_0xfb8c07[_0x5c9427(0x262)]({'path':_0x59176e,'message':_0x5c9427(0x216)+_0x5e1ab1+_0x5c9427(0x295)+_0x11448e+'\x20('+(_0x330e56[_0x5c9427(0x264)]??_0x5c9427(0x25e))+').'}):_0x381286[_0x5c9427(0x224)](_0x32b517);}validateEdge(_0x330e56,_0x59176e,_0xfb8c07),_0x5e1ab1&&_0x11448e&&(_0xbc5efb[_0x5c9427(0x1d9)](_0x5e1ab1)?.[_0x5c9427(0x262)](_0x330e56)??_0xbc5efb[_0x5c9427(0x26b)](_0x5e1ab1,[_0x330e56]),_0x49d431[_0x5c9427(0x1d9)](_0x11448e)?.['push'](_0x330e56)??_0x49d431[_0x5c9427(0x26b)](_0x11448e,[_0x330e56]));});if(_0x55edf[_0x3b1569(0x203)]!==0x1)return;validateGraphShape(_0x33b12,_0x55edf[0x0],_0x4bc0f2,_0xbc5efb,_0x49d431,_0x69a235,_0xfb8c07),validateScriptResultReferences(_0x33b12,_0x55edf[0x0],_0xbc5efb,_0x49d431,_0x69a235,_0x27d103,_0xfb8c07),validateApprovalResults(_0x33b12,_0x36de67,_0x4bc0f2,_0xfb8c07);}function validateNode(_0x418903,_0xab4347,_0x411380){const _0x17917d=a281_0x3406bd;for(const _0x4b4be5 of[_0x17917d(0x1f3),'formPermission']){Object[_0x17917d(0x1f7)][_0x17917d(0x1ed)]['call'](_0x418903,_0x4b4be5)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+'.'+_0x4b4be5,'message':UNSUPPORTED_FORM_MESSAGE});}if(!NODE_TYPES[_0x17917d(0x152)](_0x418903[_0x17917d(0x279)]))return;(typeof _0x418903['name']!==_0x17917d(0x1fe)||_0x418903[_0x17917d(0x206)]['trim']()==='')&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x19c),'message':'Every\x20node\x20requires\x20a\x20non-empty\x20name.'});_0x418903[_0x17917d(0x1af)]!==undefined&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x165),'message':_0x17917d(0x214)});if(_0x418903[_0x17917d(0x223)]!==undefined){if(typeof _0x418903[_0x17917d(0x223)]!==_0x17917d(0x1fe)||_0x418903['path'][_0x17917d(0x26a)]()==='')_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x2a5),'message':_0x17917d(0x170)});else _0x418903[_0x17917d(0x279)]!==_0x17917d(0x271)&&_0x418903[_0x17917d(0x279)]!==_0x17917d(0x1a4)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x2a5),'message':'node\x20path\x20is\x20supported\x20only\x20on\x20APPROVAL\x20or\x20END\x20nodes.'});}const _0x4ab451=_0x418903[_0x17917d(0x23f)];if(!isRecord(_0x4ab451))_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x168),'message':_0x17917d(0x1e3)});else for(const _0x10de0a of['x','y']){const _0x4395b0=_0x4ab451[_0x10de0a];(typeof _0x4395b0!==_0x17917d(0x297)||!Number[_0x17917d(0x1a6)](_0x4395b0)||_0x4395b0<0x0)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x22f)+_0x10de0a,'message':_0x17917d(0x1ee)+_0x10de0a+_0x17917d(0x1c0)});}if(_0x418903['type']===_0x17917d(0x271)){const _0x445b18=_0x418903[_0x17917d(0x1bf)]??'SINGLE',_0x19f8ed=_0x418903[_0x17917d(0x173)]??_0x17917d(0x271);!APPROVAL_TASK_MODES[_0x17917d(0x152)](_0x19f8ed)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x296),'message':_0x17917d(0x24f)+String(_0x19f8ed)+'.'});!APPROVAL_MODES['has'](_0x445b18)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x1e1),'message':'Unsupported\x20approval\x20mode:\x20'+String(_0x445b18)+'.'});if(!isRecord(_0x418903[_0x17917d(0x26d)]))_0x411380['push']({'path':_0xab4347+'.assignee','message':_0x17917d(0x246)});else{const _0x8f24fd=_0x418903[_0x17917d(0x26d)][_0x17917d(0x1b8)];_0x8f24fd!==_0x17917d(0x19a)&&_0x8f24fd!==_0x17917d(0x16f)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x1ca),'message':'assignee.strategy\x20must\x20be\x20FIXED\x20or\x20ROLE.'});if(_0x8f24fd===_0x17917d(0x19a)){const _0x2290c4=_0x418903[_0x17917d(0x26d)]['userIds'];if(!Array[_0x17917d(0x1fb)](_0x2290c4)||_0x2290c4[_0x17917d(0x203)]===0x0)_0x411380[_0x17917d(0x262)]({'path':_0xab4347+'.assignee.userIds','message':_0x17917d(0x1ec)});else{const _0x43d521=_0x2290c4[_0x17917d(0x21b)](_0x46e5ec=>!isValidUserId(_0x46e5ec));_0x43d521>=0x0&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+'.assignee.userIds['+_0x43d521+']','message':_0x17917d(0x19b)});const _0x4f1dcc=new Set(_0x2290c4[_0x17917d(0x191)](isValidUserId)[_0x17917d(0x1e5)](_0x139f4b=>String(_0x139f4b)[_0x17917d(0x26a)]()));_0x445b18===_0x17917d(0x27b)&&_0x4f1dcc['size']>0x1&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x178),'message':_0x17917d(0x14e)});}}if(_0x8f24fd===_0x17917d(0x16f)){const _0x1bb9ef=_0x418903['assignee'][_0x17917d(0x1bb)],_0x3517c4=typeof _0x1bb9ef===_0x17917d(0x297)||typeof _0x1bb9ef===_0x17917d(0x1fe)?Number(String(_0x1bb9ef)[_0x17917d(0x26a)]()):Number[_0x17917d(0x21a)];(!Number[_0x17917d(0x169)](_0x3517c4)||_0x3517c4<=0x0)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x24e),'message':_0x17917d(0x1a2)});}}if(_0x418903[_0x17917d(0x1e7)]!==undefined){if(!isRecord(_0x418903[_0x17917d(0x1e7)]))_0x411380[_0x17917d(0x262)]({'path':_0xab4347+'.transferCandidates','message':_0x17917d(0x14c)});else{if(_0x418903[_0x17917d(0x1e7)][_0x17917d(0x1b8)]!==_0x17917d(0x19a))_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x280),'message':'transferCandidates\x20currently\x20supports\x20FIXED\x20only.'});else{const _0x427801=_0x418903[_0x17917d(0x1e7)]['userIds'];if(!Array[_0x17917d(0x1fb)](_0x427801)||_0x427801[_0x17917d(0x203)]===0x0)_0x411380['push']({'path':_0xab4347+_0x17917d(0x29f),'message':_0x17917d(0x16a)});else{const _0x47445e=_0x427801['findIndex'](_0x3899e4=>!isValidUserId(_0x3899e4));_0x47445e>=0x0&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x27c)+_0x47445e+']','message':_0x17917d(0x260)});}}}}}_0x418903['sequential']!==undefined&&typeof _0x418903[_0x17917d(0x18d)]!==_0x17917d(0x28f)&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+'.sequential','message':_0x17917d(0x18f)});if(_0x418903[_0x17917d(0x279)]===_0x17917d(0x215)){(typeof _0x418903[_0x17917d(0x184)]!==_0x17917d(0x1fe)||_0x418903[_0x17917d(0x184)][_0x17917d(0x26a)]()==='')&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x228),'message':_0x17917d(0x1a7)});if(_0x418903[_0x17917d(0x28b)]!==undefined){if(typeof _0x418903[_0x17917d(0x28b)]!==_0x17917d(0x1fe)||!VARIABLE_PATTERN[_0x17917d(0x285)](_0x418903[_0x17917d(0x28b)]))_0x411380[_0x17917d(0x262)]({'path':_0xab4347+_0x17917d(0x1f8),'message':_0x17917d(0x211)});else(RESERVED_RESULT_VARIABLES[_0x17917d(0x152)](_0x418903[_0x17917d(0x28b)])||_0x418903[_0x17917d(0x28b)]['startsWith'](_0x17917d(0x183)))&&_0x411380[_0x17917d(0x262)]({'path':_0xab4347+'.resultVariable','message':_0x17917d(0x1dd)+_0x418903['resultVariable']+'.'});}}validateAsyncExecution(_0x418903,_0xab4347,_0x411380),validateApprovalTimeout(_0x418903,_0xab4347,_0x411380),validateCcConfig(_0x418903,_0xab4347,_0x411380),_0x418903['type']===_0x17917d(0x1d8)&&validateNotificationConfig(_0x418903[_0x17917d(0x1eb)],_0xab4347+_0x17917d(0x29b),_0x411380);}function validateAsyncExecution(_0x191460,_0x2f8cc2,_0x57383e){const _0x45f10d=a281_0x3406bd;if(_0x191460[_0x45f10d(0x266)]===undefined)return;if(!isRecord(_0x191460['async'])){_0x57383e[_0x45f10d(0x262)]({'path':_0x2f8cc2+'.async','message':'async\x20must\x20be\x20an\x20object.'});return;}if(_0x191460[_0x45f10d(0x266)]['enabled']!==undefined&&typeof _0x191460['async']['enabled']!==_0x45f10d(0x28f)){_0x57383e['push']({'path':_0x2f8cc2+_0x45f10d(0x17b),'message':_0x45f10d(0x1d1)});return;}if(_0x191460[_0x45f10d(0x266)]['enabled']!==!![])return;_0x191460['type']!==_0x45f10d(0x215)&&_0x57383e[_0x45f10d(0x262)]({'path':_0x2f8cc2+_0x45f10d(0x275),'message':_0x45f10d(0x205)});const _0x5ba7cb=_0x191460[_0x45f10d(0x266)]['retryCount']??0x3;(!Number[_0x45f10d(0x231)](_0x5ba7cb)||_0x5ba7cb<0x1||_0x5ba7cb>MAX_ASYNC_RETRY_COUNT)&&_0x57383e[_0x45f10d(0x262)]({'path':_0x2f8cc2+'.async.retryCount','message':_0x45f10d(0x1f2)+MAX_ASYNC_RETRY_COUNT+'.'}),_0x191460['async'][_0x45f10d(0x207)]!==undefined&&validateTimeAmount(_0x191460[_0x45f10d(0x266)][_0x45f10d(0x207)],_0x2f8cc2+_0x45f10d(0x27f),_0x57383e);}function a281_0x102f(_0x2c7563,_0x917277){_0x2c7563=_0x2c7563-0x141;const _0x1c91b9=a281_0x1c91();let _0x102f71=_0x1c91b9[_0x2c7563];return _0x102f71;}function validateApprovalTimeout(_0x4d069d,_0x49374a,_0x328ff8){const _0x33af46=a281_0x3406bd;if(_0x4d069d['timeout']===undefined)return;if(!isRecord(_0x4d069d[_0x33af46(0x227)])){_0x328ff8[_0x33af46(0x262)]({'path':_0x49374a+_0x33af46(0x22c),'message':_0x33af46(0x254)});return;}if(_0x4d069d['timeout']['enabled']!==undefined&&typeof _0x4d069d[_0x33af46(0x227)][_0x33af46(0x2ad)]!=='boolean'){_0x328ff8[_0x33af46(0x262)]({'path':_0x49374a+'.timeout.enabled','message':'timeout.enabled\x20must\x20be\x20a\x20boolean.'});return;}if(_0x4d069d[_0x33af46(0x227)][_0x33af46(0x2ad)]!==!![])return;if(_0x4d069d[_0x33af46(0x227)]['interrupting']!==undefined&&typeof _0x4d069d[_0x33af46(0x227)]['interrupting']!==_0x33af46(0x28f)){_0x328ff8['push']({'path':_0x49374a+_0x33af46(0x1b7),'message':_0x33af46(0x258)});return;}_0x4d069d[_0x33af46(0x279)]!==_0x33af46(0x271)&&_0x328ff8['push']({'path':_0x49374a+'.timeout','message':_0x33af46(0x259)});validateTimeAmount(_0x4d069d[_0x33af46(0x227)]['duration'],_0x49374a+_0x33af46(0x252),_0x328ff8);const _0x12c6f2=_0x4d069d[_0x33af46(0x227)][_0x33af46(0x2a3)];if(!APPROVAL_TIMEOUT_ACTIONS[_0x33af46(0x152)](_0x12c6f2)){_0x328ff8[_0x33af46(0x262)]({'path':_0x49374a+_0x33af46(0x16b),'message':_0x33af46(0x1c6)});return;}(_0x4d069d[_0x33af46(0x173)]??_0x33af46(0x271))===_0x33af46(0x163)&&_0x12c6f2!==_0x33af46(0x1c8)&&_0x328ff8['push']({'path':_0x49374a+_0x33af46(0x16b),'message':_0x33af46(0x154)});const _0x2c2c40=_0x4d069d[_0x33af46(0x227)]['interrupting']??_0x12c6f2!==_0x33af46(0x1c8);if(_0x12c6f2===_0x33af46(0x1c8))_0x2c2c40&&_0x328ff8[_0x33af46(0x262)]({'path':_0x49374a+_0x33af46(0x1b7),'message':_0x33af46(0x1fd)}),(typeof _0x4d069d[_0x33af46(0x227)][_0x33af46(0x184)]!==_0x33af46(0x1fe)||_0x4d069d[_0x33af46(0x227)][_0x33af46(0x184)]['trim']()==='')&&_0x328ff8[_0x33af46(0x262)]({'path':_0x49374a+_0x33af46(0x268),'message':_0x33af46(0x160)}),validateOptionalResultVariable(_0x4d069d[_0x33af46(0x227)][_0x33af46(0x28b)],_0x49374a+_0x33af46(0x145),_0x328ff8);else!_0x2c2c40&&_0x328ff8[_0x33af46(0x262)]({'path':_0x49374a+_0x33af46(0x1b7),'message':_0x12c6f2+_0x33af46(0x175)});}function validateTimeAmount(_0x4e3e64,_0x559e19,_0x2e5919){const _0x4c3e0d=a281_0x3406bd;if(!isRecord(_0x4e3e64)){_0x2e5919[_0x4c3e0d(0x262)]({'path':_0x559e19,'message':_0x4c3e0d(0x2a2)});return;}(!Number[_0x4c3e0d(0x231)](_0x4e3e64[_0x4c3e0d(0x21e)])||Number(_0x4e3e64[_0x4c3e0d(0x21e)])<=0x0)&&_0x2e5919[_0x4c3e0d(0x262)]({'path':_0x559e19+'.value','message':_0x4c3e0d(0x161)}),!FLOW_TIME_UNITS[_0x4c3e0d(0x152)](_0x4e3e64['unit'])&&_0x2e5919[_0x4c3e0d(0x262)]({'path':_0x559e19+'.unit','message':_0x4c3e0d(0x242)});}function validateOptionalResultVariable(_0x25da3a,_0x3ceaec,_0x5abadd){const _0x461cf0=a281_0x3406bd;if(_0x25da3a===undefined||_0x25da3a===null||_0x25da3a==='')return;if(typeof _0x25da3a!==_0x461cf0(0x1fe)||!VARIABLE_PATTERN['test'](_0x25da3a))_0x5abadd[_0x461cf0(0x262)]({'path':_0x3ceaec,'message':_0x461cf0(0x211)});else(RESERVED_RESULT_VARIABLES[_0x461cf0(0x152)](_0x25da3a)||_0x25da3a[_0x461cf0(0x150)](_0x461cf0(0x183)))&&_0x5abadd[_0x461cf0(0x262)]({'path':_0x3ceaec,'message':'Reserved\x20resultVariable:\x20'+_0x25da3a+'.'});}function validateCcConfig(_0x2bf48c,_0x143ae4,_0x58516a){const _0x1e7ae2=a281_0x3406bd;if(_0x2bf48c['cc']===undefined)return;if(!isRecord(_0x2bf48c['cc'])){_0x58516a['push']({'path':_0x143ae4+_0x1e7ae2(0x21c),'message':_0x1e7ae2(0x18c)});return;}_0x2bf48c[_0x1e7ae2(0x279)]!==_0x1e7ae2(0x1a4)&&_0x2bf48c[_0x1e7ae2(0x279)]!==_0x1e7ae2(0x271)&&_0x58516a[_0x1e7ae2(0x262)]({'path':_0x143ae4+_0x1e7ae2(0x21c),'message':_0x1e7ae2(0x278)});Object[_0x1e7ae2(0x1f7)][_0x1e7ae2(0x1ed)][_0x1e7ae2(0x256)](_0x2bf48c['cc'],'readSources')&&_0x58516a[_0x1e7ae2(0x262)]({'path':_0x143ae4+_0x1e7ae2(0x23e),'message':UNSUPPORTED_FORM_MESSAGE});const _0x1ae637=_0x2bf48c['cc'][_0x1e7ae2(0x29e)];if(!Array[_0x1e7ae2(0x1fb)](_0x1ae637)||_0x1ae637[_0x1e7ae2(0x203)]===0x0)_0x58516a[_0x1e7ae2(0x262)]({'path':_0x143ae4+_0x1e7ae2(0x25c),'message':_0x1e7ae2(0x26c)});else{_0x1ae637[_0x1e7ae2(0x203)]>MAX_CC_RECIPIENTS&&_0x58516a[_0x1e7ae2(0x262)]({'path':_0x143ae4+'.cc.recipientUserIds','message':_0x1e7ae2(0x166)+MAX_CC_RECIPIENTS+_0x1e7ae2(0x22e)});const _0x38613d=new Set();_0x1ae637[_0x1e7ae2(0x269)]((_0x283db5,_0x21d1ea)=>{const _0x5b0736=_0x1e7ae2;if(typeof _0x283db5!=='string'||_0x283db5[_0x5b0736(0x26a)]()==='')_0x58516a[_0x5b0736(0x262)]({'path':_0x143ae4+'.cc.recipientUserIds['+_0x21d1ea+']','message':'cc\x20recipient\x20userId\x20must\x20be\x20a\x20non-empty\x20string.'});else _0x38613d[_0x5b0736(0x152)](_0x283db5[_0x5b0736(0x26a)]())?_0x58516a[_0x5b0736(0x262)]({'path':_0x143ae4+'.cc.recipientUserIds['+_0x21d1ea+']','message':_0x5b0736(0x240)+_0x283db5['trim']()+'.'}):_0x38613d[_0x5b0736(0x224)](_0x283db5[_0x5b0736(0x26a)]());});}validateStringArray(_0x2bf48c['cc']['visible'],_0x143ae4+_0x1e7ae2(0x146),_0x58516a);}function validateStringArray(_0x4a2125,_0x3a6aaf,_0x2366ad){const _0x62d0f4=a281_0x3406bd;if(_0x4a2125===undefined)return;if(!Array[_0x62d0f4(0x1fb)](_0x4a2125)){_0x2366ad['push']({'path':_0x3a6aaf,'message':'value\x20must\x20be\x20an\x20array.'});return;}const _0x19fdc5=new Set();_0x4a2125['forEach']((_0x3849d7,_0x202dcb)=>{const _0x591d64=_0x62d0f4;if(typeof _0x3849d7!==_0x591d64(0x1fe)||_0x3849d7[_0x591d64(0x26a)]()==='')_0x2366ad[_0x591d64(0x262)]({'path':_0x3a6aaf+'['+_0x202dcb+']','message':_0x591d64(0x263)});else _0x19fdc5[_0x591d64(0x152)](_0x3849d7[_0x591d64(0x26a)]())?_0x2366ad['push']({'path':_0x3a6aaf+'['+_0x202dcb+']','message':_0x591d64(0x29c)+_0x3849d7[_0x591d64(0x26a)]()+'.'}):_0x19fdc5[_0x591d64(0x224)](_0x3849d7['trim']());});}function validateNotificationConfig(_0x15591b,_0x3e1ce4,_0x238a7e){const _0x2cede1=a281_0x3406bd;if(!isRecord(_0x15591b)){_0x238a7e[_0x2cede1(0x262)]({'path':_0x3e1ce4,'message':_0x2cede1(0x155)});return;}if(_0x15591b[_0x2cede1(0x225)]!==undefined&&_0x15591b[_0x2cede1(0x225)]!==null){if(typeof _0x15591b[_0x2cede1(0x225)]!=='string')_0x238a7e[_0x2cede1(0x262)]({'path':_0x3e1ce4+_0x2cede1(0x230),'message':_0x2cede1(0x1fa)});else _0x15591b[_0x2cede1(0x225)][_0x2cede1(0x26a)]()&&_0x15591b[_0x2cede1(0x225)][_0x2cede1(0x26a)]()!=='v1'&&_0x238a7e[_0x2cede1(0x262)]({'path':_0x3e1ce4+'.version','message':_0x2cede1(0x15b)+_0x15591b[_0x2cede1(0x225)]+'.'});}const _0x221e92=requireNotificationString(_0x15591b[_0x2cede1(0x1b2)],_0x3e1ce4+_0x2cede1(0x1cb),_0x2cede1(0x294),_0x238a7e);_0x221e92?.['includes']('${')&&_0x238a7e[_0x2cede1(0x262)]({'path':_0x3e1ce4+'.configCode','message':'Notification\x20configCode\x20must\x20be\x20a\x20fixed\x20value.'});if(_0x15591b[_0x2cede1(0x1b0)]!==undefined&&_0x15591b[_0x2cede1(0x1b0)]!==null){if(typeof _0x15591b[_0x2cede1(0x1b0)]!==_0x2cede1(0x1fe))_0x238a7e['push']({'path':_0x3e1ce4+'.failurePolicy','message':'failurePolicy\x20must\x20be\x20a\x20string.'});else!NOTIFICATION_FAILURE_POLICIES[_0x2cede1(0x152)](_0x15591b[_0x2cede1(0x1b0)][_0x2cede1(0x26a)]()[_0x2cede1(0x273)]())&&_0x238a7e[_0x2cede1(0x262)]({'path':_0x3e1ce4+_0x2cede1(0x222),'message':'failurePolicy\x20must\x20be\x20CONTINUE\x20or\x20FAIL.'});}!isRecord(_0x15591b[_0x2cede1(0x2a6)])?_0x238a7e[_0x2cede1(0x262)]({'path':_0x3e1ce4+_0x2cede1(0x217),'message':_0x2cede1(0x16e)}):validateNotificationTemplate(_0x15591b[_0x2cede1(0x2a6)],_0x3e1ce4+'.template',_0x238a7e),validateNotificationRecipients(_0x15591b[_0x2cede1(0x253)],_0x3e1ce4+_0x2cede1(0x20c),_0x238a7e);}function validateNotificationTemplate(_0x20171b,_0x5cde72,_0x2fa6b5){const _0x4a2c43=a281_0x3406bd;for(const _0x5ac714 of['title','summary']){const _0x4bd61f=requireNotificationString(_0x20171b[_0x5ac714],_0x5cde72+'.'+_0x5ac714,_0x4a2c43(0x182)+_0x5ac714+_0x4a2c43(0x29a),_0x2fa6b5);if(_0x4bd61f)validateNotificationPlaceholders(_0x4bd61f,_0x5cde72+'.'+_0x5ac714,_0x2fa6b5);}_0x20171b['detailMarkdown']!==undefined&&_0x20171b[_0x4a2c43(0x200)]!==null&&(typeof _0x20171b['detailMarkdown']!==_0x4a2c43(0x1fe)?_0x2fa6b5[_0x4a2c43(0x262)]({'path':_0x5cde72+_0x4a2c43(0x1f0),'message':'Notification\x20template.detailMarkdown\x20must\x20be\x20a\x20string.'}):validateNotificationPlaceholders(_0x20171b['detailMarkdown'],_0x5cde72+_0x4a2c43(0x1f0),_0x2fa6b5)),validateNotificationFacts(_0x20171b[_0x4a2c43(0x197)],_0x5cde72+'.facts',_0x2fa6b5),validateNotificationActions(_0x20171b[_0x4a2c43(0x2a9)],_0x5cde72+_0x4a2c43(0x1f9),_0x2fa6b5);}function validateNotificationFacts(_0x177e4c,_0x20321a,_0x3568fd){const _0x4c1279=a281_0x3406bd;if(_0x177e4c===undefined||_0x177e4c===null)return;if(!Array[_0x4c1279(0x1fb)](_0x177e4c)){_0x3568fd['push']({'path':_0x20321a,'message':_0x4c1279(0x1fc)});return;}_0x177e4c[_0x4c1279(0x203)]>MAX_NOTIFICATION_FACTS&&_0x3568fd['push']({'path':_0x20321a,'message':_0x4c1279(0x15c)+MAX_NOTIFICATION_FACTS+'\x20facts.'}),_0x177e4c[_0x4c1279(0x269)]((_0x15687c,_0x1badff)=>{const _0x12de03=_0x4c1279,_0xef95cf=_0x20321a+'['+_0x1badff+']';if(!isRecord(_0x15687c)){_0x3568fd[_0x12de03(0x262)]({'path':_0xef95cf,'message':_0x12de03(0x1a3)});return;}for(const _0x3edf99 of[_0x12de03(0x158),'value']){const _0x55e495=requireNotificationString(_0x15687c[_0x3edf99],_0xef95cf+'.'+_0x3edf99,_0x12de03(0x153)+_0x3edf99+'\x20is\x20required.',_0x3568fd);_0x55e495&&validateNotificationPlaceholders(_0x55e495,_0xef95cf+'.'+_0x3edf99,_0x3568fd);}});}function validateNotificationActions(_0x513d7a,_0x68bb65,_0x41bbff){const _0x49418c=a281_0x3406bd;if(_0x513d7a===undefined||_0x513d7a===null)return;if(!Array[_0x49418c(0x1fb)](_0x513d7a)){_0x41bbff[_0x49418c(0x262)]({'path':_0x68bb65,'message':_0x49418c(0x2aa)});return;}_0x513d7a[_0x49418c(0x203)]>MAX_NOTIFICATION_ACTIONS&&_0x41bbff['push']({'path':_0x68bb65,'message':_0x49418c(0x15c)+MAX_NOTIFICATION_ACTIONS+_0x49418c(0x23d)}),_0x513d7a[_0x49418c(0x269)]((_0x18833f,_0x2c6137)=>{const _0xb0b077=_0x49418c,_0x23cc2c=_0x68bb65+'['+_0x2c6137+']';if(!isRecord(_0x18833f)){_0x41bbff[_0xb0b077(0x262)]({'path':_0x23cc2c,'message':_0xb0b077(0x18b)});return;}const _0x4ee48f=requireNotificationString(_0x18833f[_0xb0b077(0x1f1)],_0x23cc2c+_0xb0b077(0x1c7),_0xb0b077(0x243),_0x41bbff);if(_0x4ee48f)validateNotificationPlaceholders(_0x4ee48f,_0x23cc2c+_0xb0b077(0x1c7),_0x41bbff);const _0x29ccfc=requireNotificationString(_0x18833f[_0xb0b077(0x209)],_0x23cc2c+_0xb0b077(0x270),_0xb0b077(0x1b6),_0x41bbff);if(!_0x29ccfc)return;validateNotificationPlaceholders(_0x29ccfc,_0x23cc2c+_0xb0b077(0x270),_0x41bbff),!/^https?:\/\//i['test'](_0x29ccfc)&&!NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN[_0xb0b077(0x285)](_0x29ccfc)&&_0x41bbff['push']({'path':_0x23cc2c+_0xb0b077(0x270),'message':_0xb0b077(0x2a8)});});}function validateNotificationRecipients(_0x13ccf6,_0x310e0f,_0x5e0dde){const _0x3d5fc1=a281_0x3406bd;if(_0x13ccf6===undefined||_0x13ccf6===null)return;if(!Array[_0x3d5fc1(0x1fb)](_0x13ccf6)){_0x5e0dde['push']({'path':_0x310e0f,'message':_0x3d5fc1(0x265)});return;}let _0x341f9a=![];_0x13ccf6['forEach']((_0x333e68,_0x249c1e)=>{const _0x4fc9bb=_0x3d5fc1,_0x2e4c90=_0x310e0f+'['+_0x249c1e+']';if(!isRecord(_0x333e68)){_0x5e0dde['push']({'path':_0x2e4c90,'message':_0x4fc9bb(0x149)});return;}const _0x16653a=requireNotificationString(_0x333e68[_0x4fc9bb(0x279)],_0x2e4c90+'.type','Notification\x20recipient.type\x20is\x20required.',_0x5e0dde);_0x16653a&&!NOTIFICATION_RECIPIENT_TYPES[_0x4fc9bb(0x152)](_0x16653a[_0x4fc9bb(0x273)]())&&_0x5e0dde['push']({'path':_0x2e4c90+_0x4fc9bb(0x267),'message':'Notification\x20recipient.type\x20must\x20be\x20USER,\x20ROLE,\x20or\x20EMAIL.'});let _0x22c59b='TO';_0x333e68[_0x4fc9bb(0x2ae)]!==undefined&&_0x333e68['role']!==null&&(typeof _0x333e68['role']!==_0x4fc9bb(0x1fe)?(_0x5e0dde[_0x4fc9bb(0x262)]({'path':_0x2e4c90+_0x4fc9bb(0x17d),'message':'Notification\x20recipient.role\x20must\x20be\x20a\x20string.'}),_0x22c59b=''):(_0x22c59b=_0x333e68[_0x4fc9bb(0x2ae)]['trim']()[_0x4fc9bb(0x273)](),!NOTIFICATION_RECIPIENT_ROLES[_0x4fc9bb(0x152)](_0x22c59b)&&_0x5e0dde[_0x4fc9bb(0x262)]({'path':_0x2e4c90+_0x4fc9bb(0x17d),'message':_0x4fc9bb(0x1b3)})));if(_0x22c59b==='TO')_0x341f9a=!![];const _0x5c609d=requireNotificationString(_0x333e68[_0x4fc9bb(0x21e)],_0x2e4c90+_0x4fc9bb(0x232),'Notification\x20recipient.value\x20is\x20required.',_0x5e0dde);_0x5c609d&&validateNotificationPlaceholders(_0x5c609d,_0x2e4c90+_0x4fc9bb(0x232),_0x5e0dde);}),_0x13ccf6['length']>0x0&&!_0x341f9a&&_0x5e0dde[_0x3d5fc1(0x262)]({'path':_0x310e0f,'message':_0x3d5fc1(0x1ad)});}function requireNotificationString(_0x4b9a24,_0x1d105e,_0x48a3f6,_0x2522ff){const _0x8022ca=a281_0x3406bd;if(typeof _0x4b9a24!==_0x8022ca(0x1fe)||_0x4b9a24[_0x8022ca(0x26a)]()==='')return _0x2522ff['push']({'path':_0x1d105e,'message':_0x48a3f6}),undefined;return _0x4b9a24[_0x8022ca(0x26a)]();}function validateNotificationPlaceholders(_0x9a737d,_0x5639c2,_0x20b62d){const _0x29fe29=a281_0x3406bd;for(const _0x21240d of _0x9a737d['matchAll'](NOTIFICATION_PLACEHOLDER_PATTERN)){const _0x4e53bf=_0x21240d[0x1]?.[_0x29fe29(0x26a)]()??'',_0x4e66d1=_0x4e53bf['indexOf']('.'),_0x1aa69=_0x4e66d1>=0x0?_0x4e53bf['slice'](0x0,_0x4e66d1):_0x4e53bf,_0x476fe6=_0x4e66d1>=0x0?_0x4e53bf['slice'](_0x4e66d1+0x1)[_0x29fe29(0x26a)]():'';(![_0x29fe29(0x181),'context',_0x29fe29(0x219)][_0x29fe29(0x28e)](_0x1aa69)||_0x476fe6==='')&&_0x20b62d[_0x29fe29(0x262)]({'path':_0x5639c2,'message':_0x29fe29(0x26f)+_0x21240d[0x0]+'.'});}_0x9a737d[_0x29fe29(0x18e)](NOTIFICATION_PLACEHOLDER_PATTERN,'')['includes']('${')&&_0x20b62d['push']({'path':_0x5639c2,'message':_0x29fe29(0x23c)});}function validateEdge(_0x26c40d,_0x2f8b07,_0x3f7fac){const _0x45f309=a281_0x3406bd;_0x26c40d[_0x45f309(0x206)]!==undefined&&typeof _0x26c40d[_0x45f309(0x206)]!==_0x45f309(0x1fe)&&_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+'.name','message':_0x45f309(0x18a)}),_0x26c40d[_0x45f309(0x2a0)]!==undefined&&typeof _0x26c40d[_0x45f309(0x2a0)]!==_0x45f309(0x28f)&&_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+_0x45f309(0x2a7),'message':_0x45f309(0x248)}),_0x26c40d[_0x45f309(0x235)]!==undefined&&(!Array[_0x45f309(0x1fb)](_0x26c40d[_0x45f309(0x235)])?_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+_0x45f309(0x148),'message':_0x45f309(0x23b)}):_0x26c40d[_0x45f309(0x235)][_0x45f309(0x269)]((_0x44ab59,_0x2f3bd5)=>{const _0x1002b6=_0x45f309;if(!isRecord(_0x44ab59)){_0x3f7fac['push']({'path':_0x2f8b07+_0x1002b6(0x15a)+_0x2f3bd5+']','message':_0x1002b6(0x1b5)});return;}for(const _0x83f294 of['x','y']){const _0x1f6bb2=_0x44ab59[_0x83f294];(typeof _0x1f6bb2!==_0x1002b6(0x297)||!Number[_0x1002b6(0x1a6)](_0x1f6bb2))&&_0x3f7fac['push']({'path':_0x2f8b07+_0x1002b6(0x15a)+_0x2f3bd5+'].'+_0x83f294,'message':_0x1002b6(0x1dc)+_0x83f294+_0x1002b6(0x1bc)});}})),_0x26c40d[_0x45f309(0x264)]!==undefined&&!CONDITION_TYPES[_0x45f309(0x152)](_0x26c40d[_0x45f309(0x264)])&&_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+'.conditionType','message':_0x45f309(0x1de)+String(_0x26c40d[_0x45f309(0x264)])+'.'}),_0x26c40d[_0x45f309(0x264)]===_0x45f309(0x171)&&(typeof _0x26c40d[_0x45f309(0x1ab)]!=='string'||_0x26c40d[_0x45f309(0x1ab)][_0x45f309(0x26a)]()==='')&&_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+'.expression','message':_0x45f309(0x287)}),_0x26c40d['defaultFlow']===!![]&&_0x26c40d['conditionType']!==_0x45f309(0x25e)&&_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+_0x45f309(0x2a7),'message':_0x45f309(0x1cc)}),_0x26c40d[_0x45f309(0x2a0)]===!![]&&typeof _0x26c40d[_0x45f309(0x1ab)]===_0x45f309(0x1fe)&&_0x26c40d[_0x45f309(0x1ab)][_0x45f309(0x26a)]()!==''&&_0x3f7fac[_0x45f309(0x262)]({'path':_0x2f8b07+_0x45f309(0x1d5),'message':'A\x20default\x20flow\x20must\x20not\x20have\x20an\x20expression.'});}function validateGraphShape(_0x8359e2,_0x83ecc1,_0x48e4c0,_0xf20880,_0x38c822,_0xa2728c,_0x3324f4){const _0x3475c1=a281_0x3406bd;for(const [_0x1b41dd,_0xdf86b0]of _0x8359e2){const _0x4fb8e5=_0x38c822[_0x3475c1(0x1d9)](_0x1b41dd)??[],_0xd050a=_0xf20880[_0x3475c1(0x1d9)](_0x1b41dd)??[];_0xdf86b0[_0x3475c1(0x279)]!==_0x3475c1(0x286)&&_0x4fb8e5[_0x3475c1(0x203)]===0x0&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x189)});_0xdf86b0[_0x3475c1(0x279)]!==_0x3475c1(0x1a4)&&_0xd050a[_0x3475c1(0x203)]===0x0&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x159)});_0xdf86b0['type']===_0x3475c1(0x286)&&_0x4fb8e5['length']>0x0&&_0x3324f4['push']({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x1e8)});_0xdf86b0[_0x3475c1(0x279)]===_0x3475c1(0x1a4)&&_0xd050a['length']>0x0&&_0x3324f4['push']({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x212)});if(_0xdf86b0[_0x3475c1(0x279)]==='CONDITION'){_0xd050a[_0x3475c1(0x203)]<0x2&&_0x3324f4['push']({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x1b1)});const _0x445685=_0xd050a[_0x3475c1(0x191)](_0x7b2b86=>_0x7b2b86[_0x3475c1(0x2a0)]===!![]);_0x445685[_0x3475c1(0x203)]!==0x1&&_0x3324f4['push']({'path':'flowJson.nodes.'+_0x1b41dd,'message':_0x3475c1(0x180)});if(_0x445685[_0x3475c1(0x203)]===0x1){const _0xe6bb61=_0x445685[0x0],_0x92dc6f=_0xa2728c[_0x3475c1(0x1d9)](_0xe6bb61)??'flowJson.edges';_0xe6bb61[_0x3475c1(0x264)]!==_0x3475c1(0x25e)&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x92dc6f+_0x3475c1(0x29d),'message':_0x3475c1(0x250)});_0xe6bb61[_0x3475c1(0x1ab)]!==undefined&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x92dc6f+_0x3475c1(0x1d5),'message':_0x3475c1(0x282)});for(const _0x2f6b41 of _0xd050a){if(_0x2f6b41===_0xe6bb61)continue;const _0x34334b=_0xa2728c[_0x3475c1(0x1d9)](_0x2f6b41)??'flowJson.edges';if(_0x2f6b41[_0x3475c1(0x264)]!==_0x3475c1(0x171))_0x3324f4[_0x3475c1(0x262)]({'path':_0x34334b+_0x3475c1(0x29d),'message':_0x3475c1(0x298)});else(typeof _0x2f6b41[_0x3475c1(0x1ab)]!=='string'||_0x2f6b41['expression']['trim']()==='')&&_0x3324f4['push']({'path':_0x34334b+_0x3475c1(0x1d5),'message':_0x3475c1(0x17a)});}}}if(_0xdf86b0[_0x3475c1(0x279)]==='APPROVAL'&&(_0xdf86b0[_0x3475c1(0x173)]??_0x3475c1(0x271))===_0x3475c1(0x163)){if(_0xd050a['length']!==0x1)_0x3324f4[_0x3475c1(0x262)]({'path':'flowJson.nodes.'+_0x1b41dd,'message':_0x3475c1(0x1c3)});else{const _0x5453d6=_0xd050a[0x0];((_0x5453d6[_0x3475c1(0x264)]??'ALWAYS')!==_0x3475c1(0x25e)||_0x5453d6[_0x3475c1(0x2a0)]===!![]||typeof _0x5453d6[_0x3475c1(0x1ab)]===_0x3475c1(0x1fe)&&_0x5453d6[_0x3475c1(0x1ab)]['trim']()!=='')&&_0x3324f4[_0x3475c1(0x262)]({'path':_0xa2728c[_0x3475c1(0x1d9)](_0x5453d6)??_0x3475c1(0x167),'message':'HANDLE\x20task\x20outgoing\x20edge\x20must\x20use\x20ALWAYS\x20without\x20defaultFlow\x20or\x20expression.'});}}else{if(_0xdf86b0[_0x3475c1(0x279)]===_0x3475c1(0x271)){const _0x28232d=_0xd050a[_0x3475c1(0x1e5)](_0x5859a0=>_0x5859a0[_0x3475c1(0x264)]??_0x3475c1(0x25e)),_0x3be986=_0x28232d[_0x3475c1(0x191)](_0xd6215b=>_0xd6215b!=='APPROVED'&&_0xd6215b!=='REJECTED');_0x3be986[_0x3475c1(0x203)]>0x0&&_0x3324f4['push']({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x274)}),_0x28232d[_0x3475c1(0x191)](_0x589145=>_0x589145==='APPROVED')[_0x3475c1(0x203)]!==0x1&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x17f)}),_0x28232d['filter'](_0x2c94a3=>_0x2c94a3===_0x3475c1(0x1cd))[_0x3475c1(0x203)]!==0x1&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x251)}),_0xd050a[_0x3475c1(0x288)](_0x1ad248=>_0x1ad248[_0x3475c1(0x2a0)]===!![])&&_0x3324f4['push']({'path':_0x3475c1(0x1df)+_0x1b41dd,'message':_0x3475c1(0x1d4)});}}}const _0x501131=new Set(),_0x198d0a=_0xf1feed=>{const _0x597295=_0x3475c1;if(_0x501131[_0x597295(0x152)](_0xf1feed))return;_0x501131[_0x597295(0x224)](_0xf1feed);for(const _0x493e2c of _0xf20880[_0x597295(0x1d9)](_0xf1feed)??[]){const _0x8341d0=resolveEdgeEndpoint(_0x493e2c[_0x597295(0x257)],_0x493e2c['targetNodeId']);if(_0x8341d0&&_0x8359e2[_0x597295(0x152)](_0x8341d0))_0x198d0a(_0x8341d0);}};_0x198d0a(_0x83ecc1);for(const _0x6aaed1 of _0x8359e2[_0x3475c1(0x17c)]()){!_0x501131[_0x3475c1(0x152)](_0x6aaed1)&&_0x3324f4[_0x3475c1(0x262)]({'path':_0x3475c1(0x1df)+_0x6aaed1,'message':'Node\x20is\x20not\x20reachable\x20from\x20START.'});}const _0x34d205=_0x48e4c0[_0x3475c1(0x288)](_0x2c4ed7=>_0x501131[_0x3475c1(0x152)](_0x2c4ed7));if(!_0x34d205){_0x3324f4[_0x3475c1(0x262)]({'path':_0x3475c1(0x167),'message':_0x3475c1(0x1ba)});return;}const _0x1fcd99=new Set(),_0x2f024d=_0x577afc=>{const _0x271791=_0x3475c1;if(_0x1fcd99[_0x271791(0x152)](_0x577afc))return;_0x1fcd99[_0x271791(0x224)](_0x577afc);for(const _0x3f08fc of _0x38c822['get'](_0x577afc)??[]){const _0x5152cd=resolveEdgeEndpoint(_0x3f08fc['source'],_0x3f08fc[_0x271791(0x22b)]);if(_0x5152cd&&_0x8359e2[_0x271791(0x152)](_0x5152cd))_0x2f024d(_0x5152cd);}};for(const _0x129c30 of _0x48e4c0){if(_0x8359e2['has'](_0x129c30))_0x2f024d(_0x129c30);}for(const _0x379e51 of _0x501131){!_0x1fcd99[_0x3475c1(0x152)](_0x379e51)&&_0x3324f4[_0x3475c1(0x262)]({'path':'flowJson.nodes.'+_0x379e51,'message':_0x3475c1(0x245)});}}function validateApprovalResults(_0xc420e6,_0x404f4f,_0x1f17ad,_0xe708b3){const _0x21b9e0=a281_0x3406bd;if(_0x404f4f===0x0)return;const _0x264ada=new Set(_0x1f17ad[_0x21b9e0(0x1e5)](_0x1c6f10=>_0xc420e6[_0x21b9e0(0x1d9)](_0x1c6f10)?.[_0x21b9e0(0x192)])['filter'](_0x104065=>typeof _0x104065===_0x21b9e0(0x1fe)));for(const _0x40cb39 of[_0x21b9e0(0x293),_0x21b9e0(0x1cd)]){!_0x264ada[_0x21b9e0(0x152)](_0x40cb39)&&_0xe708b3[_0x21b9e0(0x262)]({'path':_0x21b9e0(0x291),'message':_0x21b9e0(0x174)+_0x40cb39+'.'});}}function validateScriptResultReferences(_0x5c2f81,_0x2a76cb,_0x1617c0,_0x531581,_0x4cb35d,_0xab24b3,_0x1f4ef3){const _0x3f7156=a281_0x3406bd;if(_0xab24b3[_0x3f7156(0x1c1)]===0x0)return;const _0x13d05c=new Set(),_0x421693=_0x2fd266=>{const _0x1b5252=_0x3f7156;if(!_0x13d05c['has'](_0x2fd266)&&_0x5c2f81[_0x1b5252(0x152)](_0x2fd266)){_0x13d05c[_0x1b5252(0x224)](_0x2fd266);for(const _0x33bab0 of _0x1617c0[_0x1b5252(0x1d9)](_0x2fd266)??[]){const _0x36636a=resolveEdgeEndpoint(_0x33bab0['target'],_0x33bab0['targetNodeId']);if(_0x36636a)_0x421693(_0x36636a);}}};_0x421693(_0x2a76cb);const _0x6a934e=new Map();for(const _0x4f223e of _0x13d05c){_0x6a934e[_0x3f7156(0x26b)](_0x4f223e,_0x4f223e===_0x2a76cb?new Set([_0x2a76cb]):new Set(_0x13d05c));}let _0x43f89e=!![];while(_0x43f89e){_0x43f89e=![];for(const _0x943ed8 of _0x13d05c){if(_0x943ed8===_0x2a76cb)continue;const _0x4026a2=(_0x531581[_0x3f7156(0x1d9)](_0x943ed8)??[])[_0x3f7156(0x1e5)](_0x59a8c3=>resolveEdgeEndpoint(_0x59a8c3[_0x3f7156(0x199)],_0x59a8c3[_0x3f7156(0x22b)]))[_0x3f7156(0x191)](_0x4aca58=>Boolean(_0x4aca58&&_0x13d05c[_0x3f7156(0x152)](_0x4aca58)));if(_0x4026a2[_0x3f7156(0x203)]===0x0)continue;const _0x73a7a1=new Set(_0x6a934e[_0x3f7156(0x1d9)](_0x4026a2[0x0])??[]);for(const _0x11c9da of _0x4026a2[_0x3f7156(0x1d0)](0x1)){const _0x3d0f55=_0x6a934e[_0x3f7156(0x1d9)](_0x11c9da)??new Set();for(const _0x416e92 of _0x73a7a1){if(!_0x3d0f55['has'](_0x416e92))_0x73a7a1[_0x3f7156(0x289)](_0x416e92);}}_0x73a7a1[_0x3f7156(0x224)](_0x943ed8);const _0x22615d=_0x6a934e[_0x3f7156(0x1d9)](_0x943ed8);!setsEqual(_0x22615d,_0x73a7a1)&&(_0x6a934e[_0x3f7156(0x26b)](_0x943ed8,_0x73a7a1),_0x43f89e=!![]);}}for(const [_0x35c398,_0x29e271]of _0x1617c0){const _0x180b26=_0x6a934e[_0x3f7156(0x1d9)](_0x35c398);if(!_0x180b26)continue;for(const _0x282d4c of _0x29e271){if(_0x282d4c[_0x3f7156(0x264)]!==_0x3f7156(0x171)||typeof _0x282d4c[_0x3f7156(0x1ab)]!==_0x3f7156(0x1fe))continue;for(const [_0x53eee7,_0x1f66d3]of _0xab24b3){expressionReferencesVariable(_0x282d4c[_0x3f7156(0x1ab)],_0x53eee7)&&!_0x180b26[_0x3f7156(0x152)](_0x1f66d3)&&_0x1f4ef3[_0x3f7156(0x262)]({'path':(_0x4cb35d[_0x3f7156(0x1d9)](_0x282d4c)??'flowJson.edges')+_0x3f7156(0x1d5),'message':_0x3f7156(0x1d3)+_0x53eee7+_0x3f7156(0x26e)+_0x1f66d3+'\x20is\x20not\x20on\x20every\x20upstream\x20path\x20to\x20'+_0x35c398+'.'});}}}}function expressionReferencesVariable(_0x5539e7,_0x6e796b){const _0x580400=a281_0x3406bd;let _0x2d59c5=0x0;while(_0x2d59c5<_0x5539e7[_0x580400(0x203)]){const _0x42a00c=_0x5539e7[_0x2d59c5];if(_0x42a00c==='\x27'||_0x42a00c==='\x22'){_0x2d59c5=skipQuotedExpressionSegment(_0x5539e7,_0x2d59c5,_0x42a00c);continue;}if(!/[A-Za-z_]/[_0x580400(0x285)](_0x42a00c)){_0x2d59c5+=0x1;continue;}const _0x1944de=_0x2d59c5;_0x2d59c5+=0x1;while(_0x2d59c5<_0x5539e7['length']&&/[A-Za-z0-9_]/[_0x580400(0x285)](_0x5539e7[_0x2d59c5])){_0x2d59c5+=0x1;}if(_0x5539e7[_0x580400(0x1d0)](_0x1944de,_0x2d59c5)!==_0x6e796b)continue;let _0x4cfc1c=_0x1944de-0x1;while(_0x4cfc1c>=0x0&&/\s/[_0x580400(0x285)](_0x5539e7[_0x4cfc1c])){_0x4cfc1c-=0x1;}if(_0x5539e7[_0x4cfc1c]!=='.')return!![];}return![];}function skipQuotedExpressionSegment(_0x347bb7,_0x14c03b,_0x2d3221){let _0x190537=_0x14c03b+0x1;while(_0x190537<_0x347bb7['length']){if(_0x347bb7[_0x190537]==='\x5c'){_0x190537+=0x2;continue;}if(_0x347bb7[_0x190537]===_0x2d3221)return _0x190537+0x1;_0x190537+=0x1;}return _0x190537;}function resolveEffectiveResultVariable(_0x3c9047,_0x1ff1bc){const _0x2134f1=a281_0x3406bd;if(_0x3c9047===undefined||_0x3c9047===null||_0x1ff1bc&&_0x3c9047==='')return DEFAULT_SCRIPT_RESULT_VARIABLE;if(typeof _0x3c9047!==_0x2134f1(0x1fe)||!VARIABLE_PATTERN['test'](_0x3c9047)||RESERVED_RESULT_VARIABLES['has'](_0x3c9047)||_0x3c9047['startsWith']('approval_sys_'))return undefined;return _0x3c9047;}function registerResultVariableOwner(_0x3fa43d,_0x55ff55,_0x528948,_0x11f336){const _0x51552d=a281_0x3406bd;if(_0x3fa43d[_0x51552d(0x152)](_0x55ff55)){_0x11f336[_0x51552d(0x262)]({'path':_0x51552d(0x291),'message':'Duplicate\x20resultVariable:\x20'+_0x55ff55+'.'});return;}_0x3fa43d[_0x51552d(0x26b)](_0x55ff55,_0x528948);}function setsEqual(_0x1a7aa2,_0x5e35e9){const _0x58c9f1=a281_0x3406bd;return _0x1a7aa2[_0x58c9f1(0x1c1)]===_0x5e35e9[_0x58c9f1(0x1c1)]&&[..._0x1a7aa2][_0x58c9f1(0x185)](_0x1572d9=>_0x5e35e9[_0x58c9f1(0x152)](_0x1572d9));}function isValidUserId(_0x580c0e){const _0x946f28=a281_0x3406bd;if(typeof _0x580c0e==='string')return _0x580c0e[_0x946f28(0x26a)]()[_0x946f28(0x203)]>0x0;return Number[_0x946f28(0x169)](_0x580c0e)&&Number(_0x580c0e)>0x0;}function a281_0x1c91(){const _0x48a035=['Node\x20has\x20no\x20incoming\x20edge.','edge\x20name\x20must\x20be\x20a\x20string.','Notification\x20action\x20must\x20be\x20an\x20object.','cc\x20must\x20be\x20an\x20object.','sequential','replace','sequential\x20must\x20be\x20a\x20boolean.','object','filter','result','templateName','SECONDS','Rabetbase\x20FlowConfig','approval_sys_dataId','facts','approval_sys_datasetCode','source','FIXED','fixed\x20assignee\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','.name','flowDesc\x20must\x20be\x20a\x20string.','INDEPENDENT_FLOW','utf8','nodes','.id','ROLE\x20assignee\x20requires\x20a\x20positive\x20integer\x20roleId.','Notification\x20fact\x20must\x20be\x20an\x20object.','END','flowJson.nodes[','isFinite','SCRIPT\x20node\x20requires\x20scriptName.','edge\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','#/$defs/flowNode','EMAIL','expression','PLATFORM_FORM\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','Explicit\x20notification\x20recipients\x20require\x20at\x20least\x20one\x20TO.','flowJson\x20must\x20be\x20an\x20object.','pageId','failurePolicy','CONDITION\x20node\x20requires\x20at\x20least\x20two\x20outgoing\x20edges.','configCode','Notification\x20recipient.role\x20must\x20be\x20TO,\x20CC,\x20or\x20BCC.','flowType\x20is\x20required.','waypoint\x20must\x20contain\x20numeric\x20x\x20and\x20y\x20coordinates.','Notification\x20action.url\x20is\x20required.','.timeout.interrupting','strategy','37438qFqGbP','No\x20END\x20node\x20is\x20reachable\x20from\x20START.','roleId','\x20must\x20be\x20a\x20finite\x20number.','FORM_FLOW\x20is\x20an\x20approval\x20flow\x20and\x20cannot\x20contain\x20HANDLE\x20tasks;\x20use\x20INDEPENDENT_FLOW\x20for\x20workflows.','overwrite','approvalMode','\x20must\x20be\x20a\x20finite\x20number\x20greater\x20than\x20or\x20equal\x20to\x200.','size','Flow\x20must\x20contain\x20exactly\x20one\x20START\x20node.','HANDLE\x20task\x20requires\x20exactly\x20one\x20outgoing\x20edge.','CUSTOM_PAGE','flowJson.schemaVersion','timeout.action\x20must\x20be\x20AUTO_APPROVE,\x20AUTO_REJECT,\x20or\x20EXECUTE_BFF.','.text','EXECUTE_BFF','ANY','.assignee.strategy','.configCode','A\x20default\x20flow\x20must\x20use\x20conditionType\x20ALWAYS.','REJECTED','pageId\x20must\x20be\x20a\x20non-negative\x20integer.','https://json-schema.org/draft/2020-12/schema','slice','async.enabled\x20must\x20be\x20a\x20boolean.','flowJson.pageMode','Expression\x20references\x20SCRIPT\x20resultVariable\x20','APPROVAL\x20task\x20decision\x20edges\x20must\x20not\x20be\x20default\x20flows.','.expression','formDefinitions','edge\x20source\x20is\x20required.','NOTIFICATION','get','BCC','384LJEnTq','waypoint.','Reserved\x20resultVariable:\x20','Unsupported\x20condition\x20type:\x20','flowJson.nodes.','FlowConfig\x20must\x20be\x20a\x20JSON\x20object.','.approvalMode','USER','Every\x20node\x20requires\x20position.x\x20and\x20position.y.','8476800DXSKPh','map','targetNodeId','transferCandidates','START\x20node\x20must\x20not\x20have\x20incoming\x20edges.','26sBzegH','formSchema','config','FIXED\x20assignee\x20requires\x20userIds.','hasOwnProperty','position.','approval_sys_pageId','.detailMarkdown','text','SCRIPT\x20async\x20retryCount\x20must\x20be\x20between\x201\x20and\x20','form','AUTO_APPROVE','bindDatasetCode','AUTO_REJECT','prototype','.resultVariable','.actions','Notification\x20version\x20must\x20be\x20a\x20string.','isArray','Notification\x20template.facts\x20must\x20be\x20an\x20array.','EXECUTE_BFF\x20timeout\x20must\x20not\x20interrupt\x20the\x20approval\x20task.','string','].taskMode','detailMarkdown','datasetCode','__rabetbase_local_validation__','length','title','async\x20execution\x20is\x20only\x20supported\x20by\x20SCRIPT\x20node.','name','retryInterval','#/$defs/timeAmount','url','flowDesc','nodes\x20must\x20be\x20an\x20array.','.recipients','Duplicate\x20BPMN\x20element\x20id:\x20','flowName\x20is\x20required.','flowKey','Accepted\x20as\x20legacy\x20input\x20and\x20removed\x20during\x20normalization;\x20other\x20versions\x20are\x20unsupported.','resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','END\x20node\x20must\x20not\x20have\x20outgoing\x20edges.','https://lovrabet.com/schema/rabetbase-flow-config.json','node\x20pageId\x20is\x20no\x20longer\x20supported;\x20use\x20node\x20path\x20instead.','SCRIPT','Duplicate\x20edge\x20route:\x20','.template','\x20value\x20and\x20was\x20removed\x20from\x20the\x20portable\x20FlowConfig.','variables','NaN','findIndex','.cc','HOURS','value','approval.simple-flow.v1','startPath\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','startPath\x20must\x20be\x20a\x20non-empty\x20string.','.failurePolicy','path','add','version','edge\x20must\x20be\x20an\x20object.','timeout','.scriptName','\x20was\x20empty\x20and\x20was\x20removed.','edges','sourceNodeId','.timeout','534nwwbZP','\x20users.','.position.','.version','isInteger','.value','Edge\x20source\x20node\x20not\x20found:\x20','102WDsggj','waypoints','.target','flowJson.','INDEPENDENT_FLOW\x20cannot\x20bind\x20datasetCode.','3187426NLYTeP','16305CoVPDq','waypoints\x20must\x20be\x20an\x20array.','Notification\x20text\x20contains\x20a\x20malformed\x20placeholder.','\x20actions.','.cc.readSources','position','Duplicate\x20cc\x20recipient\x20userId:\x20','13616LRHrwj','duration\x20unit\x20must\x20be\x20SECONDS,\x20MINUTES,\x20HOURS,\x20or\x20DAYS.','Notification\x20action.text\x20is\x20required.','edges\x20must\x20be\x20an\x20array.','Node\x20cannot\x20reach\x20any\x20END.','APPROVAL\x20node\x20requires\x20assignee.','warnings','defaultFlow\x20must\x20be\x20a\x20boolean.','stringify','MINUTES','approval_sys_initiatorUserId','approval_sys_operationType','legacy_field_removed','.assignee.roleId','Unsupported\x20task\x20mode:\x20','CONDITION\x20default\x20edge\x20must\x20use\x20conditionType\x20ALWAYS.','APPROVAL\x20node\x20requires\x20exactly\x20one\x20REJECTED\x20outgoing\x20edge.','.timeout.duration','recipients','timeout\x20must\x20be\x20an\x20object.','].path','call','target','timeout.interrupting\x20must\x20be\x20a\x20boolean.','timeout\x20is\x20only\x20supported\x20by\x20APPROVAL\x20node.','#/$defs/flowEdge','\x20was\x20empty\x20or\x20used\x20the\x20default\x20','.cc.recipientUserIds','DAYS','ALWAYS','Flow\x20must\x20contain\x20at\x20least\x20one\x20END\x20node.','transfer\x20candidate\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','approval_sys_processInstanceId','push','value\x20must\x20be\x20a\x20non-empty\x20string.','conditionType','Notification\x20recipients\x20must\x20be\x20an\x20array.','async','.type','.timeout.scriptName','forEach','trim','set','cc.recipientUserIds\x20must\x20be\x20a\x20non-empty\x20array.','assignee',',\x20but\x20node\x20','Unsupported\x20notification\x20placeholder:\x20','.url','APPROVAL','Unsupported\x20pageMode:\x20','toUpperCase','APPROVAL\x20node\x20outgoing\x20edges\x20must\x20use\x20APPROVED\x20or\x20REJECTED.','.async','pageMode','formPermissions','Default\x20cc\x20is\x20only\x20supported\x20by\x20APPROVAL\x20or\x20END\x20node.','type','array','SINGLE','.transferCandidates.userIds[','Unsupported\x20flowType:\x20','metadata','.async.retryInterval','.transferCandidates.strategy','CONDITION','CONDITION\x20default\x20edge\x20must\x20not\x20define\x20expression.','flowJson','unit','test','START','EXPRESSION\x20edge\x20requires\x20expression.','some','delete','.tmp','resultVariable','INDEPENDENT_FLOW\x20cannot\x20bind\x20pageId.','Duplicate\x20node\x20id:\x20','includes','boolean','6351310psiOfU','flowJson.nodes','FAIL','APPROVED','Notification\x20configCode\x20is\x20required.','\x20->\x20','.taskMode','number','CONDITION\x20non-default\x20edge\x20must\x20use\x20conditionType\x20EXPRESSION.','ALL','\x20is\x20required.','.config','Duplicate\x20value:\x20','.conditionType','recipientUserIds','.transferCandidates.userIds','defaultFlow','.source','duration\x20requires\x20value\x20and\x20unit.','action','flowJson.startPath','.path','template','.defaultFlow','Notification\x20action.url\x20must\x20use\x20http/https\x20or\x20a\x20complete\x20supported\x20placeholder.','actions','Notification\x20template.actions\x20must\x20be\x20an\x20array.','catch','PLATFORM_FORM','enabled','role','CONTINUE','startPath','30UBwtCw','\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.','^[A-Za-z_][A-Za-z0-9_]*$','.timeout.resultVariable','.cc.visible','approved','.waypoints','Notification\x20recipient\x20must\x20be\x20an\x20object.','integer','entries','transferCandidates\x20must\x20be\x20an\x20object.','schemaVersion','SINGLE\x20approval\x20supports\x20only\x20one\x20fixed\x20user.','flowName','startsWith','flowType','has','Notification\x20fact.','HANDLE\x20task\x20timeout\x20only\x20supports\x20EXECUTE_BFF.','NOTIFICATION\x20node\x20requires\x20config.','flowCode','#/$defs/userId','label','Node\x20has\x20no\x20outgoing\x20edge.','.waypoints[','Unsupported\x20notification\x20version:\x20','Notification\x20template\x20supports\x20at\x20most\x20','userIds','summary','Unsupported\x20schemaVersion:\x20','EXECUTE_BFF\x20timeout\x20requires\x20scriptName.','duration\x20value\x20must\x20be\x20a\x20positive\x20integer.','#/$defs/position','HANDLE','node\x20path\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','.pageId','cc.recipientUserIds\x20supports\x20at\x20most\x20','flowJson.edges','.position','isSafeInteger','FIXED\x20transferCandidates\x20requires\x20non-empty\x20userIds.','.timeout.action','flowJson.edges[','startPageId\x20is\x20no\x20longer\x20supported;\x20use\x20startPath\x20instead.','NOTIFICATION\x20node\x20requires\x20template.','ROLE','node\x20path\x20must\x20be\x20a\x20non-empty\x20string.','EXPRESSION','156276IRARKE','taskMode','Approval\x20flow\x20requires\x20an\x20END\x20node\x20with\x20result\x20','\x20timeout\x20must\x20interrupt\x20the\x20approval\x20task.','formData','appCode','.assignee.userIds','10pUYaub','CONDITION\x20non-default\x20edge\x20requires\x20a\x20non-empty\x20expression.','.async.enabled','keys','.role','FORM_FLOW','APPROVAL\x20node\x20requires\x20exactly\x20one\x20APPROVED\x20outgoing\x20edge.','CONDITION\x20node\x20requires\x20exactly\x20one\x20default\x20outgoing\x20edge.','event','Notification\x20template.','approval_sys_','scriptName','every','empty_metadata_removed','^[1-9][0-9]*$','pageMode\x20applies\x20only\x20to\x20INDEPENDENT_FLOW.'];a281_0x1c91=function(){return _0x48a035;};return a281_0x1c91();}function resolveEdgeEndpoint(_0x591a9a,_0x38e17c){const _0x44320c=a281_0x3406bd;if(typeof _0x591a9a==='string'&&_0x591a9a[_0x44320c(0x26a)]())return _0x591a9a['trim']();if(typeof _0x38e17c==='string'&&_0x38e17c['trim']())return _0x38e17c[_0x44320c(0x26a)]();return undefined;}function removeEmptyMetadata(_0x270fda,_0x458aae,_0x2ea90b,_0x7292e2){const _0x1093a7=a281_0x3406bd;if(Array[_0x1093a7(0x1fb)](_0x270fda)){_0x270fda[_0x1093a7(0x269)]((_0x415639,_0x24d666)=>removeEmptyMetadata(_0x415639,_0x458aae+'['+_0x24d666+']',_0x2ea90b,_0x7292e2));return;}if(!isRecord(_0x270fda))return;for(const [_0x2dcb2a,_0x5c23cf]of Object[_0x1093a7(0x14b)](_0x270fda)){const _0x4ab9c8=_0x458aae+'.'+_0x2dcb2a;if(_0x2dcb2a===_0x1093a7(0x27e)&&isEmptyJsonValue(_0x5c23cf)){delete _0x270fda[_0x2dcb2a],_0x7292e2[_0x1093a7(0x262)](_0x4ab9c8),_0x2ea90b[_0x1093a7(0x262)]({'code':_0x1093a7(0x186),'path':_0x4ab9c8,'message':_0x4ab9c8+_0x1093a7(0x229)});continue;}removeEmptyMetadata(_0x5c23cf,_0x4ab9c8,_0x2ea90b,_0x7292e2);}}function isEmptyJsonValue(_0x37f856){const _0x9f8954=a281_0x3406bd;if(_0x37f856===null||_0x37f856===undefined)return!![];if(typeof _0x37f856==='string')return _0x37f856[_0x9f8954(0x26a)]()==='';if(Array[_0x9f8954(0x1fb)](_0x37f856))return _0x37f856[_0x9f8954(0x203)]===0x0;return isRecord(_0x37f856)&&Object[_0x9f8954(0x17c)](_0x37f856)['length']===0x0;}function isRecord(_0x206d82){const _0x1c35a9=a281_0x3406bd;return typeof _0x206d82===_0x1c35a9(0x190)&&_0x206d82!==null&&!Array[_0x1c35a9(0x1fb)](_0x206d82);}function cloneJsonValue(_0x4f3362){return JSON['parse'](JSON['stringify'](_0x4f3362));}export async function readFlowConfigFile(_0x562aaf){const _0x593a54=a281_0x3406bd,_0x51896f=await readFile(resolve(_0x562aaf),_0x593a54(0x19f));return JSON['parse'](_0x51896f);}
|
|
1
|
+
function a282_0x2222(){const _0x38777f=['INDEPENDENT_FLOW\x20cannot\x20bind\x20datasetCode.','.failurePolicy','flowName','9reNkSh','FIXED\x20assignee\x20requires\x20userIds.','.expression','NOTIFICATION\x20node\x20requires\x20config.','get','conditionType','message','cc.recipientUserIds\x20supports\x20at\x20most\x20','.async','replace','.configCode','.scriptName','approval_sys_initiatorUserId','pageId\x20must\x20be\x20a\x20non-negative\x20integer.','.timeout.resultVariable','INDEPENDENT_FLOW','async\x20execution\x20is\x20only\x20supported\x20by\x20SCRIPT\x20node.','CONDITION','Duplicate\x20BPMN\x20element\x20id:\x20','ROLE\x20assignee\x20requires\x20a\x20positive\x20integer\x20roleId.','result','approval_sys_processInstanceId','A\x20default\x20flow\x20must\x20not\x20have\x20an\x20expression.','.value','parse','.recipients','.cc.recipientUserIds[','Explicit\x20notification\x20recipients\x20require\x20at\x20least\x20one\x20TO.','approvalMode','nodes\x20must\x20be\x20an\x20array.','template','value\x20must\x20be\x20a\x20non-empty\x20string.','edges','\x20facts.','EXECUTE_BFF\x20timeout\x20must\x20not\x20interrupt\x20the\x20approval\x20task.','Unsupported\x20approval\x20mode:\x20','EXECUTE_BFF','name','detailMarkdown','.approvalMode','defaultFlow','^[A-Za-z_][A-Za-z0-9_]*$','delete','recipientUserIds','pageMode','array','scriptName','FIXED','variables','Notification\x20recipients\x20must\x20be\x20an\x20array.','approval.simple-flow.v1','START\x20node\x20must\x20not\x20have\x20incoming\x20edges.','Notification\x20recipient\x20must\x20be\x20an\x20object.','flowJson\x20must\x20be\x20an\x20object.','mode','bindDatasetCode','version','HANDLE\x20task\x20requires\x20exactly\x20one\x20outgoing\x20edge.','metadata','failurePolicy','value','.url','Edge\x20target\x20node\x20not\x20found:\x20','schemaVersion','Node\x20has\x20no\x20outgoing\x20edge.','2435870eEeZXE','AUTO_APPROVE','recipients','node\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','.assignee.userIds[',',\x20but\x20node\x20','Notification\x20template.','fixed\x20assignee\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','1469615pBHkls','transferCandidates\x20currently\x20supports\x20FIXED\x20only.','.assignee.roleId','edge\x20target\x20is\x20required.','timeout.action\x20must\x20be\x20AUTO_APPROVE,\x20AUTO_REJECT,\x20or\x20EXECUTE_BFF.','6efGqov','#/$defs/position','formDefinitions','SCRIPT\x20async\x20retryCount\x20must\x20be\x20between\x201\x20and\x20','Notification\x20action.url\x20is\x20required.','templateName','.text','Notification\x20recipient.type\x20must\x20be\x20USER,\x20ROLE,\x20or\x20EMAIL.','transfer\x20candidate\x20userId\x20must\x20be\x20a\x20non-empty\x20string\x20or\x20positive\x20integer.','.assignee.strategy','number','flowJson.nodes','failurePolicy\x20must\x20be\x20CONTINUE\x20or\x20FAIL.','\x20was\x20empty\x20and\x20was\x20removed.','edge\x20source\x20is\x20required.','defaultFlow\x20must\x20be\x20a\x20boolean.','AUTO_REJECT','appCode','.timeout','\x20was\x20empty\x20or\x20used\x20the\x20default\x20','indexOf','.template','type','585957HLNoMT','Unsupported\x20schemaVersion:\x20','assignee','timeout\x20must\x20be\x20an\x20object.','.version','keys','Accepted\x20as\x20legacy\x20input\x20and\x20removed\x20during\x20normalization;\x20other\x20versions\x20are\x20unsupported.','INDEPENDENT_FLOW\x20cannot\x20bind\x20pageId.','flowJson.startPageId','utf8','add','size','START','.cc.visible','\x20->\x20','MINUTES','.timeout.duration','Notification\x20fact.','isSafeInteger','HANDLE\x20task\x20timeout\x20only\x20supports\x20EXECUTE_BFF.','Notification\x20configCode\x20must\x20be\x20a\x20fixed\x20value.','call','Duplicate\x20value:\x20','length','every','.cc.recipientUserIds','position.','.resultVariable','overwrite','forEach','PLATFORM_FORM','boolean','unit','text','sourceNodeId','APPROVAL\x20node\x20requires\x20exactly\x20one\x20APPROVED\x20outgoing\x20edge.','has','CONDITION\x20non-default\x20edge\x20must\x20use\x20conditionType\x20EXPRESSION.','includes','timeout.interrupting\x20must\x20be\x20a\x20boolean.','END','map','.target','NaN','edges\x20must\x20be\x20an\x20array.','startsWith','NOTIFICATION\x20node\x20requires\x20template.','.cc','transferCandidates','.source','toUpperCase','No\x20END\x20node\x20is\x20reachable\x20from\x20START.','PLATFORM_FORM\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','target','.tmp','flowJson.','.timeout.action','Notification\x20action.url\x20must\x20use\x20http/https\x20or\x20a\x20complete\x20supported\x20placeholder.','roleId','interrupting','.timeout.scriptName','approval_sys_operationType','flowDesc','context','Edge\x20source\x20node\x20not\x20found:\x20','CONDITION\x20non-default\x20edge\x20requires\x20a\x20non-empty\x20expression.','flowJson.startPath','pid','slice','approval_sys_datasetCode','200RqLqLm','APPROVAL','cc.recipientUserIds\x20must\x20be\x20a\x20non-empty\x20array.','edge\x20id\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','SINGLE\x20approval\x20supports\x20only\x20one\x20fixed\x20user.','.id','cc\x20recipient\x20userId\x20must\x20be\x20a\x20non-empty\x20string.','Unsupported\x20pageMode:\x20','DAYS','Duplicate\x20cc\x20recipient\x20userId:\x20','Duplicate\x20resultVariable:\x20','131540JyQQIu','approval_sys_pageId','.conditionType','.facts','timeout\x20is\x20only\x20supported\x20by\x20APPROVAL\x20node.','14765RCEHjU','flowType','filter','duration\x20value\x20must\x20be\x20a\x20positive\x20integer.','Notification\x20template\x20supports\x20at\x20most\x20','FAIL','Every\x20node\x20requires\x20a\x20non-empty\x20name.','SCRIPT','HANDLE','EXECUTE_BFF\x20timeout\x20requires\x20scriptName.','cc\x20must\x20be\x20an\x20object.','USER','\x20value\x20and\x20was\x20removed\x20from\x20the\x20portable\x20FlowConfig.','role','].taskMode','expression','url','integer','FORM_FLOW','configCode','.transferCandidates.userIds','waypoint.','SECONDS','CONDITION\x20node\x20requires\x20exactly\x20one\x20default\x20outgoing\x20edge.','node\x20path\x20must\x20be\x20a\x20non-empty\x20string.','targetNodeId','.cc.readSources','https://json-schema.org/draft/2020-12/schema','\x20must\x20be\x20a\x20finite\x20number\x20greater\x20than\x20or\x20equal\x20to\x200.','retryInterval','failurePolicy\x20must\x20be\x20a\x20string.','Unsupported\x20notification\x20version:\x20','flowKey','Notification\x20recipient.role\x20must\x20be\x20a\x20string.','FIXED\x20transferCandidates\x20requires\x20non-empty\x20userIds.','duration\x20unit\x20must\x20be\x20SECONDS,\x20MINUTES,\x20HOURS,\x20or\x20DAYS.','startPath\x20must\x20be\x20a\x20non-empty\x20string.','value\x20must\x20be\x20an\x20array.','timeout.enabled\x20must\x20be\x20a\x20boolean.','warnings','Every\x20node\x20requires\x20position.x\x20and\x20position.y.','\x20timeout\x20must\x20interrupt\x20the\x20approval\x20task.','retryCount','flowJson.nodes.','async\x20must\x20be\x20an\x20object.','config','Notification\x20recipient.role\x20must\x20be\x20TO,\x20CC,\x20or\x20BCC.','catch','object','#/$defs/userId','isInteger','SINGLE','Duplicate\x20edge\x20route:\x20','readSources','some','REJECTED','approval_sys_','ROLE','.waypoints','.role','CONDITION\x20default\x20edge\x20must\x20use\x20conditionType\x20ALWAYS.','isArray','https://lovrabet.com/schema/rabetbase-flow-config.json','transferCandidates\x20must\x20be\x20an\x20object.','empty_metadata_removed','strategy','flowName\x20is\x20required.','legacy_field_removed','datasetCode\x20must\x20be\x20a\x20string.','Node\x20has\x20no\x20incoming\x20edge.','startPageId\x20is\x20no\x20longer\x20supported;\x20use\x20startPath\x20instead.','nodes','approval_sys_dataId','pageId','ANY','path','APPROVED','NOTIFICATION','Notification\x20action.text\x20is\x20required.','FORM_FLOW\x20is\x20an\x20approval\x20flow\x20and\x20cannot\x20contain\x20HANDLE\x20tasks;\x20use\x20INDEPENDENT_FLOW\x20for\x20workflows.','action','Notification\x20fact\x20must\x20be\x20an\x20object.','actions','.async.retryInterval','stringify','timeout','prototype','userIds','Notification\x20template.facts\x20must\x20be\x20an\x20array.','test','resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.','470352ejWJvq','#/$defs/timeAmount','.path','.assignee.userIds','flowJson.schemaVersion','A\x20default\x20flow\x20must\x20use\x20conditionType\x20ALWAYS.','.type','1998096qZIBpz','taskMode','HANDLE\x20task\x20outgoing\x20edge\x20must\x20use\x20ALWAYS\x20without\x20defaultFlow\x20or\x20expression.','flowJson.edges','event','.taskMode','.transferCandidates.userIds[','flowDesc\x20must\x20be\x20a\x20string.','formSchema','formPermission','pageMode\x20applies\x20only\x20to\x20INDEPENDENT_FLOW.','APPROVAL\x20node\x20outgoing\x20edges\x20must\x20use\x20APPROVED\x20or\x20REJECTED.','Notification\x20action\x20must\x20be\x20an\x20object.','string','flowJson.pageMode','.actions','CUSTOM_PAGE','.unit','Node\x20is\x20not\x20reachable\x20from\x20START.','^[1-9][0-9]*$','.pageId','Notification\x20recipient.type\x20is\x20required.','.name','sequential','trim','\x20must\x20be\x20a\x20finite\x20number.','Flow\x20must\x20contain\x20at\x20least\x20one\x20END\x20node.','Default\x20cc\x20is\x20only\x20supported\x20by\x20APPROVAL\x20or\x20END\x20node.','.defaultFlow','startPageId','async','ALWAYS','enabled','label','.transferCandidates.strategy','push','resultVariable','hasOwnProperty','HOURS','scriptResult','startPath','edge\x20must\x20be\x20an\x20object.','\x20is\x20not\x20on\x20every\x20upstream\x20path\x20to\x20','CONDITION\x20node\x20requires\x20at\x20least\x20two\x20outgoing\x20edges.','findIndex','Notification\x20template.actions\x20must\x20be\x20an\x20array.','.timeout.interrupting','position','.position.','.\x20This\x20CLI\x20supports\x20only\x20','startPath\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.','waypoints','flowJson','.async.enabled','datasetCode','\x20actions.','isFinite','.detailMarkdown','source','ALL','EXPRESSION','Unsupported\x20condition\x20type:\x20','flowJson.nodes[','set','.waypoints[','entries'];a282_0x2222=function(){return _0x38777f;};return a282_0x2222();}const a282_0x44ca9e=a282_0x58dc;(function(_0x1fbedd,_0x328008){const _0x54e919=a282_0x58dc,_0x57b1c2=_0x1fbedd();while(!![]){try{const _0x402ad2=-parseInt(_0x54e919(0x1b5))/0x1+parseInt(_0x54e919(0xb3))/0x2+parseInt(_0x54e919(0x164))/0x3+parseInt(_0x54e919(0x1aa))/0x4*(parseInt(_0x54e919(0x1ba))/0x5)+-parseInt(_0x54e919(0x14d))/0x6*(-parseInt(_0x54e919(0x148))/0x7)+-parseInt(_0x54e919(0xba))/0x8*(parseInt(_0x54e919(0xff))/0x9)+-parseInt(_0x54e919(0x140))/0xa;if(_0x402ad2===_0x328008)break;else _0x57b1c2['push'](_0x57b1c2['shift']());}catch(_0x19acf4){_0x57b1c2['push'](_0x57b1c2['shift']());}}}(a282_0x2222,0x27d81));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':a282_0x44ca9e(0x1d5),'$id':a282_0x44ca9e(0x1f8),'title':'Rabetbase\x20FlowConfig','type':a282_0x44ca9e(0x1ea),'required':[a282_0x44ca9e(0xfe),a282_0x44ca9e(0x1bb),'flowJson'],'$defs':{'userId':{'anyOf':[{'type':a282_0x44ca9e(0xc7),'minLength':0x1},{'type':a282_0x44ca9e(0x1cb),'minimum':0x1}]},'position':{'type':'object','required':['x','y'],'properties':{'x':{'type':a282_0x44ca9e(0x157),'minimum':0x0},'y':{'type':a282_0x44ca9e(0x157),'minimum':0x0}},'additionalProperties':!![]},'timeAmount':{'type':'object','required':[a282_0x44ca9e(0x13b),'unit'],'properties':{'value':{'type':a282_0x44ca9e(0x1cb),'minimum':0x1},'unit':{'enum':[a282_0x44ca9e(0x1d0),a282_0x44ca9e(0x173),a282_0x44ca9e(0xe0),a282_0x44ca9e(0x1b2)]}},'additionalProperties':!![]},'flowNode':{'type':a282_0x44ca9e(0x1ea),'required':['id',a282_0x44ca9e(0x163),'name',a282_0x44ca9e(0xe9)],'properties':{'id':{'type':a282_0x44ca9e(0xc7),'pattern':a282_0x44ca9e(0x128)},'type':{'enum':[a282_0x44ca9e(0x170),a282_0x44ca9e(0x18c),'APPROVAL',a282_0x44ca9e(0x110),a282_0x44ca9e(0x1c1),'NOTIFICATION']},'name':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'path':{'type':'string','minLength':0x1},'position':{'$ref':a282_0x44ca9e(0x14e)},'approvalMode':{'enum':[a282_0x44ca9e(0x1ed),a282_0x44ca9e(0xf5),a282_0x44ca9e(0xa2)]},'taskMode':{'enum':[a282_0x44ca9e(0x1ab),a282_0x44ca9e(0x1c2)]},'assignee':{'type':a282_0x44ca9e(0x1ea),'required':[a282_0x44ca9e(0x1fb)],'properties':{'strategy':{'enum':[a282_0x44ca9e(0x12e),a282_0x44ca9e(0x1f3)]},'userIds':{'type':a282_0x44ca9e(0x12c),'minItems':0x1,'items':{'$ref':a282_0x44ca9e(0x1eb)}},'roleId':{'anyOf':[{'type':a282_0x44ca9e(0x1cb),'minimum':0x1},{'type':a282_0x44ca9e(0xc7),'pattern':a282_0x44ca9e(0xcd)}]}},'additionalProperties':!![]},'transferCandidates':{'type':'object','required':[a282_0x44ca9e(0x1fb),a282_0x44ca9e(0xaf)],'properties':{'strategy':{'const':a282_0x44ca9e(0x12e)},'userIds':{'type':a282_0x44ca9e(0x12c),'minItems':0x1,'items':{'$ref':a282_0x44ca9e(0x1eb)}}},'additionalProperties':!![]},'sequential':{'type':'boolean'},'result':{'enum':[a282_0x44ca9e(0xa4),a282_0x44ca9e(0x1f1)]},'scriptName':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'resultVariable':{'type':a282_0x44ca9e(0xc7),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'},'async':{'type':'object','properties':{'enabled':{'type':a282_0x44ca9e(0x183)},'retryCount':{'type':a282_0x44ca9e(0x1cb),'minimum':0x1,'maximum':0xa},'retryInterval':{'$ref':a282_0x44ca9e(0xb4)}},'additionalProperties':!![]},'timeout':{'type':'object','properties':{'enabled':{'type':a282_0x44ca9e(0x183)},'duration':{'$ref':a282_0x44ca9e(0xb4)},'action':{'enum':[a282_0x44ca9e(0x141),a282_0x44ca9e(0x15d),'EXECUTE_BFF']},'interrupting':{'type':a282_0x44ca9e(0x183)},'scriptName':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'resultVariable':{'type':a282_0x44ca9e(0xc7),'pattern':'^[A-Za-z_][A-Za-z0-9_]*$'}},'additionalProperties':!![]},'cc':{'type':a282_0x44ca9e(0x1ea),'required':[a282_0x44ca9e(0x12a)],'properties':{'recipientUserIds':{'type':a282_0x44ca9e(0x12c),'minItems':0x1,'maxItems':0x64,'uniqueItems':!![],'items':{'type':a282_0x44ca9e(0xc7),'minLength':0x1}},'visible':{'type':a282_0x44ca9e(0x12c),'uniqueItems':!![],'items':{'type':a282_0x44ca9e(0xc7),'minLength':0x1}},'readSources':![]},'additionalProperties':!![]},'config':{'type':'object','required':['configCode','template'],'properties':{'version':{'enum':['v1']},'configCode':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'failurePolicy':{'enum':['CONTINUE',a282_0x44ca9e(0x1bf)]},'template':{'type':a282_0x44ca9e(0x1ea),'required':['title','summary'],'properties':{'title':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'summary':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'detailMarkdown':{'type':a282_0x44ca9e(0xc7)},'facts':{'type':'array','maxItems':0x8,'items':{'type':a282_0x44ca9e(0x1ea),'required':[a282_0x44ca9e(0xdb),a282_0x44ca9e(0x13b)],'properties':{'label':{'type':'string','minLength':0x1},'value':{'type':a282_0x44ca9e(0xc7),'minLength':0x1}},'additionalProperties':!![]}},'actions':{'type':a282_0x44ca9e(0x12c),'maxItems':0x2,'items':{'type':'object','required':[a282_0x44ca9e(0x185),a282_0x44ca9e(0x1ca)],'properties':{'text':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'url':{'type':a282_0x44ca9e(0xc7),'minLength':0x1}},'additionalProperties':!![]}}},'additionalProperties':!![]},'recipients':{'type':a282_0x44ca9e(0x12c),'items':{'type':'object','required':[a282_0x44ca9e(0x163),a282_0x44ca9e(0x13b)],'properties':{'type':{'enum':['USER',a282_0x44ca9e(0x1f3),'EMAIL']},'value':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'role':{'enum':['TO','CC','BCC']}},'additionalProperties':!![]}}},'additionalProperties':!![]},'form':![],'formPermission':![]},'additionalProperties':!![]},'flowEdge':{'type':a282_0x44ca9e(0x1ea),'properties':{'id':{'type':a282_0x44ca9e(0xc7),'pattern':a282_0x44ca9e(0x128)},'source':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'target':{'type':'string','minLength':0x1},'sourceNodeId':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'targetNodeId':{'type':'string','minLength':0x1},'conditionType':{'enum':[a282_0x44ca9e(0xd9),a282_0x44ca9e(0xa4),a282_0x44ca9e(0x1f1),a282_0x44ca9e(0xf6)]},'expression':{'type':a282_0x44ca9e(0xc7)},'defaultFlow':{'type':'boolean'},'name':{'type':a282_0x44ca9e(0xc7)},'waypoints':{'type':a282_0x44ca9e(0x12c),'items':{'$ref':a282_0x44ca9e(0x14e)}}},'allOf':[{'anyOf':[{'required':[a282_0x44ca9e(0xf4)]},{'required':[a282_0x44ca9e(0x186)]}]},{'anyOf':[{'required':['target']},{'required':[a282_0x44ca9e(0x1d3)]}]}],'additionalProperties':!![]}},'properties':{'id':![],'appCode':![],'flowName':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'flowDesc':{'type':a282_0x44ca9e(0xc7)},'flowType':{'enum':[a282_0x44ca9e(0x1cc),a282_0x44ca9e(0x10e)]},'datasetCode':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'pageId':{'type':a282_0x44ca9e(0x1cb)},'templateName':![],'flowJson':{'type':'object','required':['nodes','edges'],'properties':{'flowKey':![],'flowCode':![],'flowName':![],'bindDatasetCode':![],'datasetCode':![],'appCode':![],'pageId':![],'templateName':![],'schemaVersion':{'type':a282_0x44ca9e(0xc7),'const':'approval.simple-flow.v1','description':a282_0x44ca9e(0x16a)},'formSchema':![],'formDefinitions':![],'formPermissions':![],'pageMode':{'const':a282_0x44ca9e(0xca)},'startPageId':![],'startPath':{'type':a282_0x44ca9e(0xc7),'minLength':0x1},'nodes':{'type':a282_0x44ca9e(0x12c),'minItems':0x1,'items':{'$ref':'#/$defs/flowNode'}},'edges':{'type':a282_0x44ca9e(0x12c),'minItems':0x1,'items':{'$ref':'#/$defs/flowEdge'}}},'additionalProperties':!![]}},'additionalProperties':!![]};const REMOVED_FLOW_JSON_FIELDS=['flowKey','flowCode',a282_0x44ca9e(0xfe),a282_0x44ca9e(0x136),a282_0x44ca9e(0xf0),a282_0x44ca9e(0x15e),'pageId','templateName'],REMOVED_ROOT_FIELDS=['id',a282_0x44ca9e(0x15e),a282_0x44ca9e(0x152)],DEFAULT_FLOW_SCHEMA_VERSION=a282_0x44ca9e(0x131),NODE_TYPES=new Set([a282_0x44ca9e(0x170),a282_0x44ca9e(0x18c),a282_0x44ca9e(0x1ab),'CONDITION',a282_0x44ca9e(0x1c1),a282_0x44ca9e(0xa5)]),CONDITION_TYPES=new Set(['ALWAYS',a282_0x44ca9e(0xa4),a282_0x44ca9e(0x1f1),a282_0x44ca9e(0xf6)]),APPROVAL_MODES=new Set([a282_0x44ca9e(0x1ed),'ALL',a282_0x44ca9e(0xa2)]),APPROVAL_TASK_MODES=new Set([a282_0x44ca9e(0x1ab),'HANDLE']),FLOW_TIME_UNITS=new Set(['SECONDS',a282_0x44ca9e(0x173),'HOURS',a282_0x44ca9e(0x1b2)]),APPROVAL_TIMEOUT_ACTIONS=new Set([a282_0x44ca9e(0x141),'AUTO_REJECT',a282_0x44ca9e(0x123)]),FLOW_TYPES=new Set([a282_0x44ca9e(0x1cc),a282_0x44ca9e(0x10e)]),FLOW_PAGE_MODES=new Set([a282_0x44ca9e(0xca),a282_0x44ca9e(0x182)]),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(['CONTINUE',a282_0x44ca9e(0x1bf)]),NOTIFICATION_RECIPIENT_TYPES=new Set([a282_0x44ca9e(0x1c5),a282_0x44ca9e(0x1f3),'EMAIL']),NOTIFICATION_RECIPIENT_ROLES=new Set(['TO','CC','BCC']),MAX_NOTIFICATION_FACTS=0x8,MAX_NOTIFICATION_ACTIONS=0x2,MAX_ASYNC_RETRY_COUNT=0xa,MAX_CC_RECIPIENTS=0x64,DEFAULT_SCRIPT_RESULT_VARIABLE=a282_0x44ca9e(0xe1),UNSUPPORTED_FORM_MESSAGE='Custom\x20form\x20configuration\x20is\x20not\x20supported\x20by\x20this\x20rabetbase\x20version;\x20use\x20a\x20business\x20custom\x20page\x20instead.',UNSUPPORTED_PLATFORM_FORM_MESSAGE=a282_0x44ca9e(0x198),RESERVED_RESULT_VARIABLES=new Set(['formData','approved','approval_sys_appCode',a282_0x44ca9e(0x114),a282_0x44ca9e(0x10b),'approval_sys_initiatorUsername',a282_0x44ca9e(0x1a9),a282_0x44ca9e(0x1b6),a282_0x44ca9e(0x1a1),a282_0x44ca9e(0xa0)]);export function normalizeFlowConfig(_0x1a6b2b){const _0x32dd02=a282_0x44ca9e;if(!isRecord(_0x1a6b2b))throw new TypeError('FlowConfig\x20must\x20be\x20a\x20JSON\x20object.');const _0xa83fea=cloneJsonValue(_0x1a6b2b),_0x5b0cb0=_0xa83fea[_0x32dd02(0xee)],_0x546436=isRecord(_0x5b0cb0)?cloneJsonValue(_0x5b0cb0):{},_0x350418=[],_0x8afb47=[];for(const _0x47ff01 of REMOVED_ROOT_FIELDS){if(!Object['prototype'][_0x32dd02(0xdf)][_0x32dd02(0x179)](_0xa83fea,_0x47ff01))continue;delete _0xa83fea[_0x47ff01],_0x8afb47[_0x32dd02(0xdd)](_0x47ff01),_0x350418[_0x32dd02(0xdd)]({'code':_0x32dd02(0x1fd),'path':_0x47ff01,'message':_0x47ff01+'\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.'});}for(const _0x299d14 of REMOVED_FLOW_JSON_FIELDS){if(!Object['prototype']['hasOwnProperty']['call'](_0x546436,_0x299d14))continue;const _0x4aa000=_0x32dd02(0x19b)+_0x299d14;delete _0x546436[_0x299d14],_0x8afb47[_0x32dd02(0xdd)](_0x4aa000),_0x350418[_0x32dd02(0xdd)]({'code':'legacy_field_removed','path':_0x4aa000,'message':_0x4aa000+'\x20is\x20not\x20part\x20of\x20the\x20portable\x20FlowConfig\x20and\x20was\x20removed.'});}if(Object[_0x32dd02(0xae)]['hasOwnProperty']['call'](_0x546436,'schemaVersion')){const _0x41d63a=_0x546436['schemaVersion'],_0x3b943b=typeof _0x41d63a===_0x32dd02(0xc7)?_0x41d63a[_0x32dd02(0xd2)]():_0x41d63a;if(isEmptyJsonValue(_0x41d63a)||_0x3b943b===DEFAULT_FLOW_SCHEMA_VERSION){const _0x448990=_0x32dd02(0xb7);delete _0x546436[_0x32dd02(0x13e)],_0x8afb47['push'](_0x448990),_0x350418[_0x32dd02(0xdd)]({'code':_0x32dd02(0x1fd),'path':_0x448990,'message':_0x448990+_0x32dd02(0x160)+DEFAULT_FLOW_SCHEMA_VERSION+_0x32dd02(0x1c6)});}}removeEmptyMetadata(_0x546436,_0x32dd02(0xee),_0x350418,_0x8afb47);_0xa83fea['flowType']===_0x32dd02(0x10e)&&!Object['prototype'][_0x32dd02(0xdf)]['call'](_0x546436,'pageMode')&&(_0x546436[_0x32dd02(0x12b)]=_0x32dd02(0xca));_0xa83fea[_0x32dd02(0xee)]=_0x546436;if(typeof _0xa83fea[_0x32dd02(0xfe)]==='string')_0xa83fea[_0x32dd02(0xfe)]=_0xa83fea[_0x32dd02(0xfe)][_0x32dd02(0xd2)]();return{'config':_0xa83fea,'warnings':_0x350418,'removedPaths':_0x8afb47};}export function validateFlowConfig(_0x34c344){const _0x204d9c=a282_0x44ca9e;let _0x27d439;try{_0x27d439=normalizeFlowConfig(_0x34c344);}catch(_0x36a913){const _0x5d0cd0=_0x36a913 instanceof Error?_0x36a913[_0x204d9c(0x105)]:String(_0x36a913),_0x1ed424={'flowJson':{}};return{'valid':![],'errors':[{'path':'$','message':_0x5d0cd0}],'warnings':[],'normalized':_0x1ed424,'validationConfig':_0x1ed424};}const _0x12fbbb=_0x27d439[_0x204d9c(0x1e7)],_0x162cd3=cloneJsonValue(_0x12fbbb),_0x481a46=_0x162cd3[_0x204d9c(0xee)];_0x481a46[_0x204d9c(0x1da)]='__rabetbase_local_validation__',_0x481a46['flowName']=_0x12fbbb[_0x204d9c(0xfe)];typeof _0x12fbbb[_0x204d9c(0xf0)]===_0x204d9c(0xc7)&&_0x12fbbb[_0x204d9c(0xf0)][_0x204d9c(0xd2)]()&&(_0x481a46[_0x204d9c(0x136)]=_0x12fbbb[_0x204d9c(0xf0)][_0x204d9c(0xd2)]());const _0x2a1f3c=[];return validateOuterMetadata(_0x12fbbb,_0x2a1f3c),validateFlowClassification(_0x12fbbb,_0x2a1f3c),validateGraph(_0x12fbbb[_0x204d9c(0xee)],_0x2a1f3c),{'valid':_0x2a1f3c[_0x204d9c(0x17b)]===0x0,'errors':_0x2a1f3c,'warnings':_0x27d439[_0x204d9c(0x1e1)],'normalized':_0x12fbbb,'validationConfig':_0x162cd3};}function validateFlowClassification(_0x46f08b,_0x1e4372){const _0x19d50c=a282_0x44ca9e;if(!isRecord(_0x46f08b[_0x19d50c(0xee)]))return;const _0x514561=_0x46f08b[_0x19d50c(0x1bb)],_0x2b04f2=_0x46f08b[_0x19d50c(0xee)][_0x19d50c(0x12b)];_0x2b04f2!==undefined&&(typeof _0x2b04f2!==_0x19d50c(0xc7)||!FLOW_PAGE_MODES[_0x19d50c(0x188)](_0x2b04f2))&&_0x1e4372[_0x19d50c(0xdd)]({'path':_0x19d50c(0xc8),'message':_0x19d50c(0x1b1)+String(_0x2b04f2)+'.'});_0x514561===_0x19d50c(0x1cc)&&_0x2b04f2!==undefined&&_0x1e4372[_0x19d50c(0xdd)]({'path':'flowJson.pageMode','message':_0x19d50c(0xc4)});_0x514561===_0x19d50c(0x10e)&&_0x2b04f2===_0x19d50c(0x182)&&_0x1e4372[_0x19d50c(0xdd)]({'path':'flowJson.pageMode','message':UNSUPPORTED_PLATFORM_FORM_MESSAGE});(_0x514561===_0x19d50c(0x1cc)||_0x514561===_0x19d50c(0x10e))&&validateCustomPageNavigation(_0x46f08b,_0x514561,_0x2b04f2,_0x1e4372);if(_0x514561!==_0x19d50c(0x1cc)||!Array['isArray'](_0x46f08b['flowJson']['nodes']))return;_0x46f08b[_0x19d50c(0xee)][_0x19d50c(0x9f)][_0x19d50c(0x181)]((_0xcfa2c9,_0x48dac0)=>{const _0x3b537b=_0x19d50c;isRecord(_0xcfa2c9)&&_0xcfa2c9['type']===_0x3b537b(0x1ab)&&_0xcfa2c9[_0x3b537b(0xbb)]===_0x3b537b(0x1c2)&&_0x1e4372[_0x3b537b(0xdd)]({'path':'flowJson.nodes['+_0x48dac0+_0x3b537b(0x1c8),'message':_0x3b537b(0xa7)});});}function validateCustomPageNavigation(_0x344448,_0x391fb4,_0x32c1a8,_0x1e418c){const _0x3b02ea=a282_0x44ca9e,_0xf4117=_0x344448[_0x3b02ea(0xee)][_0x3b02ea(0xd7)];_0xf4117!==undefined&&_0x1e418c[_0x3b02ea(0xdd)]({'path':_0x3b02ea(0x16c),'message':_0x3b02ea(0x9e)});const _0x47dabe=_0x344448[_0x3b02ea(0xee)][_0x3b02ea(0xe2)];_0x47dabe!==undefined&&(typeof _0x47dabe!==_0x3b02ea(0xc7)||_0x47dabe[_0x3b02ea(0xd2)]()==='')&&_0x1e418c['push']({'path':'flowJson.startPath','message':_0x3b02ea(0x1de)});const _0x32fcea=Array[_0x3b02ea(0x1f7)](_0x344448['flowJson'][_0x3b02ea(0x9f)])?_0x344448[_0x3b02ea(0xee)][_0x3b02ea(0x9f)][_0x3b02ea(0x18d)]((_0xb0bc1a,_0x9fd931)=>({'node':_0xb0bc1a,'index':_0x9fd931}))[_0x3b02ea(0x1bc)](({node:_0x11b98b})=>isRecord(_0x11b98b)&&_0x11b98b[_0x3b02ea(0xa3)]!==undefined):[],_0x48cae3=_0x47dabe!==undefined||_0x32fcea[_0x3b02ea(0x17b)]>0x0,_0x6c29d8=_0x32c1a8===undefined&&_0x391fb4===_0x3b02ea(0x10e)?'CUSTOM_PAGE':_0x32c1a8;_0x48cae3&&(_0x391fb4!==_0x3b02ea(0x10e)||_0x6c29d8!==_0x3b02ea(0xca))&&(_0x47dabe!==undefined&&_0x1e418c[_0x3b02ea(0xdd)]({'path':_0x3b02ea(0x1a6),'message':_0x3b02ea(0xec)}),_0x32fcea['forEach'](({index:_0x5f0851})=>{const _0x550511=_0x3b02ea;_0x1e418c['push']({'path':_0x550511(0xf8)+_0x5f0851+'].path','message':'node\x20path\x20applies\x20only\x20to\x20INDEPENDENT_FLOW\x20with\x20CUSTOM_PAGE.'});}));}export async function writeNormalizedFlowConfig(_0x4efa75,_0x50a932,_0x43ff06={}){const _0x240f0b=a282_0x44ca9e,_0x32ee04=resolve(_0x4efa75),_0x2c0a11=_0x32ee04+'.'+process[_0x240f0b(0x1a7)]+'.'+randomUUID()+_0x240f0b(0x19a),_0x300b5d=JSON[_0x240f0b(0xac)](_0x50a932,null,0x2)+'\x0a';let _0x5b1f90;try{try{_0x5b1f90=(await stat(_0x32ee04))[_0x240f0b(0x135)]&0x1ff;}catch{_0x5b1f90=undefined;}await writeFile(_0x2c0a11,_0x300b5d,{'encoding':_0x240f0b(0x16d),'flag':'wx','mode':_0x5b1f90??0x1a4});if(_0x5b1f90!==undefined)await chmod(_0x2c0a11,_0x5b1f90);_0x43ff06[_0x240f0b(0x180)]===![]?(await link(_0x2c0a11,_0x32ee04),await unlink(_0x2c0a11)):await rename(_0x2c0a11,_0x32ee04);}finally{await unlink(_0x2c0a11)[_0x240f0b(0x1e9)](()=>undefined);}}function validateOuterMetadata(_0x183a88,_0x23b78f){const _0x4d360f=a282_0x44ca9e;(typeof _0x183a88[_0x4d360f(0xfe)]!==_0x4d360f(0xc7)||_0x183a88[_0x4d360f(0xfe)][_0x4d360f(0xd2)]()==='')&&_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0xfe),'message':_0x4d360f(0x1fc)});_0x183a88[_0x4d360f(0x1a2)]!==undefined&&typeof _0x183a88['flowDesc']!==_0x4d360f(0xc7)&&_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0x1a2),'message':_0x4d360f(0xc1)});if(_0x183a88['flowType']===undefined||_0x183a88[_0x4d360f(0x1bb)]===null)_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0x1bb),'message':'flowType\x20is\x20required.'});else(typeof _0x183a88[_0x4d360f(0x1bb)]!==_0x4d360f(0xc7)||!FLOW_TYPES[_0x4d360f(0x188)](_0x183a88[_0x4d360f(0x1bb)]))&&_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0x1bb),'message':'Unsupported\x20flowType:\x20'+String(_0x183a88[_0x4d360f(0x1bb)])+'.'});_0x183a88[_0x4d360f(0xf0)]!==undefined&&typeof _0x183a88['datasetCode']!==_0x4d360f(0xc7)&&_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0xf0),'message':_0x4d360f(0x9c)}),_0x183a88[_0x4d360f(0xa1)]!==undefined&&(!Number[_0x4d360f(0x1ec)](_0x183a88[_0x4d360f(0xa1)])||_0x183a88['pageId']<0x0)&&_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0xa1),'message':_0x4d360f(0x10c)}),_0x183a88[_0x4d360f(0x1bb)]==='INDEPENDENT_FLOW'&&_0x183a88[_0x4d360f(0xf0)]!==undefined&&_0x23b78f['push']({'path':_0x4d360f(0xf0),'message':_0x4d360f(0xfc)}),_0x183a88[_0x4d360f(0x1bb)]===_0x4d360f(0x10e)&&_0x183a88[_0x4d360f(0xa1)]!==undefined&&_0x23b78f[_0x4d360f(0xdd)]({'path':_0x4d360f(0xa1),'message':_0x4d360f(0x16b)});}function validateGraph(_0x39ff9b,_0x6d3cbb){const _0x2f0cfd=a282_0x44ca9e;if(!isRecord(_0x39ff9b)){_0x6d3cbb[_0x2f0cfd(0xdd)]({'path':_0x2f0cfd(0xee),'message':_0x2f0cfd(0x134)});return;}!Array[_0x2f0cfd(0x1f7)](_0x39ff9b[_0x2f0cfd(0x9f)])&&_0x6d3cbb['push']({'path':_0x2f0cfd(0x158),'message':_0x2f0cfd(0x11c)});!Array['isArray'](_0x39ff9b[_0x2f0cfd(0x11f)])&&_0x6d3cbb[_0x2f0cfd(0xdd)]({'path':_0x2f0cfd(0xbd),'message':_0x2f0cfd(0x190)});Object[_0x2f0cfd(0xae)][_0x2f0cfd(0xdf)][_0x2f0cfd(0x179)](_0x39ff9b,_0x2f0cfd(0x13e))&&_0x6d3cbb[_0x2f0cfd(0xdd)]({'path':_0x2f0cfd(0xb7),'message':_0x2f0cfd(0x165)+String(_0x39ff9b[_0x2f0cfd(0x13e)])+_0x2f0cfd(0xeb)+DEFAULT_FLOW_SCHEMA_VERSION+'.'});for(const _0x594c13 of[_0x2f0cfd(0xc2),_0x2f0cfd(0x14f),'formPermissions']){Object[_0x2f0cfd(0xae)][_0x2f0cfd(0xdf)][_0x2f0cfd(0x179)](_0x39ff9b,_0x594c13)&&_0x6d3cbb[_0x2f0cfd(0xdd)]({'path':'flowJson.'+_0x594c13,'message':UNSUPPORTED_FORM_MESSAGE});}if(!Array[_0x2f0cfd(0x1f7)](_0x39ff9b['nodes'])||!Array[_0x2f0cfd(0x1f7)](_0x39ff9b[_0x2f0cfd(0x11f)]))return;const _0xe9542a=new Map(),_0x1a4671=[],_0xd48d93=[],_0x44d2f9=new Map(),_0x25b2c1=new Map(),_0x4a7eae=new Set();let _0x3476b5=0x0;_0x39ff9b[_0x2f0cfd(0x9f)][_0x2f0cfd(0x181)]((_0x190fd4,_0xbfb73a)=>{const _0xf472da=_0x2f0cfd,_0x3c9e14=_0xf472da(0xf8)+_0xbfb73a+']';if(!isRecord(_0x190fd4)){_0x6d3cbb['push']({'path':_0x3c9e14,'message':'node\x20must\x20be\x20an\x20object.'});return;}const _0x3d82a7=_0x190fd4;if(typeof _0x3d82a7['id']!=='string'||!BPMN_ID_PATTERN[_0xf472da(0xb1)](_0x3d82a7['id']))_0x6d3cbb[_0xf472da(0xdd)]({'path':_0x3c9e14+_0xf472da(0x1af),'message':_0xf472da(0x143)});else _0xe9542a[_0xf472da(0x188)](_0x3d82a7['id'])?_0x6d3cbb[_0xf472da(0xdd)]({'path':_0x3c9e14+_0xf472da(0x1af),'message':'Duplicate\x20node\x20id:\x20'+_0x3d82a7['id']+'.'}):(_0xe9542a[_0xf472da(0xf9)](_0x3d82a7['id'],_0x3d82a7),_0x4a7eae['add'](_0x3d82a7['id']));if(!NODE_TYPES['has'](_0x3d82a7['type']))_0x6d3cbb[_0xf472da(0xdd)]({'path':_0x3c9e14+'.type','message':'Unsupported\x20node\x20type:\x20'+String(_0x3d82a7[_0xf472da(0x163)])+'.'});else{if(_0x3d82a7[_0xf472da(0x163)]==='START')_0x1a4671[_0xf472da(0xdd)](_0x3d82a7['id']);else _0x3d82a7['type']===_0xf472da(0x18c)&&_0xd48d93[_0xf472da(0xdd)](_0x3d82a7['id']);}_0x3d82a7[_0xf472da(0x163)]===_0xf472da(0x1ab)&&(_0x3d82a7['taskMode']===undefined||_0x3d82a7[_0xf472da(0xbb)]==='APPROVAL')&&(_0x3476b5+=0x1);validateNode(_0x3d82a7,_0x3c9e14,_0x6d3cbb);if(_0x3d82a7[_0xf472da(0x163)]==='SCRIPT'){const _0x36d259=resolveEffectiveResultVariable(_0x3d82a7[_0xf472da(0xde)],![]);_0x36d259&&(registerResultVariableOwner(_0x25b2c1,_0x36d259,_0x3d82a7['id'],_0x6d3cbb),!_0x44d2f9[_0xf472da(0x188)](_0x36d259)&&_0x44d2f9[_0xf472da(0xf9)](_0x36d259,_0x3d82a7['id']));}if(_0x3d82a7[_0xf472da(0x163)]==='APPROVAL'&&isRecord(_0x3d82a7[_0xf472da(0xad)])&&_0x3d82a7[_0xf472da(0xad)][_0xf472da(0xda)]===!![]&&_0x3d82a7[_0xf472da(0xad)][_0xf472da(0xa8)]===_0xf472da(0x123)){const _0x5e0d94=resolveEffectiveResultVariable(_0x3d82a7[_0xf472da(0xad)]['resultVariable'],!![]);_0x5e0d94&®isterResultVariableOwner(_0x25b2c1,_0x5e0d94,_0x3d82a7['id']+_0xf472da(0x15f),_0x6d3cbb);}});_0x1a4671[_0x2f0cfd(0x17b)]!==0x1&&_0x6d3cbb[_0x2f0cfd(0xdd)]({'path':_0x2f0cfd(0x158),'message':'Flow\x20must\x20contain\x20exactly\x20one\x20START\x20node.'});_0xd48d93[_0x2f0cfd(0x17b)]===0x0&&_0x6d3cbb[_0x2f0cfd(0xdd)]({'path':'flowJson.nodes','message':_0x2f0cfd(0xd4)});const _0x226ddb=new Map(),_0xb5e6dc=new Map(),_0x5cfebb=new Map(),_0x111bf1=new Set();_0x39ff9b[_0x2f0cfd(0x11f)]['forEach']((_0x57211f,_0xfe5934)=>{const _0x154c03=_0x2f0cfd,_0x249c61='flowJson.edges['+_0xfe5934+']';if(!isRecord(_0x57211f)){_0x6d3cbb[_0x154c03(0xdd)]({'path':_0x249c61,'message':_0x154c03(0xe3)});return;}const _0xc34e99=_0x57211f;_0x5cfebb[_0x154c03(0xf9)](_0xc34e99,_0x249c61);const _0x509e11=resolveEdgeEndpoint(_0xc34e99[_0x154c03(0xf4)],_0xc34e99[_0x154c03(0x186)]),_0x234a2a=resolveEdgeEndpoint(_0xc34e99[_0x154c03(0x199)],_0xc34e99[_0x154c03(0x1d3)]);if(!_0x509e11)_0x6d3cbb[_0x154c03(0xdd)]({'path':_0x249c61+_0x154c03(0x195),'message':_0x154c03(0x15b)});if(!_0x234a2a)_0x6d3cbb[_0x154c03(0xdd)]({'path':_0x249c61+'.target','message':_0x154c03(0x14b)});_0x509e11&&!_0xe9542a[_0x154c03(0x188)](_0x509e11)&&_0x6d3cbb[_0x154c03(0xdd)]({'path':_0x249c61+_0x154c03(0x195),'message':_0x154c03(0x1a4)+_0x509e11+'.'});_0x234a2a&&!_0xe9542a[_0x154c03(0x188)](_0x234a2a)&&_0x6d3cbb['push']({'path':_0x249c61+_0x154c03(0x18e),'message':_0x154c03(0x13d)+_0x234a2a+'.'});if(_0xc34e99['id']!==undefined){if(typeof _0xc34e99['id']!==_0x154c03(0xc7)||!BPMN_ID_PATTERN[_0x154c03(0xb1)](_0xc34e99['id']))_0x6d3cbb[_0x154c03(0xdd)]({'path':_0x249c61+_0x154c03(0x1af),'message':_0x154c03(0x1ad)});else{if(_0x4a7eae[_0x154c03(0x188)](_0xc34e99['id']))_0x6d3cbb['push']({'path':_0x249c61+_0x154c03(0x1af),'message':_0x154c03(0x111)+_0xc34e99['id']+'.'});else!_0x4a7eae[_0x154c03(0x188)](_0xc34e99['id'])&&_0x4a7eae[_0x154c03(0x16e)](_0xc34e99['id']);}}if(_0x509e11&&_0x234a2a){const _0x1e0dca=_0x509e11+'\x00'+_0x234a2a+'\x00'+(_0xc34e99[_0x154c03(0x104)]??_0x154c03(0xd9));_0x111bf1[_0x154c03(0x188)](_0x1e0dca)?_0x6d3cbb[_0x154c03(0xdd)]({'path':_0x249c61,'message':_0x154c03(0x1ee)+_0x509e11+_0x154c03(0x172)+_0x234a2a+'\x20('+(_0xc34e99['conditionType']??'ALWAYS')+').'}):_0x111bf1['add'](_0x1e0dca);}validateEdge(_0xc34e99,_0x249c61,_0x6d3cbb),_0x509e11&&_0x234a2a&&(_0x226ddb['get'](_0x509e11)?.[_0x154c03(0xdd)](_0xc34e99)??_0x226ddb[_0x154c03(0xf9)](_0x509e11,[_0xc34e99]),_0xb5e6dc[_0x154c03(0x103)](_0x234a2a)?.['push'](_0xc34e99)??_0xb5e6dc[_0x154c03(0xf9)](_0x234a2a,[_0xc34e99]));});if(_0x1a4671[_0x2f0cfd(0x17b)]!==0x1)return;validateGraphShape(_0xe9542a,_0x1a4671[0x0],_0xd48d93,_0x226ddb,_0xb5e6dc,_0x5cfebb,_0x6d3cbb),validateScriptResultReferences(_0xe9542a,_0x1a4671[0x0],_0x226ddb,_0xb5e6dc,_0x5cfebb,_0x44d2f9,_0x6d3cbb),validateApprovalResults(_0xe9542a,_0x3476b5,_0xd48d93,_0x6d3cbb);}function validateNode(_0x639431,_0xc67069,_0xc908b7){const _0x4ce6e1=a282_0x44ca9e;for(const _0x1869e8 of['form',_0x4ce6e1(0xc3)]){Object[_0x4ce6e1(0xae)][_0x4ce6e1(0xdf)][_0x4ce6e1(0x179)](_0x639431,_0x1869e8)&&_0xc908b7['push']({'path':_0xc67069+'.'+_0x1869e8,'message':UNSUPPORTED_FORM_MESSAGE});}if(!NODE_TYPES[_0x4ce6e1(0x188)](_0x639431[_0x4ce6e1(0x163)]))return;(typeof _0x639431[_0x4ce6e1(0x124)]!==_0x4ce6e1(0xc7)||_0x639431[_0x4ce6e1(0x124)][_0x4ce6e1(0xd2)]()==='')&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xd0),'message':_0x4ce6e1(0x1c0)});_0x639431['pageId']!==undefined&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xce),'message':'node\x20pageId\x20is\x20no\x20longer\x20supported;\x20use\x20node\x20path\x20instead.'});if(_0x639431[_0x4ce6e1(0xa3)]!==undefined){if(typeof _0x639431[_0x4ce6e1(0xa3)]!==_0x4ce6e1(0xc7)||_0x639431[_0x4ce6e1(0xa3)][_0x4ce6e1(0xd2)]()==='')_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xb5),'message':_0x4ce6e1(0x1d2)});else _0x639431['type']!==_0x4ce6e1(0x1ab)&&_0x639431[_0x4ce6e1(0x163)]!=='END'&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+'.path','message':'node\x20path\x20is\x20supported\x20only\x20on\x20APPROVAL\x20or\x20END\x20nodes.'});}const _0x35eed3=_0x639431['position'];if(!isRecord(_0x35eed3))_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+'.position','message':_0x4ce6e1(0x1e2)});else for(const _0x9540f0 of['x','y']){const _0x1fc672=_0x35eed3[_0x9540f0];(typeof _0x1fc672!==_0x4ce6e1(0x157)||!Number['isFinite'](_0x1fc672)||_0x1fc672<0x0)&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xea)+_0x9540f0,'message':_0x4ce6e1(0x17e)+_0x9540f0+_0x4ce6e1(0x1d6)});}if(_0x639431[_0x4ce6e1(0x163)]===_0x4ce6e1(0x1ab)){const _0x3cf992=_0x639431[_0x4ce6e1(0x11b)]??_0x4ce6e1(0x1ed),_0x2d36c0=_0x639431['taskMode']??_0x4ce6e1(0x1ab);!APPROVAL_TASK_MODES['has'](_0x2d36c0)&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xbf),'message':'Unsupported\x20task\x20mode:\x20'+String(_0x2d36c0)+'.'});!APPROVAL_MODES['has'](_0x3cf992)&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x126),'message':_0x4ce6e1(0x122)+String(_0x3cf992)+'.'});if(!isRecord(_0x639431[_0x4ce6e1(0x166)]))_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+'.assignee','message':'APPROVAL\x20node\x20requires\x20assignee.'});else{const _0x4bcba5=_0x639431['assignee'][_0x4ce6e1(0x1fb)];_0x4bcba5!==_0x4ce6e1(0x12e)&&_0x4bcba5!==_0x4ce6e1(0x1f3)&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x156),'message':'assignee.strategy\x20must\x20be\x20FIXED\x20or\x20ROLE.'});if(_0x4bcba5===_0x4ce6e1(0x12e)){const _0x16d844=_0x639431[_0x4ce6e1(0x166)][_0x4ce6e1(0xaf)];if(!Array[_0x4ce6e1(0x1f7)](_0x16d844)||_0x16d844['length']===0x0)_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+'.assignee.userIds','message':_0x4ce6e1(0x100)});else{const _0x1d5206=_0x16d844[_0x4ce6e1(0xe6)](_0x2f4735=>!isValidUserId(_0x2f4735));_0x1d5206>=0x0&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x144)+_0x1d5206+']','message':_0x4ce6e1(0x147)});const _0x5f2892=new Set(_0x16d844[_0x4ce6e1(0x1bc)](isValidUserId)[_0x4ce6e1(0x18d)](_0x333595=>String(_0x333595)[_0x4ce6e1(0xd2)]()));_0x3cf992===_0x4ce6e1(0x1ed)&&_0x5f2892[_0x4ce6e1(0x16f)]>0x1&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xb6),'message':_0x4ce6e1(0x1ae)});}}if(_0x4bcba5===_0x4ce6e1(0x1f3)){const _0x199595=_0x639431[_0x4ce6e1(0x166)][_0x4ce6e1(0x19e)],_0x270eca=typeof _0x199595==='number'||typeof _0x199595===_0x4ce6e1(0xc7)?Number(String(_0x199595)[_0x4ce6e1(0xd2)]()):Number[_0x4ce6e1(0x18f)];(!Number[_0x4ce6e1(0x176)](_0x270eca)||_0x270eca<=0x0)&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x14a),'message':_0x4ce6e1(0x112)});}}if(_0x639431[_0x4ce6e1(0x194)]!==undefined){if(!isRecord(_0x639431['transferCandidates']))_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+'.transferCandidates','message':_0x4ce6e1(0x1f9)});else{if(_0x639431[_0x4ce6e1(0x194)]['strategy']!=='FIXED')_0xc908b7['push']({'path':_0xc67069+_0x4ce6e1(0xdc),'message':_0x4ce6e1(0x149)});else{const _0x9d3fdc=_0x639431['transferCandidates'][_0x4ce6e1(0xaf)];if(!Array[_0x4ce6e1(0x1f7)](_0x9d3fdc)||_0x9d3fdc[_0x4ce6e1(0x17b)]===0x0)_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x1ce),'message':_0x4ce6e1(0x1dc)});else{const _0x4bd278=_0x9d3fdc[_0x4ce6e1(0xe6)](_0x4e3054=>!isValidUserId(_0x4e3054));_0x4bd278>=0x0&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0xc0)+_0x4bd278+']','message':_0x4ce6e1(0x155)});}}}}}_0x639431[_0x4ce6e1(0xd1)]!==undefined&&typeof _0x639431[_0x4ce6e1(0xd1)]!==_0x4ce6e1(0x183)&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+'.sequential','message':'sequential\x20must\x20be\x20a\x20boolean.'});if(_0x639431[_0x4ce6e1(0x163)]===_0x4ce6e1(0x1c1)){(typeof _0x639431[_0x4ce6e1(0x12d)]!=='string'||_0x639431['scriptName'][_0x4ce6e1(0xd2)]()==='')&&_0xc908b7['push']({'path':_0xc67069+_0x4ce6e1(0x10a),'message':'SCRIPT\x20node\x20requires\x20scriptName.'});if(_0x639431[_0x4ce6e1(0xde)]!==undefined){if(typeof _0x639431['resultVariable']!==_0x4ce6e1(0xc7)||!VARIABLE_PATTERN[_0x4ce6e1(0xb1)](_0x639431[_0x4ce6e1(0xde)]))_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x17f),'message':'resultVariable\x20must\x20match\x20[A-Za-z_][A-Za-z0-9_]*.'});else(RESERVED_RESULT_VARIABLES[_0x4ce6e1(0x188)](_0x639431['resultVariable'])||_0x639431[_0x4ce6e1(0xde)][_0x4ce6e1(0x191)](_0x4ce6e1(0x1f2)))&&_0xc908b7[_0x4ce6e1(0xdd)]({'path':_0xc67069+_0x4ce6e1(0x17f),'message':'Reserved\x20resultVariable:\x20'+_0x639431[_0x4ce6e1(0xde)]+'.'});}}validateAsyncExecution(_0x639431,_0xc67069,_0xc908b7),validateApprovalTimeout(_0x639431,_0xc67069,_0xc908b7),validateCcConfig(_0x639431,_0xc67069,_0xc908b7),_0x639431[_0x4ce6e1(0x163)]===_0x4ce6e1(0xa5)&&validateNotificationConfig(_0x639431['config'],_0xc67069+'.config',_0xc908b7);}function validateAsyncExecution(_0x5f0bd3,_0xb8d003,_0x2e65bc){const _0x1aac89=a282_0x44ca9e;if(_0x5f0bd3['async']===undefined)return;if(!isRecord(_0x5f0bd3['async'])){_0x2e65bc[_0x1aac89(0xdd)]({'path':_0xb8d003+_0x1aac89(0x107),'message':_0x1aac89(0x1e6)});return;}if(_0x5f0bd3['async'][_0x1aac89(0xda)]!==undefined&&typeof _0x5f0bd3[_0x1aac89(0xd8)]['enabled']!=='boolean'){_0x2e65bc[_0x1aac89(0xdd)]({'path':_0xb8d003+_0x1aac89(0xef),'message':'async.enabled\x20must\x20be\x20a\x20boolean.'});return;}if(_0x5f0bd3[_0x1aac89(0xd8)][_0x1aac89(0xda)]!==!![])return;_0x5f0bd3['type']!==_0x1aac89(0x1c1)&&_0x2e65bc[_0x1aac89(0xdd)]({'path':_0xb8d003+'.async','message':_0x1aac89(0x10f)});const _0x13848d=_0x5f0bd3[_0x1aac89(0xd8)][_0x1aac89(0x1e4)]??0x3;(!Number[_0x1aac89(0x1ec)](_0x13848d)||_0x13848d<0x1||_0x13848d>MAX_ASYNC_RETRY_COUNT)&&_0x2e65bc[_0x1aac89(0xdd)]({'path':_0xb8d003+'.async.retryCount','message':_0x1aac89(0x150)+MAX_ASYNC_RETRY_COUNT+'.'}),_0x5f0bd3[_0x1aac89(0xd8)][_0x1aac89(0x1d7)]!==undefined&&validateTimeAmount(_0x5f0bd3[_0x1aac89(0xd8)][_0x1aac89(0x1d7)],_0xb8d003+_0x1aac89(0xab),_0x2e65bc);}function validateApprovalTimeout(_0x958645,_0x4ba496,_0x1566c1){const _0xb3b0e2=a282_0x44ca9e;if(_0x958645['timeout']===undefined)return;if(!isRecord(_0x958645[_0xb3b0e2(0xad)])){_0x1566c1['push']({'path':_0x4ba496+_0xb3b0e2(0x15f),'message':_0xb3b0e2(0x167)});return;}if(_0x958645[_0xb3b0e2(0xad)]['enabled']!==undefined&&typeof _0x958645[_0xb3b0e2(0xad)]['enabled']!==_0xb3b0e2(0x183)){_0x1566c1[_0xb3b0e2(0xdd)]({'path':_0x4ba496+'.timeout.enabled','message':_0xb3b0e2(0x1e0)});return;}if(_0x958645['timeout']['enabled']!==!![])return;if(_0x958645[_0xb3b0e2(0xad)]['interrupting']!==undefined&&typeof _0x958645[_0xb3b0e2(0xad)][_0xb3b0e2(0x19f)]!=='boolean'){_0x1566c1[_0xb3b0e2(0xdd)]({'path':_0x4ba496+_0xb3b0e2(0xe8),'message':_0xb3b0e2(0x18b)});return;}_0x958645['type']!=='APPROVAL'&&_0x1566c1[_0xb3b0e2(0xdd)]({'path':_0x4ba496+_0xb3b0e2(0x15f),'message':_0xb3b0e2(0x1b9)});validateTimeAmount(_0x958645[_0xb3b0e2(0xad)]['duration'],_0x4ba496+_0xb3b0e2(0x174),_0x1566c1);const _0x3645d2=_0x958645[_0xb3b0e2(0xad)]['action'];if(!APPROVAL_TIMEOUT_ACTIONS[_0xb3b0e2(0x188)](_0x3645d2)){_0x1566c1[_0xb3b0e2(0xdd)]({'path':_0x4ba496+_0xb3b0e2(0x19c),'message':_0xb3b0e2(0x14c)});return;}(_0x958645[_0xb3b0e2(0xbb)]??_0xb3b0e2(0x1ab))===_0xb3b0e2(0x1c2)&&_0x3645d2!==_0xb3b0e2(0x123)&&_0x1566c1[_0xb3b0e2(0xdd)]({'path':_0x4ba496+_0xb3b0e2(0x19c),'message':_0xb3b0e2(0x177)});const _0x217eab=_0x958645[_0xb3b0e2(0xad)][_0xb3b0e2(0x19f)]??_0x3645d2!==_0xb3b0e2(0x123);if(_0x3645d2===_0xb3b0e2(0x123))_0x217eab&&_0x1566c1[_0xb3b0e2(0xdd)]({'path':_0x4ba496+'.timeout.interrupting','message':_0xb3b0e2(0x121)}),(typeof _0x958645[_0xb3b0e2(0xad)]['scriptName']!=='string'||_0x958645[_0xb3b0e2(0xad)][_0xb3b0e2(0x12d)][_0xb3b0e2(0xd2)]()==='')&&_0x1566c1['push']({'path':_0x4ba496+_0xb3b0e2(0x1a0),'message':_0xb3b0e2(0x1c3)}),validateOptionalResultVariable(_0x958645[_0xb3b0e2(0xad)][_0xb3b0e2(0xde)],_0x4ba496+_0xb3b0e2(0x10d),_0x1566c1);else!_0x217eab&&_0x1566c1['push']({'path':_0x4ba496+_0xb3b0e2(0xe8),'message':_0x3645d2+_0xb3b0e2(0x1e3)});}function validateTimeAmount(_0x5a15c2,_0x8205be,_0x31b775){const _0x599ce9=a282_0x44ca9e;if(!isRecord(_0x5a15c2)){_0x31b775['push']({'path':_0x8205be,'message':'duration\x20requires\x20value\x20and\x20unit.'});return;}(!Number[_0x599ce9(0x1ec)](_0x5a15c2['value'])||Number(_0x5a15c2[_0x599ce9(0x13b)])<=0x0)&&_0x31b775[_0x599ce9(0xdd)]({'path':_0x8205be+'.value','message':_0x599ce9(0x1bd)}),!FLOW_TIME_UNITS[_0x599ce9(0x188)](_0x5a15c2[_0x599ce9(0x184)])&&_0x31b775['push']({'path':_0x8205be+_0x599ce9(0xcb),'message':_0x599ce9(0x1dd)});}function validateOptionalResultVariable(_0x1f620a,_0x319809,_0xbdcc52){const _0x59a2ca=a282_0x44ca9e;if(_0x1f620a===undefined||_0x1f620a===null||_0x1f620a==='')return;if(typeof _0x1f620a!==_0x59a2ca(0xc7)||!VARIABLE_PATTERN[_0x59a2ca(0xb1)](_0x1f620a))_0xbdcc52[_0x59a2ca(0xdd)]({'path':_0x319809,'message':_0x59a2ca(0xb2)});else(RESERVED_RESULT_VARIABLES[_0x59a2ca(0x188)](_0x1f620a)||_0x1f620a[_0x59a2ca(0x191)](_0x59a2ca(0x1f2)))&&_0xbdcc52['push']({'path':_0x319809,'message':'Reserved\x20resultVariable:\x20'+_0x1f620a+'.'});}function validateCcConfig(_0x22f5b2,_0x537b3e,_0x32808c){const _0x2a8001=a282_0x44ca9e;if(_0x22f5b2['cc']===undefined)return;if(!isRecord(_0x22f5b2['cc'])){_0x32808c['push']({'path':_0x537b3e+_0x2a8001(0x193),'message':_0x2a8001(0x1c4)});return;}_0x22f5b2[_0x2a8001(0x163)]!==_0x2a8001(0x18c)&&_0x22f5b2[_0x2a8001(0x163)]!==_0x2a8001(0x1ab)&&_0x32808c[_0x2a8001(0xdd)]({'path':_0x537b3e+_0x2a8001(0x193),'message':_0x2a8001(0xd5)});Object[_0x2a8001(0xae)][_0x2a8001(0xdf)][_0x2a8001(0x179)](_0x22f5b2['cc'],_0x2a8001(0x1ef))&&_0x32808c[_0x2a8001(0xdd)]({'path':_0x537b3e+_0x2a8001(0x1d4),'message':UNSUPPORTED_FORM_MESSAGE});const _0x48f2a6=_0x22f5b2['cc'][_0x2a8001(0x12a)];if(!Array['isArray'](_0x48f2a6)||_0x48f2a6[_0x2a8001(0x17b)]===0x0)_0x32808c[_0x2a8001(0xdd)]({'path':_0x537b3e+_0x2a8001(0x17d),'message':_0x2a8001(0x1ac)});else{_0x48f2a6[_0x2a8001(0x17b)]>MAX_CC_RECIPIENTS&&_0x32808c['push']({'path':_0x537b3e+_0x2a8001(0x17d),'message':_0x2a8001(0x106)+MAX_CC_RECIPIENTS+'\x20users.'});const _0x6ffab=new Set();_0x48f2a6[_0x2a8001(0x181)]((_0x600924,_0x3a4ea1)=>{const _0xd8c4d8=_0x2a8001;if(typeof _0x600924!=='string'||_0x600924['trim']()==='')_0x32808c[_0xd8c4d8(0xdd)]({'path':_0x537b3e+_0xd8c4d8(0x119)+_0x3a4ea1+']','message':_0xd8c4d8(0x1b0)});else _0x6ffab[_0xd8c4d8(0x188)](_0x600924[_0xd8c4d8(0xd2)]())?_0x32808c['push']({'path':_0x537b3e+'.cc.recipientUserIds['+_0x3a4ea1+']','message':_0xd8c4d8(0x1b3)+_0x600924['trim']()+'.'}):_0x6ffab[_0xd8c4d8(0x16e)](_0x600924[_0xd8c4d8(0xd2)]());});}validateStringArray(_0x22f5b2['cc']['visible'],_0x537b3e+_0x2a8001(0x171),_0x32808c);}function validateStringArray(_0x2e5122,_0x1349e4,_0x1022f0){const _0xaea9b7=a282_0x44ca9e;if(_0x2e5122===undefined)return;if(!Array[_0xaea9b7(0x1f7)](_0x2e5122)){_0x1022f0[_0xaea9b7(0xdd)]({'path':_0x1349e4,'message':_0xaea9b7(0x1df)});return;}const _0x1ca7f5=new Set();_0x2e5122[_0xaea9b7(0x181)]((_0x4e4513,_0x429b61)=>{const _0x4f1a55=_0xaea9b7;if(typeof _0x4e4513!=='string'||_0x4e4513[_0x4f1a55(0xd2)]()==='')_0x1022f0[_0x4f1a55(0xdd)]({'path':_0x1349e4+'['+_0x429b61+']','message':_0x4f1a55(0x11e)});else _0x1ca7f5[_0x4f1a55(0x188)](_0x4e4513[_0x4f1a55(0xd2)]())?_0x1022f0[_0x4f1a55(0xdd)]({'path':_0x1349e4+'['+_0x429b61+']','message':_0x4f1a55(0x17a)+_0x4e4513[_0x4f1a55(0xd2)]()+'.'}):_0x1ca7f5[_0x4f1a55(0x16e)](_0x4e4513[_0x4f1a55(0xd2)]());});}function validateNotificationConfig(_0x515411,_0x33c19d,_0x4a6805){const _0x1cb913=a282_0x44ca9e;if(!isRecord(_0x515411)){_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d,'message':_0x1cb913(0x102)});return;}if(_0x515411['version']!==undefined&&_0x515411[_0x1cb913(0x137)]!==null){if(typeof _0x515411['version']!==_0x1cb913(0xc7))_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d+'.version','message':'Notification\x20version\x20must\x20be\x20a\x20string.'});else _0x515411[_0x1cb913(0x137)][_0x1cb913(0xd2)]()&&_0x515411[_0x1cb913(0x137)][_0x1cb913(0xd2)]()!=='v1'&&_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d+_0x1cb913(0x168),'message':_0x1cb913(0x1d9)+_0x515411[_0x1cb913(0x137)]+'.'});}const _0xa3243d=requireNotificationString(_0x515411[_0x1cb913(0x1cd)],_0x33c19d+_0x1cb913(0x109),'Notification\x20configCode\x20is\x20required.',_0x4a6805);_0xa3243d?.[_0x1cb913(0x18a)]('${')&&_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d+'.configCode','message':_0x1cb913(0x178)});if(_0x515411[_0x1cb913(0x13a)]!==undefined&&_0x515411[_0x1cb913(0x13a)]!==null){if(typeof _0x515411[_0x1cb913(0x13a)]!=='string')_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d+'.failurePolicy','message':_0x1cb913(0x1d8)});else!NOTIFICATION_FAILURE_POLICIES['has'](_0x515411[_0x1cb913(0x13a)]['trim']()[_0x1cb913(0x196)]())&&_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d+_0x1cb913(0xfd),'message':_0x1cb913(0x159)});}!isRecord(_0x515411[_0x1cb913(0x11d)])?_0x4a6805[_0x1cb913(0xdd)]({'path':_0x33c19d+'.template','message':_0x1cb913(0x192)}):validateNotificationTemplate(_0x515411['template'],_0x33c19d+_0x1cb913(0x162),_0x4a6805),validateNotificationRecipients(_0x515411[_0x1cb913(0x142)],_0x33c19d+_0x1cb913(0x118),_0x4a6805);}function validateNotificationTemplate(_0x2359a2,_0x26d9c7,_0x185ddf){const _0x50a9cb=a282_0x44ca9e;for(const _0x10bd4f of['title','summary']){const _0x5ecd79=requireNotificationString(_0x2359a2[_0x10bd4f],_0x26d9c7+'.'+_0x10bd4f,_0x50a9cb(0x146)+_0x10bd4f+'\x20is\x20required.',_0x185ddf);if(_0x5ecd79)validateNotificationPlaceholders(_0x5ecd79,_0x26d9c7+'.'+_0x10bd4f,_0x185ddf);}_0x2359a2['detailMarkdown']!==undefined&&_0x2359a2[_0x50a9cb(0x125)]!==null&&(typeof _0x2359a2[_0x50a9cb(0x125)]!==_0x50a9cb(0xc7)?_0x185ddf['push']({'path':_0x26d9c7+_0x50a9cb(0xf3),'message':'Notification\x20template.detailMarkdown\x20must\x20be\x20a\x20string.'}):validateNotificationPlaceholders(_0x2359a2[_0x50a9cb(0x125)],_0x26d9c7+_0x50a9cb(0xf3),_0x185ddf)),validateNotificationFacts(_0x2359a2['facts'],_0x26d9c7+_0x50a9cb(0x1b8),_0x185ddf),validateNotificationActions(_0x2359a2[_0x50a9cb(0xaa)],_0x26d9c7+_0x50a9cb(0xc9),_0x185ddf);}function validateNotificationFacts(_0xe051ac,_0x1c36e5,_0x5754f4){const _0x31ac3c=a282_0x44ca9e;if(_0xe051ac===undefined||_0xe051ac===null)return;if(!Array[_0x31ac3c(0x1f7)](_0xe051ac)){_0x5754f4['push']({'path':_0x1c36e5,'message':_0x31ac3c(0xb0)});return;}_0xe051ac[_0x31ac3c(0x17b)]>MAX_NOTIFICATION_FACTS&&_0x5754f4['push']({'path':_0x1c36e5,'message':_0x31ac3c(0x1be)+MAX_NOTIFICATION_FACTS+_0x31ac3c(0x120)}),_0xe051ac[_0x31ac3c(0x181)]((_0x22f3f4,_0x39d9b3)=>{const _0x4fecbf=_0x31ac3c,_0x53a908=_0x1c36e5+'['+_0x39d9b3+']';if(!isRecord(_0x22f3f4)){_0x5754f4['push']({'path':_0x53a908,'message':_0x4fecbf(0xa9)});return;}for(const _0x1ae849 of[_0x4fecbf(0xdb),'value']){const _0x72ef69=requireNotificationString(_0x22f3f4[_0x1ae849],_0x53a908+'.'+_0x1ae849,_0x4fecbf(0x175)+_0x1ae849+'\x20is\x20required.',_0x5754f4);_0x72ef69&&validateNotificationPlaceholders(_0x72ef69,_0x53a908+'.'+_0x1ae849,_0x5754f4);}});}function validateNotificationActions(_0x3799d3,_0x13d61b,_0x3b2200){const _0x4b4e6c=a282_0x44ca9e;if(_0x3799d3===undefined||_0x3799d3===null)return;if(!Array['isArray'](_0x3799d3)){_0x3b2200[_0x4b4e6c(0xdd)]({'path':_0x13d61b,'message':_0x4b4e6c(0xe7)});return;}_0x3799d3[_0x4b4e6c(0x17b)]>MAX_NOTIFICATION_ACTIONS&&_0x3b2200[_0x4b4e6c(0xdd)]({'path':_0x13d61b,'message':'Notification\x20template\x20supports\x20at\x20most\x20'+MAX_NOTIFICATION_ACTIONS+_0x4b4e6c(0xf1)}),_0x3799d3[_0x4b4e6c(0x181)]((_0x587369,_0x2e8e76)=>{const _0x767aad=_0x4b4e6c,_0x2c9ac3=_0x13d61b+'['+_0x2e8e76+']';if(!isRecord(_0x587369)){_0x3b2200[_0x767aad(0xdd)]({'path':_0x2c9ac3,'message':_0x767aad(0xc6)});return;}const _0x512f5f=requireNotificationString(_0x587369[_0x767aad(0x185)],_0x2c9ac3+_0x767aad(0x153),_0x767aad(0xa6),_0x3b2200);if(_0x512f5f)validateNotificationPlaceholders(_0x512f5f,_0x2c9ac3+_0x767aad(0x153),_0x3b2200);const _0x9ec75e=requireNotificationString(_0x587369[_0x767aad(0x1ca)],_0x2c9ac3+_0x767aad(0x13c),_0x767aad(0x151),_0x3b2200);if(!_0x9ec75e)return;validateNotificationPlaceholders(_0x9ec75e,_0x2c9ac3+_0x767aad(0x13c),_0x3b2200),!/^https?:\/\//i[_0x767aad(0xb1)](_0x9ec75e)&&!NOTIFICATION_ACTION_URL_PLACEHOLDER_PATTERN['test'](_0x9ec75e)&&_0x3b2200[_0x767aad(0xdd)]({'path':_0x2c9ac3+_0x767aad(0x13c),'message':_0x767aad(0x19d)});});}function validateNotificationRecipients(_0xa608a1,_0x3a777d,_0x20bdb6){const _0x1003f3=a282_0x44ca9e;if(_0xa608a1===undefined||_0xa608a1===null)return;if(!Array['isArray'](_0xa608a1)){_0x20bdb6[_0x1003f3(0xdd)]({'path':_0x3a777d,'message':_0x1003f3(0x130)});return;}let _0x1eac07=![];_0xa608a1[_0x1003f3(0x181)]((_0x25b419,_0x42d603)=>{const _0x31c582=_0x1003f3,_0x35c0b1=_0x3a777d+'['+_0x42d603+']';if(!isRecord(_0x25b419)){_0x20bdb6['push']({'path':_0x35c0b1,'message':_0x31c582(0x133)});return;}const _0x276525=requireNotificationString(_0x25b419[_0x31c582(0x163)],_0x35c0b1+_0x31c582(0xb9),_0x31c582(0xcf),_0x20bdb6);_0x276525&&!NOTIFICATION_RECIPIENT_TYPES[_0x31c582(0x188)](_0x276525[_0x31c582(0x196)]())&&_0x20bdb6[_0x31c582(0xdd)]({'path':_0x35c0b1+_0x31c582(0xb9),'message':_0x31c582(0x154)});let _0x58cdab='TO';_0x25b419['role']!==undefined&&_0x25b419[_0x31c582(0x1c7)]!==null&&(typeof _0x25b419[_0x31c582(0x1c7)]!==_0x31c582(0xc7)?(_0x20bdb6[_0x31c582(0xdd)]({'path':_0x35c0b1+_0x31c582(0x1f5),'message':_0x31c582(0x1db)}),_0x58cdab=''):(_0x58cdab=_0x25b419[_0x31c582(0x1c7)]['trim']()[_0x31c582(0x196)](),!NOTIFICATION_RECIPIENT_ROLES['has'](_0x58cdab)&&_0x20bdb6['push']({'path':_0x35c0b1+_0x31c582(0x1f5),'message':_0x31c582(0x1e8)})));if(_0x58cdab==='TO')_0x1eac07=!![];const _0x13b3aa=requireNotificationString(_0x25b419[_0x31c582(0x13b)],_0x35c0b1+'.value','Notification\x20recipient.value\x20is\x20required.',_0x20bdb6);_0x13b3aa&&validateNotificationPlaceholders(_0x13b3aa,_0x35c0b1+_0x31c582(0x116),_0x20bdb6);}),_0xa608a1[_0x1003f3(0x17b)]>0x0&&!_0x1eac07&&_0x20bdb6['push']({'path':_0x3a777d,'message':_0x1003f3(0x11a)});}function requireNotificationString(_0x5767a2,_0x1529f5,_0x1443b5,_0x2bc8e2){const _0x33df3d=a282_0x44ca9e;if(typeof _0x5767a2!==_0x33df3d(0xc7)||_0x5767a2[_0x33df3d(0xd2)]()==='')return _0x2bc8e2['push']({'path':_0x1529f5,'message':_0x1443b5}),undefined;return _0x5767a2[_0x33df3d(0xd2)]();}function validateNotificationPlaceholders(_0x3db46c,_0x4fca05,_0x440be0){const _0x4f5040=a282_0x44ca9e;for(const _0x285f4f of _0x3db46c['matchAll'](NOTIFICATION_PLACEHOLDER_PATTERN)){const _0x250e8f=_0x285f4f[0x1]?.[_0x4f5040(0xd2)]()??'',_0x283d4d=_0x250e8f[_0x4f5040(0x161)]('.'),_0x224b40=_0x283d4d>=0x0?_0x250e8f[_0x4f5040(0x1a8)](0x0,_0x283d4d):_0x250e8f,_0x2e1d4b=_0x283d4d>=0x0?_0x250e8f[_0x4f5040(0x1a8)](_0x283d4d+0x1)[_0x4f5040(0xd2)]():'';(![_0x4f5040(0xbe),_0x4f5040(0x1a3),_0x4f5040(0x12f)][_0x4f5040(0x18a)](_0x224b40)||_0x2e1d4b==='')&&_0x440be0[_0x4f5040(0xdd)]({'path':_0x4fca05,'message':'Unsupported\x20notification\x20placeholder:\x20'+_0x285f4f[0x0]+'.'});}_0x3db46c[_0x4f5040(0x108)](NOTIFICATION_PLACEHOLDER_PATTERN,'')['includes']('${')&&_0x440be0[_0x4f5040(0xdd)]({'path':_0x4fca05,'message':'Notification\x20text\x20contains\x20a\x20malformed\x20placeholder.'});}function validateEdge(_0x1c96cc,_0x267a4e,_0x40c8db){const _0x47458=a282_0x44ca9e;_0x1c96cc['name']!==undefined&&typeof _0x1c96cc['name']!=='string'&&_0x40c8db[_0x47458(0xdd)]({'path':_0x267a4e+_0x47458(0xd0),'message':'edge\x20name\x20must\x20be\x20a\x20string.'}),_0x1c96cc[_0x47458(0x127)]!==undefined&&typeof _0x1c96cc[_0x47458(0x127)]!==_0x47458(0x183)&&_0x40c8db['push']({'path':_0x267a4e+_0x47458(0xd6),'message':_0x47458(0x15c)}),_0x1c96cc[_0x47458(0xed)]!==undefined&&(!Array[_0x47458(0x1f7)](_0x1c96cc[_0x47458(0xed)])?_0x40c8db[_0x47458(0xdd)]({'path':_0x267a4e+_0x47458(0x1f4),'message':'waypoints\x20must\x20be\x20an\x20array.'}):_0x1c96cc[_0x47458(0xed)][_0x47458(0x181)]((_0x111de2,_0x191000)=>{const _0xd29851=_0x47458;if(!isRecord(_0x111de2)){_0x40c8db[_0xd29851(0xdd)]({'path':_0x267a4e+_0xd29851(0xfa)+_0x191000+']','message':'waypoint\x20must\x20contain\x20numeric\x20x\x20and\x20y\x20coordinates.'});return;}for(const _0x9c9f8e of['x','y']){const _0x21dc87=_0x111de2[_0x9c9f8e];(typeof _0x21dc87!==_0xd29851(0x157)||!Number[_0xd29851(0xf2)](_0x21dc87))&&_0x40c8db[_0xd29851(0xdd)]({'path':_0x267a4e+_0xd29851(0xfa)+_0x191000+'].'+_0x9c9f8e,'message':_0xd29851(0x1cf)+_0x9c9f8e+_0xd29851(0xd3)});}})),_0x1c96cc['conditionType']!==undefined&&!CONDITION_TYPES[_0x47458(0x188)](_0x1c96cc[_0x47458(0x104)])&&_0x40c8db['push']({'path':_0x267a4e+_0x47458(0x1b7),'message':_0x47458(0xf7)+String(_0x1c96cc[_0x47458(0x104)])+'.'}),_0x1c96cc[_0x47458(0x104)]===_0x47458(0xf6)&&(typeof _0x1c96cc[_0x47458(0x1c9)]!==_0x47458(0xc7)||_0x1c96cc[_0x47458(0x1c9)][_0x47458(0xd2)]()==='')&&_0x40c8db[_0x47458(0xdd)]({'path':_0x267a4e+_0x47458(0x101),'message':'EXPRESSION\x20edge\x20requires\x20expression.'}),_0x1c96cc[_0x47458(0x127)]===!![]&&_0x1c96cc[_0x47458(0x104)]!==_0x47458(0xd9)&&_0x40c8db[_0x47458(0xdd)]({'path':_0x267a4e+_0x47458(0xd6),'message':_0x47458(0xb8)}),_0x1c96cc[_0x47458(0x127)]===!![]&&typeof _0x1c96cc['expression']===_0x47458(0xc7)&&_0x1c96cc[_0x47458(0x1c9)][_0x47458(0xd2)]()!==''&&_0x40c8db[_0x47458(0xdd)]({'path':_0x267a4e+'.expression','message':_0x47458(0x115)});}function validateGraphShape(_0x2273f9,_0xd59304,_0x434c71,_0x4d921d,_0x2ee086,_0x14576a,_0x5d5206){const _0x10ff0c=a282_0x44ca9e;for(const [_0x4507b2,_0x1f955e]of _0x2273f9){const _0x273838=_0x2ee086[_0x10ff0c(0x103)](_0x4507b2)??[],_0xb7a3bd=_0x4d921d[_0x10ff0c(0x103)](_0x4507b2)??[];_0x1f955e[_0x10ff0c(0x163)]!==_0x10ff0c(0x170)&&_0x273838[_0x10ff0c(0x17b)]===0x0&&_0x5d5206['push']({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0x9d)});_0x1f955e[_0x10ff0c(0x163)]!=='END'&&_0xb7a3bd[_0x10ff0c(0x17b)]===0x0&&_0x5d5206['push']({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0x13f)});_0x1f955e[_0x10ff0c(0x163)]===_0x10ff0c(0x170)&&_0x273838[_0x10ff0c(0x17b)]>0x0&&_0x5d5206['push']({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0x132)});_0x1f955e[_0x10ff0c(0x163)]===_0x10ff0c(0x18c)&&_0xb7a3bd['length']>0x0&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':'END\x20node\x20must\x20not\x20have\x20outgoing\x20edges.'});if(_0x1f955e['type']===_0x10ff0c(0x110)){_0xb7a3bd['length']<0x2&&_0x5d5206['push']({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0xe5)});const _0x12347d=_0xb7a3bd['filter'](_0x53b50d=>_0x53b50d[_0x10ff0c(0x127)]===!![]);_0x12347d[_0x10ff0c(0x17b)]!==0x1&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0x1d1)});if(_0x12347d[_0x10ff0c(0x17b)]===0x1){const _0x2fdb26=_0x12347d[0x0],_0x2da5bd=_0x14576a[_0x10ff0c(0x103)](_0x2fdb26)??'flowJson.edges';_0x2fdb26[_0x10ff0c(0x104)]!==_0x10ff0c(0xd9)&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x2da5bd+_0x10ff0c(0x1b7),'message':_0x10ff0c(0x1f6)});_0x2fdb26[_0x10ff0c(0x1c9)]!==undefined&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x2da5bd+_0x10ff0c(0x101),'message':'CONDITION\x20default\x20edge\x20must\x20not\x20define\x20expression.'});for(const _0x2cf26e of _0xb7a3bd){if(_0x2cf26e===_0x2fdb26)continue;const _0x3d1bbc=_0x14576a[_0x10ff0c(0x103)](_0x2cf26e)??'flowJson.edges';if(_0x2cf26e[_0x10ff0c(0x104)]!==_0x10ff0c(0xf6))_0x5d5206['push']({'path':_0x3d1bbc+_0x10ff0c(0x1b7),'message':_0x10ff0c(0x189)});else(typeof _0x2cf26e['expression']!==_0x10ff0c(0xc7)||_0x2cf26e[_0x10ff0c(0x1c9)][_0x10ff0c(0xd2)]()==='')&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x3d1bbc+'.expression','message':_0x10ff0c(0x1a5)});}}}if(_0x1f955e[_0x10ff0c(0x163)]==='APPROVAL'&&(_0x1f955e[_0x10ff0c(0xbb)]??_0x10ff0c(0x1ab))===_0x10ff0c(0x1c2)){if(_0xb7a3bd[_0x10ff0c(0x17b)]!==0x1)_0x5d5206['push']({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0x138)});else{const _0xdd8e84=_0xb7a3bd[0x0];((_0xdd8e84['conditionType']??_0x10ff0c(0xd9))!=='ALWAYS'||_0xdd8e84[_0x10ff0c(0x127)]===!![]||typeof _0xdd8e84['expression']===_0x10ff0c(0xc7)&&_0xdd8e84[_0x10ff0c(0x1c9)][_0x10ff0c(0xd2)]()!=='')&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x14576a['get'](_0xdd8e84)??'flowJson.edges','message':_0x10ff0c(0xbc)});}}else{if(_0x1f955e[_0x10ff0c(0x163)]==='APPROVAL'){const _0xe5906e=_0xb7a3bd[_0x10ff0c(0x18d)](_0x25dac8=>_0x25dac8['conditionType']??_0x10ff0c(0xd9)),_0x3df4ce=_0xe5906e['filter'](_0x17f62a=>_0x17f62a!==_0x10ff0c(0xa4)&&_0x17f62a!==_0x10ff0c(0x1f1));_0x3df4ce[_0x10ff0c(0x17b)]>0x0&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':_0x10ff0c(0xc5)}),_0xe5906e[_0x10ff0c(0x1bc)](_0x3660d1=>_0x3660d1===_0x10ff0c(0xa4))[_0x10ff0c(0x17b)]!==0x1&&_0x5d5206[_0x10ff0c(0xdd)]({'path':'flowJson.nodes.'+_0x4507b2,'message':_0x10ff0c(0x187)}),_0xe5906e[_0x10ff0c(0x1bc)](_0x30c6d8=>_0x30c6d8===_0x10ff0c(0x1f1))['length']!==0x1&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x10ff0c(0x1e5)+_0x4507b2,'message':'APPROVAL\x20node\x20requires\x20exactly\x20one\x20REJECTED\x20outgoing\x20edge.'}),_0xb7a3bd[_0x10ff0c(0x1f0)](_0x471913=>_0x471913[_0x10ff0c(0x127)]===!![])&&_0x5d5206[_0x10ff0c(0xdd)]({'path':'flowJson.nodes.'+_0x4507b2,'message':'APPROVAL\x20task\x20decision\x20edges\x20must\x20not\x20be\x20default\x20flows.'});}}}const _0xfa2c63=new Set(),_0xe33385=_0x4bdae6=>{const _0x5b9046=_0x10ff0c;if(_0xfa2c63['has'](_0x4bdae6))return;_0xfa2c63[_0x5b9046(0x16e)](_0x4bdae6);for(const _0x520f65 of _0x4d921d[_0x5b9046(0x103)](_0x4bdae6)??[]){const _0x21986e=resolveEdgeEndpoint(_0x520f65[_0x5b9046(0x199)],_0x520f65[_0x5b9046(0x1d3)]);if(_0x21986e&&_0x2273f9['has'](_0x21986e))_0xe33385(_0x21986e);}};_0xe33385(_0xd59304);for(const _0x370c64 of _0x2273f9['keys']()){!_0xfa2c63[_0x10ff0c(0x188)](_0x370c64)&&_0x5d5206[_0x10ff0c(0xdd)]({'path':_0x10ff0c(0x1e5)+_0x370c64,'message':_0x10ff0c(0xcc)});}const _0x4403f2=_0x434c71[_0x10ff0c(0x1f0)](_0x3071cb=>_0xfa2c63[_0x10ff0c(0x188)](_0x3071cb));if(!_0x4403f2){_0x5d5206['push']({'path':_0x10ff0c(0xbd),'message':_0x10ff0c(0x197)});return;}const _0x485d3e=new Set(),_0x2851d7=_0x2b39e9=>{const _0x24b729=_0x10ff0c;if(_0x485d3e['has'](_0x2b39e9))return;_0x485d3e[_0x24b729(0x16e)](_0x2b39e9);for(const _0x5151ab of _0x2ee086['get'](_0x2b39e9)??[]){const _0x29dd96=resolveEdgeEndpoint(_0x5151ab['source'],_0x5151ab[_0x24b729(0x186)]);if(_0x29dd96&&_0x2273f9[_0x24b729(0x188)](_0x29dd96))_0x2851d7(_0x29dd96);}};for(const _0xb2d6fd of _0x434c71){if(_0x2273f9[_0x10ff0c(0x188)](_0xb2d6fd))_0x2851d7(_0xb2d6fd);}for(const _0xcdfa75 of _0xfa2c63){!_0x485d3e[_0x10ff0c(0x188)](_0xcdfa75)&&_0x5d5206['push']({'path':_0x10ff0c(0x1e5)+_0xcdfa75,'message':'Node\x20cannot\x20reach\x20any\x20END.'});}}function validateApprovalResults(_0x5e6865,_0xfb3456,_0x2dd74e,_0x2c2f2f){const _0x46885f=a282_0x44ca9e;if(_0xfb3456===0x0)return;const _0x3ef91d=new Set(_0x2dd74e['map'](_0x26ef9b=>_0x5e6865[_0x46885f(0x103)](_0x26ef9b)?.[_0x46885f(0x113)])[_0x46885f(0x1bc)](_0x54f100=>typeof _0x54f100===_0x46885f(0xc7)));for(const _0x2f1888 of[_0x46885f(0xa4),_0x46885f(0x1f1)]){!_0x3ef91d[_0x46885f(0x188)](_0x2f1888)&&_0x2c2f2f[_0x46885f(0xdd)]({'path':_0x46885f(0x158),'message':'Approval\x20flow\x20requires\x20an\x20END\x20node\x20with\x20result\x20'+_0x2f1888+'.'});}}function validateScriptResultReferences(_0x533ae9,_0x1e4085,_0xc7240d,_0x26b9b3,_0xa9bd61,_0x2fe80f,_0x274148){const _0x5b160e=a282_0x44ca9e;if(_0x2fe80f[_0x5b160e(0x16f)]===0x0)return;const _0x40d8f2=new Set(),_0x1c8aca=_0x3863b7=>{const _0x58abb6=_0x5b160e;if(!_0x40d8f2[_0x58abb6(0x188)](_0x3863b7)&&_0x533ae9['has'](_0x3863b7)){_0x40d8f2[_0x58abb6(0x16e)](_0x3863b7);for(const _0x5b3bf3 of _0xc7240d[_0x58abb6(0x103)](_0x3863b7)??[]){const _0x1f9d82=resolveEdgeEndpoint(_0x5b3bf3['target'],_0x5b3bf3[_0x58abb6(0x1d3)]);if(_0x1f9d82)_0x1c8aca(_0x1f9d82);}}};_0x1c8aca(_0x1e4085);const _0x3e0650=new Map();for(const _0x2c64c9 of _0x40d8f2){_0x3e0650['set'](_0x2c64c9,_0x2c64c9===_0x1e4085?new Set([_0x1e4085]):new Set(_0x40d8f2));}let _0x158bdc=!![];while(_0x158bdc){_0x158bdc=![];for(const _0x57a16c of _0x40d8f2){if(_0x57a16c===_0x1e4085)continue;const _0x384444=(_0x26b9b3[_0x5b160e(0x103)](_0x57a16c)??[])[_0x5b160e(0x18d)](_0xde7470=>resolveEdgeEndpoint(_0xde7470['source'],_0xde7470[_0x5b160e(0x186)]))[_0x5b160e(0x1bc)](_0xafe7d5=>Boolean(_0xafe7d5&&_0x40d8f2[_0x5b160e(0x188)](_0xafe7d5)));if(_0x384444['length']===0x0)continue;const _0xfa9745=new Set(_0x3e0650[_0x5b160e(0x103)](_0x384444[0x0])??[]);for(const _0x504708 of _0x384444[_0x5b160e(0x1a8)](0x1)){const _0x32c1c8=_0x3e0650[_0x5b160e(0x103)](_0x504708)??new Set();for(const _0x3b0c8b of _0xfa9745){if(!_0x32c1c8['has'](_0x3b0c8b))_0xfa9745[_0x5b160e(0x129)](_0x3b0c8b);}}_0xfa9745['add'](_0x57a16c);const _0x308868=_0x3e0650['get'](_0x57a16c);!setsEqual(_0x308868,_0xfa9745)&&(_0x3e0650[_0x5b160e(0xf9)](_0x57a16c,_0xfa9745),_0x158bdc=!![]);}}for(const [_0x1aaa11,_0x4cb60c]of _0xc7240d){const _0x38ef9b=_0x3e0650['get'](_0x1aaa11);if(!_0x38ef9b)continue;for(const _0x1ad4c7 of _0x4cb60c){if(_0x1ad4c7[_0x5b160e(0x104)]!=='EXPRESSION'||typeof _0x1ad4c7[_0x5b160e(0x1c9)]!==_0x5b160e(0xc7))continue;for(const [_0x4f0223,_0x52a91a]of _0x2fe80f){expressionReferencesVariable(_0x1ad4c7[_0x5b160e(0x1c9)],_0x4f0223)&&!_0x38ef9b[_0x5b160e(0x188)](_0x52a91a)&&_0x274148[_0x5b160e(0xdd)]({'path':(_0xa9bd61['get'](_0x1ad4c7)??_0x5b160e(0xbd))+_0x5b160e(0x101),'message':'Expression\x20references\x20SCRIPT\x20resultVariable\x20'+_0x4f0223+_0x5b160e(0x145)+_0x52a91a+_0x5b160e(0xe4)+_0x1aaa11+'.'});}}}}function expressionReferencesVariable(_0x46b0d0,_0x33bfd5){const _0x3bffab=a282_0x44ca9e;let _0x68fb2d=0x0;while(_0x68fb2d<_0x46b0d0['length']){const _0xbf53cf=_0x46b0d0[_0x68fb2d];if(_0xbf53cf==='\x27'||_0xbf53cf==='\x22'){_0x68fb2d=skipQuotedExpressionSegment(_0x46b0d0,_0x68fb2d,_0xbf53cf);continue;}if(!/[A-Za-z_]/[_0x3bffab(0xb1)](_0xbf53cf)){_0x68fb2d+=0x1;continue;}const _0x2f920c=_0x68fb2d;_0x68fb2d+=0x1;while(_0x68fb2d<_0x46b0d0[_0x3bffab(0x17b)]&&/[A-Za-z0-9_]/['test'](_0x46b0d0[_0x68fb2d])){_0x68fb2d+=0x1;}if(_0x46b0d0[_0x3bffab(0x1a8)](_0x2f920c,_0x68fb2d)!==_0x33bfd5)continue;let _0x52514d=_0x2f920c-0x1;while(_0x52514d>=0x0&&/\s/[_0x3bffab(0xb1)](_0x46b0d0[_0x52514d])){_0x52514d-=0x1;}if(_0x46b0d0[_0x52514d]!=='.')return!![];}return![];}function skipQuotedExpressionSegment(_0x2403f1,_0x4398a7,_0x3b0a40){let _0xfb1a5a=_0x4398a7+0x1;while(_0xfb1a5a<_0x2403f1['length']){if(_0x2403f1[_0xfb1a5a]==='\x5c'){_0xfb1a5a+=0x2;continue;}if(_0x2403f1[_0xfb1a5a]===_0x3b0a40)return _0xfb1a5a+0x1;_0xfb1a5a+=0x1;}return _0xfb1a5a;}function resolveEffectiveResultVariable(_0x54c1ab,_0x5656d8){const _0x5f40a3=a282_0x44ca9e;if(_0x54c1ab===undefined||_0x54c1ab===null||_0x5656d8&&_0x54c1ab==='')return DEFAULT_SCRIPT_RESULT_VARIABLE;if(typeof _0x54c1ab!==_0x5f40a3(0xc7)||!VARIABLE_PATTERN[_0x5f40a3(0xb1)](_0x54c1ab)||RESERVED_RESULT_VARIABLES[_0x5f40a3(0x188)](_0x54c1ab)||_0x54c1ab['startsWith'](_0x5f40a3(0x1f2)))return undefined;return _0x54c1ab;}function registerResultVariableOwner(_0x21ddf1,_0x37bd94,_0x35a1bd,_0x9d2d65){const _0x2d0618=a282_0x44ca9e;if(_0x21ddf1['has'](_0x37bd94)){_0x9d2d65[_0x2d0618(0xdd)]({'path':'flowJson.nodes','message':_0x2d0618(0x1b4)+_0x37bd94+'.'});return;}_0x21ddf1[_0x2d0618(0xf9)](_0x37bd94,_0x35a1bd);}function setsEqual(_0x2f4c2a,_0x37279b){const _0x41b3b6=a282_0x44ca9e;return _0x2f4c2a[_0x41b3b6(0x16f)]===_0x37279b[_0x41b3b6(0x16f)]&&[..._0x2f4c2a][_0x41b3b6(0x17c)](_0x3a5389=>_0x37279b['has'](_0x3a5389));}function isValidUserId(_0x1fa315){const _0x5a735d=a282_0x44ca9e;if(typeof _0x1fa315===_0x5a735d(0xc7))return _0x1fa315[_0x5a735d(0xd2)]()['length']>0x0;return Number[_0x5a735d(0x176)](_0x1fa315)&&Number(_0x1fa315)>0x0;}function a282_0x58dc(_0x2f0180,_0x4dd807){_0x2f0180=_0x2f0180-0x9c;const _0x222247=a282_0x2222();let _0x58dcb3=_0x222247[_0x2f0180];return _0x58dcb3;}function resolveEdgeEndpoint(_0x278376,_0x2d452f){const _0x31afcd=a282_0x44ca9e;if(typeof _0x278376===_0x31afcd(0xc7)&&_0x278376[_0x31afcd(0xd2)]())return _0x278376[_0x31afcd(0xd2)]();if(typeof _0x2d452f===_0x31afcd(0xc7)&&_0x2d452f[_0x31afcd(0xd2)]())return _0x2d452f[_0x31afcd(0xd2)]();return undefined;}function removeEmptyMetadata(_0x4b9398,_0x5cee1c,_0x5ce9a2,_0x4f049e){const _0x3a8832=a282_0x44ca9e;if(Array[_0x3a8832(0x1f7)](_0x4b9398)){_0x4b9398[_0x3a8832(0x181)]((_0x24667a,_0x534136)=>removeEmptyMetadata(_0x24667a,_0x5cee1c+'['+_0x534136+']',_0x5ce9a2,_0x4f049e));return;}if(!isRecord(_0x4b9398))return;for(const [_0x6b5891,_0x3a49a4]of Object[_0x3a8832(0xfb)](_0x4b9398)){const _0x27d985=_0x5cee1c+'.'+_0x6b5891;if(_0x6b5891===_0x3a8832(0x139)&&isEmptyJsonValue(_0x3a49a4)){delete _0x4b9398[_0x6b5891],_0x4f049e['push'](_0x27d985),_0x5ce9a2['push']({'code':_0x3a8832(0x1fa),'path':_0x27d985,'message':_0x27d985+_0x3a8832(0x15a)});continue;}removeEmptyMetadata(_0x3a49a4,_0x27d985,_0x5ce9a2,_0x4f049e);}}function isEmptyJsonValue(_0x5b74c9){const _0x4a764f=a282_0x44ca9e;if(_0x5b74c9===null||_0x5b74c9===undefined)return!![];if(typeof _0x5b74c9===_0x4a764f(0xc7))return _0x5b74c9[_0x4a764f(0xd2)]()==='';if(Array['isArray'](_0x5b74c9))return _0x5b74c9[_0x4a764f(0x17b)]===0x0;return isRecord(_0x5b74c9)&&Object[_0x4a764f(0x169)](_0x5b74c9)['length']===0x0;}function isRecord(_0x64b9a5){return typeof _0x64b9a5==='object'&&_0x64b9a5!==null&&!Array['isArray'](_0x64b9a5);}function cloneJsonValue(_0x8fd739){const _0xd7e738=a282_0x44ca9e;return JSON[_0xd7e738(0x117)](JSON[_0xd7e738(0xac)](_0x8fd739));}export async function readFlowConfigFile(_0x34cc9c){const _0x52b419=a282_0x44ca9e,_0xa77295=await readFile(resolve(_0x34cc9c),_0x52b419(0x16d));return JSON['parse'](_0xa77295);}
|