skypilot-nightly 1.0.0.dev20251022__py3-none-any.whl → 1.0.0.dev20251024__py3-none-any.whl

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.

Potentially problematic release.


This version of skypilot-nightly might be problematic. Click here for more details.

Files changed (70) hide show
  1. sky/__init__.py +2 -2
  2. sky/client/cli/command.py +118 -30
  3. sky/client/cli/table_utils.py +14 -8
  4. sky/dashboard/out/404.html +1 -1
  5. sky/dashboard/out/_next/static/{IgACOQPupLbX9z-RYVEDx → KxZarRnMeQID-gZkBfhzv}/_buildManifest.js +1 -1
  6. sky/dashboard/out/_next/static/chunks/1141-145e542070a6b615.js +11 -0
  7. sky/dashboard/out/_next/static/chunks/1871-5f68bb683940d23f.js +6 -0
  8. sky/dashboard/out/_next/static/chunks/2755.210d4b7c92c6efb2.js +26 -0
  9. sky/dashboard/out/_next/static/chunks/3015-2dcace420c8939f4.js +1 -0
  10. sky/dashboard/out/_next/static/chunks/3294.bdfea6492fdf845a.js +1 -0
  11. sky/dashboard/out/_next/static/chunks/{3785.483a3dda2d52f26e.js → 3785.e4aaef3b6c460dfb.js} +1 -1
  12. sky/dashboard/out/_next/static/chunks/{4725.10f7a9a5d3ea8208.js → 4725.a830b5c9e7867c92.js} +1 -1
  13. sky/dashboard/out/_next/static/chunks/8632-396a81107ba407c3.js +1 -0
  14. sky/dashboard/out/_next/static/chunks/9360.07d78b8552bc9d17.js +31 -0
  15. sky/dashboard/out/_next/static/chunks/pages/{_app-ce361c6959bc2001.js → _app-7d2f4467a685de9b.js} +1 -1
  16. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/{[job]-602eeead010ec1d6.js → [job]-1d90fbf8f0ffd194.js} +1 -1
  17. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-5edf81da6677352c.js +1 -0
  18. sky/dashboard/out/_next/static/chunks/pages/{clusters-57221ec2e4e01076.js → clusters-d887733ca514d22e.js} +1 -1
  19. sky/dashboard/out/_next/static/chunks/pages/infra/{[context]-44ce535a0a0ad4ec.js → [context]-79b68556c00d284e.js} +1 -1
  20. sky/dashboard/out/_next/static/chunks/pages/{infra-872e6a00165534f4.js → infra-e1c3789e69102cdb.js} +1 -1
  21. sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-10f12af2b199ff68.js +16 -0
  22. sky/dashboard/out/_next/static/chunks/pages/{users-3a543725492fb896.js → users-0befb1254ac5c965.js} +1 -1
  23. sky/dashboard/out/_next/static/chunks/pages/workspaces/{[name]-9ad108cd67d16d96.js → [name]-ecc38434a21e8a1e.js} +1 -1
  24. sky/dashboard/out/_next/static/chunks/{webpack-919e3c01ab6b2633.js → webpack-31acb2000f9b372c.js} +1 -1
  25. sky/dashboard/out/_next/static/css/4c052b4444e52a58.css +3 -0
  26. sky/dashboard/out/clusters/[cluster]/[job].html +1 -1
  27. sky/dashboard/out/clusters/[cluster].html +1 -1
  28. sky/dashboard/out/clusters.html +1 -1
  29. sky/dashboard/out/config.html +1 -1
  30. sky/dashboard/out/index.html +1 -1
  31. sky/dashboard/out/infra/[context].html +1 -1
  32. sky/dashboard/out/infra.html +1 -1
  33. sky/dashboard/out/jobs/[job].html +1 -1
  34. sky/dashboard/out/jobs/pools/[pool].html +1 -1
  35. sky/dashboard/out/jobs.html +1 -1
  36. sky/dashboard/out/users.html +1 -1
  37. sky/dashboard/out/volumes.html +1 -1
  38. sky/dashboard/out/workspace/new.html +1 -1
  39. sky/dashboard/out/workspaces/[name].html +1 -1
  40. sky/dashboard/out/workspaces.html +1 -1
  41. sky/jobs/client/sdk.py +28 -9
  42. sky/jobs/client/sdk_async.py +9 -3
  43. sky/jobs/server/core.py +3 -1
  44. sky/jobs/utils.py +33 -22
  45. sky/server/auth/oauth2_proxy.py +2 -5
  46. sky/server/requests/requests.py +39 -6
  47. sky/server/requests/serializers/decoders.py +23 -10
  48. sky/server/requests/serializers/encoders.py +4 -3
  49. sky/server/rest.py +35 -1
  50. sky/skylet/log_lib.py +8 -1
  51. sky/skylet/subprocess_daemon.py +103 -29
  52. sky/utils/db/db_utils.py +21 -0
  53. sky/utils/subprocess_utils.py +13 -1
  54. {skypilot_nightly-1.0.0.dev20251022.dist-info → skypilot_nightly-1.0.0.dev20251024.dist-info}/METADATA +33 -33
  55. {skypilot_nightly-1.0.0.dev20251022.dist-info → skypilot_nightly-1.0.0.dev20251024.dist-info}/RECORD +60 -60
  56. sky/dashboard/out/_next/static/chunks/1141-ec6f902ffb865853.js +0 -11
  57. sky/dashboard/out/_next/static/chunks/1871-df9f87fcb7f24292.js +0 -6
  58. sky/dashboard/out/_next/static/chunks/2755.9b1e69c921b5a870.js +0 -26
  59. sky/dashboard/out/_next/static/chunks/3015-d014dc5b9412fade.js +0 -1
  60. sky/dashboard/out/_next/static/chunks/3294.998db87cd52a1238.js +0 -1
  61. sky/dashboard/out/_next/static/chunks/6135-4b4d5e824b7f9d3c.js +0 -1
  62. sky/dashboard/out/_next/static/chunks/9360.14326e329484b57e.js +0 -31
  63. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-18b334dedbd9f6f2.js +0 -1
  64. sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-8677af16befde039.js +0 -16
  65. sky/dashboard/out/_next/static/css/4614e06482d7309e.css +0 -3
  66. /sky/dashboard/out/_next/static/{IgACOQPupLbX9z-RYVEDx → KxZarRnMeQID-gZkBfhzv}/_ssgManifest.js +0 -0
  67. {skypilot_nightly-1.0.0.dev20251022.dist-info → skypilot_nightly-1.0.0.dev20251024.dist-info}/WHEEL +0 -0
  68. {skypilot_nightly-1.0.0.dev20251022.dist-info → skypilot_nightly-1.0.0.dev20251024.dist-info}/entry_points.txt +0 -0
  69. {skypilot_nightly-1.0.0.dev20251022.dist-info → skypilot_nightly-1.0.0.dev20251024.dist-info}/licenses/LICENSE +0 -0
  70. {skypilot_nightly-1.0.0.dev20251022.dist-info → skypilot_nightly-1.0.0.dev20251024.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: skypilot-nightly
3
- Version: 1.0.0.dev20251022
3
+ Version: 1.0.0.dev20251024
4
4
  Summary: SkyPilot: Run AI on Any Infra — Unified, Faster, Cheaper.
5
5
  Author: SkyPilot Team
6
6
  License: Apache 2.0
@@ -371,51 +371,51 @@ Requires-Dist: protobuf<7.0.0,>=5.26.1; extra == "shadeform"
371
371
  Requires-Dist: aiosqlite; extra == "shadeform"
372
372
  Requires-Dist: greenlet; extra == "shadeform"
373
373
  Provides-Extra: all
374
- Requires-Dist: casbin; extra == "all"
375
- Requires-Dist: google-api-python-client>=2.69.0; extra == "all"
376
- Requires-Dist: ibm-vpc; extra == "all"
377
- Requires-Dist: google-cloud-storage; extra == "all"
378
- Requires-Dist: aiohttp; extra == "all"
374
+ Requires-Dist: vastai-sdk>=0.1.12; extra == "all"
379
375
  Requires-Dist: azure-identity>=1.19.0; extra == "all"
380
- Requires-Dist: pyvmomi==8.0.1.0.2; extra == "all"
376
+ Requires-Dist: passlib; extra == "all"
377
+ Requires-Dist: azure-storage-blob>=12.23.1; extra == "all"
378
+ Requires-Dist: msgraph-sdk; extra == "all"
381
379
  Requires-Dist: msrestazure; extra == "all"
382
- Requires-Dist: ibm-platform-services>=0.48.0; extra == "all"
383
- Requires-Dist: oci; extra == "all"
384
- Requires-Dist: pyjwt; extra == "all"
385
380
  Requires-Dist: runpod>=1.6.1; extra == "all"
386
- Requires-Dist: docker; extra == "all"
387
- Requires-Dist: azure-common; extra == "all"
388
- Requires-Dist: nebius>=0.2.47; extra == "all"
389
- Requires-Dist: ibm-cos-sdk; extra == "all"
390
- Requires-Dist: protobuf<7.0.0,>=5.26.1; extra == "all"
391
- Requires-Dist: ecsapi>=0.2.0; extra == "all"
392
381
  Requires-Dist: anyio; extra == "all"
393
- Requires-Dist: ibm-cloud-sdk-core; extra == "all"
394
- Requires-Dist: sqlalchemy_adapter; extra == "all"
395
- Requires-Dist: boto3>=1.26.1; extra == "all"
396
- Requires-Dist: pyopenssl<24.3.0,>=23.2.0; extra == "all"
397
382
  Requires-Dist: aiosqlite; extra == "all"
398
- Requires-Dist: vastai-sdk>=0.1.12; extra == "all"
399
- Requires-Dist: pydo>=0.3.0; extra == "all"
383
+ Requires-Dist: pyvmomi==8.0.1.0.2; extra == "all"
400
384
  Requires-Dist: botocore>=1.29.10; extra == "all"
401
- Requires-Dist: msgraph-sdk; extra == "all"
402
- Requires-Dist: awscli>=1.27.10; extra == "all"
385
+ Requires-Dist: ray[default]>=2.6.1; extra == "all"
386
+ Requires-Dist: protobuf<7.0.0,>=5.26.1; extra == "all"
387
+ Requires-Dist: ibm-cos-sdk; extra == "all"
388
+ Requires-Dist: pyjwt; extra == "all"
389
+ Requires-Dist: azure-core>=1.24.0; extra == "all"
390
+ Requires-Dist: kubernetes!=32.0.0,>=20.0.0; extra == "all"
391
+ Requires-Dist: colorama<0.4.5; extra == "all"
392
+ Requires-Dist: casbin; extra == "all"
403
393
  Requires-Dist: azure-mgmt-network>=27.0.0; extra == "all"
404
394
  Requires-Dist: azure-mgmt-compute>=33.0.0; extra == "all"
395
+ Requires-Dist: oci; extra == "all"
396
+ Requires-Dist: pyopenssl<24.3.0,>=23.2.0; extra == "all"
397
+ Requires-Dist: pydo>=0.3.0; extra == "all"
398
+ Requires-Dist: aiohttp; extra == "all"
399
+ Requires-Dist: azure-core>=1.31.0; extra == "all"
400
+ Requires-Dist: ibm-vpc; extra == "all"
401
+ Requires-Dist: google-api-python-client>=2.69.0; extra == "all"
402
+ Requires-Dist: awscli>=1.27.10; extra == "all"
405
403
  Requires-Dist: grpcio>=1.63.0; extra == "all"
406
- Requires-Dist: kubernetes!=32.0.0,>=20.0.0; extra == "all"
407
- Requires-Dist: azure-storage-blob>=12.23.1; extra == "all"
408
- Requires-Dist: colorama<0.4.5; extra == "all"
409
- Requires-Dist: azure-cli>=2.65.0; extra == "all"
410
404
  Requires-Dist: cudo-compute>=0.1.10; extra == "all"
411
- Requires-Dist: tomli; python_version < "3.11" and extra == "all"
405
+ Requires-Dist: boto3>=1.26.1; extra == "all"
406
+ Requires-Dist: docker; extra == "all"
407
+ Requires-Dist: ibm-cloud-sdk-core; extra == "all"
412
408
  Requires-Dist: websockets; extra == "all"
413
- Requires-Dist: azure-core>=1.24.0; extra == "all"
409
+ Requires-Dist: nebius>=0.2.47; extra == "all"
410
+ Requires-Dist: azure-common; extra == "all"
411
+ Requires-Dist: tomli; python_version < "3.11" and extra == "all"
412
+ Requires-Dist: azure-cli>=2.65.0; extra == "all"
413
+ Requires-Dist: ecsapi>=0.2.0; extra == "all"
414
+ Requires-Dist: google-cloud-storage; extra == "all"
414
415
  Requires-Dist: greenlet; extra == "all"
416
+ Requires-Dist: ibm-platform-services>=0.48.0; extra == "all"
417
+ Requires-Dist: sqlalchemy_adapter; extra == "all"
415
418
  Requires-Dist: python-dateutil; extra == "all"
416
- Requires-Dist: ray[default]>=2.6.1; extra == "all"
417
- Requires-Dist: azure-core>=1.31.0; extra == "all"
418
- Requires-Dist: passlib; extra == "all"
419
419
  Provides-Extra: remote
420
420
  Requires-Dist: grpcio>=1.63.0; extra == "remote"
421
421
  Requires-Dist: protobuf<7.0.0,>=5.26.1; extra == "remote"
@@ -1,4 +1,4 @@
1
- sky/__init__.py,sha256=aJ5dSRnbyfruHm9mbl5MS-pt1Q_GCdX6sgg0jE9ngys,6759
1
+ sky/__init__.py,sha256=ZXUaBNrYNXSD8KzNATGE2pqXYIsiTTpKyFMrEZxwlWM,6759
2
2
  sky/admin_policy.py,sha256=XdcJnYqmude-LGGop-8U-FeiJcqtfYsYtIy4rmoCJnM,9799
3
3
  sky/authentication.py,sha256=BK5Fkuk3EmS4DwCrxI_8a4SQHUNFYu9GztWSzPissSA,20123
4
4
  sky/check.py,sha256=hBDTkiADC3HFfO6brZV819FVWcdOs3aiuhB6x6mY4Q4,29728
@@ -90,10 +90,10 @@ sky/client/sdk.py,sha256=HX9UGKggoV-qRYIl-iMhCwg5pTZF01SxUqikdxyEnwk,109351
90
90
  sky/client/sdk_async.py,sha256=8G_E9Dn4d80rV-wxRH4zZUXZGAm6rLw3C8PI07fXwwQ,31106
91
91
  sky/client/service_account_auth.py,sha256=5jXk0G6ufuW-SHCO7BEHQeTO0_2a8KfFmA63auXFRj4,1529
92
92
  sky/client/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
93
- sky/client/cli/command.py,sha256=qvTTVUjf2zPPVXZuugxwM4Q5bzP906tExyiDgPnWxRk,254404
93
+ sky/client/cli/command.py,sha256=589zdYOFbcQtCmk9hzBhyu6hYZQmWoNIPaXDzyF9XTg,257227
94
94
  sky/client/cli/deprecation_utils.py,sha256=H_d5UyF2CekEoThduAzt5cihBO8hwKYMu0-Wqfbjv5E,3370
95
95
  sky/client/cli/flags.py,sha256=hwQ4Y9lwTbfqYoINWUTqRMGBoXxBy4_E5hqtXbBcEeg,12219
96
- sky/client/cli/table_utils.py,sha256=HT_y__9_tZLKJ0aJu-hh67cu3NXfWDoiHir5fTmWaDw,10156
96
+ sky/client/cli/table_utils.py,sha256=CQFFD6cAL3ia8CNuNBmnFz1Ed2VuecjP3nkR2HQ0EGg,10121
97
97
  sky/clouds/__init__.py,sha256=JvZtCgauz5rAids-huDVeeTSyS59aBT1BqMtxvpuD_k,1810
98
98
  sky/clouds/aws.py,sha256=PrvbWuSAkPC18HsLVHx8NBJQiduz32NpDm1XXr6NPLo,63737
99
99
  sky/clouds/azure.py,sha256=qnabVjfS3em-TvxOIqZ6mMiipnt51MBVf7R0pnyB7bo,33233
@@ -123,36 +123,35 @@ sky/clouds/utils/azure_utils.py,sha256=NToRBnhEyuUvb-nBnsKTxjhOBRkMcrelL8LK4w6s4
123
123
  sky/clouds/utils/gcp_utils.py,sha256=09MF4Vx0EW7S-GXGpyxpl2aQlHrqeu9ioV0nyionAyk,9890
124
124
  sky/clouds/utils/oci_utils.py,sha256=TFqAqRLggg4Z0bhxrrq8nouSSomZy-ub1frHXEkud2M,7302
125
125
  sky/clouds/utils/scp_utils.py,sha256=VGuccVO5uFGr8-yolWSoYrgr11z6cIeDBGcqkBzAyOs,18409
126
- sky/dashboard/out/404.html,sha256=lB8VhWhWyhTDRm_uuBgJp-mxc7L5l1ecxLmNjkA4Z4c,1423
127
- sky/dashboard/out/clusters.html,sha256=B0fx_Uabq4pdADEe3HS23678O8hg_IzQPAtGwZHGUT0,1418
128
- sky/dashboard/out/config.html,sha256=MNN180nQA-c4msySswutVenxuvXRjT0OaMoo6wiv78c,1414
126
+ sky/dashboard/out/404.html,sha256=Onk0sFcPvbL4IrTCcA20blQLddD6URwrez5yMaxwC3g,1423
127
+ sky/dashboard/out/clusters.html,sha256=qOugocmNNBF6JZSMiRfAdGSrPa4IoNXWPloL58hpXL0,1418
128
+ sky/dashboard/out/config.html,sha256=l0Gg1110fXDSPScTgLiWHIoRWvWD2znhrCs9_bUyUz8,1414
129
129
  sky/dashboard/out/favicon.ico,sha256=XilUZZglAl_1zRsg85QsbQgmQAzGPQjcUIJ-A3AzYn8,93590
130
- sky/dashboard/out/index.html,sha256=3qu4eMREpXMDvAYLZfuy9jh1EPf8toGVaFFw_NK4jME,1407
131
- sky/dashboard/out/infra.html,sha256=j7G7Ua_hIhg-wxfPTo5z7-dhmwvo8mOBt5kyWfJeptk,1412
132
- sky/dashboard/out/jobs.html,sha256=FAHZyLtFv0i1r2on2PuK1dpgkVQTCCo3_LtDY1J1ZRc,1410
130
+ sky/dashboard/out/index.html,sha256=Q8Fxm9uQubzsJWwkjfYNd9v_0Mw2hjOU0oe101lKuPI,1407
131
+ sky/dashboard/out/infra.html,sha256=ilc-wRnV7NoyjB4OPu1Vc6f3znHZd3d99S2oXR5n2uU,1412
132
+ sky/dashboard/out/jobs.html,sha256=TuATHzkJpgvkZzCh3r1F2bYeTH9DqLmS19Ot7-tg2KI,1410
133
133
  sky/dashboard/out/skypilot.svg,sha256=c0iRtlfLlaUm2p0rG9NFmo5FN0Qhf3pq5Xph-AeMPJw,5064
134
- sky/dashboard/out/users.html,sha256=TUe7OBSINFQwTQoNScNPlC1ReA3gSedV88s-N5p98kU,1412
135
- sky/dashboard/out/volumes.html,sha256=JHzU0mFxb-iInXiMD-61t1G43KpYiXVtcLxDFsijp_E,1416
136
- sky/dashboard/out/workspaces.html,sha256=LXBlSz67KY3J-XMnPkndfFgqCHZjcHoHCLR6OhwnXZI,1422
137
- sky/dashboard/out/_next/static/IgACOQPupLbX9z-RYVEDx/_buildManifest.js,sha256=ceXW0_k9Jau1PIXeMInPR1FiyHvxcUPn7vAvEDRQ1sQ,2394
138
- sky/dashboard/out/_next/static/IgACOQPupLbX9z-RYVEDx/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
139
- sky/dashboard/out/_next/static/chunks/1141-ec6f902ffb865853.js,sha256=G93wl4hvBqTIDEzkkiFBwVSnOqaFGmE3-AiKtyuWHxU,18362
134
+ sky/dashboard/out/users.html,sha256=1_jXBIsZBNvNh6cOUmR9iYP7RDevwzrIWgokkcBq3MI,1412
135
+ sky/dashboard/out/volumes.html,sha256=v1B8LmI498H_6EASfA4F6kdLBxUZHp9hFbNdqwYLPlk,1416
136
+ sky/dashboard/out/workspaces.html,sha256=2sFXYiBSKBYmOyNv50qoztjUoUaXiR_NUGWzPGs7UsI,1422
137
+ sky/dashboard/out/_next/static/KxZarRnMeQID-gZkBfhzv/_buildManifest.js,sha256=A9Pz9ih0mwp4DscGx1mGLyUox5_Ho6dleRnfGXG3k6k,2394
138
+ sky/dashboard/out/_next/static/KxZarRnMeQID-gZkBfhzv/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
139
+ sky/dashboard/out/_next/static/chunks/1141-145e542070a6b615.js,sha256=r3f9FgYw3rLJUThv0L-DsfwHtlmif-61WFap6wrx11k,18363
140
140
  sky/dashboard/out/_next/static/chunks/1272-1ef0bf0237faccdb.js,sha256=VJ6y-Z6Eg2T93hQIRfWAbjAkQ7nQhglmIaVbEpKSILY,38451
141
- sky/dashboard/out/_next/static/chunks/1871-df9f87fcb7f24292.js,sha256=hUHiB-SESvEqfuA8D5OBvwJpIPFBRSu02JiA2yUzdBw,20652
141
+ sky/dashboard/out/_next/static/chunks/1871-5f68bb683940d23f.js,sha256=nwoXL8GR8XkDsMPfT3KZclA-vJ9Iz9x1KjrpjOIbKMk,20698
142
142
  sky/dashboard/out/_next/static/chunks/2350.fab69e61bac57b23.js,sha256=TQCHO4AUL9MZo1e_8GOiL8y6vjQpj5tdXZ8oCKwM1LA,271
143
143
  sky/dashboard/out/_next/static/chunks/2369.fc20f0c2c8ed9fe7.js,sha256=qkKMDvgq-AVeC811VipJzXHAB__R4G2eHj-I-7_N2Ek,8177
144
- sky/dashboard/out/_next/static/chunks/2755.9b1e69c921b5a870.js,sha256=RNRgvbpr-Na9O3i3rMR9f_ZbxbXFXGSqwMb2CnS--PY,50311
145
- sky/dashboard/out/_next/static/chunks/3015-d014dc5b9412fade.js,sha256=qYvtohF2RgCSp2swDcM5QCpxHKrG0Nq4Nsu8Jq7DR0E,39248
146
- sky/dashboard/out/_next/static/chunks/3294.998db87cd52a1238.js,sha256=wfddVWlyWTwJhepb26TflvXJVnRwH5Rv4jMHTlEYB3I,42578
147
- sky/dashboard/out/_next/static/chunks/3785.483a3dda2d52f26e.js,sha256=YgJBr9UH5XOdxwGyfIEOS9jDKTV-hBMd173QSRp2HYs,4538
144
+ sky/dashboard/out/_next/static/chunks/2755.210d4b7c92c6efb2.js,sha256=srcUlCn_L_Sj_D75Sb0jvH53omnc8CoShWI4CgZctE4,51920
145
+ sky/dashboard/out/_next/static/chunks/3015-2dcace420c8939f4.js,sha256=x2a17x1qLtY7eu1jJ6BrM9wtZB8YK7RsVhrHwzFKM6Y,39338
146
+ sky/dashboard/out/_next/static/chunks/3294.bdfea6492fdf845a.js,sha256=_952WjV702gD8gKXZ7ddeWUBvQkeoZJ3xVjcc9f_xvg,42472
147
+ sky/dashboard/out/_next/static/chunks/3785.e4aaef3b6c460dfb.js,sha256=nIgBLJigyIAs1EuSSuz4lR02rmP8uXX6vRzwQm1BFH0,4538
148
148
  sky/dashboard/out/_next/static/chunks/3850-ff4a9a69d978632b.js,sha256=XphBY9psNzmvGD28zgDunQEb-TX0_eOVaElmcuOjD1g,7455
149
149
  sky/dashboard/out/_next/static/chunks/3937.210053269f121201.js,sha256=0tYP8uuog_WLEZmEuej4zenfX0PUa17nR874wSSBgqI,54583
150
150
  sky/dashboard/out/_next/static/chunks/4282-d2f3ef2fbf78e347.js,sha256=CwIckvjNXZYoAUgzEPWON0jeBRrbk99yi5oK8RgN07A,8865
151
- sky/dashboard/out/_next/static/chunks/4725.10f7a9a5d3ea8208.js,sha256=Og54dlTz1nWvsEyE9mmzeKjfJcNkloX5MbQN7ujfrt0,15962
151
+ sky/dashboard/out/_next/static/chunks/4725.a830b5c9e7867c92.js,sha256=lB9_aX3RDlK4C1hcKfD9_AJ3ekjxSICk3mRNhoDL1Ek,16007
152
152
  sky/dashboard/out/_next/static/chunks/4937.a2baa2df5572a276.js,sha256=WSR1BWr-lYNW6tNy2zN_eeAM16NbzByx5kzjF06vkIA,9318
153
153
  sky/dashboard/out/_next/static/chunks/5739-d67458fcb1386c92.js,sha256=UMLEyZH3SWcAdDnaOYztbUYUzCCP2t0KiwP2vT_swDQ,65504
154
154
  sky/dashboard/out/_next/static/chunks/6130-2be46d70a38f1e82.js,sha256=5gyzVH8d5jnrVqCh9y0HEFcRmg4zguJ9_fe9olGFW2U,29162
155
- sky/dashboard/out/_next/static/chunks/6135-4b4d5e824b7f9d3c.js,sha256=OLvQvfyMwh1ltTzUqJda3AF23BSCllkw9J7MVmkTyKI,15165
156
155
  sky/dashboard/out/_next/static/chunks/616-3d59f75e2ccf9321.js,sha256=UQxIbEZseq4ore8Y1Tm5OT3Re7fU8ZZKjQQWk4JPvK4,179393
157
156
  sky/dashboard/out/_next/static/chunks/6212-7bd06f60ba693125.js,sha256=ipLAaXhbFdPNtxl4XXjguGHlA4fAytX77aaU2zFt4fk,785262
158
157
  sky/dashboard/out/_next/static/chunks/6601-06114c982db410b6.js,sha256=coh7shL8L5Vp2MsibBTx-xxNq_BI-zp0jAl7f6eVmUQ,9659
@@ -161,43 +160,44 @@ sky/dashboard/out/_next/static/chunks/6989-01359c57e018caa4.js,sha256=iIEGQp3dsC
161
160
  sky/dashboard/out/_next/static/chunks/6990-f6818c84ed8f1c86.js,sha256=S_U1sK3gxmP1Lw9QkbrfWmjpdc1qeR2olYlNx04klOQ,16152
162
161
  sky/dashboard/out/_next/static/chunks/7359-c8d04e06886000b3.js,sha256=xYHgSaC-IzLl8rjWP56VOQOt_34T0pZ-37e-sAyua74,9624
163
162
  sky/dashboard/out/_next/static/chunks/7411-b15471acd2cba716.js,sha256=Dnmr9e-yZQbnkjwzqIZU3aK-3u1Tqr8STF-ODYWLkaw,13304
163
+ sky/dashboard/out/_next/static/chunks/8632-396a81107ba407c3.js,sha256=S4wQxzeMhnC7p_VrglUs-Mnd-1TBpACDaCWa0LMYX6k,17454
164
164
  sky/dashboard/out/_next/static/chunks/8640.5b9475a2d18c5416.js,sha256=FTVy8VJRwSeEK7QH0GzTjs1b8aIz9x-pVlRcSVHdrfw,2398
165
165
  sky/dashboard/out/_next/static/chunks/8969-0389e2cb52412db3.js,sha256=_9xL6WblFU_Mzt_vw_xsmZ2Kg_BRI20U3TSZ4rWXqN0,14612
166
166
  sky/dashboard/out/_next/static/chunks/9025.c12318fb6a1a9093.js,sha256=1Txv8nMuBYtB0UoWdwmFbkA2iB85jgKB1EJJrE1ETDo,10605
167
- sky/dashboard/out/_next/static/chunks/9360.14326e329484b57e.js,sha256=a_o8x_y2nt8-ALd8SYc0Mjp7Ua5_cZ36KvrKywGo_8A,20745
167
+ sky/dashboard/out/_next/static/chunks/9360.07d78b8552bc9d17.js,sha256=EJNGWdbf5AtzqwtsPQMD5gn8qjUrgYTeIvAqdLadU3Y,20790
168
168
  sky/dashboard/out/_next/static/chunks/9847.3aaca6bb33455140.js,sha256=kN42YbIl4M-2zBVFZzHWFGgzF0qZ4w11P_Kn6juuXZI,39896
169
169
  sky/dashboard/out/_next/static/chunks/fd9d1056-86323a29a8f7e46a.js,sha256=2lquiZSfbI-gX4j4TW4JSMLL_D5ShqwydgWpFyXrTy8,172834
170
170
  sky/dashboard/out/_next/static/chunks/framework-cf60a09ccd051a10.js,sha256=_QbamfAbTV4_xMVOTjz0rhiAPAi8ET5MuSNjjW5oMng,140965
171
171
  sky/dashboard/out/_next/static/chunks/main-app-587214043926b3cc.js,sha256=t7glRfataAjNw691Wni-ZU4a3BsygRzPKoI8NOm-lsY,116244
172
172
  sky/dashboard/out/_next/static/chunks/main-f15ccb73239a3bf1.js,sha256=jxOPLDVX3rkMc_jvGx2a-N2v6mvfOa8O6V0o-sLT0tI,110208
173
173
  sky/dashboard/out/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js,sha256=6QPOwdWeAVe8x-SsiDrm-Ga6u2DkqgG5SFqglrlyIgA,91381
174
- sky/dashboard/out/_next/static/chunks/webpack-919e3c01ab6b2633.js,sha256=v4AJWioR3xYWy3jZcDjvvYXosKNZs3DCznd_n82HzAE,4770
175
- sky/dashboard/out/_next/static/chunks/pages/_app-ce361c6959bc2001.js,sha256=mllo4Yasw61zRtEO49uE_MrAutg9josSJShD0DNSjf0,95518
174
+ sky/dashboard/out/_next/static/chunks/webpack-31acb2000f9b372c.js,sha256=udH8slGUCDEfgKy5nrWFxwNQGRipJ74IHBRFrbHux8o,4770
175
+ sky/dashboard/out/_next/static/chunks/pages/_app-7d2f4467a685de9b.js,sha256=y-ghHzDU5YYCFeinBw3HPzIOa-KX2tjRtIAG9xW6y9k,95520
176
176
  sky/dashboard/out/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js,sha256=vjERjtMAbVk-19LyPf1Jc-H6TMcrSznSz6brzNqbqf8,253
177
- sky/dashboard/out/_next/static/chunks/pages/clusters-57221ec2e4e01076.js,sha256=w4MmPcFrR3R55YMHipuO6TQNEqggbldjW4NWjrk9_S0,869
177
+ sky/dashboard/out/_next/static/chunks/pages/clusters-d887733ca514d22e.js,sha256=W1AR6O8xZLDDHIbaTIXCU8RdQGkAAbV1YHrEfPLay2A,869
178
178
  sky/dashboard/out/_next/static/chunks/pages/config-dfb9bf07b13045f4.js,sha256=imQqQzmk2dN9ly16TS_d7BV1rHuhzYxrkyx4YUylJCw,796
179
179
  sky/dashboard/out/_next/static/chunks/pages/index-444f1804401f04ea.js,sha256=caOxDw7dl3NlA86txmKO4O-D02wQ_o8WbGleTa-bU1I,482
180
- sky/dashboard/out/_next/static/chunks/pages/infra-872e6a00165534f4.js,sha256=zuxGdMWVwSZpetu6IRdXEQQ9qHGfecXuFaiu4brPgHs,839
180
+ sky/dashboard/out/_next/static/chunks/pages/infra-e1c3789e69102cdb.js,sha256=qpmpvajnwLgRq63hWOxIwEl3vxH5CtfybLmDQhuSe3g,839
181
181
  sky/dashboard/out/_next/static/chunks/pages/jobs-0dc34cf9a8710a9f.js,sha256=Np0qAfIHm20_sZJMgzLtp5ikgPjYQuvAVvJOAkeW4Q0,842
182
- sky/dashboard/out/_next/static/chunks/pages/users-3a543725492fb896.js,sha256=tlURrrmRWwzriurLYzget7OBWWwEKLYTmyWSoiw53pA,858
182
+ sky/dashboard/out/_next/static/chunks/pages/users-0befb1254ac5c965.js,sha256=26BfsYWQTsorVdWS1duYvX50E6AMkYQ3uBT-e0GgK2c,858
183
183
  sky/dashboard/out/_next/static/chunks/pages/volumes-d2af9d22e87cc4ba.js,sha256=c9C0dqj-5vhByRT7E2kpe0tvrgPETTHjNc8SUa55rQA,826
184
184
  sky/dashboard/out/_next/static/chunks/pages/workspaces-6fc994fa1ee6c6bf.js,sha256=wUXYsBqGafyl0KG4iI58vICYJCHOzavOTVXFu_r0s70,863
185
- sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-18b334dedbd9f6f2.js,sha256=0veuVmL4Y3GENcquxlsEmdLLvEdLcCQzZiE2ncbFAJA,18462
186
- sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-602eeead010ec1d6.js,sha256=Xj-knICXbqJ9F6zTjQRTB_ilKmyOsiNAsVnVfA2f-8E,26732
187
- sky/dashboard/out/_next/static/chunks/pages/infra/[context]-44ce535a0a0ad4ec.js,sha256=S0PhiJeOGhufROocxa2yub36uv_NhWTa-FYgpL_aj5I,847
188
- sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-8677af16befde039.js,sha256=hDNA4CVUzNVLGGQDZJxWmam2c2kCg0RDWTWRp0YPP6A,29936
185
+ sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-5edf81da6677352c.js,sha256=fXLg5o8uLdf-XgUK2BSuKEtF3-Hs8lN6n0J694JI2-g,18463
186
+ sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-1d90fbf8f0ffd194.js,sha256=pk2ErWtGvPki_JCbtw_EN5PLSMzJhnnntEDwpp1Kh3w,26733
187
+ sky/dashboard/out/_next/static/chunks/pages/infra/[context]-79b68556c00d284e.js,sha256=GAu4KgGANS2a3D4lXApM3wDYDbNOCJs75J0ajG6OapU,847
188
+ sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-10f12af2b199ff68.js,sha256=hO2xTC1fbjg4DxfcQW6Hk0fDwVt3pIRJTIB7LJb-iMI,29937
189
189
  sky/dashboard/out/_next/static/chunks/pages/jobs/pools/[pool]-e020fd69dbe76cea.js,sha256=5eIt_lFp0D_BEUV71mu4rNxapiZpB8368SMtRbh-Qec,26183
190
190
  sky/dashboard/out/_next/static/chunks/pages/workspace/new-3f88a1c7e86a3f86.js,sha256=83s5N5CZwIaRcmYMfqn2we60n2VRmgFw6Tbx18b8-e0,762
191
- sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-9ad108cd67d16d96.js,sha256=HYVYvAozHFY6uYUJfyh1i-NQLzAWkjXmqGdyfSNPHhc,1495
192
- sky/dashboard/out/_next/static/css/4614e06482d7309e.css,sha256=nk6GriyGVd1aGXrLd7BcMibnN4v0z-Q_mXGxrHFWqrE,56126
193
- sky/dashboard/out/clusters/[cluster].html,sha256=jhRHZyNIDrQyxkSTXB1M0bgpHnZh1fSwBoQHlaTtI2A,2937
194
- sky/dashboard/out/clusters/[cluster]/[job].html,sha256=MS4b5oLIdg7wE8WaAOemonsaI8F4FkllYSGU79Mmfog,2073
195
- sky/dashboard/out/infra/[context].html,sha256=Ds023NgSnswClan0h1tLsy7j4-hxrQx0Y8VJLwBTASE,1436
196
- sky/dashboard/out/jobs/[job].html,sha256=lM4l192ZRlfscvILvMX-HeIei_M9ZMU42WanEJrq-ao,2305
197
- sky/dashboard/out/jobs/pools/[pool].html,sha256=cyz2-VWnaw15eRkv9TDDVPC04M51IZgNPAwwR-NxQQA,2143
191
+ sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-ecc38434a21e8a1e.js,sha256=4UGWqmnP0VDidyQAScAFsXkkBOGuYrnBvFkDEBEWR6g,1495
192
+ sky/dashboard/out/_next/static/css/4c052b4444e52a58.css,sha256=gAtDLtuMJE6i17ji-bzO8sL_ZQHavpYIjy6FSXLgBiA,56527
193
+ sky/dashboard/out/clusters/[cluster].html,sha256=5_T1_Ub6h8xINdyaC6I6UZgBqrUHM0YVmy1g_RR-ppk,2937
194
+ sky/dashboard/out/clusters/[cluster]/[job].html,sha256=1g55p9FA3yPxrXIioiTN79OmNAdH1hytkpQdsaKUJyk,2073
195
+ sky/dashboard/out/infra/[context].html,sha256=tBIWKpQswoNT6qqgYBtkEBqpn5qlVnzQAI32TBskPOI,1436
196
+ sky/dashboard/out/jobs/[job].html,sha256=KFFL0UWLJ36FBdCEU2rsDjYdPfixZ40seOrNIPZALNo,2305
197
+ sky/dashboard/out/jobs/pools/[pool].html,sha256=bLloFF8E-DRaHINCa18rvTKNEF1kgnp9Djbbb5I6PGs,2143
198
198
  sky/dashboard/out/videos/cursor-small.mp4,sha256=8tRdp1vjawOrXUar1cfjOc-nkaKmcwCPZx_LO0XlCvQ,203285
199
- sky/dashboard/out/workspace/new.html,sha256=5NqfMOXuiZpQOAZQVrQZg2KCgwg4IMOAzVl2a4XKEAc,1428
200
- sky/dashboard/out/workspaces/[name].html,sha256=P0THJxZhQUOGVMy_DRRVe3ZPhHns5918fC2YaIbsBQA,2759
199
+ sky/dashboard/out/workspace/new.html,sha256=pHUHLhC6O991NDjUDObJy5E5CHtavNuurjUHLSLOta4,1428
200
+ sky/dashboard/out/workspaces/[name].html,sha256=A3PzejDmIiJFZ5plwwXj_8O57Z2_Q9jL1hO2MFfVLo4,2759
201
201
  sky/data/__init__.py,sha256=Nhaf1NURisXpZuwWANa2IuCyppIuc720FRwqSE2oEwY,184
202
202
  sky/data/data_transfer.py,sha256=N8b0CQebDuHieXjvEVwlYmK6DbQxUGG1RQJEyTbh3dU,12040
203
203
  sky/data/data_utils.py,sha256=AjEA_JRjo9NBMlv-Lq5iV4lBED_YZ1VqBR9pG6fGVWE,35179
@@ -210,12 +210,12 @@ sky/jobs/controller.py,sha256=S6JFb5R6BQHLROVB_bzV_blIWJN7NJ_DOyTBy_Jh-Es,57083
210
210
  sky/jobs/recovery_strategy.py,sha256=FUyHTOtJ0rvTL-vznX8FcJP84ORlavewptLXr3r9evI,38423
211
211
  sky/jobs/scheduler.py,sha256=sUa83wiiuv0bwYDcn9-J1uCqZjhUkfE8z_hjG5Xl7rY,17210
212
212
  sky/jobs/state.py,sha256=8dAhqcnEzPUxbsGvWWA1baKjnpb6xNHKqE3C6vv014Q,98052
213
- sky/jobs/utils.py,sha256=Dt2R9d6_YzOXrxVuzlBSneM2f-w4QGbWCHL9Q0obqsE,102033
213
+ sky/jobs/utils.py,sha256=vcGnB1QSA-pQdKSS-5a4T1W8N6aRUlWjfBfHyO_qZlw,102151
214
214
  sky/jobs/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
215
- sky/jobs/client/sdk.py,sha256=HQdnZtK-yWXvOX5XEVZU145vIzfCvYZFtL6uzQEm6-c,17133
216
- sky/jobs/client/sdk_async.py,sha256=hsyPshdpbKG0RUzw2ntDeAJAkOIl-O9WDoSREV_km3o,4875
215
+ sky/jobs/client/sdk.py,sha256=ZF-rtLhynC1VK8UNO3aaxcluOo3QnltokGYxJfhI7_g,17818
216
+ sky/jobs/client/sdk_async.py,sha256=RlYs0S5cenlIH8NIM74QYhLeDR0qqCYK3MVGWBhCu8c,5188
217
217
  sky/jobs/server/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
218
- sky/jobs/server/core.py,sha256=K1Z_XHBI-onkSrA7p3M1p9CjAvmkM6h8DsQ4tSguVpo,48503
218
+ sky/jobs/server/core.py,sha256=TkjqVXHwoIgyhCOp1WrHYTiKX0ilpaIxhShPl7tSIuk,48638
219
219
  sky/jobs/server/server.py,sha256=Ns_zCJ0LykUQnuK6QNsJFOEWNfHgcG5DTd3phGQw-xU,9677
220
220
  sky/jobs/server/utils.py,sha256=rI_fVyEJhHjuapcB6JefkKgRuT_VeLiubAixsPo5jj0,5023
221
221
  sky/logs/__init__.py,sha256=zW4gAEvWDz5S53FlLp3krAuKrmTSJ0e3kZDnhxSbW4E,722
@@ -396,7 +396,7 @@ sky/server/config.py,sha256=oQO2Wls01oYIIr4h7B6UiPBNPcsqHlCJ3batir-Zx80,11143
396
396
  sky/server/constants.py,sha256=54w38B5AsRVCMCPP_iN7YoaApxbcttt3pue0VEP9DWg,2615
397
397
  sky/server/daemons.py,sha256=pEmLE0JsR6C8ZSxt8sr4ncPfZcDYvXqDCycU0IDcQ8U,9238
398
398
  sky/server/metrics.py,sha256=8mTyD-zo2gyAJSPJyCtTR8oImeFJ2K-sAdlje5Bf5U4,5781
399
- sky/server/rest.py,sha256=Op7WNtfNey3XnBLMBx7S4KryiBhL9UCYhMxQgVo1Ybw,14813
399
+ sky/server/rest.py,sha256=XDvKhVY9br9zt4TNbygUH_XDbH_wugzxKNYlbqVHJjY,16045
400
400
  sky/server/server.py,sha256=ra9dqKtDI8iQmJqMw2JItNQMczh8isaCTG6rt1uhXxs,88128
401
401
  sky/server/state.py,sha256=YbVOMJ1JipQQv17gLIGyiGN7MKfnP83qlUa5MB1z0Yk,747
402
402
  sky/server/stream_utils.py,sha256=9yHkB5Gkpago3WgR_sKBK5nJTpUYlBcYgTGVqMPYm9k,16750
@@ -405,7 +405,7 @@ sky/server/versions.py,sha256=3atZzUa7y1XeKNcrfVxKWAo_5ZyCOnbY7DKpIqed7Do,10011
405
405
  sky/server/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
406
406
  sky/server/auth/authn.py,sha256=zvabLsEAf9Ql6AbXJuWZ54uaiOr1mwFGGvQn84v66H4,2037
407
407
  sky/server/auth/loopback.py,sha256=Vk8iaatXBrXJLBsng9StK9kgwcJnMFqbc35exX5Aikc,1069
408
- sky/server/auth/oauth2_proxy.py,sha256=4iRhSfJuvjb4gDXk3xNIHFrgTPLkZo61znX5YRRkOC0,9374
408
+ sky/server/auth/oauth2_proxy.py,sha256=thTdRMfYhO9Zx1efIy81AJwmQqu1P1iXiVc5gL_Cstg,9188
409
409
  sky/server/html/log.html,sha256=TSGZktua9Ysl_ysg3w60rjxAxhH61AJnsYDHdtqrjmI,6929
410
410
  sky/server/html/token_page.html,sha256=eUndS5u1foL9vaWGPRTLMt7lCzD1g0wYJ2v_EeeFzlc,7046
411
411
  sky/server/requests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -414,14 +414,14 @@ sky/server/requests/executor.py,sha256=quK4m2OVY_7uFASLAo-P8mzTu2i820y5hQWU8tyLb
414
414
  sky/server/requests/payloads.py,sha256=MUHuj4CaxrpI_52K76gLDEtPmsrc2WZFt2cBKL0UFus,28286
415
415
  sky/server/requests/preconditions.py,sha256=L_4ow2Twl0h2sk2P4waL2e1WVfYm4p4DFwmR6Nip8Bw,7486
416
416
  sky/server/requests/process.py,sha256=UpJp5rZizNMFRCNRtudFSjbcJhFarFbtAGDWI9x_ZyE,13197
417
- sky/server/requests/requests.py,sha256=QPydG2EnXBvdp4BfKxabNPweBANtW9jHy2pjq6852cE,39229
417
+ sky/server/requests/requests.py,sha256=zPHBx7dnfxhF0PfOHJZFLZl6n-C2h7ZDW0ovlla9fdA,40678
418
418
  sky/server/requests/threads.py,sha256=AwzbcoeLDz5RnSi0jJSD3u4lGDiYkCaa1qDvPkUqeMI,4131
419
419
  sky/server/requests/queues/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
420
420
  sky/server/requests/queues/local_queue.py,sha256=X6VkBiUmgd_kfqIK1hCtMWG1b8GiZbY70TBiBR6c6GY,416
421
421
  sky/server/requests/queues/mp_queue.py,sha256=jDqP4Jd28U3ibSFyMR1DF9I2OWZrPZqFJrG5S6RFpyw,3403
422
422
  sky/server/requests/serializers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
423
- sky/server/requests/serializers/decoders.py,sha256=4V3muIPH_QU_CfGyoHD99IXuJbKZKZ6rhmA7S-N2L58,8201
424
- sky/server/requests/serializers/encoders.py,sha256=2816No5w-tXjDKBbvRjtOOWow-4BmZyE2NZIqdRovzo,8464
423
+ sky/server/requests/serializers/decoders.py,sha256=lnAPHBWaiCoCr2p2RbFkDqexi3Y1lBbeKCTRJWi18Zg,8837
424
+ sky/server/requests/serializers/encoders.py,sha256=POKopCYRFnk546wOZE8DbAKrmmFawCfaW34wyckhcxk,8457
425
425
  sky/setup_files/MANIFEST.in,sha256=4gbgHHwSdP6BbMJv5XOt-2K6wUVWF_T9CGsdESvh918,776
426
426
  sky/setup_files/alembic.ini,sha256=d85kX5QMzCHxrgOct7StGixQEkaO7LKGKjSXLIwBRZI,5201
427
427
  sky/setup_files/dependencies.py,sha256=CIp265rhS4BRH6CAwWyQoZMZe7H-DXXEALsh3zaII0M,9442
@@ -434,11 +434,11 @@ sky/skylet/configs.py,sha256=nNBnpuzoU696FbC3Nv0qKVSDuTw4GAbr7eCcg0_Sldo,2135
434
434
  sky/skylet/constants.py,sha256=8g2_npa_-EjUrZvYpO1CqsGafYzpWX8IKXHYWO8NQyY,25941
435
435
  sky/skylet/events.py,sha256=2vlMyR1Df3zB6ggBJNN2lUunH6x-n-m-nvsHuTwQpXc,16481
436
436
  sky/skylet/job_lib.py,sha256=_BlkEQhsTIBfPOaIDVshMTNQPSgkRaNFk5HrP0aH7Qc,53226
437
- sky/skylet/log_lib.py,sha256=sl5oc0N-DLauTFAisJ0SeQS4IRnkTtd1U46B7zYXOi0,31964
437
+ sky/skylet/log_lib.py,sha256=6zQnJJamr5Q1ZPOgP85h2-LlyOAOGl4hhDp6kkRBf7Q,32355
438
438
  sky/skylet/log_lib.pyi,sha256=cpbQ4oa1C3Vl5rmPKkA4wupgKTOZlPFZHQiqrhxR_X8,5409
439
439
  sky/skylet/services.py,sha256=__mC_5I1Y1i1bUHwU4LqmQZVzdkRtTTJhI5kF_fLq-Q,26694
440
440
  sky/skylet/skylet.py,sha256=Hi07DNpTwvWz575iCLeHCpUlpnQrKQD_SSJdL2SPvo0,3019
441
- sky/skylet/subprocess_daemon.py,sha256=gcL-_Hea7-SrBUyZfAbo40RBFbaeuBmPCW0dm4YYkPo,3537
441
+ sky/skylet/subprocess_daemon.py,sha256=0eA855Bir4eVwjxn0vKUc53VgDQBnZo_oG2QqYiqZCg,6258
442
442
  sky/skylet/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
443
443
  sky/skylet/providers/command_runner.py,sha256=DdBKP0QX325_N3zAVYwnmXmfbfXNqkzWQZpF9DSR7Go,16259
444
444
  sky/skylet/providers/ibm/__init__.py,sha256=GXo5F9ztvs0qMDI_G9wM5KvzySfYugslJMHHAnBENRc,94
@@ -538,7 +538,7 @@ sky/utils/rich_utils.py,sha256=Zb48ZeOX58WG2me48XYk2VO4N_BXL154xJwqlHu0zw8,20031
538
538
  sky/utils/schemas.py,sha256=dtyKZjv1-t010khv6yf6ckJ_JaOzbfUXhE6eUTBrsrM,58042
539
539
  sky/utils/serialize_utils.py,sha256=nn2x-8cTZeiVr5cgaBpLOGGpSFtms62QAJFyxs_bodI,630
540
540
  sky/utils/status_lib.py,sha256=QGkd6COD1GX1h30Mk9RMUdyeUOMJs5971GkxTcFgdsU,1705
541
- sky/utils/subprocess_utils.py,sha256=T5tkoM5DueYaE3lQyer7oaEekadbtFBwWS77K8ofTs4,16041
541
+ sky/utils/subprocess_utils.py,sha256=LOdk03dA9NDTgbKisdHGWtIFXTtxeKIRDoSO_Rm8JIQ,16685
542
542
  sky/utils/tempstore.py,sha256=3S5fJ3UjnE12ve38c3MpTXpoRWfDSGndZpqNe7P_8aU,2148
543
543
  sky/utils/timeline.py,sha256=W_HrRBWS9glV25CyCBGUTn1OBe7b0S7kBL8_jv18CZU,3060
544
544
  sky/utils/ux_utils.py,sha256=JTEMwWdvNvXWTVTsQnsh9Du5Bh_g1y5z4yXDriZuJvI,12581
@@ -550,7 +550,7 @@ sky/utils/aws/get_default_security_group.py,sha256=LPzz5133ZUMbzDD3iqqACL9Pdlgqi
550
550
  sky/utils/cli_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
551
551
  sky/utils/cli_utils/status_utils.py,sha256=_hdPmlFC3YOnJkttHx2GMGc9lBQqRWY8WTWc1ZWR4GI,16183
552
552
  sky/utils/db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
553
- sky/utils/db/db_utils.py,sha256=9XDirZgBzSqpme3Q7h3qI4RUYfvPkD3bfd-IL0FBt5s,17028
553
+ sky/utils/db/db_utils.py,sha256=C3s89lC2fH2Pz6KWNBRAJYiJXMIScOYVfABlxqZt_ic,17768
554
554
  sky/utils/db/migration_utils.py,sha256=Kv1oPC67dYWGBkdj10WHvdubfKZsZA31pSmbCWT_5G4,5147
555
555
  sky/utils/kubernetes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
556
556
  sky/utils/kubernetes/cleanup-tunnel.sh,sha256=rXMXuMfyB9bzKjLvXdMCjimDVvdjGPMXuqeo2ZNx9OA,2244
@@ -579,9 +579,9 @@ sky/workspaces/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
579
579
  sky/workspaces/core.py,sha256=kRrdh-8MhX1953pML1B_DoStnDuNrsmHcZlnWoAxVo0,27218
580
580
  sky/workspaces/server.py,sha256=T1K52wR88nARVMUBf2cpIP3VURjDNQTcN6HIp7prghE,3511
581
581
  sky/workspaces/utils.py,sha256=IIAiFoS6sdb2t0X5YoX9AietpTanZUQNTK8cePun-sY,2143
582
- skypilot_nightly-1.0.0.dev20251022.dist-info/licenses/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
583
- skypilot_nightly-1.0.0.dev20251022.dist-info/METADATA,sha256=NPCdKMiU0YREhZvhJzkmW4fqb0NIRrO_KWsV01pUe9I,31328
584
- skypilot_nightly-1.0.0.dev20251022.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
585
- skypilot_nightly-1.0.0.dev20251022.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
586
- skypilot_nightly-1.0.0.dev20251022.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
587
- skypilot_nightly-1.0.0.dev20251022.dist-info/RECORD,,
582
+ skypilot_nightly-1.0.0.dev20251024.dist-info/licenses/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
583
+ skypilot_nightly-1.0.0.dev20251024.dist-info/METADATA,sha256=gOLFRUJxfTci4AhT6_8DSgm5hQU9gHzcqSHXOOAwBHM,31328
584
+ skypilot_nightly-1.0.0.dev20251024.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
585
+ skypilot_nightly-1.0.0.dev20251024.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
586
+ skypilot_nightly-1.0.0.dev20251024.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
587
+ skypilot_nightly-1.0.0.dev20251024.dist-info/RECORD,,
@@ -1,11 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1141],{99333:function(e,s,a){a.d(s,{Z:function(){return t}});/**
2
- * @license lucide-react v0.407.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */let t=(0,a(60998).Z)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]])},98418:function(e,s,a){a.d(s,{Z:function(){return t}});/**
7
- * @license lucide-react v0.407.0 - ISC
8
- *
9
- * This source code is licensed under the ISC license.
10
- * See the LICENSE file in the root directory of this source tree.
11
- */let t=(0,a(60998).Z)("Trash",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]])},1812:function(e,s,a){a.d(s,{X:function(){return n}});var t=a(85893),r=a(67294);let l=e=>{if(!(null==e?void 0:e.message))return"An unexpected error occurred.";let s=e.message;return s.includes("failed:")&&(s=s.split("failed:")[1].trim()),s},n=e=>{let{error:s,title:a="Error",onDismiss:n}=e,[c,i]=(0,r.useState)(!1);if((0,r.useEffect)(()=>{s&&i(!1)},[s]),!s||c)return null;let o="string"==typeof s?s:l(s);return(0,t.jsx)("div",{className:"bg-red-50 border border-red-200 rounded-md p-3 mb-4",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex",children:[(0,t.jsx)("div",{className:"flex-shrink-0",children:(0,t.jsx)("svg",{className:"h-5 w-5 text-red-400",viewBox:"0 0 20 20",fill:"currentColor",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})})}),(0,t.jsx)("div",{className:"ml-3",children:(0,t.jsxs)("div",{className:"text-sm text-red-800",children:[(0,t.jsxs)("strong",{children:[a,":"]})," ",o]})})]}),(0,t.jsx)("button",{onClick:()=>{i(!0),n&&n()},className:"flex-shrink-0 ml-4 text-red-400 hover:text-red-600 focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-2 focus:ring-offset-red-50 rounded","aria-label":"Dismiss error",children:(0,t.jsx)("svg",{className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]})})}},69123:function(e,s,a){a.d(s,{g:function(){return n}});var t=a(85893),r=a(67294),l=a(32350);let n=r.forwardRef((e,s)=>{let{className:a,...r}=e;return(0,t.jsx)("textarea",{className:(0,l.cn)("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",a),ref:s,...r})});n.displayName="Textarea"},11141:function(e,s,a){a.r(s),a.d(s,{WorkspaceEditor:function(){return _}});var t=a(85893),r=a(67294),l=a(11163),n=a(17324),c=a(23266),i=a(68969);a(6135);var o=a(41664),d=a.n(o),u=a(9008),x=a.n(u),m=a(37673),h=a(30803),f=a(69123),g=a(55739),p=a(70282),b=a(6021),j=a(13626),y=a(98418),N=a(99333),k=a(50326);let v=e=>{let{className:s="",variant:a="default",children:r,...l}=e;return(0,t.jsx)("div",{role:"alert",className:"".concat("relative w-full rounded-lg border p-4 flex items-start space-x-2"," ").concat({default:"bg-blue-50 border-blue-200 text-blue-800",destructive:"bg-red-50 border-red-200 text-red-800"}[a]," ").concat(s),...l,children:r})},w=e=>{let{className:s="",children:a,...r}=e;return(0,t.jsx)("div",{className:"text-sm leading-relaxed ".concat(s),...r,children:a})};var C=a(53850),L=a(1812),E=a(23015),S=a(1272),W=a(93225),A=a(53081),M=a(6378);let Z=e=>{let{message:s}=e;return s?(0,t.jsxs)(v,{className:"border-green-200 bg-green-50",children:[(0,t.jsx)(p.Z,{className:"h-4 w-4 text-green-600"}),(0,t.jsx)(w,{className:"text-green-800",children:s})]}):null},D=e=>{let{workspaceName:s,config:a,enabledClouds:r=[]}=e;if(!a)return null;let l="default"===s,n=0===Object.keys(a).length;if(l&&n)return(0,t.jsx)("div",{className:"text-sm text-gray-500 mb-3 italic p-3 bg-sky-50 rounded border border-sky-200",children:"Workspace 'default' can use all accessible infrastructure."});let c=[],i=[],o=[],d=new Set(r.map(e=>e.toLowerCase()));Object.entries(a).forEach(e=>{let[s,a]=e;if("private"===s||"allowed_users"===s)return;let r=W.Z2[s.toLowerCase()]||s.toUpperCase(),l=null==r?void 0:r.toLowerCase(),n=d.has(l)||Array.from(d).some(e=>e.startsWith(l+"/")),u=()=>"kubernetes"===s.toLowerCase()?Array.from(d).filter(e=>e.startsWith(l+"/")).map(e=>e.split("/")[1]):[];if((null==a?void 0:a.disabled)===!0)i.push(r);else if(a&&Object.keys(a).length>0){let e="";if("gcp"===s.toLowerCase()&&a.project_id)e=" (Project ID: ".concat(a.project_id,")");else if("aws"===s.toLowerCase()&&a.region)e=" (Region: ".concat(a.region,")");else if("kubernetes"===s.toLowerCase()){let s=u();s.length>0&&(e=" (Contexts: ".concat(s.join(", "),")"))}n?c.push((0,t.jsxs)("span",{className:"block",children:[r,e," is enabled."]},"".concat(s,"-enabled"))):o.push((0,t.jsxs)("span",{className:"block text-amber-700",children:[r,e," is configured but not currently available."]},"".concat(s,"-configured-not-enabled")))}else if(n){let e="";if("kubernetes"===s.toLowerCase()){let s=u();s.length>0&&(e=" (Contexts: ".concat(s.join(", "),")"))}c.push((0,t.jsxs)("span",{className:"block",children:[r,e," is enabled (using default settings)."]},"".concat(s,"-default-enabled")))}else o.push((0,t.jsxs)("span",{className:"block text-amber-700",children:[r," is configured but not currently available."]},"".concat(s,"-default-not-enabled")))});let u=[];if(i.length>0){let e=i.join(" and ");u.push((0,t.jsxs)("span",{className:"block",children:[e," ",1===i.length?"is":"are"," explicitly disabled."]},"disabled-clouds"))}return(u.push(...c),u.push(...o),u.length>0)?(0,t.jsx)("div",{className:"text-sm text-gray-700 mb-3 p-3 bg-sky-50 rounded border border-sky-200",children:u}):!l&&n?(0,t.jsx)("div",{className:"text-sm text-gray-500 mb-3 italic p-3 bg-sky-50 rounded border border-sky-200",children:"This workspace has no specific cloud resource configurations and can use all accessible infrastructure."}):null},P=e=>{let{isPrivate:s}=e;return s?(0,t.jsx)("span",{className:"inline-flex items-center px-2 py-1 rounded-full text-xs font-medium bg-gray-100 text-gray-700 border border-gray-300",children:"Private"}):(0,t.jsx)("span",{className:"inline-flex items-center px-2 py-1 rounded-full text-xs font-medium bg-green-100 text-green-700 border border-green-300",children:"Public"})},R=e=>{let{workspaceConfig:s,allUsers:a}=e;if(!s.private)return null;let r=s.allowed_users||[],l=(a||[]).filter(e=>"admin"===e.role).map(e=>e.username),n=[...new Set([...r,...l])];return 0===n.length?(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("h4",{className:"mb-2 text-xs text-gray-500 tracking-wider",children:"Allowed Users (0)"}),(0,t.jsx)("div",{className:"text-amber-600 text-xs italic p-2 bg-amber-50 rounded border border-amber-200",children:"No users configured (workspace may be inaccessible)"})]}):(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsxs)("h4",{className:"mb-2 text-xs text-gray-500 tracking-wider",children:["Allowed Users (",n.length,")"]}),(0,t.jsx)("div",{className:"space-y-1 max-h-48 overflow-y-auto border border-gray-200 rounded",children:n.map(e=>{let s=l.includes(e);return(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs p-2 bg-gray-50 hover:bg-gray-100 border-b border-gray-100 last:border-b-0",children:[(0,t.jsx)("span",{className:"font-medium text-gray-700",children:e}),s?(0,t.jsxs)("span",{className:"inline-flex items-center text-blue-600",children:[(0,t.jsx)(C.r7,{className:"w-3 h-3 mr-1"}),"Admin"]}):(0,t.jsxs)("span",{className:"inline-flex items-center text-gray-600",children:[(0,t.jsx)(b.Z,{className:"w-3 h-3 mr-1"}),"User"]})]},e)})})]})};function _(e){let{workspaceName:s,isNewWorkspace:a=!1}=e,o=(0,l.useRouter)(),[u,p]=(0,r.useState)({}),[b,v]=(0,r.useState)({}),[w,W]=(0,r.useState)(""),[_,z]=(0,r.useState)(!0),[O,U]=(0,r.useState)(!1),[T,Y]=(0,r.useState)(!1),[J,F]=(0,r.useState)(null),[I,V]=(0,r.useState)(null),[H,B]=(0,r.useState)(null),[X,G]=(0,r.useState)([]),[q,K]=(0,r.useState)({showDialog:!1,deleting:!1,error:null}),[Q,$]=(0,r.useState)({totalClusterCount:0,runningClusterCount:0,managedJobsCount:0,clouds:[]}),[ee,es]=(0,r.useState)(!1),ea=(0,r.useCallback)(async()=>{z(!0),F(null);try{let e;let[a,t]=await Promise.all([(0,n.getWorkspaces)(),(0,A.R)()]),r=a[s]||{};p(r),v(r),G(t||[]),e=0===Object.keys(r).length?"".concat(s,":\n # Empty workspace configuration - uses all accessible infrastructure\n"):S.ZP.dump({[s]:r},{indent:2,lineWidth:-1,noRefs:!0,skipInvalid:!0,flowLevel:-1}),W(e)}catch(e){console.error("Error fetching workspace config:",e),F(e)}finally{z(!1)}},[s]),et=(0,r.useCallback)(async()=>{if(!a){es(!0);try{let[e,a,t]=await Promise.all([M.dashboardCache.get(c.getClusters),M.dashboardCache.get(i.getManagedJobs,[{allUsers:!0,skipFinished:!0,workspaceMatch:s,fields:["workspace","status"]}]),M.dashboardCache.get(n.getEnabledClouds,[s,!0])]),r=e.filter(e=>(e.workspace||"default")===s),l=r.filter(e=>"RUNNING"===e.status||"LAUNCHING"===e.status),o={};e.forEach(e=>{o[e.cluster]=e.workspace||"default"});let d=a.jobs||[],u=new Set(E.statusGroups.active),x=0;d.forEach(e=>{e.workspace===s&&u.has(e.status)&&x++}),$({totalClusterCount:r.length,runningClusterCount:l.length,managedJobsCount:x,clouds:Array.isArray(t)?t:[]})}catch(e){console.error("Failed to fetch workspace stats:",e)}finally{es(!1)}}},[s,a]);(0,r.useEffect)(()=>{a?(z(!1),W("".concat(s,":\n # New workspace configuration\n # Leave empty to use all accessible infrastructure\n"))):(ea(),et())},[s,a,ea,et]),(0,r.useEffect)(()=>{Y(JSON.stringify(u)!==JSON.stringify(b))},[u,b]);let er=e=>{W(e),B(null);try{let a=S.ZP.load(e)||{},t=Object.keys(a);if(0===t.length)p({});else if(1===t.length){let e=t[0];if(e!==s){B('Workspace name cannot be changed. Expected "'.concat(s,'" but found "').concat(e,'".'));return}let r=a[s]||{};p(r)}else B("Configuration must contain only one workspace. Found: ".concat(t.join(", ")))}catch(e){B("Invalid YAML: ".concat(e.message))}},el=async()=>{U(!0),F(null),V(null);try{if(H)throw Error("Please fix YAML errors before saving");let e=S.ZP.load(w)||{},t=Object.keys(e);if(t.length>0&&t[0]!==s)throw Error('Workspace name cannot be changed. Expected "'.concat(s,'".'));a?(await (0,n.MB)(s,u),V("Workspace created successfully!"),setTimeout(()=>{o.push("/workspaces/".concat(s))},1500)):(await (0,n.eA)(s,u),V("Workspace updated successfully!"),v(u),et())}catch(e){console.error("Error saving workspace:",e),F(e)}finally{U(!1)}},en=async()=>{K(e=>({...e,deleting:!0,error:null}));try{await (0,n.zl)(s),V("Workspace deleted successfully!"),setTimeout(()=>{o.push("/workspaces")},1500)}catch(e){console.error("Error deleting workspace:",e),K(s=>({...s,deleting:!1,error:e}))}},ec=()=>{K({showDialog:!1,deleting:!1,error:null})},ei=async()=>{await Promise.all([ea(),et()])};if(!o.isReady)return(0,t.jsx)("div",{children:"Loading..."});let eo=a?"Create New Workspace | SkyPilot Dashboard":"Workspace: ".concat(s," | SkyPilot Dashboard");return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(x(),{children:(0,t.jsx)("title",{children:eo})}),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4 h-5",children:[(0,t.jsxs)("div",{className:"text-base flex items-center",children:[(0,t.jsx)(d(),{href:"/workspaces",className:"text-sky-blue hover:underline",children:"Workspaces"}),(0,t.jsx)("span",{className:"mx-2 text-gray-500",children:"›"}),(0,t.jsx)(d(),{href:a?"/workspace/new":"/workspaces/".concat(s),className:"text-sky-blue hover:underline",children:a?"New Workspace":s}),T&&(0,t.jsx)("span",{className:"ml-3 px-2 py-1 bg-yellow-100 text-yellow-800 text-xs rounded",children:"Unsaved changes"})]}),(0,t.jsxs)("div",{className:"text-sm flex items-center",children:[(_||O||ee)&&(0,t.jsxs)("div",{className:"flex items-center mr-4",children:[(0,t.jsx)(g.Z,{size:15,className:"mt-0"}),(0,t.jsx)("span",{className:"ml-2 text-gray-500",children:O?"Saving...":"Loading..."})]}),(0,t.jsxs)("div",{className:"flex items-center space-x-4",children:[!a&&(0,t.jsxs)("button",{onClick:ei,disabled:_||O||ee,className:"text-sky-blue hover:text-sky-blue-bright font-medium inline-flex items-center",children:[(0,t.jsx)(j.Z,{className:"w-4 h-4 mr-1.5"}),"Refresh"]}),!a&&"default"!==s&&(0,t.jsxs)("button",{onClick:()=>K({...q,showDialog:!0}),disabled:q.deleting||O,className:"text-red-600 hover:text-red-700 font-medium inline-flex items-center",children:[(0,t.jsx)(y.Z,{className:"w-4 h-4 mr-1.5"}),"Delete"]})]})]})]}),_?(0,t.jsxs)("div",{className:"flex justify-center items-center py-12",children:[(0,t.jsx)(g.Z,{size:24,className:"mr-2"}),(0,t.jsx)("span",{className:"text-gray-500",children:"Loading workspace configuration..."})]}):(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)(L.X,{error:J,title:"Error",onDismiss:()=>F(null)}),(0,t.jsx)(Z,{message:I}),(0,t.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[!a&&(0,t.jsx)("div",{className:"lg:col-span-1",children:(0,t.jsxs)(m.Zb,{className:"h-full",children:[(0,t.jsx)(m.Ol,{children:(0,t.jsx)(m.ll,{className:"text-base font-normal",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"font-semibold",children:"Workspace:"})," ",s]}),(0,t.jsx)(P,{isPrivate:!0===b.private})]})})}),(0,t.jsxs)(m.aY,{className:"text-sm pb-2 flex-1",children:[(0,t.jsxs)("div",{className:"py-2 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center text-gray-600",children:[(0,t.jsx)(C.QT,{className:"w-4 h-4 mr-2 text-gray-500"}),(0,t.jsx)("span",{children:"Clusters (Running / Total)"})]}),(0,t.jsx)("span",{className:"font-normal text-gray-800",children:ee?"...":"".concat(Q.runningClusterCount," / ").concat(Q.totalClusterCount)})]}),(0,t.jsxs)("div",{className:"py-2 flex items-center justify-between border-t border-gray-100",children:[(0,t.jsxs)("div",{className:"flex items-center text-gray-600",children:[(0,t.jsx)(C.Vp,{className:"w-4 h-4 mr-2 text-gray-500"}),(0,t.jsx)("span",{children:"Managed Jobs"})]}),(0,t.jsx)("span",{className:"font-normal text-gray-800",children:ee?"...":Q.managedJobsCount})]})]}),(0,t.jsxs)("div",{className:"px-6 pb-6 text-sm pt-3",children:[(0,t.jsx)("h4",{className:"mb-2 text-xs text-gray-500 tracking-wider",children:"Enabled Infra"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-x-4 gap-y-1",children:ee?(0,t.jsx)("span",{className:"text-gray-500",children:"Loading..."}):Q.clouds.length>0?Q.clouds.map(e=>(0,t.jsxs)("div",{className:"flex items-center text-gray-700",children:[(0,t.jsx)(C.Ye,{className:"w-3.5 h-3.5 mr-1.5 text-green-500"}),(0,t.jsx)("span",{children:e})]},e)):(0,t.jsx)("span",{className:"text-gray-500 italic",children:"No enabled infrastructure"})}),(0,t.jsx)("div",{className:"mt-4",children:(0,t.jsx)(D,{workspaceName:s,config:b,enabledClouds:Q.clouds})}),(0,t.jsx)(R,{workspaceConfig:b,allUsers:X})]})]})}),(0,t.jsx)("div",{className:a?"lg:col-span-3":"lg:col-span-2",children:(0,t.jsxs)(m.Zb,{className:"h-full flex flex-col",children:[(0,t.jsx)(m.Ol,{children:(0,t.jsx)(m.ll,{className:"text-base font-normal",children:a?"New Workspace YAML":"Edit Workspace YAML"})}),(0,t.jsx)(m.aY,{className:"flex-1 flex flex-col",children:(0,t.jsxs)("div",{className:"space-y-4 flex-1 flex flex-col",children:[H&&(0,t.jsx)(L.X,{error:H,onDismiss:()=>B(null)}),(0,t.jsxs)("div",{className:"flex-1 flex flex-col",children:[(0,t.jsxs)("p",{className:"text-sm text-gray-600 mb-3",children:["Configure infra-specific settings for this workspace. Leave empty to use all accessible infrastructure. Refer to"," ",(0,t.jsx)("a",{href:"https://docs.skypilot.co/en/latest/admin/workspaces.html#configuration",target:"_blank",rel:"noopener noreferrer",className:"text-blue-600",children:"SkyPilot Docs"})," ","for more details."]}),(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)("h4",{className:"text-sm font-medium text-gray-700 mb-2",children:"Example configuration:"}),(0,t.jsx)("div",{className:"p-3 bg-gray-50 border rounded-lg",children:(0,t.jsx)("pre",{className:"text-xs font-mono text-gray-600 whitespace-pre-wrap",children:"".concat(s||"my-workspace",":\n private: true\n allowed_users:\n - user1@mydomain.com\n - user2@mydomain.com\n gcp:\n project_id: xxx\n disabled: false\n kubernetes:\n allowed_contexts:\n - context-1")})})]}),(0,t.jsx)(f.g,{value:w,onChange:e=>er(e.target.value),className:"font-mono text-sm flex-1 resize-none",style:{minHeight:"350px"},spellCheck:!1,placeholder:"# Enter workspace configuration in YAML format"}),(0,t.jsx)("div",{className:"flex justify-end space-x-3 pt-3 border-gray-200",children:(0,t.jsxs)(h.z,{onClick:el,disabled:O||H||_,className:"inline-flex items-center bg-sky-600 hover:bg-sky-700 text-white",children:[(0,t.jsx)(N.Z,{className:"w-4 h-4 mr-1.5"}),O?"Applying...":"Apply"]})})]})]})})]})})]})]}),(0,t.jsx)(k.Vq,{open:q.showDialog,onOpenChange:ec,children:(0,t.jsxs)(k.cZ,{className:"sm:max-w-md",children:[(0,t.jsxs)(k.fK,{className:"",children:[(0,t.jsx)(k.$N,{children:"Delete Workspace"}),(0,t.jsxs)(k.Be,{children:['Are you sure you want to delete workspace "',s,'"? This action cannot be undone.']})]}),q.error&&(0,t.jsx)(L.X,{error:q.error,title:"Deletion Failed",onDismiss:()=>K(e=>({...e,error:null}))}),(0,t.jsxs)(k.cN,{className:"",children:[(0,t.jsx)(h.z,{variant:"outline",onClick:ec,disabled:q.deleting,children:"Cancel"}),(0,t.jsx)(h.z,{variant:"destructive",onClick:en,disabled:q.deleting,children:q.deleting?"Deleting...":"Delete"})]})]})})]})]})}}}]);
@@ -1,6 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1871],{39037:function(e,s,t){t.r(s),t.d(s,{ClusterTable:function(){return _},Clusters:function(){return I},Status2Actions:function(){return F},enabledActions:function(){return H},handleVSCodeConnection:function(){return O}});var r=t(85893),l=t(67294),a=t(11163),n=t(55739),i=t(36989),c=t(41664),o=t.n(c),u=t(30803),d=t(37673),h=t(68764),x=t(23266),p=t(17324),m=t(94545),f=t(13626),j=t(60998);/**
2
- * @license lucide-react v0.407.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */let v=(0,j.Z)("Terminal",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]),g=(0,j.Z)("SquareCode",[["path",{d:"M10 9.5 8 12l2 2.5",key:"3mjy60"}],["path",{d:"m14 9.5 2 2.5-2 2.5",key:"1bir2l"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);t(6135);var y=t(92128),w=t(99307),b=t(23001),k=t(88950),N=t(6378),C=t(36856);t(1272);var S=t(20546);let L=[{label:"Status",value:"status"},{label:"Cluster",value:"cluster"},{label:"User",value:"user"},{label:"Workspace",value:"workspace"},{label:"Infra",value:"infra"}],M=(e,s)=>{let t="",r="";return e>=0&&(t=e+"m",r=" "),s&&(t+="".concat(r,"(down)")),""===t&&(t="-"),t},R=(e,s)=>{if(e&&e.includes("@")){let t=e.split("@")[0];return s&&s!==t?"".concat(t," (").concat(s,")"):t}let t=e||s||"N/A";return s&&s!==t?"".concat(t," (").concat(s,")"):t},E=e=>{if(!e||0===e)return"-";let s=e=Math.floor(e),t="",r=0;for(let e of[{value:31536e3,label:"y"},{value:2592e3,label:"mo"},{value:86400,label:"d"},{value:3600,label:"h"},{value:60,label:"m"},{value:1,label:"s"}])if(s>=e.value&&r<2){let l=Math.floor(s/e.value);t+="".concat(l).concat(e.label," "),s%=e.value,r++}return t.trim()||"0s"};function I(){let e=(0,a.useRouter)(),[s,t]=(0,l.useState)(!1),c=l.useRef(null),[u,d]=(0,l.useState)(!1),[h,m]=(0,l.useState)(!1),[j,v]=(0,l.useState)(null),[g,w]=(0,l.useState)(()=>!!e.isReady&&"true"===e.query.history),[S,M]=(0,l.useState)(!0),[E,I]=(0,l.useState)(()=>{if(e.isReady){let s=e.query.historyDays;if(s&&"string"==typeof s&&["1","5","10","30"].includes(s))return parseInt(s)}return 1}),O=(0,b.X)(),[q,H]=(0,l.useState)([]),[W,F]=(0,l.useState)({status:[],cluster:[],user:[],workspace:[],infra:[]}),[A,D]=(0,l.useState)(!1);(0,l.useEffect)(()=>{if(e.isReady){U();let s="true"===e.query.history;g!==s&&(M(!1),w(s),setTimeout(()=>M(!0),50));let t=e.query.historyDays;if(t&&"string"==typeof t&&["1","5","10","30"].includes(t)){let e=parseInt(t);E!==e&&I(e)}}},[e.isReady,e.query.history,e.query.historyDays]),(0,l.useEffect)(()=>{(async()=>{try{await C.ZP.preloadForPage("clusters");let e=await N.default.get(p.getWorkspaces),s=Object.keys(e),t=await N.default.get(x.getClusters),r=[...new Set(t.map(e=>e.workspace||"default").filter(e=>e))],l=new Set(s);r.includes("default")&&l.has("default"),r.forEach(e=>l.add(e));let a=[...new Set(t.map(e=>({userId:e.user_hash||e.user,username:e.user})).filter(e=>e.userId)).values()],n=new Map;a.forEach(e=>{n.set(e.userId,{userId:e.userId,username:e.username,display:R(e.username,e.userId)})}),D(!0)}catch(e){console.error("Error fetching data for filters:",e),D(!0)}})()},[]);let P=s=>{let t={...e.query},r=[],l=[],a=[];s.map((e,s)=>{var t;r.push(null!==(t=e.property.toLowerCase())&&void 0!==t?t:""),l.push(e.operator),a.push(e.value)}),t.property=r,t.operator=l,t.value=a,e.replace({pathname:e.pathname,query:t},void 0,{shallow:!0})},Z=s=>{let t={...e.query};t.history=s.toString(),e.replace({pathname:e.pathname,query:t},void 0,{shallow:!0})},B=s=>{let t={...e.query};t.historyDays=s.toString(),e.replace({pathname:e.pathname,query:t},void 0,{shallow:!0})},U=()=>{let s={...e.query},t=s.property,r=s.operator,l=s.value;if(void 0===t)return;let a=[],n=Array.isArray(t)?t.length:1,i=new Map;if(i.set("",""),i.set("status","Status"),i.set("cluster","Cluster"),i.set("user","User"),i.set("workspace","Workspace"),i.set("infra","Infra"),1===n)a.push({property:i.get(t),operator:r,value:l});else for(let e=0;e<n;e++)a.push({property:i.get(t[e]),operator:r[e],value:l[e]});H(a)};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-2 mb-1 min-h-[20px]",children:[(0,r.jsx)("div",{className:"flex items-center gap-2",children:(0,r.jsx)(o(),{href:"/clusters",className:"text-sky-blue hover:underline leading-none text-base",children:"Sky Clusters"})}),(0,r.jsx)("div",{className:"w-full sm:w-auto",children:(0,r.jsx)(V,{propertyList:L,valueList:W,setFilters:H,updateURLParams:P,placeholder:"Filter clusters"})}),(0,r.jsxs)("div",{className:"flex items-center gap-2 ml-auto",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsxs)("label",{className:"flex items-center cursor-pointer",children:[(0,r.jsx)("input",{type:"checkbox",checked:g,onChange:e=>{let s=e.target.checked;w(s),Z(s)},className:"sr-only"}),(0,r.jsx)("div",{className:"relative inline-flex h-5 w-9 items-center rounded-full ".concat(S?"transition-colors":""," ").concat(g?"bg-sky-600":"bg-gray-300"),children:(0,r.jsx)("span",{className:"inline-block h-3 w-3 transform rounded-full bg-white ".concat(S?"transition-transform":""," ").concat(g?"translate-x-5":"translate-x-1")})}),(0,r.jsx)("span",{className:"ml-2 text-sm text-gray-700",children:"Show history"})]}),g&&(0,r.jsxs)(k.Ph,{value:E.toString(),onValueChange:e=>{let s=parseInt(e);I(s),B(s)},children:[(0,r.jsx)(k.i4,{className:"w-24 h-8 text-xs",children:(0,r.jsx)(k.ki,{})}),(0,r.jsxs)(k.Bw,{children:[(0,r.jsx)(k.Ql,{value:"1",children:"1 day"}),(0,r.jsx)(k.Ql,{value:"5",children:"5 days"}),(0,r.jsx)(k.Ql,{value:"10",children:"10 days"}),(0,r.jsx)(k.Ql,{value:"30",children:"30 days"})]})]})]}),s&&(0,r.jsxs)("div",{className:"flex items-center",children:[(0,r.jsx)(n.Z,{size:15,className:"mt-0"}),(0,r.jsx)("span",{className:"ml-2 text-gray-500 text-sm",children:"Loading..."})]}),(0,r.jsxs)("button",{onClick:()=>{N.default.invalidate(x.getClusters),N.default.invalidate(p.getWorkspaces),g&&N.default.invalidate(x.uR),D(!1),C.ZP.preloadForPage("clusters",{force:!0}).then(()=>{D(!0),c.current&&c.current()})},disabled:s,className:"text-sky-blue hover:text-sky-blue-bright flex items-center",children:[(0,r.jsx)(f.Z,{className:"h-4 w-4 mr-1.5"}),!O&&(0,r.jsx)("span",{children:"Refresh"})]})]})]}),(0,r.jsx)(z,{filters:q,setFilters:H,updateURLParams:P}),(0,r.jsx)(_,{refreshInterval:i.yc,setLoading:t,refreshDataRef:c,filters:q,showHistory:g,historyDays:E,onOpenSSHModal:e=>{v(e),d(!0)},onOpenVSCodeModal:e=>{v(e),m(!0)},setOptionValues:F,preloadingComplete:A}),(0,r.jsx)(y.Oh,{isOpen:u,onClose:()=>d(!1),cluster:j}),(0,r.jsx)(y._R,{isOpen:h,onClose:()=>m(!1),cluster:j})]})}function _(e){let{refreshInterval:s,setLoading:t,refreshDataRef:a,filters:c,showHistory:p,historyDays:f,onOpenSSHModal:j,onOpenVSCodeModal:v,setOptionValues:g,preloadingComplete:y}=e,[b,k]=(0,l.useState)([]),[C,L]=(0,l.useState)({key:null,direction:"ascending"}),[R,I]=(0,l.useState)(!1),[_,O]=(0,l.useState)(!0),[q,H]=(0,l.useState)(1),[W,V]=(0,l.useState)(10),z=e=>{let s={status:[],cluster:[],user:[],workspace:[],infra:[]},t=(e,s)=>{e.includes(s)||e.push(s)};return e.map(e=>{t(s.status,e.status),t(s.cluster,e.cluster),t(s.user,e.user),t(s.workspace,e.workspace),t(s.infra,e.infra)}),s},A=l.useCallback(async()=>{t(!0),I(!0);try{let e=await N.default.get(x.getClusters);if(p){let s=await N.default.get(x.uR,[null,f]),t=e.map(e=>({...e,isHistorical:!1})),r=s.map(e=>({...e,isHistorical:!0})),l=[...t];r.forEach(s=>{e.some(e=>e.cluster_hash===s.cluster_hash)||l.push(s)}),g(z(l)),k(l)}else{let s=e.map(e=>({...e,isHistorical:!1}));g(z(s)),k(s)}}catch(e){console.error("Error fetching cluster data:",e),g(z([])),k([])}t(!1),I(!1),O(!1)},[t,p,f,g]),D=(e,s)=>{var t;let{property:r,operator:l,value:a}=s;if(!a)return!0;if(!r){let s=a.toLowerCase();return Object.values(e).some(e=>null==e?void 0:e.toString().toLowerCase().includes(s))}let n=null===(t=e[r.toLowerCase()])||void 0===t?void 0:t.toString().toLowerCase(),i=a.toString().toLowerCase();switch(l){case"=":return n===i;case":":return null==n?void 0:n.includes(i);default:return!0}},P=l.useMemo(()=>{let e=0===c.length?b:b.filter(e=>{let s=null;for(let t=0;t<c.length;t++){let r=D(e,c[t]);s=null===s?r:s&&r}return s});return(0,m.R0)(e,C.key,C.direction)},[b,C,c]);l.useEffect(()=>{a&&(a.current=A)},[a,A]),(0,l.useEffect)(()=>{k([]);let e=!0;if(y){A();let t=setInterval(()=>{e&&A()},s);return()=>{e=!1,clearInterval(t)}}return()=>{e=!1}},[s,A,y]),(0,l.useEffect)(()=>{H(1)},[b.length]);let Z=e=>{let s="ascending";C.key===e&&"ascending"===C.direction&&(s="descending"),L({key:e,direction:s})},B=e=>C.key===e?"ascending"===C.direction?" ↑":" ↓":"",U=Math.ceil(P.length/W),Q=(q-1)*W,T=Q+W,X=P.slice(Q,T);return(0,r.jsxs)("div",{children:[(0,r.jsx)(d.Zb,{children:(0,r.jsx)("div",{className:"overflow-x-auto rounded-lg",children:(0,r.jsxs)(h.iA,{className:"min-w-full",children:[(0,r.jsx)(h.xD,{children:(0,r.jsxs)(h.SC,{children:[(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("status"),children:["Status",B("status")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("cluster"),children:["Cluster",B("cluster")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("user"),children:["User",B("user")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("workspace"),children:["Workspace",B("workspace")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("infra"),children:["Infra",B("infra")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("resources_str"),children:["Resources",B("resources_str")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("time"),children:["Started",B("time")]}),p&&(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("duration"),children:["Duration",B("duration")]}),(0,r.jsxs)(h.ss,{className:"sortable whitespace-nowrap",onClick:()=>Z("autostop"),children:["Autostop",B("autostop")]}),(0,r.jsx)(h.ss,{className:"md:sticky md:right-0 md:bg-white",children:"Actions"})]})}),(0,r.jsx)(h.RM,{children:R||!y?(0,r.jsx)(h.SC,{children:(0,r.jsx)(h.pj,{colSpan:9,className:"text-center py-6 text-gray-500",children:(0,r.jsxs)("div",{className:"flex justify-center items-center",children:[(0,r.jsx)(n.Z,{size:20,className:"mr-2"}),(0,r.jsx)("span",{children:"Loading..."})]})})}):X.length>0?X.map((e,s)=>(0,r.jsxs)(h.SC,{children:[(0,r.jsx)(h.pj,{children:(0,r.jsx)(w.OE,{status:e.status})}),(0,r.jsx)(h.pj,{children:(0,r.jsx)(o(),{href:"/clusters/".concat(e.isHistorical?e.cluster_hash:e.cluster||e.name),className:"text-blue-600",children:e.cluster||e.name})}),(0,r.jsx)(h.pj,{children:(0,r.jsx)(S.H,{username:e.user,userHash:e.user_hash})}),(0,r.jsx)(h.pj,{children:(0,r.jsx)(o(),{href:"/workspaces",className:"text-gray-700 hover:text-blue-600 hover:underline",children:e.workspace||"default"})}),(0,r.jsx)(h.pj,{children:(0,r.jsx)(i.Md,{content:e.full_infra||e.infra,className:"text-sm text-muted-foreground",children:(0,r.jsxs)("span",{children:[(0,r.jsx)(o(),{href:"/infra",className:"text-blue-600 hover:underline",children:e.cloud}),e.infra.includes("(")&&(0,r.jsx)("span",{children:" "+e.infra.substring(e.infra.indexOf("("))})]})})}),(0,r.jsx)(h.pj,{children:(0,r.jsx)(i.Md,{content:e.resources_str_full||e.resources_str,className:"text-sm text-muted-foreground",children:(0,r.jsx)("span",{children:e.resources_str})})}),(0,r.jsx)(h.pj,{children:(0,r.jsx)(i.Zg,{date:e.time})}),p&&(0,r.jsx)(h.pj,{children:E(e.duration)}),(0,r.jsx)(h.pj,{children:e.isHistorical?"-":M(e.autostop,e.to_down)}),(0,r.jsx)(h.pj,{className:"text-left md:sticky md:right-0 md:bg-white",children:!e.isHistorical&&(0,r.jsx)(F,{cluster:e.cluster,status:e.status,onOpenSSHModal:j,onOpenVSCodeModal:v})})]},s)):(0,r.jsx)(h.SC,{children:(0,r.jsx)(h.pj,{colSpan:9,className:"text-center py-6 text-gray-500",children:p?"No clusters found":"No active clusters"})})})]})})}),b.length>0&&(0,r.jsx)("div",{className:"flex justify-end items-center py-2 px-4 text-sm text-gray-700",children:(0,r.jsxs)("div",{className:"flex items-center space-x-4",children:[(0,r.jsxs)("div",{className:"flex items-center",children:[(0,r.jsx)("span",{className:"mr-2",children:"Rows per page:"}),(0,r.jsxs)("div",{className:"relative inline-block",children:[(0,r.jsxs)("select",{value:W,onChange:e=>{V(parseInt(e.target.value,10)),H(1)},className:"py-1 pl-2 pr-6 appearance-none outline-none cursor-pointer border-none bg-transparent",style:{minWidth:"40px"},children:[(0,r.jsx)("option",{value:10,children:"10"}),(0,r.jsx)("option",{value:30,children:"30"}),(0,r.jsx)("option",{value:50,children:"50"}),(0,r.jsx)("option",{value:100,children:"100"}),(0,r.jsx)("option",{value:200,children:"200"})]}),(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4 text-gray-500 absolute right-0 top-1/2 transform -translate-y-1/2 pointer-events-none",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]})]}),(0,r.jsx)("div",{children:"".concat(Q+1," - ").concat(Math.min(T,P.length)," of ").concat(P.length)}),(0,r.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,r.jsx)(u.z,{variant:"ghost",size:"icon",onClick:()=>{H(e=>Math.max(e-1,1))},disabled:1===q,className:"text-gray-500 h-8 w-8 p-0",children:(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"chevron-left",children:(0,r.jsx)("path",{d:"M15 18l-6-6 6-6"})})}),(0,r.jsx)(u.z,{variant:"ghost",size:"icon",onClick:()=>{H(e=>Math.min(e+1,U))},disabled:q===U||0===U,className:"text-gray-500 h-8 w-8 p-0",children:(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"chevron-right",children:(0,r.jsx)("path",{d:"M9 18l6-6-6-6"})})})]})]})})]})}let O=(e,s)=>{s&&s(e)},q=(e,s)=>{s?s(e):window.open("ssh://".concat(e))},H=e=>"RUNNING"===e?["connect","VSCode"]:[],W={connect:(0,r.jsx)(v,{className:"w-4 h-4 text-gray-500 inline-block"}),VSCode:(0,r.jsx)(g,{className:"w-4 h-4 text-gray-500 inline-block"})};function F(e){let{withLabel:s=!1,cluster:t,status:l,onOpenSSHModal:a,onOpenVSCodeModal:n}=e,c=H(l),o=(0,b.X)(),u=e=>{switch(e){case"connect":q(t,a);break;case"VSCode":O(t,n);break;default:return}};return(0,r.jsx)(r.Fragment,{children:(0,r.jsx)("div",{className:"flex items-center space-x-4",children:Object.entries(W).map(e=>{let t,l,[a,n]=e;switch(a){case"connect":t="Connect",l="Connect with SSH";break;case"VSCode":t="VSCode",l="Open in VS Code"}return(s||(t=""),c.includes(a))?(0,r.jsx)(i.WH,{content:l,className:"capitalize text-sm text-muted-foreground",children:(0,r.jsxs)("button",{onClick:()=>u(a),className:"text-sky-blue hover:text-sky-blue-bright font-medium inline-flex items-center",children:[n,!o&&(0,r.jsx)("span",{className:"ml-1.5",children:t})]})},a):(0,r.jsx)(i.WH,{content:l,className:"capitalize text-sm text-muted-foreground",children:(0,r.jsxs)("span",{className:"opacity-30 flex items-center cursor-not-allowed text-sm",title:a,children:[n,!o&&(0,r.jsx)("span",{className:"ml-1.5",children:t})]})},a)})})})}let V=e=>{let{propertyList:s=[],valueList:t,setFilters:a,updateURLParams:n,placeholder:i="Filter clusters"}=e,c=(0,l.useRef)(null),o=(0,l.useRef)(null),[u,d]=(0,l.useState)(!1),[h,x]=(0,l.useState)(""),[p,m]=(0,l.useState)("status"),[f,j]=(0,l.useState)([]);(0,l.useEffect)(()=>{let e=e=>{o.current&&!o.current.contains(e.target)&&c.current&&!c.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[]),(0,l.useEffect)(()=>{let e=[];if(t&&"object"==typeof t)switch(p){case"status":e=t.status||[];break;case"user":e=t.user||[];break;case"cluster":e=t.cluster||[];break;case"workspace":e=t.workspace||[];break;case"infra":e=t.infra||[]}""!==h.trim()&&(e=e.filter(e=>e&&e.toString().toLowerCase().includes(h.toLowerCase()))),j(e)},[p,t,h]);let v=e=>{let t=s.find(s=>s.value===e);return t?t.label:e},g=e=>{a(s=>{let t=[...s,{property:v(p),operator:":",value:e}];return n(t),t}),d(!1),x(""),c.current.focus()};return(0,r.jsxs)("div",{className:"flex flex-row border border-gray-300 rounded-md overflow-visible",children:[(0,r.jsx)("div",{className:"border-r border-gray-300 flex-shrink-0",children:(0,r.jsxs)(k.Ph,{onValueChange:m,value:p,children:[(0,r.jsx)(k.i4,{"aria-label":"Filter Property",className:"focus:ring-0 focus:ring-offset-0 border-none rounded-l-md rounded-r-none w-20 sm:w-24 md:w-32 h-8 text-xs sm:text-sm",children:(0,r.jsx)(k.ki,{placeholder:"Status"})}),(0,r.jsx)(k.Bw,{children:s.map((e,s)=>(0,r.jsx)(k.Ql,{value:e.value,children:e.label},"property-item-".concat(s)))})]})}),(0,r.jsxs)("div",{className:"relative flex-1",children:[(0,r.jsx)("input",{type:"text",ref:c,placeholder:i,value:h,onChange:e=>{x(e.target.value),u||d(!0)},onFocus:()=>{d(!0)},onKeyDown:e=>{"Enter"===e.key&&""!==h.trim()?(a(e=>{let s=[...e,{property:v(p),operator:":",value:h}];return n(s),s}),x(""),d(!1)):"Escape"===e.key&&(d(!1),c.current.blur())},className:"h-8 w-full sm:w-96 px-3 pr-8 text-sm border-none rounded-l-none rounded-r-md focus:ring-0 focus:outline-none",autoComplete:"off"}),h&&(0,r.jsx)("button",{onClick:()=>{x(""),d(!1)},className:"absolute right-2 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-gray-600",title:"Clear filter",tabIndex:-1,children:(0,r.jsx)("svg",{className:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}),u&&f.length>0&&(0,r.jsx)("div",{ref:o,className:"absolute z-50 mt-1 w-full bg-white border border-gray-200 rounded-md shadow-lg max-h-60 overflow-y-auto",style:{zIndex:9999},children:f.map((e,s)=>(0,r.jsx)("div",{className:"px-3 py-2 cursor-pointer hover:bg-gray-50 text-sm ".concat(s!==f.length-1?"border-b border-gray-100":""),onClick:()=>g(e),children:(0,r.jsx)("span",{className:"text-sm text-gray-700",children:e})},"".concat(e,"-").concat(s)))})]})]})},z=e=>{let{filters:s=[],setFilters:t,updateURLParams:l}=e,a=e=>{t(s=>{let t=s.filter((s,t)=>t!==e);return l(t),t})};return(0,r.jsx)(r.Fragment,{children:(0,r.jsx)("div",{className:"flex items-center gap-4 py-2 px-2",children:(0,r.jsxs)("div",{className:"flex flex-wrap items-content gap-2",children:[s.map((e,s)=>(0,r.jsx)(A,{filter:e,onRemove:()=>a(s)},"filteritem-".concat(s))),s.length>0&&(0,r.jsx)(r.Fragment,{children:(0,r.jsx)("button",{onClick:()=>{l([]),t([])},className:"rounded-full px-4 py-1 text-sm text-gray-700 bg-gray-200 hover:bg-gray-300",children:"Clear filters"})})]})})})},A=e=>{let{filter:s,onRemove:t}=e;return(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)("div",{className:"flex items-center text-blue-600 bg-blue-100 px-1 py-1 rounded-full text-sm",children:[(0,r.jsxs)("div",{className:"flex items-center gap-1 px-2",children:[(0,r.jsx)("span",{children:"".concat(s.property," ")}),(0,r.jsx)("span",{children:"".concat(s.operator," ")}),(0,r.jsx)("span",{children:" ".concat(s.value)})]}),(0,r.jsx)("button",{onClick:()=>t(),className:"p-0.5 ml-1 transform text-gray-400 hover:text-gray-600 bg-blue-500 hover:bg-blue-600 rounded-full flex flex-col items-center",title:"Clear filter",children:(0,r.jsx)("svg",{className:"h-3 w-3",fill:"none",stroke:"white",viewBox:"0 0 24 24",children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:5,d:"M6 18L18 6M6 6l12 12"})})})]})})}},12003:function(e,s,t){t.d(s,{j:function(){return n}});var r=t(90512);let l=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=r.W,n=(e,s)=>t=>{var r;if((null==s?void 0:s.variants)==null)return a(e,null==t?void 0:t.class,null==t?void 0:t.className);let{variants:n,defaultVariants:i}=s,c=Object.keys(n).map(e=>{let s=null==t?void 0:t[e],r=null==i?void 0:i[e];if(null===s)return null;let a=l(s)||l(r);return n[e][a]}),o=t&&Object.entries(t).reduce((e,s)=>{let[t,r]=s;return void 0===r||(e[t]=r),e},{});return a(e,c,null==s?void 0:null===(r=s.compoundVariants)||void 0===r?void 0:r.reduce((e,s)=>{let{class:t,className:r,...l}=s;return Object.entries(l).every(e=>{let[s,t]=e;return Array.isArray(t)?t.includes({...i,...o}[s]):({...i,...o})[s]===t})?[...e,t,r]:e},[]),null==t?void 0:t.class,null==t?void 0:t.className)}}}]);