From 272eb8639ef7a79008b67642152d9a4c948aa5cd Mon Sep 17 00:00:00 2001 From: Nathan Freeman Date: Wed, 26 Jun 2024 11:03:50 -0500 Subject: [PATCH] prettier --- lib/icicle-tapisui-extension/src/gen/index.ts | 11 +++-- .../src/gen/test-function-2.ts | 32 ++++++------ .../src/gen/test-function.ts | 34 ++++++------- lib/icicle-tapisui-extension/src/index.ts | 8 ++- lib/tapisui-extensions-core/src/extension.ts | 4 +- src/app/_components/Sidebar/Sidebar.tsx | 49 ++++++++++--------- 6 files changed, 72 insertions(+), 66 deletions(-) diff --git a/lib/icicle-tapisui-extension/src/gen/index.ts b/lib/icicle-tapisui-extension/src/gen/index.ts index 4a2666b0d..7e46f6cf5 100644 --- a/lib/icicle-tapisui-extension/src/gen/index.ts +++ b/lib/icicle-tapisui-extension/src/gen/index.ts @@ -1,4 +1,7 @@ -import { Workflows } from "@tapis/tapis-typescript" -import { task as task0 } from "./test-function" -import { task as task1 } from "./test-function-2" -export const tasks: Array = [Workflows.FunctionTaskFromJSON(task0),Workflows.FunctionTaskFromJSON(task1),] \ No newline at end of file +import { Workflows } from '@tapis/tapis-typescript'; +import { task as task0 } from './test-function'; +import { task as task1 } from './test-function-2'; +export const tasks: Array = [ + Workflows.FunctionTaskFromJSON(task0), + Workflows.FunctionTaskFromJSON(task1), +]; diff --git a/lib/icicle-tapisui-extension/src/gen/test-function-2.ts b/lib/icicle-tapisui-extension/src/gen/test-function-2.ts index 27bd58251..e98411905 100644 --- a/lib/icicle-tapisui-extension/src/gen/test-function-2.ts +++ b/lib/icicle-tapisui-extension/src/gen/test-function-2.ts @@ -1,21 +1,19 @@ export const task = { - "id": "test-function-2", - "type": "function", - "execution_profile": { - "flavor": "c1tiny" + id: 'test-function-2', + type: 'function', + execution_profile: { + flavor: 'c1tiny', }, - "installer": "pip", - "packages": [ - "tapipy" - ], - "runtime": "python:3.9", - "entrypoint": "/tapis-owe-functions/functions/tapis-etl-push-pull-data.py", - "git_repositories": [ + installer: 'pip', + packages: ['tapipy'], + runtime: 'python:3.9', + entrypoint: '/tapis-owe-functions/functions/tapis-etl-push-pull-data.py', + git_repositories: [ { - "url": "https://github.com/tapis-project/tapis-workflows-task-templates.git", - "branch": "master", - "directory": "tapis-owe-functions" - } + url: 'https://github.com/tapis-project/tapis-workflows-task-templates.git', + branch: 'master', + directory: 'tapis-owe-functions', + }, ], - "code": "IiIiVHJhbnNmZXJzIGRhdGEgZmlsZXMgZnJvbSB0aGUgUmVtb3RlIE91dGJveCB0byB0aGUgTG9jYWwgSW5ib3giIiIKCiMtLS0tLS0tLSBXb3JrZmxvdyBDb250ZXh0IGltcG9ydDogRE8gTk9UIFJFTU9WRSAtLS0tLS0tLS0tLS0tLS0tCmZyb20gb3dlX3B5dGhvbl9zZGsucnVudGltZSBpbXBvcnQgZXhlY3V0aW9uX2NvbnRleHQgYXMgY3R4CiMtLS0tLS0tLSBXb3JrZmxvdyBDb250ZXh0IGltcG9ydDogRE8gTk9UIFJFTU9WRSAtLS0tLS0tLS0tLS0tLS0tCgppbXBvcnQganNvbiwgb3MKCmZyb20gY29uc3RhbnRzLmV0bCBpbXBvcnQgTE9DS0ZJTEVfRklMRU5BTUUKZnJvbSB1dGlscy5ldGwgaW1wb3J0ICgKICAgIE1hbmlmZXN0TW9kZWwsCiAgICBNYW5pZmVzdHNMb2NrLAogICAgRW51bU1hbmlmZXN0U3RhdHVzLAogICAgRW51bVBoYXNlLAogICAgcG9sbF90cmFuc2Zlcl90YXNrLAogICAgZ2V0X3RhcGlzX2ZpbGVfY29udGVudHNfanNvbiwKICAgIGZldGNoX3N5c3RlbV9maWxlcywKICAgIHZhbGlkYXRlX21hbmlmZXN0X2RhdGFfZmlsZXMsCiAgICBjbGVhbnVwCikKZnJvbSB1dGlscy50YXBpcyBpbXBvcnQgZ2V0X2NsaWVudAoKCiMgSW5zdGFudGlhdGUgYSBUYXBpcyBjbGllbnQKdHJ5OgogICAgY2xpZW50ID0gZ2V0X2NsaWVudCgKICAgICAgICBjdHguZ2V0X2lucHV0KCJUQVBJU19CQVNFX1VSTCIpLAogICAgICAgIHVzZXJuYW1lPWN0eC5nZXRfaW5wdXQoIlRBUElTX1VTRVJOQU1FIiksCiAgICAgICAgcGFzc3dvcmQ9Y3R4LmdldF9pbnB1dCgiVEFQSVNfUEFTU1dPUkQiKSwKICAgICAgICBqd3Q9Y3R4LmdldF9pbnB1dCgiVEFQSVNfSldUIikKICAgICkKZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgogICAgY3R4LnN0ZGVycihzdHIoZSkpCgojIERlc2VyaWFsaXplIHN5c3RlbSBkZXRhaWxzCnRyeToKICAgIGVncmVzc19zeXN0ZW0gPSBqc29uLmxvYWRzKGN0eC5nZXRfaW5wdXQoIkVHUkVTU19TWVNURU0iKSkKICAgIGluZ3Jlc3Nfc3lzdGVtID0ganNvbi5sb2FkcyhjdHguZ2V0X2lucHV0KCJJTkdSRVNTX1NZU1RFTSIpKQpleGNlcHQganNvbi5KU09ORGVjb2RlRXJyb3IgYXMgZToKICAgIGN0eC5zdGRlcnIoMSwgZiJ7ZX0iKQoKIyBTZXQgdGhlIHBoYXNlLWRlcGVuZGVudCB2YXJpYWJsZXMKcGhhc2UgPSBjdHguZ2V0X2lucHV0KCJQSEFTRSIpCgojIFRoZSB0aGF0IGhhcyB0aGUgbWFuaWZlc3QgZmlsZXMgZm9yIHRoaXMgcGhhc2Ugb2YgdGhlIHBpcGVsaW5lCm1hbmlmZXN0c19zeXN0ZW0gPSBpbmdyZXNzX3N5c3RlbSBpZiBwaGFzZSA9PSBFbnVtUGhhc2UuSW5ncmVzcyBlbHNlIGVncmVzc19zeXN0ZW0KCnRyeToKICAgICMgTG9jayB0aGUgbWFuaWZlc3RzIGRpcmVjdG9yeSB0byBwcmV2ZW50IG90aGVyIGNvbmN1cnJlbnQgcGlwZWxpbmUgcnVucwogICAgIyBmcm9tIG11dGF0aW5nIG1hbmlmZXN0IGZpbGVzCiAgICBsb2NrID0gTWFuaWZlc3RzTG9jayhjbGllbnQsIG1hbmlmZXN0c19zeXN0ZW0pCiAgICBsb2NrLmFjcXVpcmUoKQoKICAgICMgUmVnaXN0ZXIgdGhlIGxvY2sgcmVsZWFzZSBob29rIHRvIGJlIGNhbGxlZCBvbiBjYWxsZWQgdG8gc3RkZXJyIGFuZAogICAgIyBzdGRvdXQuIFRoaXMgd2lsbCB1bmxvY2sgdGhlIG1hbmlmZXN0cyBsb2NrIHdoZW4gdGhlIHByb2dyYW0gZXhpdHMgd2l0aCBhbnkKICAgICMgY29kZQogICAgY3R4LmFkZF9ob29rKDEsIGxvY2sucmVsZWFzZSkKICAgIGN0eC5hZGRfaG9vaygwLCBsb2NrLnJlbGVhc2UpCmV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgIGN0eC5zdGRlcnIoMSwgZiJGYWlsZWQgdG8gbG9jayBwaXBlbGluZToge3N0cihlKX0iKQoKIyBMb2FkIGFsbCBtYW5maWVzdCBmaWxlcyBmcm9tIHRoZSBtYW5pZmVzdHMgZGlyZWN0b3J5IG9mIHRoZSBtYW5pZmVzdHMgc3lzdGVtCnRyeToKICAgIG1hbmlmZXN0X2ZpbGVzID0gZmV0Y2hfc3lzdGVtX2ZpbGVzKAogICAgICAgIHN5c3RlbV9pZD1tYW5pZmVzdHNfc3lzdGVtLmdldCgibWFuaWZlc3RzIikuZ2V0KCJzeXN0ZW1faWQiKSwKICAgICAgICBwYXRoPW1hbmlmZXN0c19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInBhdGgiKSwKICAgICAgICBjbGllbnQ9Y2xpZW50LAogICAgICAgIGluY2x1ZGVfcGF0dGVybnM9bWFuaWZlc3RzX3N5c3RlbS5nZXQoIm1hbmlmZXN0cyIpLmdldCgiaW5jbHVkZV9wYXR0ZXJucyIpLAogICAgICAgIGV4Y2x1ZGVfcGF0dGVybnM9WwogICAgICAgICAgICAqbWFuaWZlc3RzX3N5c3RlbS5nZXQoIm1hbmlmZXN0cyIpLmdldCgiZXhjbHVkZV9wYXR0ZXJucyIpLAogICAgICAgICAgICBMT0NLRklMRV9GSUxFTkFNRSAjIElnbm9yZSB0aGUgbG9ja2ZpbGUuCiAgICAgICAgXQogICAgKQpleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICBjdHguc3RkZXJyKDEsIGYiRmFpbGVkIHRvIGZldGNoIG1hbmlmZXN0IGZpbGVzOiB7ZX0iKQoKIyBMb2FkIG1hbmlmZXN0cyB0aGF0IGhhdmUgdGhlIGN1cnJlbnQgcGhhc2UKdHJ5OgogICAgbWFuaWZlc3RzID0gW10KICAgIGZvciBtYW5pZmVzdF9maWxlIGluIG1hbmlmZXN0X2ZpbGVzOgogICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3RNb2RlbCgKICAgICAgICAgICAgZmlsZW5hbWU9bWFuaWZlc3RfZmlsZS5uYW1lLAogICAgICAgICAgICBwYXRoPW1hbmlmZXN0X2ZpbGUucGF0aCwKICAgICAgICAgICAgdXJsPW1hbmlmZXN0X2ZpbGUudXJsLAogICAgICAgICAgICAqKmpzb24ubG9hZHMoCiAgICAgICAgICAgICAgICBnZXRfdGFwaXNfZmlsZV9jb250ZW50c19qc29uKAogICAgICAgICAgICAgICAgICAgIGNsaWVudCwKICAgICAgICAgICAgICAgICAgICBtYW5pZmVzdHNfc3lzdGVtLmdldCgibWFuaWZlc3RzIikuZ2V0KCJzeXN0ZW1faWQiKSwKICAgICAgICAgICAgICAgICAgICBtYW5pZmVzdF9maWxlLnBhdGgKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICkKCiAgICAgICAgaWYgKAogICAgICAgICAgICBtYW5pZmVzdC5waGFzZSA9PSBwaGFzZQogICAgICAgICAgICBhbmQgbWFuaWZlc3Quc3RhdHVzICE9IEVudW1NYW5pZmVzdFN0YXR1cy5Db21wbGV0ZWQKICAgICAgICApOgogICAgICAgICAgICBtYW5pZmVzdHMuYXBwZW5kKG1hbmlmZXN0KQpleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICBjdHguc3RkZXJyKDEsIGYiRmFpbGVkIHRvIGluaXRpYWxpemUgbWFuaWZlc3RzOiB7ZX0iKQoKIyBUcmFuc2ZlciBhbGwgZmlsZXMgaW4gZWFjaCBtYW5pZmVzdCB0byB0aGUgZGF0YSBkaXJlY3Rvcnkgb2YgdGhlIGluZ3Jlc3Mgc3lzdGVtCmZvciBtYW5pZmVzdCBpbiBtYW5pZmVzdHM6CiAgICAjIFdoaWNoIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBjb3JyZWN0IGRhdGEgZmlsZXMgZGVwZW5kcyBvbiB0aGUgcGhhc2UuIEZvciB0aGUKICAgICMgaW5ncmVzcyBwaGFzZSBpdCdzIHJlbW90ZV9maWxlcyBhbmQgZm9yIGVncmVzcyBpdCdzIGxvY2FsX2ZpbGVzCiAgICBkYXRhX2ZpbGVzID0gZ2V0YXR0cihtYW5pZmVzdCwgImxvY2FsX2ZpbGVzIikKICAgIGlmIHBoYXNlID09IEVudW1QaGFzZS5JbmdyZXNzOgogICAgICAgIGRhdGFfZmlsZXMgPSBnZXRhdHRyKG1hbmlmZXN0LCAicmVtb3RlX2ZpbGVzIikKCiAgICAjIENoZWNrIHRvIHNlZSBpZiB0aGUgZGF0YSBmaWxlcyBpbiB0aGUgbWFuaWZlc3RzIHBhc3MgZGF0YSBpbnRlZ3JpdHkgY2hlY2tzCiAgICB0cnk6CiAgICAgICAgdmFsaWRhdGVkLCBlcnIgPSB2YWxpZGF0ZV9tYW5pZmVzdF9kYXRhX2ZpbGVzKAogICAgICAgICAgICBlZ3Jlc3Nfc3lzdGVtLAogICAgICAgICAgICBkYXRhX2ZpbGVzLAogICAgICAgICAgICBjbGllbnQKICAgICAgICApCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgY3R4LnN0ZGVycigxLCBmIkVycm9yIHZhbGlkYXRpbmcgZGF0YSBpbnRlZ3JpdHk6IHtlfSIpCgogICAgdHJ5OgogICAgICAgICMgTG9nIHRoZSBmYWlsZWQgZGF0YSBpbnRlZ3JpdHkgY2hlY2sgaW4gdGhlIG1hbmlmZXN0CiAgICAgICAgaWYgbm90IHZhbGlkYXRlZDoKICAgICAgICAgICAgbWFuaWZlc3QubG9nKGYiRGF0YSBpbnRlZ3JpdHkgY2hlY2tzIGZhaWxlZCB8IHtlcnJ9IikKICAgICAgICAgICAgbWFuaWZlc3Quc2V0X3N0YXR1cyhFbnVtTWFuaWZlc3RTdGF0dXMuSW50ZWdyaXR5Q2hlY2tGYWlsZWQpCiAgICAgICAgICAgIG1hbmlmZXN0LnNhdmUoaW5ncmVzc19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCiAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgCiAgICAgICAgbWFuaWZlc3QubG9nKGYiRGF0YSBpbnRlZ3JpdHkgY2hlY2tzIHN1Y2Nlc3NmdWwiKQogICAgICAgIG1hbmlmZXN0LnNhdmUoaW5ncmVzc19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgY3R4LnN0ZGVycigxLCBmIkVycm9yIHVwZGF0aW5nIG1hbmlmZXN0OiB7ZX0iKQoKICAgIGVsZW1lbnRzID0gW10KICAgIGZvciBkYXRhX2ZpbGUgaW4gZGF0YV9maWxlczoKICAgICAgICAjIEJ1aWxkIHRoZSB0cmFuc2ZlciBlbGVtZW50cwogICAgICAgIHVybCA9IGRhdGFfZmlsZS5nZXQoInVybCIpCiAgICAgICAgZGVzdGluYXRpb25fc3lzdGVtX2lkID0gaW5ncmVzc19zeXN0ZW0uZ2V0KCJkYXRhIikuZ2V0KCJzeXN0ZW1faWQiKQogICAgICAgIGRlc3RpbmF0aW9uX3BhdGggPSBpbmdyZXNzX3N5c3RlbS5nZXQoImRhdGEiKS5nZXQoInBhdGgiKQogICAgICAgIGRlc3RpbmF0aW9uX2ZpbGVuYW1lID0gdXJsLnJzcGxpdCgiLyIsIDEpWzFdCiAgICAgICAgZGVzdGluYXRpb25fdXJpID0gZiJ0YXBpczovL3tkZXN0aW5hdGlvbl9zeXN0ZW1faWR9L3tvcy5wYXRoLmpvaW4oZGVzdGluYXRpb25fcGF0aC5zdHJpcCgnLycpLCBkZXN0aW5hdGlvbl9maWxlbmFtZSl9IgogICAgICAgIGVsZW1lbnRzLmFwcGVuZCh7CiAgICAgICAgICAgICJzb3VyY2VVUkkiOiBkYXRhX2ZpbGUuZ2V0KCJ1cmwiKSwKICAgICAgICAgICAgImRlc3RpbmF0aW9uVVJJIjogZGVzdGluYXRpb25fdXJpCiAgICAgICAgfSkKCiAgICAjIFRyYW5zZmVyIGVsZW1lbnRzCiAgICB0cnk6CiAgICAgICAgbWFuaWZlc3QubG9nKGYiU3RhcnRpbmcgdHJhbnNmZXIgb2Yge2xlbihlbGVtZW50cyl9IGRhdGEgZmlsZXMgZnJvbSB0aGUgcmVtb3RlIG91dGJveCB0byB0aGUgbG9jYWwgaW5ib3giKQogICAgICAgICMgU3RhcnQgdGhlIHRyYW5zZmVyIHRhc2sgYW5kIHBvbGwgdW50aWwgdGVybWluYWwgc3RhdGUKICAgICAgICB0YXNrID0gY2xpZW50LmZpbGVzLmNyZWF0ZVRyYW5zZmVyVGFzayhlbGVtZW50cz1lbGVtZW50cykKICAgICAgICB0YXNrID0gcG9sbF90cmFuc2Zlcl90YXNrKGNsaWVudCwgdGFzaykKICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICBjdHguc3RkZXJyKDEsIGYiRXJyb3IgdHJhbnNmZXJyaW5nIGZpbGVzOiB7ZX0iKQogICAgCiAgICAjIEFkZCB0aGUgdHJhbnNmZXIgZGF0YSB0byB0aGUgbWFuZmllc3QKICAgIG1hbmlmZXN0LnRyYW5zZmVycy5hcHBlbmQodGFzay51dWlkKQoKICAgIHRyeToKICAgICAgICBpZiB0YXNrLnN0YXR1cyAhPSAiQ09NUExFVEVEIjoKICAgICAgICAgICAgdGFza19lcnIgPSBmIlRyYW5zZmVyIHRhc2sgZmFpbGVkIHwgVGFzayBVVUlEOiB7dGFzay51dWlkfSB8IFN0YXR1czogJ3t0YXNrLnN0YXR1c30nIHwgRXJyb3I6IHt0YXNrLmVycm9yTWVzc2FnZX0iCiAgICAgICAgICAgIG1hbmlmZXN0LnNldF9zdGF0dXMoRW51bU1hbmlmZXN0U3RhdHVzLkZhaWxlZCkKICAgICAgICAgICAgbWFuaWZlc3QubG9nKHRhc2tfZXJyKQogICAgICAgICAgICBtYW5pZmVzdC5zYXZlKG1hbmlmZXN0c19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCiAgICAgICAgICAgIGN0eC5zdGRlcnIoMSwgdGFza19lcnIpCgogICAgICAgIG1hbmlmZXN0LmxvZyhmIlRyYW5zZmVyIHRhc2sgY29tcGxldGVkIHwgVGFzayBVVUlEOiB7dGFzay51dWlkfSIpCiAgICAgICAgbWFuaWZlc3Quc2V0X3N0YXR1cyhFbnVtTWFuaWZlc3RTdGF0dXMuQ29tcGxldGVkKQogICAgICAgIG1hbmlmZXN0LnNhdmUobWFuaWZlc3RzX3N5c3RlbS5nZXQoIm1hbmlmZXN0cyIpLmdldCgic3lzdGVtX2lkIiksIGNsaWVudCkKICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICBjdHguc3RkZXJyKDEsIGYiRXJyb3IgdXBkYXRpbmcgbWFuaWZlc3RzIGFmdGVyIHRyYW5zZmVyOiB7ZX0iKQoKdHJ5OgogICAgaWYgcGhhc2UgPT0gRW51bVBoYXNlLkluZ3Jlc3M6CiAgICAgICAgIyBNb2RpZnkgdGhlIHBhdGggYW5kIHVybCBvZiB0aGUgZmlsZXMgdHJhY2tlZCBpbiB0aGUgbWFuaWZlc3QgdG8gcmVwbGFjZQogICAgICAgICMgZWdyZXNzIHN5c3RlbSBwYXRoIGFuZCBzeXN0ZW0gaWQgd2l0aCB0aGUgaW5ncmVzcyBzeXN0ZW0gZGF0YSBwYXRoIGFuZCAKICAgICAgICAjIGluZ3Jlc3Mgc3lzdGVtIHRyYW5zZm9ybSBzeXN0ZW0gaWQKICAgICAgICB1bmNvbnZlcnRlZF9tYW5pZmVzdHMgPSBbCiAgICAgICAgICAgIG1hbmlmZXN0IGZvciBtYW5pZmVzdCBpbiBtYW5pZmVzdHMKICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgbWFuaWZlc3QucGhhc2UgPT0gRW51bVBoYXNlLkluZ3Jlc3MKICAgICAgICAgICAgICAgIGFuZCBtYW5pZmVzdC5zdGF0dXMgPT0gRW51bU1hbmlmZXN0U3RhdHVzLkNvbXBsZXRlZAogICAgICAgICAgICApCiAgICAgICAgXQoKICAgICAgICBmb3IgdW5jb252ZXJ0ZWRfbWFuaWZlc3QgaW4gdW5jb252ZXJ0ZWRfbWFuaWZlc3RzOgogICAgICAgICAgICBtb2RpZmllZF9kYXRhX2ZpbGVzID0gW10KICAgICAgICAgICAgZm9yIGRhdGFfZmlsZSBpbiB1bmNvbnZlcnRlZF9tYW5pZmVzdC5yZW1vdGVfZmlsZXM6CiAgICAgICAgICAgICAgICBpbmdyZXNzX3N5c3RlbV9pZCA9IGluZ3Jlc3Nfc3lzdGVtLmdldCgiZGF0YSIpLmdldCgic3lzdGVtX2lkIikKICAgICAgICAgICAgICAgIGluZ3Jlc3NfZGF0YV9maWxlc19wYXRoID0gaW5ncmVzc19zeXN0ZW0uZ2V0KCJkYXRhIikuZ2V0KCJwYXRoIikKICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oZiIve2luZ3Jlc3NfZGF0YV9maWxlc19wYXRoLnN0cmlwKCcvJyl9IiwgZGF0YV9maWxlWyJuYW1lIl0pCiAgICAgICAgICAgICAgICBtb2RpZmllZF9kYXRhX2ZpbGVzLmFwcGVuZCh7CiAgICAgICAgICAgICAgICAgICAgKipkYXRhX2ZpbGUsCiAgICAgICAgICAgICAgICAgICAgInVybCI6IGYndGFwaXM6Ly97aW5ncmVzc19zeXN0ZW1faWR9L3tvcy5wYXRoLmpvaW4ocGF0aCwgZGF0YV9maWxlWyJuYW1lIl0pLnN0cmlwKCIvIil9JywKICAgICAgICAgICAgICAgICAgICAicGF0aCI6IHBhdGgKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIAogICAgICAgICAgICB1bmNvbnZlcnRlZF9tYW5pZmVzdC5sb2NhbF9maWxlcyA9IG1vZGlmaWVkX2RhdGFfZmlsZXMKICAgICAgICAgICAgdW5jb252ZXJ0ZWRfbWFuaWZlc3Quc2V0X3BoYXNlKEVudW1QaGFzZS5UcmFuc2Zvcm0pCiAgICAgICAgICAgIHVuY29udmVydGVkX21hbmlmZXN0LnNhdmUoaW5ncmVzc19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCmV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgIGN0eC5zdGRlcnIoMSwgZiJFcnJvciBjb252ZXJ0aW5nIG1hbmlmZXN0OiB7ZX0iKQoKY2xlYW51cChjdHgpCgo=" -} \ No newline at end of file + code: 'IiIiVHJhbnNmZXJzIGRhdGEgZmlsZXMgZnJvbSB0aGUgUmVtb3RlIE91dGJveCB0byB0aGUgTG9jYWwgSW5ib3giIiIKCiMtLS0tLS0tLSBXb3JrZmxvdyBDb250ZXh0IGltcG9ydDogRE8gTk9UIFJFTU9WRSAtLS0tLS0tLS0tLS0tLS0tCmZyb20gb3dlX3B5dGhvbl9zZGsucnVudGltZSBpbXBvcnQgZXhlY3V0aW9uX2NvbnRleHQgYXMgY3R4CiMtLS0tLS0tLSBXb3JrZmxvdyBDb250ZXh0IGltcG9ydDogRE8gTk9UIFJFTU9WRSAtLS0tLS0tLS0tLS0tLS0tCgppbXBvcnQganNvbiwgb3MKCmZyb20gY29uc3RhbnRzLmV0bCBpbXBvcnQgTE9DS0ZJTEVfRklMRU5BTUUKZnJvbSB1dGlscy5ldGwgaW1wb3J0ICgKICAgIE1hbmlmZXN0TW9kZWwsCiAgICBNYW5pZmVzdHNMb2NrLAogICAgRW51bU1hbmlmZXN0U3RhdHVzLAogICAgRW51bVBoYXNlLAogICAgcG9sbF90cmFuc2Zlcl90YXNrLAogICAgZ2V0X3RhcGlzX2ZpbGVfY29udGVudHNfanNvbiwKICAgIGZldGNoX3N5c3RlbV9maWxlcywKICAgIHZhbGlkYXRlX21hbmlmZXN0X2RhdGFfZmlsZXMsCiAgICBjbGVhbnVwCikKZnJvbSB1dGlscy50YXBpcyBpbXBvcnQgZ2V0X2NsaWVudAoKCiMgSW5zdGFudGlhdGUgYSBUYXBpcyBjbGllbnQKdHJ5OgogICAgY2xpZW50ID0gZ2V0X2NsaWVudCgKICAgICAgICBjdHguZ2V0X2lucHV0KCJUQVBJU19CQVNFX1VSTCIpLAogICAgICAgIHVzZXJuYW1lPWN0eC5nZXRfaW5wdXQoIlRBUElTX1VTRVJOQU1FIiksCiAgICAgICAgcGFzc3dvcmQ9Y3R4LmdldF9pbnB1dCgiVEFQSVNfUEFTU1dPUkQiKSwKICAgICAgICBqd3Q9Y3R4LmdldF9pbnB1dCgiVEFQSVNfSldUIikKICAgICkKZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgogICAgY3R4LnN0ZGVycihzdHIoZSkpCgojIERlc2VyaWFsaXplIHN5c3RlbSBkZXRhaWxzCnRyeToKICAgIGVncmVzc19zeXN0ZW0gPSBqc29uLmxvYWRzKGN0eC5nZXRfaW5wdXQoIkVHUkVTU19TWVNURU0iKSkKICAgIGluZ3Jlc3Nfc3lzdGVtID0ganNvbi5sb2FkcyhjdHguZ2V0X2lucHV0KCJJTkdSRVNTX1NZU1RFTSIpKQpleGNlcHQganNvbi5KU09ORGVjb2RlRXJyb3IgYXMgZToKICAgIGN0eC5zdGRlcnIoMSwgZiJ7ZX0iKQoKIyBTZXQgdGhlIHBoYXNlLWRlcGVuZGVudCB2YXJpYWJsZXMKcGhhc2UgPSBjdHguZ2V0X2lucHV0KCJQSEFTRSIpCgojIFRoZSB0aGF0IGhhcyB0aGUgbWFuaWZlc3QgZmlsZXMgZm9yIHRoaXMgcGhhc2Ugb2YgdGhlIHBpcGVsaW5lCm1hbmlmZXN0c19zeXN0ZW0gPSBpbmdyZXNzX3N5c3RlbSBpZiBwaGFzZSA9PSBFbnVtUGhhc2UuSW5ncmVzcyBlbHNlIGVncmVzc19zeXN0ZW0KCnRyeToKICAgICMgTG9jayB0aGUgbWFuaWZlc3RzIGRpcmVjdG9yeSB0byBwcmV2ZW50IG90aGVyIGNvbmN1cnJlbnQgcGlwZWxpbmUgcnVucwogICAgIyBmcm9tIG11dGF0aW5nIG1hbmlmZXN0IGZpbGVzCiAgICBsb2NrID0gTWFuaWZlc3RzTG9jayhjbGllbnQsIG1hbmlmZXN0c19zeXN0ZW0pCiAgICBsb2NrLmFjcXVpcmUoKQoKICAgICMgUmVnaXN0ZXIgdGhlIGxvY2sgcmVsZWFzZSBob29rIHRvIGJlIGNhbGxlZCBvbiBjYWxsZWQgdG8gc3RkZXJyIGFuZAogICAgIyBzdGRvdXQuIFRoaXMgd2lsbCB1bmxvY2sgdGhlIG1hbmlmZXN0cyBsb2NrIHdoZW4gdGhlIHByb2dyYW0gZXhpdHMgd2l0aCBhbnkKICAgICMgY29kZQogICAgY3R4LmFkZF9ob29rKDEsIGxvY2sucmVsZWFzZSkKICAgIGN0eC5hZGRfaG9vaygwLCBsb2NrLnJlbGVhc2UpCmV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgIGN0eC5zdGRlcnIoMSwgZiJGYWlsZWQgdG8gbG9jayBwaXBlbGluZToge3N0cihlKX0iKQoKIyBMb2FkIGFsbCBtYW5maWVzdCBmaWxlcyBmcm9tIHRoZSBtYW5pZmVzdHMgZGlyZWN0b3J5IG9mIHRoZSBtYW5pZmVzdHMgc3lzdGVtCnRyeToKICAgIG1hbmlmZXN0X2ZpbGVzID0gZmV0Y2hfc3lzdGVtX2ZpbGVzKAogICAgICAgIHN5c3RlbV9pZD1tYW5pZmVzdHNfc3lzdGVtLmdldCgibWFuaWZlc3RzIikuZ2V0KCJzeXN0ZW1faWQiKSwKICAgICAgICBwYXRoPW1hbmlmZXN0c19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInBhdGgiKSwKICAgICAgICBjbGllbnQ9Y2xpZW50LAogICAgICAgIGluY2x1ZGVfcGF0dGVybnM9bWFuaWZlc3RzX3N5c3RlbS5nZXQoIm1hbmlmZXN0cyIpLmdldCgiaW5jbHVkZV9wYXR0ZXJucyIpLAogICAgICAgIGV4Y2x1ZGVfcGF0dGVybnM9WwogICAgICAgICAgICAqbWFuaWZlc3RzX3N5c3RlbS5nZXQoIm1hbmlmZXN0cyIpLmdldCgiZXhjbHVkZV9wYXR0ZXJucyIpLAogICAgICAgICAgICBMT0NLRklMRV9GSUxFTkFNRSAjIElnbm9yZSB0aGUgbG9ja2ZpbGUuCiAgICAgICAgXQogICAgKQpleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICBjdHguc3RkZXJyKDEsIGYiRmFpbGVkIHRvIGZldGNoIG1hbmlmZXN0IGZpbGVzOiB7ZX0iKQoKIyBMb2FkIG1hbmlmZXN0cyB0aGF0IGhhdmUgdGhlIGN1cnJlbnQgcGhhc2UKdHJ5OgogICAgbWFuaWZlc3RzID0gW10KICAgIGZvciBtYW5pZmVzdF9maWxlIGluIG1hbmlmZXN0X2ZpbGVzOgogICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3RNb2RlbCgKICAgICAgICAgICAgZmlsZW5hbWU9bWFuaWZlc3RfZmlsZS5uYW1lLAogICAgICAgICAgICBwYXRoPW1hbmlmZXN0X2ZpbGUucGF0aCwKICAgICAgICAgICAgdXJsPW1hbmlmZXN0X2ZpbGUudXJsLAogICAgICAgICAgICAqKmpzb24ubG9hZHMoCiAgICAgICAgICAgICAgICBnZXRfdGFwaXNfZmlsZV9jb250ZW50c19qc29uKAogICAgICAgICAgICAgICAgICAgIGNsaWVudCwKICAgICAgICAgICAgICAgICAgICBtYW5pZmVzdHNfc3lzdGVtLmdldCgibWFuaWZlc3RzIikuZ2V0KCJzeXN0ZW1faWQiKSwKICAgICAgICAgICAgICAgICAgICBtYW5pZmVzdF9maWxlLnBhdGgKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICkKCiAgICAgICAgaWYgKAogICAgICAgICAgICBtYW5pZmVzdC5waGFzZSA9PSBwaGFzZQogICAgICAgICAgICBhbmQgbWFuaWZlc3Quc3RhdHVzICE9IEVudW1NYW5pZmVzdFN0YXR1cy5Db21wbGV0ZWQKICAgICAgICApOgogICAgICAgICAgICBtYW5pZmVzdHMuYXBwZW5kKG1hbmlmZXN0KQpleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICBjdHguc3RkZXJyKDEsIGYiRmFpbGVkIHRvIGluaXRpYWxpemUgbWFuaWZlc3RzOiB7ZX0iKQoKIyBUcmFuc2ZlciBhbGwgZmlsZXMgaW4gZWFjaCBtYW5pZmVzdCB0byB0aGUgZGF0YSBkaXJlY3Rvcnkgb2YgdGhlIGluZ3Jlc3Mgc3lzdGVtCmZvciBtYW5pZmVzdCBpbiBtYW5pZmVzdHM6CiAgICAjIFdoaWNoIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBjb3JyZWN0IGRhdGEgZmlsZXMgZGVwZW5kcyBvbiB0aGUgcGhhc2UuIEZvciB0aGUKICAgICMgaW5ncmVzcyBwaGFzZSBpdCdzIHJlbW90ZV9maWxlcyBhbmQgZm9yIGVncmVzcyBpdCdzIGxvY2FsX2ZpbGVzCiAgICBkYXRhX2ZpbGVzID0gZ2V0YXR0cihtYW5pZmVzdCwgImxvY2FsX2ZpbGVzIikKICAgIGlmIHBoYXNlID09IEVudW1QaGFzZS5JbmdyZXNzOgogICAgICAgIGRhdGFfZmlsZXMgPSBnZXRhdHRyKG1hbmlmZXN0LCAicmVtb3RlX2ZpbGVzIikKCiAgICAjIENoZWNrIHRvIHNlZSBpZiB0aGUgZGF0YSBmaWxlcyBpbiB0aGUgbWFuaWZlc3RzIHBhc3MgZGF0YSBpbnRlZ3JpdHkgY2hlY2tzCiAgICB0cnk6CiAgICAgICAgdmFsaWRhdGVkLCBlcnIgPSB2YWxpZGF0ZV9tYW5pZmVzdF9kYXRhX2ZpbGVzKAogICAgICAgICAgICBlZ3Jlc3Nfc3lzdGVtLAogICAgICAgICAgICBkYXRhX2ZpbGVzLAogICAgICAgICAgICBjbGllbnQKICAgICAgICApCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgY3R4LnN0ZGVycigxLCBmIkVycm9yIHZhbGlkYXRpbmcgZGF0YSBpbnRlZ3JpdHk6IHtlfSIpCgogICAgdHJ5OgogICAgICAgICMgTG9nIHRoZSBmYWlsZWQgZGF0YSBpbnRlZ3JpdHkgY2hlY2sgaW4gdGhlIG1hbmlmZXN0CiAgICAgICAgaWYgbm90IHZhbGlkYXRlZDoKICAgICAgICAgICAgbWFuaWZlc3QubG9nKGYiRGF0YSBpbnRlZ3JpdHkgY2hlY2tzIGZhaWxlZCB8IHtlcnJ9IikKICAgICAgICAgICAgbWFuaWZlc3Quc2V0X3N0YXR1cyhFbnVtTWFuaWZlc3RTdGF0dXMuSW50ZWdyaXR5Q2hlY2tGYWlsZWQpCiAgICAgICAgICAgIG1hbmlmZXN0LnNhdmUoaW5ncmVzc19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCiAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgCiAgICAgICAgbWFuaWZlc3QubG9nKGYiRGF0YSBpbnRlZ3JpdHkgY2hlY2tzIHN1Y2Nlc3NmdWwiKQogICAgICAgIG1hbmlmZXN0LnNhdmUoaW5ncmVzc19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgY3R4LnN0ZGVycigxLCBmIkVycm9yIHVwZGF0aW5nIG1hbmlmZXN0OiB7ZX0iKQoKICAgIGVsZW1lbnRzID0gW10KICAgIGZvciBkYXRhX2ZpbGUgaW4gZGF0YV9maWxlczoKICAgICAgICAjIEJ1aWxkIHRoZSB0cmFuc2ZlciBlbGVtZW50cwogICAgICAgIHVybCA9IGRhdGFfZmlsZS5nZXQoInVybCIpCiAgICAgICAgZGVzdGluYXRpb25fc3lzdGVtX2lkID0gaW5ncmVzc19zeXN0ZW0uZ2V0KCJkYXRhIikuZ2V0KCJzeXN0ZW1faWQiKQogICAgICAgIGRlc3RpbmF0aW9uX3BhdGggPSBpbmdyZXNzX3N5c3RlbS5nZXQoImRhdGEiKS5nZXQoInBhdGgiKQogICAgICAgIGRlc3RpbmF0aW9uX2ZpbGVuYW1lID0gdXJsLnJzcGxpdCgiLyIsIDEpWzFdCiAgICAgICAgZGVzdGluYXRpb25fdXJpID0gZiJ0YXBpczovL3tkZXN0aW5hdGlvbl9zeXN0ZW1faWR9L3tvcy5wYXRoLmpvaW4oZGVzdGluYXRpb25fcGF0aC5zdHJpcCgnLycpLCBkZXN0aW5hdGlvbl9maWxlbmFtZSl9IgogICAgICAgIGVsZW1lbnRzLmFwcGVuZCh7CiAgICAgICAgICAgICJzb3VyY2VVUkkiOiBkYXRhX2ZpbGUuZ2V0KCJ1cmwiKSwKICAgICAgICAgICAgImRlc3RpbmF0aW9uVVJJIjogZGVzdGluYXRpb25fdXJpCiAgICAgICAgfSkKCiAgICAjIFRyYW5zZmVyIGVsZW1lbnRzCiAgICB0cnk6CiAgICAgICAgbWFuaWZlc3QubG9nKGYiU3RhcnRpbmcgdHJhbnNmZXIgb2Yge2xlbihlbGVtZW50cyl9IGRhdGEgZmlsZXMgZnJvbSB0aGUgcmVtb3RlIG91dGJveCB0byB0aGUgbG9jYWwgaW5ib3giKQogICAgICAgICMgU3RhcnQgdGhlIHRyYW5zZmVyIHRhc2sgYW5kIHBvbGwgdW50aWwgdGVybWluYWwgc3RhdGUKICAgICAgICB0YXNrID0gY2xpZW50LmZpbGVzLmNyZWF0ZVRyYW5zZmVyVGFzayhlbGVtZW50cz1lbGVtZW50cykKICAgICAgICB0YXNrID0gcG9sbF90cmFuc2Zlcl90YXNrKGNsaWVudCwgdGFzaykKICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICBjdHguc3RkZXJyKDEsIGYiRXJyb3IgdHJhbnNmZXJyaW5nIGZpbGVzOiB7ZX0iKQogICAgCiAgICAjIEFkZCB0aGUgdHJhbnNmZXIgZGF0YSB0byB0aGUgbWFuZmllc3QKICAgIG1hbmlmZXN0LnRyYW5zZmVycy5hcHBlbmQodGFzay51dWlkKQoKICAgIHRyeToKICAgICAgICBpZiB0YXNrLnN0YXR1cyAhPSAiQ09NUExFVEVEIjoKICAgICAgICAgICAgdGFza19lcnIgPSBmIlRyYW5zZmVyIHRhc2sgZmFpbGVkIHwgVGFzayBVVUlEOiB7dGFzay51dWlkfSB8IFN0YXR1czogJ3t0YXNrLnN0YXR1c30nIHwgRXJyb3I6IHt0YXNrLmVycm9yTWVzc2FnZX0iCiAgICAgICAgICAgIG1hbmlmZXN0LnNldF9zdGF0dXMoRW51bU1hbmlmZXN0U3RhdHVzLkZhaWxlZCkKICAgICAgICAgICAgbWFuaWZlc3QubG9nKHRhc2tfZXJyKQogICAgICAgICAgICBtYW5pZmVzdC5zYXZlKG1hbmlmZXN0c19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCiAgICAgICAgICAgIGN0eC5zdGRlcnIoMSwgdGFza19lcnIpCgogICAgICAgIG1hbmlmZXN0LmxvZyhmIlRyYW5zZmVyIHRhc2sgY29tcGxldGVkIHwgVGFzayBVVUlEOiB7dGFzay51dWlkfSIpCiAgICAgICAgbWFuaWZlc3Quc2V0X3N0YXR1cyhFbnVtTWFuaWZlc3RTdGF0dXMuQ29tcGxldGVkKQogICAgICAgIG1hbmlmZXN0LnNhdmUobWFuaWZlc3RzX3N5c3RlbS5nZXQoIm1hbmlmZXN0cyIpLmdldCgic3lzdGVtX2lkIiksIGNsaWVudCkKICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICBjdHguc3RkZXJyKDEsIGYiRXJyb3IgdXBkYXRpbmcgbWFuaWZlc3RzIGFmdGVyIHRyYW5zZmVyOiB7ZX0iKQoKdHJ5OgogICAgaWYgcGhhc2UgPT0gRW51bVBoYXNlLkluZ3Jlc3M6CiAgICAgICAgIyBNb2RpZnkgdGhlIHBhdGggYW5kIHVybCBvZiB0aGUgZmlsZXMgdHJhY2tlZCBpbiB0aGUgbWFuaWZlc3QgdG8gcmVwbGFjZQogICAgICAgICMgZWdyZXNzIHN5c3RlbSBwYXRoIGFuZCBzeXN0ZW0gaWQgd2l0aCB0aGUgaW5ncmVzcyBzeXN0ZW0gZGF0YSBwYXRoIGFuZCAKICAgICAgICAjIGluZ3Jlc3Mgc3lzdGVtIHRyYW5zZm9ybSBzeXN0ZW0gaWQKICAgICAgICB1bmNvbnZlcnRlZF9tYW5pZmVzdHMgPSBbCiAgICAgICAgICAgIG1hbmlmZXN0IGZvciBtYW5pZmVzdCBpbiBtYW5pZmVzdHMKICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgbWFuaWZlc3QucGhhc2UgPT0gRW51bVBoYXNlLkluZ3Jlc3MKICAgICAgICAgICAgICAgIGFuZCBtYW5pZmVzdC5zdGF0dXMgPT0gRW51bU1hbmlmZXN0U3RhdHVzLkNvbXBsZXRlZAogICAgICAgICAgICApCiAgICAgICAgXQoKICAgICAgICBmb3IgdW5jb252ZXJ0ZWRfbWFuaWZlc3QgaW4gdW5jb252ZXJ0ZWRfbWFuaWZlc3RzOgogICAgICAgICAgICBtb2RpZmllZF9kYXRhX2ZpbGVzID0gW10KICAgICAgICAgICAgZm9yIGRhdGFfZmlsZSBpbiB1bmNvbnZlcnRlZF9tYW5pZmVzdC5yZW1vdGVfZmlsZXM6CiAgICAgICAgICAgICAgICBpbmdyZXNzX3N5c3RlbV9pZCA9IGluZ3Jlc3Nfc3lzdGVtLmdldCgiZGF0YSIpLmdldCgic3lzdGVtX2lkIikKICAgICAgICAgICAgICAgIGluZ3Jlc3NfZGF0YV9maWxlc19wYXRoID0gaW5ncmVzc19zeXN0ZW0uZ2V0KCJkYXRhIikuZ2V0KCJwYXRoIikKICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oZiIve2luZ3Jlc3NfZGF0YV9maWxlc19wYXRoLnN0cmlwKCcvJyl9IiwgZGF0YV9maWxlWyJuYW1lIl0pCiAgICAgICAgICAgICAgICBtb2RpZmllZF9kYXRhX2ZpbGVzLmFwcGVuZCh7CiAgICAgICAgICAgICAgICAgICAgKipkYXRhX2ZpbGUsCiAgICAgICAgICAgICAgICAgICAgInVybCI6IGYndGFwaXM6Ly97aW5ncmVzc19zeXN0ZW1faWR9L3tvcy5wYXRoLmpvaW4ocGF0aCwgZGF0YV9maWxlWyJuYW1lIl0pLnN0cmlwKCIvIil9JywKICAgICAgICAgICAgICAgICAgICAicGF0aCI6IHBhdGgKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIAogICAgICAgICAgICB1bmNvbnZlcnRlZF9tYW5pZmVzdC5sb2NhbF9maWxlcyA9IG1vZGlmaWVkX2RhdGFfZmlsZXMKICAgICAgICAgICAgdW5jb252ZXJ0ZWRfbWFuaWZlc3Quc2V0X3BoYXNlKEVudW1QaGFzZS5UcmFuc2Zvcm0pCiAgICAgICAgICAgIHVuY29udmVydGVkX21hbmlmZXN0LnNhdmUoaW5ncmVzc19zeXN0ZW0uZ2V0KCJtYW5pZmVzdHMiKS5nZXQoInN5c3RlbV9pZCIpLCBjbGllbnQpCmV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgIGN0eC5zdGRlcnIoMSwgZiJFcnJvciBjb252ZXJ0aW5nIG1hbmlmZXN0OiB7ZX0iKQoKY2xlYW51cChjdHgpCgo=', +}; diff --git a/lib/icicle-tapisui-extension/src/gen/test-function.ts b/lib/icicle-tapisui-extension/src/gen/test-function.ts index 5ae570fe3..8e6e56653 100644 --- a/lib/icicle-tapisui-extension/src/gen/test-function.ts +++ b/lib/icicle-tapisui-extension/src/gen/test-function.ts @@ -1,21 +1,19 @@ export const task = { - "id": "test-function", - "type": "function", - "code": "test", - "execution_profile": { - "flavor": "c1tiny" + id: 'test-function', + type: 'function', + code: 'test', + execution_profile: { + flavor: 'c1tiny', }, - "installer": "pip", - "packages": [ - "tapipy" - ], - "runtime": "python:3.9", - "entrypoint": "tapis-owe-functions/functions/tapis-etl-push-pull-data.py", - "git_repositories": [ + installer: 'pip', + packages: ['tapipy'], + runtime: 'python:3.9', + entrypoint: 'tapis-owe-functions/functions/tapis-etl-push-pull-data.py', + git_repositories: [ { - "url": "https://github.com/tapis-project/tapis-workflows-task-templates.git", - "branch": "master", - "directory": "tapis-owe-functions" - } - ] -} \ No newline at end of file + url: 'https://github.com/tapis-project/tapis-workflows-task-templates.git', + branch: 'master', + directory: 'tapis-owe-functions', + }, + ], +}; diff --git a/lib/icicle-tapisui-extension/src/index.ts b/lib/icicle-tapisui-extension/src/index.ts index 00fa2ca3d..b410d77f7 100644 --- a/lib/icicle-tapisui-extension/src/index.ts +++ b/lib/icicle-tapisui-extension/src/index.ts @@ -16,7 +16,13 @@ const extension = createExtension({ }, }, removeServices: [EnumTapisCoreService.Apps], - mainSidebarServices: ['workflows', 'ml-hub', 'pods', 'ml-edge', 'smart-scheduler'], + mainSidebarServices: [ + 'workflows', + 'ml-hub', + 'pods', + 'ml-edge', + 'smart-scheduler', + ], authMethods: ['implicit', 'password'], logo: { url: 'data:image/jpeg;base64,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', diff --git a/lib/tapisui-extensions-core/src/extension.ts b/lib/tapisui-extensions-core/src/extension.ts index 600e8c470..0e42a6152 100644 --- a/lib/tapisui-extensions-core/src/extension.ts +++ b/lib/tapisui-extensions-core/src/extension.ts @@ -23,7 +23,7 @@ const defaultServiceCustomizations = { }; export class Extension { - public mainSidebarServices = [] + public mainSidebarServices = []; public allowMutiTenant: boolean = true; public serviceMap: ServiceMap = {}; private config: Configuration; @@ -37,7 +37,7 @@ export class Extension { setConfiguration(config: Configuration): void { this.config = config; this.allowMutiTenant = config.allowMultiTenant; - this.mainSidebarServices = config.mainSidebarServices || [] + this.mainSidebarServices = config.mainSidebarServices || []; this.setAuthentication(); this.setServiceCustomizations(); this.logo = config.logo; diff --git a/src/app/_components/Sidebar/Sidebar.tsx b/src/app/_components/Sidebar/Sidebar.tsx index 4e11b2967..eb2400525 100644 --- a/src/app/_components/Sidebar/Sidebar.tsx +++ b/src/app/_components/Sidebar/Sidebar.tsx @@ -6,78 +6,77 @@ import { Navbar, NavItem } from '@tapis/tapisui-common'; import { useExtension } from 'extensions'; type SidebarItems = { - [key: string]: any -} + [key: string]: any; +}; const Sidebar: React.FC = () => { const { accessToken } = useTapisConfig(); const { extension } = useExtension(); - const sidebarItems: SidebarItems = { - "systems": ( + const sidebarItems: SidebarItems = { + systems: ( Systems ), - "files": ( + files: ( Files ), - "apps": ( + apps: ( Apps ), - "jobs": ( + jobs: ( Jobs ), - "workflows": ( + workflows: ( Workflows ), - "ml-hub": ( + 'ml-hub': ( ML Hub ), - "pods": ( + pods: ( Pods ), - } - + }; + if (extension !== undefined) { for (const [id, service] of Object.entries(extension.serviceMap)) { sidebarItems[id] = ( {service.sidebarDisplayName} - ) + ); } } - + let mainSidebarItems = Object.entries(sidebarItems).map(([_, item]) => { - return item - }) - - const secondarySidebarItems = [] + return item; + }); + + const secondarySidebarItems = []; if (extension && extension.mainSidebarServices.length > 0) { - mainSidebarItems = [] + mainSidebarItems = []; for (const [id, item] of Object.entries(sidebarItems)) { if (extension.mainSidebarServices.includes(id)) { - mainSidebarItems.push(item) - continue + mainSidebarItems.push(item); + continue; } - secondarySidebarItems.push(item) + secondarySidebarItems.push(item); } } - return (
@@ -91,7 +90,9 @@ const Sidebar: React.FC = () => { )} {accessToken && ( <> - {mainSidebarItems.map((item: any) => { return item })} + {mainSidebarItems.map((item: any) => { + return item; + })} )}