dstack 0.19.21__py3-none-any.whl → 0.19.23rc1__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 dstack might be problematic. Click here for more details.
- dstack/_internal/cli/commands/apply.py +8 -3
- dstack/_internal/cli/services/configurators/__init__.py +8 -0
- dstack/_internal/cli/services/configurators/fleet.py +1 -1
- dstack/_internal/cli/services/configurators/gateway.py +1 -1
- dstack/_internal/cli/services/configurators/run.py +11 -1
- dstack/_internal/cli/services/configurators/volume.py +1 -1
- dstack/_internal/cli/utils/common.py +48 -5
- dstack/_internal/cli/utils/fleet.py +5 -5
- dstack/_internal/cli/utils/run.py +32 -0
- dstack/_internal/core/backends/configurators.py +9 -0
- dstack/_internal/core/backends/hotaisle/__init__.py +1 -0
- dstack/_internal/core/backends/hotaisle/api_client.py +109 -0
- dstack/_internal/core/backends/hotaisle/backend.py +16 -0
- dstack/_internal/core/backends/hotaisle/compute.py +225 -0
- dstack/_internal/core/backends/hotaisle/configurator.py +60 -0
- dstack/_internal/core/backends/hotaisle/models.py +45 -0
- dstack/_internal/core/backends/lambdalabs/compute.py +2 -1
- dstack/_internal/core/backends/models.py +8 -0
- dstack/_internal/core/backends/nebius/compute.py +8 -2
- dstack/_internal/core/backends/nebius/fabrics.py +1 -0
- dstack/_internal/core/backends/nebius/resources.py +9 -0
- dstack/_internal/core/compatibility/runs.py +8 -0
- dstack/_internal/core/models/backends/base.py +2 -0
- dstack/_internal/core/models/configurations.py +139 -1
- dstack/_internal/core/models/health.py +28 -0
- dstack/_internal/core/models/instances.py +2 -0
- dstack/_internal/core/models/logs.py +2 -1
- dstack/_internal/core/models/runs.py +21 -1
- dstack/_internal/core/services/ssh/tunnel.py +7 -0
- dstack/_internal/server/app.py +4 -0
- dstack/_internal/server/background/__init__.py +4 -0
- dstack/_internal/server/background/tasks/process_instances.py +107 -56
- dstack/_internal/server/background/tasks/process_probes.py +164 -0
- dstack/_internal/server/background/tasks/process_running_jobs.py +13 -0
- dstack/_internal/server/background/tasks/process_runs.py +21 -14
- dstack/_internal/server/migrations/versions/25479f540245_add_probes.py +43 -0
- dstack/_internal/server/migrations/versions/728b1488b1b4_add_instance_health.py +50 -0
- dstack/_internal/server/models.py +41 -0
- dstack/_internal/server/routers/instances.py +33 -5
- dstack/_internal/server/schemas/health/dcgm.py +56 -0
- dstack/_internal/server/schemas/instances.py +32 -0
- dstack/_internal/server/schemas/runner.py +5 -0
- dstack/_internal/server/services/instances.py +103 -1
- dstack/_internal/server/services/jobs/__init__.py +8 -1
- dstack/_internal/server/services/jobs/configurators/base.py +26 -0
- dstack/_internal/server/services/logging.py +4 -2
- dstack/_internal/server/services/logs/aws.py +13 -1
- dstack/_internal/server/services/logs/gcp.py +16 -1
- dstack/_internal/server/services/probes.py +6 -0
- dstack/_internal/server/services/projects.py +16 -4
- dstack/_internal/server/services/runner/client.py +52 -20
- dstack/_internal/server/services/runner/ssh.py +4 -4
- dstack/_internal/server/services/runs.py +49 -13
- dstack/_internal/server/services/ssh.py +66 -0
- dstack/_internal/server/settings.py +13 -0
- dstack/_internal/server/statics/index.html +1 -1
- dstack/_internal/server/statics/{main-8f9ee218d3eb45989682.css → main-03e818b110e1d5705378.css} +1 -1
- dstack/_internal/server/statics/{main-39a767528976f8078166.js → main-cc067b7fd1a8f33f97da.js} +26 -15
- dstack/_internal/server/statics/{main-39a767528976f8078166.js.map → main-cc067b7fd1a8f33f97da.js.map} +1 -1
- dstack/_internal/server/testing/common.py +44 -0
- dstack/_internal/{core/backends/remote → server/utils}/provisioning.py +22 -17
- dstack/_internal/settings.py +3 -0
- dstack/_internal/utils/common.py +15 -0
- dstack/api/server/__init__.py +1 -1
- dstack/version.py +1 -1
- {dstack-0.19.21.dist-info → dstack-0.19.23rc1.dist-info}/METADATA +14 -14
- {dstack-0.19.21.dist-info → dstack-0.19.23rc1.dist-info}/RECORD +71 -58
- /dstack/_internal/{core/backends/remote → server/schemas/health}/__init__.py +0 -0
- {dstack-0.19.21.dist-info → dstack-0.19.23rc1.dist-info}/WHEEL +0 -0
- {dstack-0.19.21.dist-info → dstack-0.19.23rc1.dist-info}/entry_points.txt +0 -0
- {dstack-0.19.21.dist-info → dstack-0.19.23rc1.dist-info}/licenses/LICENSE.md +0 -0
dstack/_internal/server/statics/{main-39a767528976f8078166.js → main-cc067b7fd1a8f33f97da.js}
RENAMED
|
@@ -73749,7 +73749,7 @@ var src_ResizeObserverController = (function () {
|
|
|
73749
73749
|
;// ./node_modules/@juggle/resize-observer/lib/ResizeObserver.js
|
|
73750
73750
|
|
|
73751
73751
|
|
|
73752
|
-
var
|
|
73752
|
+
var src_ResizeObserver_ResizeObserver = (function () {
|
|
73753
73753
|
function ResizeObserver(callback) {
|
|
73754
73754
|
if (arguments.length === 0) {
|
|
73755
73755
|
throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");
|
|
@@ -73878,7 +73878,7 @@ function src_useResizeObserver(elementRef, onObserve) {
|
|
|
73878
73878
|
const element = typeof elementRef === 'function' ? elementRef() : elementRef === null || elementRef === void 0 ? void 0 : elementRef.current;
|
|
73879
73879
|
if (element) {
|
|
73880
73880
|
let connected = true;
|
|
73881
|
-
const observer = new
|
|
73881
|
+
const observer = new src_ResizeObserver_ResizeObserver(entries => {
|
|
73882
73882
|
// Prevent observe notifications on already unmounted component.
|
|
73883
73883
|
if (connected) {
|
|
73884
73884
|
stableOnObserve(src_convertResizeObserverEntry(entries[0]));
|
|
@@ -93148,7 +93148,7 @@ function src_useStickyScrollbar(scrollbarRef, scrollbarContentRef, tableRef, wra
|
|
|
93148
93148
|
// Update scrollbar position wrapper or table size change.
|
|
93149
93149
|
(0,src_react.useEffect)(() => {
|
|
93150
93150
|
if (wrapperRef.current && tableRef.current) {
|
|
93151
|
-
const observer = new
|
|
93151
|
+
const observer = new src_ResizeObserver_ResizeObserver(() => {
|
|
93152
93152
|
if (scrollbarContentRef.current) {
|
|
93153
93153
|
src_updatePosition(tableRef.current, wrapperRef.current, scrollbarRef.current, scrollbarContentRef.current, inScrollableContainer);
|
|
93154
93154
|
}
|
|
@@ -123705,7 +123705,8 @@ LOGS:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(pr
|
|
|
123705
123705
|
ARTIFACTS:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/artifacts/list")},// Fleets
|
|
123706
123706
|
FLEETS:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/fleets/list")},FLEETS_DETAILS:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/fleets/get")},FLEETS_DELETE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/fleets/delete")},FLEET_INSTANCES_DELETE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/fleets/delete_instances")},// Fleets
|
|
123707
123707
|
VOLUMES_DELETE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/volumes/delete")},// METRICS
|
|
123708
|
-
JOB_METRICS:function(projectName,runName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/metrics/job/").concat(runName)}
|
|
123708
|
+
JOB_METRICS:function(projectName,runName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/metrics/job/").concat(runName)},// SECRETS
|
|
123709
|
+
SECRETS_LIST:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/secrets/list")},SECRET_GET:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/secrets/get")},SECRETS_UPDATE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/secrets/create_or_update")},SECRETS_DELETE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/secrets/delete")}},BACKENDS:{BASE:function(){return"".concat(src_API.BASE(),"/backends")},LIST_TYPES:function(){return"".concat(src_API.BACKENDS.BASE(),"/list_types")},CONFIG_VALUES:function(){return"".concat(src_API.BACKENDS.BASE(),"/config_values")}},PROJECT_BACKENDS:{BASE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/backends")},LIST:function(projectName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/list")},CREATE:function(projectName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/create")},UPDATE:function(projectName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/update")},DELETE:function(projectName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/delete")},BACKEND_CONFIG_INFO:function(projectName,backendName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/").concat(backendName,"/config_info")},CREATE_YAML:function(projectName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/create_yaml")},UPDATE_YAML:function(projectName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/update_yaml")},GET_YAML:function(projectName,backendName){return"".concat(src_API.PROJECT_BACKENDS.BASE(projectName),"/").concat(backendName,"/get_yaml")}},PROJECT_GATEWAYS:{BASE:function(projectName){return"".concat(src_API.BASE(),"/project/").concat(projectName,"/gateways")},LIST:function(projectName){return"".concat(src_API.PROJECT_GATEWAYS.BASE(projectName),"/list")},CREATE:function(projectName){return"".concat(src_API.PROJECT_GATEWAYS.BASE(projectName),"/create")},DELETE:function(projectName){return"".concat(src_API.PROJECT_GATEWAYS.BASE(projectName),"/delete")},DETAILS:function(projectName){return"".concat(src_API.PROJECT_GATEWAYS.BASE(projectName),"/get")},SET_DEFAULT:function(projectName){return"".concat(src_API.PROJECT_GATEWAYS.BASE(projectName),"/set_default")},SET_WILDCARD_DOMAIN:function(projectName){return"".concat(src_API.PROJECT_GATEWAYS.BASE(projectName),"/set_wildcard_domain")}// TEST_DOMAIN: (projectName: IProject['project_name'], instanceName: string) =>
|
|
123709
123710
|
// `${API.PROJECT_GATEWAYS.DETAILS(projectName, instanceName)}/test_domain`,
|
|
123710
123711
|
},RUNS:{BASE:function(){return"".concat(src_API.BASE(),"/runs")},LIST:function(){return"".concat(src_API.RUNS.BASE(),"/list")}},FLEETS:{BASE:function(){return"".concat(src_API.BASE(),"/fleets")},LIST:function(){return"".concat(src_API.FLEETS.BASE(),"/list")}},INSTANCES:{BASE:function(){return"".concat(src_API.BASE(),"/instances")},LIST:function(){return"".concat(src_API.INSTANCES.BASE(),"/list")}},SERVER:{BASE:function(){return"".concat(src_API.BASE(),"/server")},INFO:function(){return"".concat(src_API.SERVER.BASE(),"/get_info")}},VOLUME:{BASE:function(){return"".concat(src_API.BASE(),"/volumes")},LIST:function(){return"".concat(src_API.VOLUME.BASE(),"/list")}}};
|
|
123711
123712
|
;// ./node_modules/reselect/es/defaultMemoize.js
|
|
@@ -135608,7 +135609,7 @@ var src_UsersAutosuggest_excluded=["optionsFilter","onSelect"];var src_UserAutos
|
|
|
135608
135609
|
/* harmony default export */ const src_Members_styles_module = ({"role":"ECf2j","roleFieldWrapper":"cvhmo","deleteMemberButtonWrapper":"aeJmV"});
|
|
135609
135610
|
;// ./src/pages/Project/Members/index.tsx
|
|
135610
135611
|
function src_Members_ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function src_Members_objectSpread(e){for(var t,r=1;r<arguments.length;r++)t=null==arguments[r]?{}:arguments[r],r%2?src_Members_ownKeys(Object(t),!0).forEach(function(r){src_defineProperty_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):src_Members_ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))});return e}//TODO move type to special file
|
|
135611
|
-
var src_ProjectMembers=function(_ref){var members=_ref.members,loading=_ref.loading,onChange=_ref.onChange,readonly=_ref.readonly,isAdmin=_ref.isAdmin,project=_ref.project,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,_useState=(0,src_react.useState)([]),_useState2=src_slicedToArray_slicedToArray(_useState,2),selectedItems=_useState2[0],setSelectedItems=_useState2[1],_useGetUserListQuery=src_useGetUserListQuery(),usersData=_useGetUserListQuery.data,userData=src_hooks_useAppSelector(src_selectUserData),_useProjectMemberActi=src_useProjectMemberActions(),handleJoinProject=_useProjectMemberActi.handleJoinProject,handleLeaveProject=_useProjectMemberActi.handleLeaveProject,isMemberActionLoading=_useProjectMemberActi.isMemberActionLoading,_useForm=src_index_esm_useForm({defaultValues:{members:null!==members&&void 0!==members?members:[]}}),handleSubmit=_useForm.handleSubmit,control=_useForm.control,getValues=_useForm.getValues,setValue=_useForm.setValue,_useFieldArray=src_useFieldArray({control:control,name:"members"}),fields=_useFieldArray.fields,append=_useFieldArray.append,remove=_useFieldArray.remove,currentUserRole=(0,src_react.useMemo)(function(){if(!(null!==userData&&void 0!==userData&&userData.username))return null;var member=null===members||void 0===members?void 0:members.find(function(m){return m.user.username===userData.username});return(null===member||void 0===member?void 0:member.project_role)||null},[members,null===userData||void 0===userData?void 0:userData.username]);(0,src_react.useEffect)(function(){members&&setValue("members",members)},[members]);var onChangeHandler=function(){onChange(getValues("members"))},fieldsWithIndex=fields.map(function(field,index){return src_Members_objectSpread(src_Members_objectSpread({},field),{},{index:index})}),_useCollection=src_use_collection_useCollection(fieldsWithIndex,{filtering:{empty:/*#__PURE__*/src_react.createElement(src_ListEmptyMessage_ListEmptyMessage,{title:t("projects.edit.members_empty_message_title"),message:t("projects.edit.members_empty_message_text")})},pagination:{pageSize:10},selection:{}}),items=_useCollection.items,paginationProps=_useCollection.paginationProps,roleSelectOptions=[{label:t("roles.admin"),value:"admin",disabled:!isAdmin},{label:t("roles.manager"),value:"manager"},{label:t("roles.user"),value:"user"}],addMemberHandler=function(username){var selectedUser=null===usersData||void 0===usersData?void 0:usersData.find(function(u){return u.username===username});selectedUser?(append({user:selectedUser,project_role:"user"}),onChangeHandler()):onChange([].concat(src_toConsumableArray_toConsumableArray(getValues("members")),[{user:{username:username},project_role:"user"}]))},deleteSelectedMembers=function(){remove(selectedItems.map(function(_ref2){var index=_ref2.index;return index})),setSelectedItems([]),onChangeHandler()},COLUMN_DEFINITIONS=[{id:"name",header:t("projects.edit.members.name"),cell:function(item){return/*#__PURE__*/src_react.createElement(src_components_link,{target:"_blank",href:src_routes_ROUTES.USER.DETAILS.FORMAT(item.user.username)},item.user.username)}},{id:"global_role",header:t("projects.edit.members.role"),cell:function(field){var isAvailableForAdmin=!readonly&&(isAdmin||"admin"!==field.project_role);return/*#__PURE__*/src_react.createElement("div",{className:src_Members_styles_module.role},/*#__PURE__*/src_react.createElement("div",{className:src_Members_styles_module.roleFieldWrapper},/*#__PURE__*/src_react.createElement(src_FormSelect,{key:field.user.username,control:control,name:"members.".concat(field.index,".project_role"),options:roleSelectOptions,disabled:loading||!isAvailableForAdmin,expandToViewport:!0,onChange:onChangeHandler})),/*#__PURE__*/src_react.createElement("div",{className:src_Members_styles_module.deleteMemberButtonWrapper},isAvailableForAdmin&&/*#__PURE__*/src_react.createElement(src_Button_Button,{disabled:loading,formAction:"none",onClick:function(){remove(field.index),onChangeHandler()},variant:"icon",iconName:"remove"})))}}];return/*#__PURE__*/src_react.createElement("form",{onSubmit:handleSubmit(function(){})},/*#__PURE__*/src_react.createElement(src_table,{selectionType:"multi",selectedItems:selectedItems,onSelectionChange:function(event){return setSelectedItems(event.detail.selectedItems)},columnDefinitions:COLUMN_DEFINITIONS,items:items,header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2",counter:"(".concat(null===items||void 0===items?void 0:items.length,")"),actions:function(){var actions=[];// Add management actions only if not readonly
|
|
135612
|
+
var src_ProjectMembers=function(_ref){var members=_ref.members,loading=_ref.loading,onChange=_ref.onChange,readonly=_ref.readonly,isAdmin=_ref.isAdmin,project=_ref.project,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,_useState=(0,src_react.useState)([]),_useState2=src_slicedToArray_slicedToArray(_useState,2),selectedItems=_useState2[0],setSelectedItems=_useState2[1],_useGetUserListQuery=src_useGetUserListQuery(),usersData=_useGetUserListQuery.data,userData=src_hooks_useAppSelector(src_selectUserData),_useProjectMemberActi=src_useProjectMemberActions(),handleJoinProject=_useProjectMemberActi.handleJoinProject,handleLeaveProject=_useProjectMemberActi.handleLeaveProject,isMemberActionLoading=_useProjectMemberActi.isMemberActionLoading,_useNotifications=src_useNotifications_useNotifications(),_useNotifications2=src_slicedToArray_slicedToArray(_useNotifications,1),pushNotification=_useNotifications2[0],_useForm=src_index_esm_useForm({defaultValues:{members:null!==members&&void 0!==members?members:[]}}),handleSubmit=_useForm.handleSubmit,control=_useForm.control,getValues=_useForm.getValues,setValue=_useForm.setValue,_useFieldArray=src_useFieldArray({control:control,name:"members"}),fields=_useFieldArray.fields,append=_useFieldArray.append,remove=_useFieldArray.remove,currentUserRole=(0,src_react.useMemo)(function(){if(!(null!==userData&&void 0!==userData&&userData.username))return null;var member=null===members||void 0===members?void 0:members.find(function(m){return m.user.username===userData.username});return(null===member||void 0===member?void 0:member.project_role)||null},[members,null===userData||void 0===userData?void 0:userData.username]);(0,src_react.useEffect)(function(){members&&setValue("members",members)},[members]);var onChangeHandler=function(){onChange(getValues("members"))},fieldsWithIndex=fields.map(function(field,index){return src_Members_objectSpread(src_Members_objectSpread({},field),{},{index:index})}),_useCollection=src_use_collection_useCollection(fieldsWithIndex,{filtering:{empty:/*#__PURE__*/src_react.createElement(src_ListEmptyMessage_ListEmptyMessage,{title:t("projects.edit.members_empty_message_title"),message:t("projects.edit.members_empty_message_text")})},pagination:{pageSize:10},selection:{}}),items=_useCollection.items,paginationProps=_useCollection.paginationProps,roleSelectOptions=[{label:t("roles.admin"),value:"admin",disabled:!isAdmin},{label:t("roles.manager"),value:"manager"},{label:t("roles.user"),value:"user"}],addMemberHandler=function(username){var existingMembers=getValues("members"),isDuplicate=existingMembers.some(function(member){return member.user.username===username});if(isDuplicate)return void pushNotification({type:"error",content:"User \"".concat(username,"\" is already a member of this project")});var selectedUser=null===usersData||void 0===usersData?void 0:usersData.find(function(u){return u.username===username});selectedUser?(append({user:selectedUser,project_role:"user"}),onChangeHandler()):onChange([].concat(src_toConsumableArray_toConsumableArray(getValues("members")),[{user:{username:username},project_role:"user"}]))},deleteSelectedMembers=function(){remove(selectedItems.map(function(_ref2){var index=_ref2.index;return index})),setSelectedItems([]),onChangeHandler()},COLUMN_DEFINITIONS=[{id:"name",header:t("projects.edit.members.name"),cell:function(item){return/*#__PURE__*/src_react.createElement(src_components_link,{target:"_blank",href:src_routes_ROUTES.USER.DETAILS.FORMAT(item.user.username)},item.user.username)}},{id:"global_role",header:t("projects.edit.members.role"),cell:function(field){var isAvailableForAdmin=!readonly&&(isAdmin||"admin"!==field.project_role);return/*#__PURE__*/src_react.createElement("div",{className:src_Members_styles_module.role},/*#__PURE__*/src_react.createElement("div",{className:src_Members_styles_module.roleFieldWrapper},/*#__PURE__*/src_react.createElement(src_FormSelect,{key:field.user.username,control:control,name:"members.".concat(field.index,".project_role"),options:roleSelectOptions,disabled:loading||!isAvailableForAdmin,expandToViewport:!0,onChange:onChangeHandler})),/*#__PURE__*/src_react.createElement("div",{className:src_Members_styles_module.deleteMemberButtonWrapper},isAvailableForAdmin&&/*#__PURE__*/src_react.createElement(src_Button_Button,{disabled:loading,formAction:"none",onClick:function(){remove(field.index),onChangeHandler()},variant:"icon",iconName:"remove"})))}}];return/*#__PURE__*/src_react.createElement("form",{onSubmit:handleSubmit(function(){})},/*#__PURE__*/src_react.createElement(src_table,{selectionType:"multi",selectedItems:selectedItems,onSelectionChange:function(event){return setSelectedItems(event.detail.selectedItems)},columnDefinitions:COLUMN_DEFINITIONS,items:items,header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2",counter:"(".concat(null===items||void 0===items?void 0:items.length,")"),actions:function(){var actions=[];// Add management actions only if not readonly
|
|
135612
135613
|
// Add join/leave button if user is authenticated (available even in readonly mode)
|
|
135613
135614
|
if(readonly||actions.push(/*#__PURE__*/src_react.createElement(src_Button_Button,{key:"delete",formAction:"none",onClick:deleteSelectedMembers,disabled:!selectedItems.length},t("common.delete"))),null!==userData&&void 0!==userData&&userData.username&&project)if(!(null!==currentUserRole))actions.unshift(/*#__PURE__*/src_react.createElement(src_Button_Button,{key:"join",onClick:function(){return handleJoinProject(project.project_name,userData.username)},disabled:isMemberActionLoading,variant:"normal"},isMemberActionLoading?t("common.loading"):t("projects.join")));else{// Check if user is the last admin - if so, don't show leave button
|
|
135614
135615
|
var adminCount=project.members.filter(function(member){return"admin"===member.project_role}).length;"admin"===currentUserRole&&1>=adminCount||actions.unshift(/*#__PURE__*/src_react.createElement(src_ButtonWithConfirmation,{key:"leave",onClick:function(){return handleLeaveProject(project.project_name,userData.username)},disabled:isMemberActionLoading,variant:"danger-normal",confirmTitle:t("projects.leave_confirm_title"),confirmContent:t("projects.leave_confirm_message"),confirmButtonLabel:t("projects.leave")},isMemberActionLoading?t("common.loading"):t("projects.leave")))}return 0<actions.length?/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"xs",direction:"horizontal"},actions):void 0}()},t("projects.edit.members.section_title")),filter:readonly?void 0:/*#__PURE__*/src_react.createElement(src_UserAutosuggest,{disabled:loading,onSelect:function(_ref3){var detail=_ref3.detail;return addMemberHandler(detail.value)},optionsFilter:function(options){return options.filter(function(o){return!fields.find(function(f){return f.user.username===o.value})})}}),pagination:/*#__PURE__*/src_react.createElement(src_pagination_Pagination,paginationProps)}))};
|
|
@@ -135660,6 +135661,15 @@ var src_Edit_FIELD_NAMES={WILDCARD_DOMAIN:"wildcard_domain",DEFAULT:"default"};v
|
|
|
135660
135661
|
var src_useGatewaysTable=function(projectName){var navigate=src_dist_useNavigate(),_useGetProjectGateway=src_useGetProjectGatewaysQuery({projectName:projectName}),data=_useGetProjectGateway.data,isLoading=_useGetProjectGateway.isLoading,_useDeleteProjectGate=src_useDeleteProjectGatewayMutation(),_useDeleteProjectGate2=src_slicedToArray_slicedToArray(_useDeleteProjectGate,2),deleteGatewayRequest=_useDeleteProjectGate2[0],isDeleting=_useDeleteProjectGate2[1].isLoading;return{data:data,isLoading:isLoading,isDeleting:isDeleting,editGateway:function(gateway){navigate(src_routes_ROUTES.PROJECT.GATEWAY.EDIT.FORMAT(projectName,gateway.name))},deleteGateway:function(gateways){deleteGatewayRequest({projectName:projectName,names:gateways.map(function(gateway){return gateway.name})})},addGateway:function(){navigate(src_routes_ROUTES.PROJECT.GATEWAY.ADD.FORMAT(projectName))}}};
|
|
135661
135662
|
;// ./src/pages/Project/Gateways/hooks/index.ts
|
|
135662
135663
|
|
|
135664
|
+
;// ./src/services/secrets.ts
|
|
135665
|
+
var src_secrets_excluded=["project_name"];var src_secretApi=src_rtk_query_react_esm_createApi({reducerPath:"secretApi",baseQuery:src_fetchBaseQuery({prepareHeaders:src_fetchBaseQueryHeaders}),tagTypes:["Secrets"],endpoints:function(builder){return{getAllSecrets:builder.query({query:function(_ref){var project_name=_ref.project_name;return{url:src_API.PROJECTS.SECRETS_LIST(project_name),method:"POST"}},providesTags:function(result){return result?[].concat(src_toConsumableArray_toConsumableArray(result.map(function(_ref2){var id=_ref2.id;return{type:"Secrets",id:id}})),["Secrets"]):["Secrets"]}}),getSecret:builder.query({query:function(_ref3){var project_name=_ref3.project_name,name=_ref3.name;return{url:src_API.PROJECTS.SECRET_GET(project_name),method:"POST",body:{name:name}}},providesTags:function(result){return result?[{type:"Secrets",id:result.id},"Secrets"]:["Secrets"]}}),updateSecret:builder.mutation({query:function(_ref4){var project_name=_ref4.project_name,body=src_objectWithoutProperties_objectWithoutProperties(_ref4,src_secrets_excluded);return{url:src_API.PROJECTS.SECRETS_UPDATE(project_name),method:"POST",body:body}},invalidatesTags:function(){return["Secrets"]}}),deleteSecrets:builder.mutation({query:function(_ref5){var project_name=_ref5.project_name,names=_ref5.names;return{url:src_API.PROJECTS.SECRETS_DELETE(project_name),method:"POST",body:{secrets_names:names}}},invalidatesTags:function(){return["Secrets"]}})}}});var src_useGetAllSecretsQuery=src_secretApi.useGetAllSecretsQuery,src_useGetSecretQuery=src_secretApi.useGetSecretQuery,src_useLazyGetSecretQuery=src_secretApi.useLazyGetSecretQuery,src_useUpdateSecretMutation=src_secretApi.useUpdateSecretMutation,src_useDeleteSecretsMutation=src_secretApi.useDeleteSecretsMutation;
|
|
135666
|
+
;// ./src/pages/Project/Secrets/Form/index.tsx
|
|
135667
|
+
function src_Form_ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function src_Form_objectSpread(e){for(var t,r=1;r<arguments.length;r++)t=null==arguments[r]?{}:arguments[r],r%2?src_Form_ownKeys(Object(t),!0).forEach(function(r){src_defineProperty_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):src_Form_ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))});return e}var src_SecretForm=function(_ref){var initialValues=_ref.initialValues,onSubmitProp=_ref.onSubmit,loading=_ref.loading,onCancel=_ref.onCancel,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,_useForm=src_index_esm_useForm({defaultValues:src_Form_objectSpread({},initialValues)}),handleSubmit=_useForm.handleSubmit,control=_useForm.control;return/*#__PURE__*/src_react.createElement("form",{onSubmit:handleSubmit(function(values){return onSubmitProp(values)})},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{direction:"vertical",size:"l"},/*#__PURE__*/src_react.createElement(src_FormInput,{label:t("projects.edit.secrets.name"),control:control,name:"name",disabled:loading||!!(null!==initialValues&&void 0!==initialValues&&initialValues.id),rules:{required:t("validation.required"),pattern:{value:/^[A-Za-z0-9-_]{1,200}$/,message:t("projects.edit.secrets.validation.secret_name_format")}}}),/*#__PURE__*/src_react.createElement(src_FormTextarea,{rows:6,label:t("projects.edit.secrets.value"),control:control,name:"value",disabled:loading,rules:{required:t("validation.required")}}),/*#__PURE__*/src_react.createElement(src_box_Box,{float:"right"},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l",direction:"horizontal"},onCancel&&/*#__PURE__*/src_react.createElement(src_Button_Button,{formAction:"none",disabled:loading,onClick:onCancel},t("common.cancel")),/*#__PURE__*/src_react.createElement(src_Button_Button,{variant:"primary",formAction:"submit",loading:loading,disabled:loading},t("common.save"))))))};
|
|
135668
|
+
;// ./src/pages/Project/Secrets/styles.module.scss
|
|
135669
|
+
// extracted by mini-css-extract-plugin
|
|
135670
|
+
/* harmony default export */ const src_Secrets_styles_module = ({"value":"CPyzR","valueFieldWrapper":"Zu_2_","buttonsWrapper":"XRcmd"});
|
|
135671
|
+
;// ./src/pages/Project/Secrets/index.tsx
|
|
135672
|
+
var src_ProjectSecrets=function(_ref){var _project$project_name,project=_ref.project,loading=_ref.loading,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,_useState=(0,src_react.useState)(),_useState2=src_slicedToArray_slicedToArray(_useState,2),initialFormValues=_useState2[0],setInitialFormValues=_useState2[1],projectName=null!==(_project$project_name=null===project||void 0===project?void 0:project.project_name)&&void 0!==_project$project_name?_project$project_name:"",_useNotifications=src_useNotifications_useNotifications(),_useNotifications2=src_slicedToArray_slicedToArray(_useNotifications,1),pushNotification=_useNotifications2[0],_usePermissionGuard=src_usePermissionGuard({allowedProjectRoles:[src_ProjectUserRole.ADMIN],allowedGlobalRoles:[src_types_GlobalUserRole.ADMIN]}),_usePermissionGuard2=src_slicedToArray_slicedToArray(_usePermissionGuard,1),hasPermissionForSecretsManaging=_usePermissionGuard2[0],_useGetAllSecretsQuer=src_useGetAllSecretsQuery({project_name:projectName},{skip:!hasPermissionForSecretsManaging}),data=_useGetAllSecretsQuer.data,isLoading=_useGetAllSecretsQuer.isLoading,isFetching=_useGetAllSecretsQuer.isFetching,_useUpdateSecretMutat=src_useUpdateSecretMutation(),_useUpdateSecretMutat2=src_slicedToArray_slicedToArray(_useUpdateSecretMutat,2),updateSecret=_useUpdateSecretMutat2[0],isUpdating=_useUpdateSecretMutat2[1].isLoading,_useDeleteSecretsMuta=src_useDeleteSecretsMutation(),_useDeleteSecretsMuta2=src_slicedToArray_slicedToArray(_useDeleteSecretsMuta,2),deleteSecret=_useDeleteSecretsMuta2[0],isDeleting=_useDeleteSecretsMuta2[1].isLoading,_useLazyGetSecretQuer=src_useLazyGetSecretQuery(),_useLazyGetSecretQuer2=src_slicedToArray_slicedToArray(_useLazyGetSecretQuer,2),getSecret=_useLazyGetSecretQuer2[0],isGettingSecrets=_useLazyGetSecretQuer2[1].isLoading,_useCollection=src_use_collection_useCollection(null!==data&&void 0!==data?data:[],{filtering:{empty:hasPermissionForSecretsManaging?/*#__PURE__*/src_react.createElement(src_ListEmptyMessage_ListEmptyMessage,{title:t("projects.edit.secrets.empty_message_title"),message:t("projects.edit.secrets.empty_message_text")}):/*#__PURE__*/src_react.createElement(src_ListEmptyMessage_ListEmptyMessage,{title:t("projects.edit.secrets.not_permissions_title"),message:t("projects.edit.secrets.not_permissions_description")})},pagination:{pageSize:10},selection:{}}),items=_useCollection.items,paginationProps=_useCollection.paginationProps,collectionProps=_useCollection.collectionProps,selectedItems=collectionProps.selectedItems,deleteSelectedSecrets=function(){var names=null===selectedItems||void 0===selectedItems?void 0:selectedItems.map(function(s){var _s$name;return null!==(_s$name=s.name)&&void 0!==_s$name?_s$name:""});null!==names&&void 0!==names&&names.length&&deleteSecret({project_name:projectName,names:names})},removeSecretByName=function(name){deleteSecret({project_name:projectName,names:[name]})},editSecret=function(_ref3){var name=_ref3.name;getSecret({project_name:projectName,name:name}).unwrap().then(function(secret){return setInitialFormValues(secret)})},closeModal=function(){return setInitialFormValues(void 0)},isDisabledActions=loading||isLoading||isFetching||isDeleting||isGettingSecrets,COLUMN_DEFINITIONS=[{id:"name",header:t("projects.edit.secrets.name"),cell:function(secret){return secret.name}},{id:"value",header:t("projects.edit.secrets.value"),cell:function(secret){return/*#__PURE__*/src_react.createElement("div",{className:src_Secrets_styles_module.value},/*#__PURE__*/src_react.createElement("div",{className:src_Secrets_styles_module.valueFieldWrapper},"************************"),/*#__PURE__*/src_react.createElement("div",{className:src_Secrets_styles_module.buttonsWrapper},/*#__PURE__*/src_react.createElement(src_Button_Button,{disabled:isDisabledActions,formAction:"none",onClick:function(){return editSecret(secret)},variant:"icon",iconName:"edit"}),/*#__PURE__*/src_react.createElement(src_ButtonWithConfirmation,{disabled:isDisabledActions,formAction:"none",onClick:function(){return removeSecretByName(secret.name)},confirmTitle:t("projects.edit.secrets.delete_confirm_title"),confirmContent:t("projects.edit.secrets.delete_confirm_message",{name:secret.name}),variant:"icon",iconName:"remove"})))}}],addSecretHandler=function(){setInitialFormValues({})},isShowModal=!!initialFormValues;return/*#__PURE__*/src_react.createElement(src_react.Fragment,null,/*#__PURE__*/src_react.createElement(src_table,src_extends_extends({},collectionProps,{selectionType:"multi",columnDefinitions:COLUMN_DEFINITIONS,items:items,loading:isLoading,header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2",counter:hasPermissionForSecretsManaging?"(".concat(null===items||void 0===items?void 0:items.length,")"):"",actions:function(){if(!hasPermissionForSecretsManaging)return null;var actions=[/*#__PURE__*/src_react.createElement(src_Button_Button,{key:"add",formAction:"none",onClick:addSecretHandler},t("common.add")),/*#__PURE__*/src_react.createElement(src_ButtonWithConfirmation,{key:"delete",disabled:isDisabledActions||!(null!==selectedItems&&void 0!==selectedItems&&selectedItems.length),formAction:"none",onClick:deleteSelectedSecrets,confirmTitle:t("projects.edit.secrets.multiple_delete_confirm_title"),confirmContent:t("projects.edit.secrets.multiple_delete_confirm_message",{count:null===selectedItems||void 0===selectedItems?void 0:selectedItems.length})},t("common.delete"))];return 0<actions.length?/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"xs",direction:"horizontal"},actions):void 0}()},t("projects.edit.secrets.section_title")),pagination:/*#__PURE__*/src_react.createElement(src_pagination_Pagination,paginationProps)})),hasPermissionForSecretsManaging&&/*#__PURE__*/src_react.createElement(src_modal_Modal,{header:null!==initialFormValues&&void 0!==initialFormValues&&initialFormValues.id?t("projects.edit.secrets.update_secret"):t("projects.edit.secrets.create_secret"),visible:isShowModal,onDismiss:closeModal},isShowModal&&/*#__PURE__*/src_react.createElement(src_SecretForm,{initialValues:initialFormValues,onSubmit:function(_ref2){var name=_ref2.name,value=_ref2.value;name&&value&&updateSecret({project_name:projectName,name:name,value:value}).unwrap().then(function(){return setInitialFormValues(void 0)}).catch(function(error){pushNotification({type:"error",content:t("common.server_error",{error:src_serverErrors_getServerError(error)})})})},loading:isLoading||isUpdating,onCancel:closeModal})))};
|
|
135663
135673
|
;// ./src/pages/Project/Details/Settings/constants.tsx
|
|
135664
135674
|
var src_CLI_INFO={header:/*#__PURE__*/src_react.createElement("h2",null,"CLI"),body:/*#__PURE__*/src_react.createElement(src_react.Fragment,null,/*#__PURE__*/src_react.createElement("p",null,"To use this project with your CLI, add it using the",/*#__PURE__*/src_react.createElement("a",{href:"https://dstack.ai/docs/reference/cli/dstack/project/",target:"_blank"},/*#__PURE__*/src_react.createElement("code",null,"dstack project add"))," ","command."),/*#__PURE__*/src_react.createElement("p",null,"To learn how to install the CLI, refer to the"," ",/*#__PURE__*/src_react.createElement("a",{href:"https://dstack.ai/docs/cli/installation",target:"_blank"},"installation")," ","guide."))};
|
|
135665
135675
|
;// ./src/pages/Project/Details/Settings/styles.module.scss
|
|
@@ -135668,10 +135678,10 @@ var src_CLI_INFO={header:/*#__PURE__*/src_react.createElement("h2",null,"CLI"),b
|
|
|
135668
135678
|
;// ./src/pages/Project/Details/Settings/index.tsx
|
|
135669
135679
|
var src_ProjectSettings=function(){var _params$projectName,_currentUser$username,_data$backends,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,params=src_dist_useParams(),navigate=src_dist_useNavigate(),paramProjectName=null!==(_params$projectName=params.projectName)&&void 0!==_params$projectName?_params$projectName:"",_useHelpPanel=src_useHelpPanel_useHelpPanel(),_useHelpPanel2=src_slicedToArray_slicedToArray(_useHelpPanel,1),openHelpPanel=_useHelpPanel2[0],_useConfigProjectCliC=src_useConfigProjectCliCommand({projectName:paramProjectName}),_useConfigProjectCliC2=src_slicedToArray_slicedToArray(_useConfigProjectCliC,2),configCliCommand=_useConfigProjectCliC2[0],copyCliCommand=_useConfigProjectCliC2[1],_useCheckAvailablePro=src_useCheckAvailableProjectPermission(),isAvailableDeletingPermission=_useCheckAvailablePro.isAvailableDeletingPermission,isProjectManager=_useCheckAvailablePro.isProjectManager,isProjectAdmin=_useCheckAvailablePro.isProjectAdmin,isAvailableProjectManaging=_useCheckAvailablePro.isAvailableProjectManaging,_useNotifications=src_useNotifications_useNotifications(),_useNotifications2=src_slicedToArray_slicedToArray(_useNotifications,1),pushNotification=_useNotifications2[0],_useUpdateProjectMemb=src_useUpdateProjectMembersMutation(),_useUpdateProjectMemb2=src_slicedToArray_slicedToArray(_useUpdateProjectMemb,1),updateProjectMembers=_useUpdateProjectMemb2[0],_useUpdateProjectMuta=src_useUpdateProjectMutation(),_useUpdateProjectMuta2=src_slicedToArray_slicedToArray(_useUpdateProjectMuta,1),updateProject=_useUpdateProjectMuta2[0],_useDeleteProject=src_useDeleteProject(),deleteProject=_useDeleteProject.deleteProject,isDeleting=_useDeleteProject.isDeleting,_useGetUserDataQuery=src_useGetUserDataQuery({}),currentUser=_useGetUserDataQuery.data,_useGetProjectQuery=src_useGetProjectQuery({name:paramProjectName}),data=_useGetProjectQuery.data,isLoading=_useGetProjectQuery.isLoading,error=_useGetProjectQuery.error;(0,src_react.useEffect)(function(){error&&"status"in error&&404===error.status&&src_riseRouterException()},[error]);var currentUserRole=data?src_getProjectRoleByUserName(data,null!==(_currentUser$username=null===currentUser||void 0===currentUser?void 0:currentUser.username)&&void 0!==_currentUser$username?_currentUser$username:""):null,currentOwner={label:null===data||void 0===data?void 0:data.owner.username,value:null===data||void 0===data?void 0:data.owner.username},visibilityOptions=[{label:t("projects.edit.visibility.private")||"",value:"private"},{label:t("projects.edit.visibility.public")||"",value:"public"}],_useState=(0,src_react.useState)(null!==data&&void 0!==data&&data.isPublic?visibilityOptions[1]:visibilityOptions[0]),_useState2=src_slicedToArray_slicedToArray(_useState,2),selectedVisibility=_useState2[0],setSelectedVisibility=_useState2[1];(0,src_react.useEffect)(function(){setSelectedVisibility(null!==data&&void 0!==data&&data.isPublic?visibilityOptions[1]:visibilityOptions[0])},[data]);var _useBackendsTable=src_useBackendsTable(paramProjectName,null!==(_data$backends=null===data||void 0===data?void 0:data.backends)&&void 0!==_data$backends?_data$backends:[]),backendsData=_useBackendsTable.data,isDeletingBackend=_useBackendsTable.isDeleting,addBackend=_useBackendsTable.addBackend,deleteBackend=_useBackendsTable.deleteBackend,editBackend=_useBackendsTable.editBackend,_useGatewaysTable=src_useGatewaysTable(paramProjectName),gatewaysData=_useGatewaysTable.data,isLoadingGateways=_useGatewaysTable.isLoading;src_useBreadcrumbs_useBreadcrumbs([{text:t("navigation.project_other"),href:src_routes_ROUTES.PROJECT.LIST},{text:paramProjectName,href:src_routes_ROUTES.PROJECT.DETAILS.FORMAT(paramProjectName)}]);var debouncedMembersHandler=(0,src_react.useCallback)((0,src_lodash.debounce)(function(members){updateProjectMembers({project_name:paramProjectName,members:members.map(function(m){return{project_role:m.project_role,username:m.user.username}})}).unwrap().then(function(){pushNotification({type:"success",content:t("projects.edit.update_members_success")})})// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135670
135680
|
.catch(function(error){var _error$data;pushNotification({type:"error",content:t("common.server_error",{error:null===error||void 0===error||null===(_error$data=error.data)||void 0===_error$data||null===(_error$data=_error$data.detail)||void 0===_error$data?void 0:_error$data.msg})})})},1e3),[]),changeVisibilityHandler=function(is_public){updateProject({project_name:paramProjectName,is_public:is_public}).unwrap().then(function(){pushNotification({type:"success",content:t("projects.edit.update_visibility_success")})})// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135671
|
-
.catch(function(error){var _error$data2;pushNotification({type:"error",content:t("common.server_error",{error:null===error||void 0===error||null===(_error$data2=error.data)||void 0===_error$data2||null===(_error$data2=_error$data2.detail)||void 0===_error$data2?void 0:_error$data2.msg})})})},isDisabledButtons=(0,src_react.useMemo)(function(){return isDeleting||!data||!isAvailableDeletingPermission(data)},[data,isDeleting,isAvailableDeletingPermission]);return isLoading||!data||isLoadingGateways?/*#__PURE__*/src_react.createElement(src_Container,null,/*#__PURE__*/src_react.createElement(src_Loader_Loader,null)):/*#__PURE__*/src_react.createElement(src_react.Fragment,null,data&&backendsData&&gatewaysData&&/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l"},null!==currentUserRole&&/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2",info:/*#__PURE__*/src_react.createElement(src_InfoLink_InfoLink,{onFollow:function(){return openHelpPanel(src_CLI_INFO)}})},t("projects.edit.cli"))},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"s"},/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"p",color:"text-body-secondary"},"Run the following commands to set up the CLI for this project"),/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.codeWrapper},/*#__PURE__*/src_react.createElement(src_Hotspot_Hotspot,{hotspotId:src_constants_HotspotIds.CONFIGURE_CLI_COMMAND},/*#__PURE__*/src_react.createElement(src_Code,{className:src_Settings_styles_module.code},configCliCommand),/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.copy},/*#__PURE__*/src_react.createElement(src_popover,{dismissButton:!1,position:"top",size:"small",triggerType:"custom",content:/*#__PURE__*/src_react.createElement(src_status_indicator_StatusIndicator,{type:"success"},t("common.copied"))},/*#__PURE__*/src_react.createElement(src_Button_Button,{formAction:"none",iconName:"copy",variant:"normal",onClick:copyCliCommand}))))))),/*#__PURE__*/src_react.createElement(src_BackendsTable,src_extends_extends({backends:backendsData},isProjectManager(data)?{onClickAddBackend:addBackend,editBackend:editBackend,deleteBackends:deleteBackend,isDisabledDelete:isDeletingBackend}:{})),/*#__PURE__*/src_react.createElement(src_GatewaysTable,{gateways:gatewaysData}),/*#__PURE__*/src_react.createElement(src_ProjectMembers,{onChange:debouncedMembersHandler,members:data.members,readonly:!isProjectManager(data),isAdmin:isProjectAdmin(data),project:data}),/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2"},t("common.danger_zone"))},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l"},/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.dangerSectionGrid},isAvailableProjectManaging&&/*#__PURE__*/src_react.createElement(src_react.Fragment,null,/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"h5",color:"text-body-secondary"},t("projects.edit.delete_this_project")),/*#__PURE__*/src_react.createElement("div",null,/*#__PURE__*/src_react.createElement(src_ButtonWithConfirmation,{variant:"danger-normal",disabled:isDisabledButtons,formAction:"none",onClick:function(){data&&deleteProject(data).then(function(){return navigate(src_routes_ROUTES.PROJECT.LIST)})// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135681
|
+
.catch(function(error){var _error$data2;pushNotification({type:"error",content:t("common.server_error",{error:null===error||void 0===error||null===(_error$data2=error.data)||void 0===_error$data2||null===(_error$data2=_error$data2.detail)||void 0===_error$data2?void 0:_error$data2.msg})})})},isDisabledButtons=(0,src_react.useMemo)(function(){return isDeleting||!data||!isAvailableDeletingPermission(data)},[data,isDeleting,isAvailableDeletingPermission]);return isLoading||!data||isLoadingGateways?/*#__PURE__*/src_react.createElement(src_Container,null,/*#__PURE__*/src_react.createElement(src_Loader_Loader,null)):/*#__PURE__*/src_react.createElement(src_react.Fragment,null,data&&backendsData&&gatewaysData&&/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l"},null!==currentUserRole&&/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2",info:/*#__PURE__*/src_react.createElement(src_InfoLink_InfoLink,{onFollow:function(){return openHelpPanel(src_CLI_INFO)}})},t("projects.edit.cli"))},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"s"},/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"p",color:"text-body-secondary"},"Run the following commands to set up the CLI for this project"),/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.codeWrapper},/*#__PURE__*/src_react.createElement(src_Hotspot_Hotspot,{hotspotId:src_constants_HotspotIds.CONFIGURE_CLI_COMMAND},/*#__PURE__*/src_react.createElement(src_Code,{className:src_Settings_styles_module.code},configCliCommand),/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.copy},/*#__PURE__*/src_react.createElement(src_popover,{dismissButton:!1,position:"top",size:"small",triggerType:"custom",content:/*#__PURE__*/src_react.createElement(src_status_indicator_StatusIndicator,{type:"success"},t("common.copied"))},/*#__PURE__*/src_react.createElement(src_Button_Button,{formAction:"none",iconName:"copy",variant:"normal",onClick:copyCliCommand}))))))),/*#__PURE__*/src_react.createElement(src_BackendsTable,src_extends_extends({backends:backendsData},isProjectManager(data)?{onClickAddBackend:addBackend,editBackend:editBackend,deleteBackends:deleteBackend,isDisabledDelete:isDeletingBackend}:{})),/*#__PURE__*/src_react.createElement(src_GatewaysTable,{gateways:gatewaysData}),/*#__PURE__*/src_react.createElement(src_ProjectMembers,{onChange:debouncedMembersHandler,members:data.members,readonly:!isProjectManager(data),isAdmin:isProjectAdmin(data),project:data}),/*#__PURE__*/src_react.createElement(src_ProjectSecrets,{project:data}),/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2"},t("common.danger_zone"))},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l"},/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.dangerSectionGrid},isAvailableProjectManaging&&/*#__PURE__*/src_react.createElement(src_react.Fragment,null,/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"h5",color:"text-body-secondary"},t("projects.edit.delete_this_project")),/*#__PURE__*/src_react.createElement("div",null,/*#__PURE__*/src_react.createElement(src_ButtonWithConfirmation,{variant:"danger-normal",disabled:isDisabledButtons,formAction:"none",onClick:function(){data&&deleteProject(data).then(function(){return navigate(src_routes_ROUTES.PROJECT.LIST)})// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135672
135682
|
.catch(function(error){console.error("Delete project failed:",error)})},confirmTitle:t("projects.edit.delete_project_confirm_title"),confirmContent:t("projects.edit.delete_project_confirm_message")},t("common.delete")))),isAvailableProjectManaging&&/*#__PURE__*/src_react.createElement(src_react.Fragment,null,/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"h5",color:"text-body-secondary"},t("projects.edit.project_visibility")),/*#__PURE__*/src_react.createElement("div",null,/*#__PURE__*/src_react.createElement(src_ButtonWithConfirmation,{variant:"danger-normal",disabled:!isProjectManager(data),formAction:"none",onClick:function(){return changeVisibilityHandler("public"===selectedVisibility.value)},confirmTitle:t("projects.edit.update_visibility_confirm_title"),confirmButtonLabel:t("projects.edit.change_visibility"),confirmContent:/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"s"},/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"p",color:"text-body-secondary"},t("projects.edit.update_visibility_confirm_message")),/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.dangerSectionField},/*#__PURE__*/src_react.createElement(src_components_select,{options:visibilityOptions,selectedOption:selectedVisibility,onChange:function(event){return setSelectedVisibility(event.detail.selectedOption)},expandToViewport:!0,filteringType:"auto"})))},t("projects.edit.change_visibility")))),/*#__PURE__*/src_react.createElement(src_box_Box,{variant:"h5",color:"text-body-secondary"},t("projects.edit.owner")),/*#__PURE__*/src_react.createElement("div",null,/*#__PURE__*/src_react.createElement("div",{className:src_Settings_styles_module.dangerSectionField},/*#__PURE__*/src_react.createElement(src_components_select,{disabled:!0,options:[currentOwner],selectedOption:currentOwner,expandToViewport:!0,filteringType:"auto"}))))))))};
|
|
135673
135683
|
;// ./src/pages/Project/Form/index.tsx
|
|
135674
|
-
function
|
|
135684
|
+
function src_Project_Form_ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function src_Project_Form_objectSpread(e){for(var t,r=1;r<arguments.length;r++)t=null==arguments[r]?{}:arguments[r],r%2?src_Project_Form_ownKeys(Object(t),!0).forEach(function(r){src_defineProperty_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):src_Project_Form_ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))});return e}var src_ProjectForm=function(_ref){var initialValues=_ref.initialValues,onCancel=_ref.onCancel,loading=_ref.loading,onSubmitProp=_ref.onSubmit,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,_useNotifications=src_useNotifications_useNotifications(),_useNotifications2=src_slicedToArray_slicedToArray(_useNotifications,1),pushNotification=_useNotifications2[0],formMethods=src_index_esm_useForm({defaultValues:src_Project_Form_objectSpread({isPublic:!1},initialValues)}),handleSubmit=formMethods.handleSubmit,control=formMethods.control,setError=formMethods.setError,clearErrors=formMethods.clearErrors;return/*#__PURE__*/src_react.createElement("form",{onSubmit:handleSubmit(function(data){clearErrors();// Transform frontend camelCase to backend snake_case
|
|
135675
135685
|
var backendData={project_name:data.project_name,is_public:data.isPublic};onSubmitProp(backendData).catch(function(errorResponse){var errorRequestData=null===errorResponse||void 0===errorResponse?void 0:errorResponse.data;if(src_isResponseServerError(errorRequestData))errorRequestData.detail.forEach(function(error){src_isResponseServerFormFieldError(error)?setError(error.loc.join("."),{type:"custom",message:error.msg}):pushNotification({type:"error",content:t("common.server_error",{error:error.msg})})});else{var _errorResponse$error;pushNotification({type:"error",content:t("common.server_error",{error:null!==(_errorResponse$error=null===errorResponse||void 0===errorResponse?void 0:errorResponse.error)&&void 0!==_errorResponse$error?_errorResponse$error:errorResponse})})}})})},/*#__PURE__*/src_react.createElement(src_form_Form,{actions:/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{direction:"horizontal",size:"xs"},/*#__PURE__*/src_react.createElement(src_Button_Button,{formAction:"none",disabled:loading,variant:"link",onClick:onCancel},t("common.cancel")),/*#__PURE__*/src_react.createElement(src_Button_Button,{loading:loading,disabled:loading,variant:"primary"},t("common.save")))},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l"},/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2"},t("projects.edit.general"))},/*#__PURE__*/src_react.createElement(src_space_between_SpaceBetween,{size:"l"},/*#__PURE__*/src_react.createElement(src_FormInput,{label:t("projects.edit.project_name"),description:t("projects.edit.project_name_description"),control:control,name:"project_name",disabled:loading,rules:{required:t("validation.required"),pattern:{value:/^[a-zA-Z0-9-_]+$/,message:t("projects.edit.validation.user_name_format")}}}),/*#__PURE__*/src_react.createElement(src_FormCheckbox,{label:t("projects.edit.is_public"),description:t("projects.edit.is_public_description"),control:control,name:"isPublic",disabled:loading}))))))};
|
|
135676
135686
|
;// ./src/pages/Project/Add/index.tsx
|
|
135677
135687
|
var src_ProjectAdd=function(){var _useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,navigate=src_dist_useNavigate(),_useNotifications=src_useNotifications_useNotifications(),_useNotifications2=src_slicedToArray_slicedToArray(_useNotifications,1),pushNotification=_useNotifications2[0],_useCreateProjectMuta=src_useCreateProjectMutation(),_useCreateProjectMuta2=src_slicedToArray_slicedToArray(_useCreateProjectMuta,2),createProject=_useCreateProjectMuta2[0],isLoading=_useCreateProjectMuta2[1].isLoading;src_useBreadcrumbs_useBreadcrumbs([{text:t("navigation.project_other"),href:src_routes_ROUTES.PROJECT.LIST},{text:t("common.create",{text:t("navigation.project")}),href:src_routes_ROUTES.PROJECT.ADD}]);var onSubmitHandler=/*#__PURE__*/function(){var _ref=src_asyncToGenerator_asyncToGenerator(/*#__PURE__*/src_regenerator_default().mark(function _callee(data){var request;return src_regenerator_default().wrap(function(_context){for(;;)switch(_context.prev=_context.next){case 0:return request=createProject(data).unwrap(),request.then(function(data){pushNotification({type:"success",content:t("projects.create.success_notification")}),navigate(src_routes_ROUTES.PROJECT.DETAILS.SETTINGS.FORMAT(data.project_name))}).catch(function(error){pushNotification({type:"error",content:t("common.server_error",{error:src_serverErrors_getServerError(error)})})}),_context.abrupt("return",request);case 3:case"end":return _context.stop()}},_callee)}));return function(){return _ref.apply(this,arguments)}}();return/*#__PURE__*/src_react.createElement(src_ContentLayout,{header:/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"awsui-h1-sticky"},t("projects.create.page_title"))},/*#__PURE__*/src_react.createElement(src_ProjectForm,{onSubmit:onSubmitHandler,loading:isLoading,onCancel:function(){navigate(src_routes_ROUTES.PROJECT.LIST)}}))};
|
|
@@ -135801,14 +135811,15 @@ return/*#__PURE__*/src_react.createElement("div",{className:src_Runs_Details_sty
|
|
|
135801
135811
|
var src_List_hooks_useColumnsDefinitions=function(_ref){var projectName=_ref.projectName,runId=_ref.runId,runPriority=_ref.runPriority,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,columns=[{id:"job_name",header:t("projects.run.job_name"),cell:function(item){return/*#__PURE__*/src_react.createElement(src_NavigateLink_NavigateLink,{href:src_routes_ROUTES.PROJECT.DETAILS.RUNS.DETAILS.JOBS.DETAILS.FORMAT(projectName,runId,item.job_spec.job_name)},item.job_spec.job_name)}},{id:"submitted_at",header:t("projects.run.submitted_at"),cell:src_getJobSubmittedAt},{id:"status",header:t("projects.run.status"),cell:function(item){var status=src_getJobStatus(item);return/*#__PURE__*/src_react.createElement(src_status_indicator_StatusIndicator,{type:src_getStatusIconType(status,src_getJobTerminationReason(item))},src_getJobStatusMessage(item))}},{id:"priority",header:t("projects.run.priority"),cell:function(){return runPriority}},{id:"error",header:t("projects.run.error"),cell:function(item){return src_getJobError(item)}},{id:"resources",header:"".concat(t("projects.run.resources")),cell:src_getJobListItemResources},{id:"spot",header:"".concat(t("projects.run.spot")),cell:src_getJobListItemSpot},{id:"price",header:"".concat(t("projects.run.price")),cell:src_getJobListItemPrice},{id:"instance",header:"".concat(t("projects.run.instance")),cell:src_getJobListItemInstance},{id:"region",header:"".concat(t("projects.run.region")),cell:src_getJobListItemRegion},{id:"backend",header:"".concat(t("projects.run.backend")),cell:src_getJobListItemBackend}];return{columns:columns}};
|
|
135802
135812
|
;// ./src/pages/Runs/Details/Jobs/List/index.tsx
|
|
135803
135813
|
var src_JobList=function(_ref){var jobs=_ref.jobs,projectName=_ref.projectName,runId=_ref.runId,runPriority=_ref.runPriority,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,_useColumnsDefinition=src_List_hooks_useColumnsDefinitions({projectName:projectName,runId:runId,runPriority:runPriority}),columns=_useColumnsDefinition.columns,_useCollection=src_use_collection_useCollection(jobs,{pagination:{pageSize:20}}),items=_useCollection.items,collectionProps=_useCollection.collectionProps,paginationProps=_useCollection.paginationProps;return/*#__PURE__*/src_react.createElement(src_table,src_extends_extends({},collectionProps,{columnDefinitions:columns,items:items,header:/*#__PURE__*/src_react.createElement(src_components_header_Header,null,t("projects.run.jobs")),pagination:/*#__PURE__*/src_react.createElement(src_pagination_Pagination,paginationProps)}))};
|
|
135804
|
-
;// ./src/pages/Runs/Details/Logs/helpers.ts
|
|
135805
|
-
function src_helpers_ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function src_helpers_objectSpread(e){for(var t,r=1;r<arguments.length;r++)t=null==arguments[r]?{}:arguments[r],r%2?src_helpers_ownKeys(Object(t),!0).forEach(function(r){src_defineProperty_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):src_helpers_ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))});return e}var src_getJobSubmissionId=function(run){var _lastJob$job_submissi;if(run){var lastJob=run.jobs[run.jobs.length-1];return lastJob?null===(_lastJob$job_submissi=lastJob.job_submissions[lastJob.job_submissions.length-1])||void 0===_lastJob$job_submissi?void 0:_lastJob$job_submissi.id:void 0}};var src_decodeLogs=function(logs){return logs.map(function(log){var message=log.message;try{message=atob(message)}catch(e){return log}return src_helpers_objectSpread(src_helpers_objectSpread({},log),{},{message:message})})};
|
|
135806
135814
|
;// ./src/pages/Runs/Details/Logs/styles.module.scss
|
|
135807
135815
|
// extracted by mini-css-extract-plugin
|
|
135808
|
-
/* harmony default export */ const src_Logs_styles_module = ({"headerContainer":"dh5Vt","headerTitle":"m5lhe","switchers":"KZwhB","loader":"AsNP2","mainLoader":"q9_1l","logs":"Lym9X","terminal":"Vs5Qg","timestamp":"P2X4U","scroll":"ZXmZb"});
|
|
135816
|
+
/* harmony default export */ const src_Logs_styles_module = ({"headerContainer":"dh5Vt","headerTitle":"m5lhe","switchers":"KZwhB","loader":"AsNP2","mainLoader":"q9_1l","logs":"Lym9X","terminal":"Vs5Qg","logItem":"LwQWn","toggleCollapse":"gPMQG","hidden":"p_8Mp","timestamp":"P2X4U","messageCol":"uk88g","message":"lIfz5","collapsed":"dSa7C","scroll":"ZXmZb"});
|
|
135817
|
+
;// ./src/pages/Runs/Details/Logs/components/LogRow/index.tsx
|
|
135818
|
+
var src_LogRow=function(_ref){var logItem=_ref.logItem,isShowTimestamp=_ref.isShowTimestamp,_useState=(0,src_react.useState)(!0),_useState2=src_slicedToArray_slicedToArray(_useState,2),collapsed=_useState2[0],setCollapsed=_useState2[1],_useState3=(0,src_react.useState)(!0),_useState4=src_slicedToArray_slicedToArray(_useState3,2),showChevron=_useState4[0],setShowChevron=_useState4[1],messageInnerRef=(0,src_react.useRef)(null);return (0,src_react.useEffect)(function(){var observeTarget=messageInnerRef.current;if(observeTarget){var resizeObserver=new ResizeObserver(function(entries){var entry=entries[0];if(entry){var height=entry.contentRect.height;setShowChevron(32<height)}});return resizeObserver.observe(observeTarget),function(){resizeObserver.unobserve(observeTarget)}}},[]),/*#__PURE__*/src_react.createElement("tr",{className:src_Logs_styles_module.logItem},isShowTimestamp&&/*#__PURE__*/src_react.createElement("td",{className:src_Logs_styles_module.timestamp},/*#__PURE__*/src_react.createElement("span",{className:src_classnames_default()(src_Logs_styles_module.toggleCollapse,src_defineProperty_defineProperty({},src_Logs_styles_module.hidden,!showChevron)),onClick:function(){return setCollapsed(function(val){return!val})}},/*#__PURE__*/src_react.createElement(src_Icon,{name:collapsed?"caret-right-filled":"caret-down-filled"}))," ",new Date(logItem.timestamp).toISOString()),/*#__PURE__*/src_react.createElement("td",{className:src_Logs_styles_module.messageCol},/*#__PURE__*/src_react.createElement("div",{className:src_classnames_default()(src_Logs_styles_module.message,src_defineProperty_defineProperty({},src_Logs_styles_module.collapsed,collapsed&&isShowTimestamp))},/*#__PURE__*/src_react.createElement("div",{ref:messageInnerRef,className:src_Logs_styles_module.messageInner},logItem.message))))};
|
|
135819
|
+
;// ./src/pages/Runs/Details/Logs/helpers.ts
|
|
135820
|
+
function src_helpers_ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function src_helpers_objectSpread(e){for(var t,r=1;r<arguments.length;r++)t=null==arguments[r]?{}:arguments[r],r%2?src_helpers_ownKeys(Object(t),!0).forEach(function(r){src_defineProperty_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):src_helpers_ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))});return e}var src_getJobSubmissionId=function(run){var _lastJob$job_submissi;if(run){var lastJob=run.jobs[run.jobs.length-1];return lastJob?null===(_lastJob$job_submissi=lastJob.job_submissions[lastJob.job_submissions.length-1])||void 0===_lastJob$job_submissi?void 0:_lastJob$job_submissi.id:void 0}};var src_decodeLogs=function(logs){return logs.map(function(log){var message=log.message;try{message=atob(message)}catch(e){return log}return src_helpers_objectSpread(src_helpers_objectSpread({},log),{},{message:message})})};
|
|
135809
135821
|
;// ./src/pages/Runs/Details/Logs/index.tsx
|
|
135810
|
-
var src_LIMIT_LOG_ROWS=100,src_LOADING_SCROLL_GAP=300;var src_Logs=function(_ref){var className=_ref.className,projectName=_ref.projectName,runName=_ref.runName,jobSubmissionId=_ref.jobSubmissionId,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,codeRef=(0,src_react.useRef)(null),nextTokenRef=(0,src_react.useRef)(void 0),scrollPositionByBottom=(0,src_react.useRef)(0),_useState=(0,src_react.useState)([]),_useState2=src_slicedToArray_slicedToArray(_useState,2),logsData=_useState2[0],setLogsData=_useState2[1],_useState3=(0,src_react.useState)(
|
|
135811
|
-
(0,src_react.useEffect)(function(){getLogItems()},[]),(0,src_react.useLayoutEffect)(function(){logsForView.length&&logsForView.length<=src_LIMIT_LOG_ROWS?scrollToBottom():restoreScrollPositionByBottom(),logsForView.length&&checkNeedMoreLoadingData()},[logsForView]);var onScroll=(0,src_react.useCallback)(function(event){var element=event.target;element.scrollTop<=src_LOADING_SCROLL_GAP&&!isLoading&&getNextLogItems()},[isLoading,logsForView]);(0,src_react.useEffect)(function(){if(codeRef.current)return codeRef.current.addEventListener("scroll",onScroll),function(){codeRef.current&&codeRef.current.removeEventListener("scroll",onScroll)}},[codeRef.current,onScroll]);var scrollToBottom=function(){if(codeRef.current){var _codeRef$current4=codeRef.current,clientHeight=_codeRef$current4.clientHeight,scrollHeight=_codeRef$current4.scrollHeight;codeRef.current.scrollTo(0,scrollHeight-clientHeight)}};return/*#__PURE__*/src_react.createElement("div",{className:src_classnames_default()(src_Logs_styles_module.logs,className)},/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement("div",{className:src_Logs_styles_module.headerContainer},/*#__PURE__*/src_react.createElement("div",{className:src_Logs_styles_module.headerTitle},/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2"},t("projects.run.log"))),/*#__PURE__*/src_react.createElement(src_Loader_Loader,{show:isLoading&&!!logsForView.length,padding:"n",className:src_Logs_styles_module.loader,loadingText:""}),/*#__PURE__*/src_react.createElement("div",{className:src_Logs_styles_module.switchers},/*#__PURE__*/src_react.createElement(src_box_Box,null,/*#__PURE__*/src_react.createElement(src_Button_Button,{ariaLabel:"Legacy mode",formAction:"none",iconName:"gen-ai",variant:isEnabledDecoding?"primary":"icon",onClick:function(){saveScrollPositionByBottom(),setIsEnabledDecoding(!isEnabledDecoding)}}))))},/*#__PURE__*/src_react.createElement(src_TextContent,null,!isLoading&&!logsForView.length&&/*#__PURE__*/src_react.createElement(src_ListEmptyMessage_ListEmptyMessage,{title:t("projects.run.log_empty_message_title"),message:t("projects.run.log_empty_message_text")}),!logsForView.length&&/*#__PURE__*/src_react.createElement(src_Loader_Loader,{show:isLoading,className:src_Logs_styles_module.mainLoader}),!!logsForView.length&&/*#__PURE__*/src_react.createElement(src_Code,{className:src_Logs_styles_module.terminal,ref:codeRef},logsForView.map(function(log,i){return/*#__PURE__*/src_react.createElement("p",{key:i},log.message)})))))};
|
|
135822
|
+
var src_LIMIT_LOG_ROWS=100,src_LOADING_SCROLL_GAP=300;var src_Logs=function(_ref){var className=_ref.className,projectName=_ref.projectName,runName=_ref.runName,jobSubmissionId=_ref.jobSubmissionId,_useTranslation=src_useTranslation_useTranslation(),t=_useTranslation.t,codeRef=(0,src_react.useRef)(null),nextTokenRef=(0,src_react.useRef)(void 0),scrollPositionByBottom=(0,src_react.useRef)(0),_useState=(0,src_react.useState)([]),_useState2=src_slicedToArray_slicedToArray(_useState,2),logsData=_useState2[0],setLogsData=_useState2[1],_useState3=(0,src_react.useState)(),_useState4=src_slicedToArray_slicedToArray(_useState3,2),externalLink=_useState4[0],setExternalLink=_useState4[1],_useState5=(0,src_react.useState)(!1),_useState6=src_slicedToArray_slicedToArray(_useState5,2),isLoading=_useState6[0],setIsLoading=_useState6[1],_useLazyGetProjectLog=src_useLazyGetProjectLogsQuery(),_useLazyGetProjectLog2=src_slicedToArray_slicedToArray(_useLazyGetProjectLog,1),getProjectLogs=_useLazyGetProjectLog2[0],_useLocalStorageState=src_useLocalStorageState("enable-encode-logs",!1),_useLocalStorageState2=src_slicedToArray_slicedToArray(_useLocalStorageState,2),isEnabledDecoding=_useLocalStorageState2[0],setIsEnabledDecoding=_useLocalStorageState2[1],_useLocalStorageState3=src_useLocalStorageState("enable-showing-timestamp-logs",!1),_useLocalStorageState4=src_slicedToArray_slicedToArray(_useLocalStorageState3,2),isShowTimestamp=_useLocalStorageState4[0],setIsShowTimestamp=_useLocalStorageState4[1],logsForView=(0,src_react.useMemo)(function(){return isEnabledDecoding?src_decodeLogs(logsData):logsData},[logsData,isEnabledDecoding]),saveScrollPositionByBottom=function(){if(codeRef.current){var _codeRef$current=codeRef.current,clientHeight=_codeRef$current.clientHeight,scrollHeight=_codeRef$current.scrollHeight,scrollTop=_codeRef$current.scrollTop;scrollPositionByBottom.current=scrollHeight-clientHeight-scrollTop}},restoreScrollPositionByBottom=function(){if(codeRef.current){var _codeRef$current2=codeRef.current,clientHeight=_codeRef$current2.clientHeight,scrollHeight=_codeRef$current2.scrollHeight;codeRef.current.scrollTo(0,scrollHeight-clientHeight-scrollPositionByBottom.current)}},checkNeedMoreLoadingData=function(){if(codeRef.current){var _codeRef$current3=codeRef.current,clientHeight=_codeRef$current3.clientHeight,scrollHeight=_codeRef$current3.scrollHeight;scrollHeight-clientHeight<=src_LOADING_SCROLL_GAP&&getNextLogItems()}},getLogItems=function(nextToken){setIsLoading(!0);jobSubmissionId&&getProjectLogs({project_name:projectName,run_name:runName,descending:!0,job_submission_id:jobSubmissionId,next_token:nextToken,limit:src_LIMIT_LOG_ROWS}).unwrap().then(function(response){saveScrollPositionByBottom();var reversed=response.logs.toReversed();nextToken?setLogsData(function(old){return[].concat(src_toConsumableArray_toConsumableArray(reversed),src_toConsumableArray_toConsumableArray(old))}):(setLogsData(reversed),setExternalLink(response.external_url)),nextTokenRef.current=response.next_token,setIsLoading(!1)}).catch(function(){return setIsLoading(!1)})},getNextLogItems=function(){nextTokenRef.current&&getLogItems(nextTokenRef.current)};(0,src_react.useEffect)(function(){getLogItems()},[]),(0,src_react.useLayoutEffect)(function(){logsForView.length&&logsForView.length<=src_LIMIT_LOG_ROWS?scrollToBottom():restoreScrollPositionByBottom(),logsForView.length&&checkNeedMoreLoadingData()},[logsForView]);var onScroll=(0,src_react.useCallback)(function(event){var element=event.target;element.scrollTop<=src_LOADING_SCROLL_GAP&&!isLoading&&getNextLogItems()},[isLoading,logsForView]);(0,src_react.useEffect)(function(){if(codeRef.current)return codeRef.current.addEventListener("scroll",onScroll),function(){codeRef.current&&codeRef.current.removeEventListener("scroll",onScroll)}},[codeRef.current,onScroll]);var scrollToBottom=function(){if(codeRef.current){var _codeRef$current4=codeRef.current,clientHeight=_codeRef$current4.clientHeight,scrollHeight=_codeRef$current4.scrollHeight;codeRef.current.scrollTo(0,scrollHeight-clientHeight)}};return/*#__PURE__*/src_react.createElement("div",{className:src_classnames_default()(src_Logs_styles_module.logs,className)},/*#__PURE__*/src_react.createElement(src_Container,{header:/*#__PURE__*/src_react.createElement("div",{className:src_Logs_styles_module.headerContainer},/*#__PURE__*/src_react.createElement("div",{className:src_Logs_styles_module.headerTitle},/*#__PURE__*/src_react.createElement(src_components_header_Header,{variant:"h2"},t("projects.run.log"))),externalLink&&/*#__PURE__*/src_react.createElement(src_Button_Button,{target:"_blank",formAction:"none",iconName:"external",href:externalLink,variant:"icon"}),/*#__PURE__*/src_react.createElement(src_Loader_Loader,{show:isLoading&&!!logsForView.length,padding:"n",className:src_Logs_styles_module.loader,loadingText:""}),/*#__PURE__*/src_react.createElement("div",{className:src_Logs_styles_module.switchers},/*#__PURE__*/src_react.createElement(src_box_Box,null,/*#__PURE__*/src_react.createElement(src_Button_Button,{ariaLabel:"Legacy mode",formAction:"none",iconName:"gen-ai",variant:isEnabledDecoding?"primary":"icon",onClick:function(){saveScrollPositionByBottom(),setIsEnabledDecoding(!isEnabledDecoding)}})),/*#__PURE__*/src_react.createElement(src_box_Box,null,/*#__PURE__*/src_react.createElement(src_Button_Button,{ariaLabel:"Show timestamp",formAction:"none",iconName:"status-pending",variant:isShowTimestamp?"primary":"icon",onClick:function(){setIsShowTimestamp(!isShowTimestamp)}}))))},/*#__PURE__*/src_react.createElement(src_TextContent,null,!isLoading&&!logsForView.length&&/*#__PURE__*/src_react.createElement(src_ListEmptyMessage_ListEmptyMessage,{title:t("projects.run.log_empty_message_title"),message:t("projects.run.log_empty_message_text")}),!logsForView.length&&/*#__PURE__*/src_react.createElement(src_Loader_Loader,{show:isLoading,className:src_Logs_styles_module.mainLoader}),!!logsForView.length&&/*#__PURE__*/src_react.createElement(src_Code,{className:src_Logs_styles_module.terminal,ref:codeRef},/*#__PURE__*/src_react.createElement("table",null,/*#__PURE__*/src_react.createElement("tbody",null,logsForView.map(function(log,i){return/*#__PURE__*/src_react.createElement(src_LogRow,{logItem:log,key:i,isShowTimestamp:isShowTimestamp})})))))))};
|
|
135812
135823
|
;// ./src/pages/Runs/Details/RunDetails/styles.module.scss
|
|
135813
135824
|
// extracted by mini-css-extract-plugin
|
|
135814
135825
|
/* harmony default export */ const src_RunDetails_styles_module = ({"logs":"tVvb0"});
|
|
@@ -135944,7 +135955,7 @@ var src_router_router=src_createBrowserRouter([{path:"/",element:/*#__PURE__*/sr
|
|
|
135944
135955
|
;// ./src/services/mainApi.ts
|
|
135945
135956
|
var src_mainApi=src_rtk_query_react_esm_createApi({baseQuery:src_fetchBaseQuery({prepareHeaders:src_fetchBaseQueryHeaders}),endpoints:function(){return{}}});
|
|
135946
135957
|
;// ./src/store.ts
|
|
135947
|
-
var src_reducer_0;var src_store=src_redux_toolkit_esm_configureStore({reducer:(src_reducer_0={app:src_App_slice,notifications:src_Notifications_slice},src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_reducer_0,src_projectApi.reducerPath,src_projectApi.reducer),src_runApi.reducerPath,src_runApi.reducer),src_artifactApi.reducerPath,src_artifactApi.reducer),src_fleetApi.reducerPath,src_fleetApi.reducer),src_instanceApi.reducerPath,src_instanceApi.reducer),src_userApi.reducerPath,src_userApi.reducer),src_gatewayApi.reducerPath,src_gatewayApi.reducer),src_authApi.reducerPath,src_authApi.reducer),src_serverApi.reducerPath,src_serverApi.reducer),src_volumeApi.reducerPath,src_volumeApi.reducer),src_defineProperty_defineProperty(src_reducer_0,src_mainApi.reducerPath,src_mainApi.reducer)),middleware:function(getDefaultMiddleware){return getDefaultMiddleware({serializableCheck:!1}).concat(src_projectApi.middleware).concat(src_runApi.middleware).concat(src_artifactApi.middleware).concat(src_fleetApi.middleware).concat(src_instanceApi.middleware).concat(src_gatewayApi.middleware).concat(src_userApi.middleware).concat(src_authApi.middleware).concat(src_serverApi.middleware).concat(src_volumeApi.middleware).concat(src_mainApi.middleware)}});
|
|
135958
|
+
var src_reducer_0;var src_store=src_redux_toolkit_esm_configureStore({reducer:(src_reducer_0={app:src_App_slice,notifications:src_Notifications_slice},src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_reducer_0,src_projectApi.reducerPath,src_projectApi.reducer),src_runApi.reducerPath,src_runApi.reducer),src_artifactApi.reducerPath,src_artifactApi.reducer),src_fleetApi.reducerPath,src_fleetApi.reducer),src_instanceApi.reducerPath,src_instanceApi.reducer),src_userApi.reducerPath,src_userApi.reducer),src_gatewayApi.reducerPath,src_gatewayApi.reducer),src_authApi.reducerPath,src_authApi.reducer),src_serverApi.reducerPath,src_serverApi.reducer),src_volumeApi.reducerPath,src_volumeApi.reducer),src_defineProperty_defineProperty(src_defineProperty_defineProperty(src_reducer_0,src_secretApi.reducerPath,src_secretApi.reducer),src_mainApi.reducerPath,src_mainApi.reducer)),middleware:function(getDefaultMiddleware){return getDefaultMiddleware({serializableCheck:!1}).concat(src_projectApi.middleware).concat(src_runApi.middleware).concat(src_artifactApi.middleware).concat(src_fleetApi.middleware).concat(src_instanceApi.middleware).concat(src_gatewayApi.middleware).concat(src_userApi.middleware).concat(src_authApi.middleware).concat(src_serverApi.middleware).concat(src_volumeApi.middleware).concat(src_secretApi.middleware).concat(src_mainApi.middleware)}});
|
|
135948
135959
|
;// ./node_modules/i18next/dist/esm/i18next.js
|
|
135949
135960
|
const src_i18next_isString = obj => typeof obj === 'string';
|
|
135950
135961
|
const src_i18next_defer = () => {
|
|
@@ -138142,7 +138153,7 @@ const src_i18next_loadLanguages = src_instance.loadLanguages;
|
|
|
138142
138153
|
|
|
138143
138154
|
|
|
138144
138155
|
;// ./src/locale/en.json
|
|
138145
|
-
const src_en_namespaceObject = /*#__PURE__*/JSON.parse('{"dstack":"Dstack","common":{"loading":"Loading","add":"Add","yes":"Yes","no":"No","create":"Create {{text}}","edit":"Edit","delete":"Delete","remove":"Remove","apply":"Apply","settings":"Settings","match_count_with_value_one":"{{count}} match","match_count_with_value_other":"{{count}} matches","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","sign_out":"Sign out","cancel":"Cancel","save":"Save","send":"Send","profile":"Profile","copied":"Copied","copy":"Copy","info":"Info","stop":"Stop","abort":"Abort","close":"Close","clearFilter":"Clear filter","server_error":"Server error: {{error}}","login":"Sign in","login_github":"Sign in with GitHub","login_okta":"Sign in with Okta","login_entra":"Sign in with EntraID","login_google":"Sign in with Google","general":"General","test":"Test","local_storage_unavailable":"Local Storage is unavailable","local_storage_unavailable_message":"Your browser doesn\'t support local storage","object":"Object","objects_other":"Objects","continue":"Continue","select_visible_columns":"Select visible columns","tutorial":"Tutorials","tutorial_other":"Tour","docs":"Docs","discord":"Discord","danger_zone":"Danger Zone","control_plane":"Control plane","refresh":"Refresh","quickstart":"Quickstart"},"auth":{"invalid_token":"Invalid token","you_are_not_logged_in":"You are not logged in","contact_to_administrator":"For getting the authorization token, contact to the administrator","sign_in_to_dstack":"Welcome to dstack Sky","sign_in_to_dstack_enterprise":"Welcome to dstack","authorization_failed":"Authorization is failed","try_again":"Please try again","login_by_token":"Sign in via a token","another_login_methods":"Other sign in options"},"navigation":{"settings":"Settings","runs":"Runs","models":"Models","fleets":"Fleets","project":"Project","project_other":"Projects","general":"General","users":"Users","user_settings":"User settings","account":"User","billing":"Billing","resources":"Resources","volumes":"Volumes","instances":"Instances"},"backend":{"page_title_one":"Backend","page_title_other":"Backends","add_backend":"Add backend","edit_backend":"Edit backend","empty_message_title":"No backends","empty_message_text":"No backends to display.","type":{"aws":"AWS","aws_description":"Run workflows and store data in Amazon Web Services ","gcp":"GCP","gcp_description":"Run workflows and store data in Google Cloud Platform","azure":"Azure","azure_description":"Run workflows and store data in Microsoft Azure","lambda":"Lambda","lambda_description":"Run workflows and store data in Lambda","local":"Local","local_description":"Run workflows and store data locally via Docker"},"table":{"region":"Region","bucket":"Storage"},"edit":{"success_notification":"Project updating is successful","delete_backend_confirm_title":"Delete backend","delete_backend_confirm_message":"Are you sure you want to delete this backend?","delete_backends_confirm_title":"Delete backends","delete_backends_confirm_message":"Are you sure you want to delete these backends?"},"create":{"success_notification":"Backend is created"}},"gateway":{"page_title_one":"Gateway","page_title_other":"Gateways","add_gateway":"Add gateway","edit_gateway":"Edit gateway","empty_message_title":"No gateways","empty_message_text":"No gateways to display.","edit":{"backend":"Backend","backend_description":"Select a backend","region":"Region","region_description":"Select a region","default":"Default","default_checkbox":"Turn on default","external_ip":"External IP","wildcard_domain":"Wildcard domain","wildcard_domain_description":"Specify the wildcard domain mapped to the external IP.","wildcard_domain_placeholder":"*.mydomain.com","delete_gateway_confirm_title":"Delete gateway","delete_gateway_confirm_message":"Are you sure you want to delete this gateway?","delete_gateways_confirm_title":"Delete gateways","delete_gateways_confirm_message":"Are you sure you want to delete these gateways?","validation":{"wildcard_domain_format":"Should use next format: {{pattern}}"}},"create":{"success_notification":"Gateway is created","creating_notification":"The gateway is creating. It may take some time"},"update":{"success_notification":"Gateway is updated"},"test_domain":{"success_notification":"Domain is valid"}},"projects":{"page_title":"Projects","search_placeholder":"Find projects","empty_message_title":"No projects","empty_message_text":"No projects to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","nomatch_message_button_label":"Clear filter","repositories":"Repositories","runs":"Runs","tags":"Tags","settings":"Settings","join":"Join","leave_confirm_title":"Leave project","leave_confirm_message":"Are you sure you want to leave this project?","leave":"Leave","join_success":"Successfully joined the project","leave_success":"Successfully left the project","join_error":"Failed to join project","leave_error":"Failed to leave project","card":{"backend":"Backend","settings":"Settings"},"edit":{"general":"General","project_name":"Project name","owner":"Owner","project_name_description":"Only latin characters, dashes, underscores, and digits","is_public":"Make project public","is_public_description":"Public projects can be accessed by any user without being a member","backend":"Backend","backend_config":"Backend config","backend_config_description":"Specify the backend config in the YAML format. Click Info for examples.","backend_type":"Type","backend_type_description":"Select a backend type","members_empty_message_title":"No members","members_empty_message_text":"Select project\'s members","update_members_success":"Members are updated","update_visibility_success":"Project visibility updated successfully","update_visibility_confirm_title":"Change project visibility","update_visibility_confirm_message":"Are you sure you want to change the project visibility? This will affect who can access this project.","change_visibility":"Change visibility","project_visibility":"Project visibility","project_visibility_description":"Control who can access this project","make_project_public":"Make project public","delete_project_confirm_title":"Delete project","delete_project_confirm_message":"Are you sure you want to delete this project?","delete_projects_confirm_title":"Delete projects","delete_projects_confirm_message":"Are you sure you want to delete these projects?","delete_this_project":"Delete this project","cli":"CLI","aws":{"authorization":"Authorization","authorization_default":"Default credentials","authorization_access_key":"Access key","access_key":"Access key","access_key_id":"Access key ID","access_key_id_description":"Specify the AWS access key ID","secret_key":"Secret key","secret_key_id":"Secret access key","secret_key_id_description":"Specify the AWS secret access key","regions":"Regions","regions_description":"Select regions to run workflows and store artifacts","regions_placeholder":"Select regions","s3_bucket_name":"Bucket","s3_bucket_name_description":"Select an S3 bucket to store artifacts","ec2_subnet_id":"Subnet","ec2_subnet_id_description":"Select a subnet to run workflows in","ec2_subnet_id_placeholder":"Not selected","vpc_name":"VPC","vpc_name_description":"Enter a vpc"},"azure":{"authorization":"Authorization","authorization_default":"Default credentials","authorization_client":"Client secret","tenant_id":"Tenant ID","tenant_id_description":"Specify an Azure tenant ID","tenant_id_placeholder":"Not selected","client_id":"Client ID","client_id_description":"Specify an Azure client (application) ID","client_secret":"Client secret","client_secret_description":"Specify an Azure client (application) secret","subscription_id":"Subscription ID","subscription_id_description":"Select an Azure subscription ID","subscription_id_placeholder":"Not selected","locations":"Locations","locations_description":"Select locations to run workflows","locations_placeholder":"Select locations","storage_account":"Storage account","storage_account_description":"Select an Azure storage account to store artifacts","storage_account_placeholder":"Not selected"},"gcp":{"authorization":"Authorization","authorization_default":"Default credentials","service_account":"Service account key","credentials_description":"Credentials description","credentials_placeholder":"Credentials placeholder","regions":"Regions","regions_description":"Select regions to run workflows and store artifacts","regions_placeholder":"Select regions","project_id":"Project Id","project_id_description":"Select a project id","project_id_placeholder":"Select a project Id"},"lambda":{"api_key":"API key","api_key_description":"Specify the Lambda API key","regions":"Regions","regions_description":"Select regions to run workflows","regions_placeholder":"Select regions","storage_backend":{"type":"Storage","type_description":"Select backend storage","type_placeholder":"Select type","credentials":{"access_key_id":"Access key ID","access_key_id_description":"Specify the AWS access key ID","secret_key_id":"Secret access key","secret_key_id_description":"Specify the AWS secret access key"},"s3_bucket_name":"Bucket","s3_bucket_name_description":"Select an S3 bucket to store artifacts"}},"local":{"path":"Files path"},"members":{"section_title":"Members","name":"User name","role":"Project role"},"error_notification":"Update project error","validation":{"user_name_format":"Only letters, numbers, - or _"},"visibility":{"private":"Private","public":"Public"}},"create":{"page_title":"Create project","error_notification":"Create project error","success_notification":"Project is created"},"repo":{"search_placeholder":"Find repositories","empty_message_title":"No repositories","empty_message_text":"No repositories to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","card":{"owner":"Owner","last_run":"Last run","tags_count":"Tags count","directory":"Directory"},"secrets":{"table_title":"Secrets","add_modal_title":"Add secret","update_modal_title":"Update secret","name":"Secret name","name_description":"Secret name","value":"Secret value","value_description":"Secret value","search_placeholder":"Find secrets","empty_message_title":"No secrets","empty_message_text":"No secrets to display."}},"run":{"list_page_title":"Runs","search_placeholder":"Find runs","empty_message_title":"No runs","empty_message_text":"No runs to display.","quickstart_message_text":"Check out the quickstart guide to get started with dstack","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match. Try to change project or clear filter","filter_property_placeholder":"Filter runs by properties","project":"Project","project_placeholder":"Filtering by project","repo":"Repository","repo_placeholder":"Filtering by repository","user":"User","user_placeholder":"Filtering by user","active_only":"Active runs","log":"Logs","log_empty_message_title":"No logs","log_empty_message_text":"No logs to display.","run_name":"Name","workflow_name":"Workflow","configuration":"Configuration","instance":"Instance","priority":"Priority","provider_name":"Provider","status":"Status","submitted_at":"Submitted","finished_at":"Finished","metrics":{"title":"Metrics","show_metrics":"Show metrics","cpu_utilization":"CPU utilization %","memory_used":"System memory used","per_each_cpu_utilization":"GPU utilization %","per_each_memory_used":"GPU memory used"},"jobs":"Jobs","job_name":"Job Name","cost":"Cost","backend":"Backend","region":"Region","instance_id":"Instance ID","resources":"Resources","spot":"Spot","termination_reason":"Termination reason","price":"Price","error":"Error","artifacts":"Artifacts","artifacts_count":"Artifacts","hub_user_name":"User","service_url":"Service URL","statuses":{"pending":"Pending","submitted":"Submitted","provisioning":"Provisioning","pulling":"Pulling","downloading":"Downloading","running":"Running","uploading":"Uploading","stopping":"Stopping","stopped":"Stopped","terminating":"Terminating","terminated":"Terminated","aborting":"Aborting","aborted":"Aborted","failed":"Failed","done":"Done","building":"Building"}},"tag":{"list_page_title":"Artifacts","search_placeholder":"Find tags","empty_message_title":"No tags","empty_message_text":"No tags to display.","tag_name":"Tag","run_name":"Run","artifacts":"Files"},"artifact":{"list_page_title":"Artifacts","search_placeholder":"Find objects","empty_message_title":"No objects","empty_message_text":"No objects to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","name":"Name","type":"Type","size":"Size"}},"models":{"model_name":"Name","url":"URL","gateway":"Gateway","type":"Type","run":"Run","resources":"Resources","price":"Price","submitted_at":"Submitted","user":"User","repository":"Repository","backend":"Backend","code":"Code","empty_message_title":"No models","empty_message_text":"No models to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","nomatch_message_button_label":"Clear filter","details":{"instructions":"System","instructions_description":"Specify system","message_placeholder":"Enter your question","chat_empty_title":"No messages yet","chat_empty_message":"Please start a chat","run_name":"Run name","view_code":"View code","view_code_description":"You can use the following code to start integrating your current prompt and settings into your application."}},"fleets":{"fleet":"Fleet","fleet_placeholder":"Filtering by fleet","fleet_name":"Fleet name","total_instances":"Number of instances","empty_message_title":"No fleets","empty_message_text":"No fleets to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","nomatch_message_button_label":"Clear filter","active_only":"Active fleets","filter_property_placeholder":"Filter fleets by properties","statuses":{"active":"Active","submitted":"Submitted","failed":"Failed","terminating":"Terminating","terminated":"Terminated"},"instances":{"active_only":"Active instances","filter_property_placeholder":"Filter instances by properties","title":"Instances","empty_message_title":"No instances","empty_message_text":"No instances to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","instance_name":"Instance","instance_num":"Instance num","created":"Created","status":"Status","project":"Project","hostname":"Host name","instance_type":"Type","statuses":{"pending":"Pending","provisioning":"Provisioning","idle":"Idle","busy":"Busy","terminating":"Terminating","terminated":"Terminated"},"resources":"Resources","backend":"Backend","region":"Region","spot":"Spot","started":"Started","price":"Price"}},"volume":{"volumes":"Volumes","empty_message_title":"No volumes","empty_message_text":"No volumes to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","delete_volumes_confirm_title":"Delete volumes","delete_volumes_confirm_message":"Are you sure you want to delete these volumes?","active_only":"Active volumes","filter_property_placeholder":"Filter volumes by properties","name":"Name","project":"Project name","region":"Region","backend":"Backend","status":"Status","created":"Created","finished":"Finished","price":"Price (per month)","cost":"Cost","statuses":{"failed":"Failed","submitted":"Submitted","provisioning":"Provisioning","active":"Active","deleted":"Deleted"}},"users":{"page_title":"Users","search_placeholder":"Find members","empty_message_title":"No members","empty_message_text":"No members to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","user_name":"User name","user_name_description":"Only latin characters, dashes, underscores, and digits","global_role_description":"Whether the user is an administrator or not","email_description":"Enter user email","token":"Token","token_description":"Specify use your personal access token","global_role":"Global role","active":"Active","active_description":"Specify user activation","activated":"Activated","deactivated":"Deactivated","email":"Email","created_at":"Created at","account":"User","account_settings":"User settings","settings":"Settings","projects":"Projects","create":{"page_title":"Create user","error_notification":"Create user error","success_notification":"User is created"},"edit":{"error_notification":"Update user error","success_notification":"User updating is successful","refresh_token_success_notification":"Token rotating is successful","refresh_token_error_notification":"Token rotating error","refresh_token_confirm_title":"Rotate token","refresh_token_confirm_message":"Are you sure you want to rotate token?","refresh_token_button_label":"Rotate","validation":{"user_name_format":"Only letters, numbers, - or _","email_format":"Incorrect email"}},"manual_payments":{"title":"Credits history","add_payment":"Add payment","empty_message_title":"No payments","empty_message_text":"No payments to display.","create":{"success_notification":"Payment creating is successful"},"edit":{"value":"Amount","value_description":"Enter amount here","description":"Description","description_description":"Describe payment here","created_at":"Created at"}},"token_copied":"Token copied"},"billing":{"title":"Billing","balance":"Balance","billing_history":"Billing history","payment_method":"Payment method","no_payment_method":"No payment method attached","top_up_balance":"Top up balance","edit_payment_method":"Edit payment method","payment_amount":"Payment amount","amount_description":"Minimum: ${{value}}","make_payment":"Make a payment","min_amount_error_message":"The amount is allowed to be more than {{value}}","payment_success_message":"Payment succeeded. There can be a short delay before the balance is updated."},"validation":{"required":"This is required field"},"users_autosuggest":{"placeholder":"Enter username or email to add member","entered_text":"Add member","loading":"Loading users","no_match":"No matches found"},"roles":{"admin":"Admin","manager":"Manager","user":"User"},"confirm_dialog":{"title":"Confirm delete","message":"Are you sure you want to delete?"}}');
|
|
138156
|
+
const src_en_namespaceObject = /*#__PURE__*/JSON.parse('{"dstack":"Dstack","common":{"loading":"Loading","add":"Add","yes":"Yes","no":"No","create":"Create {{text}}","edit":"Edit","delete":"Delete","remove":"Remove","apply":"Apply","settings":"Settings","match_count_with_value_one":"{{count}} match","match_count_with_value_other":"{{count}} matches","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","sign_out":"Sign out","cancel":"Cancel","save":"Save","send":"Send","profile":"Profile","copied":"Copied","copy":"Copy","info":"Info","stop":"Stop","abort":"Abort","close":"Close","clearFilter":"Clear filter","server_error":"Server error: {{error}}","login":"Sign in","login_github":"Sign in with GitHub","login_okta":"Sign in with Okta","login_entra":"Sign in with EntraID","login_google":"Sign in with Google","general":"General","test":"Test","local_storage_unavailable":"Local Storage is unavailable","local_storage_unavailable_message":"Your browser doesn\'t support local storage","object":"Object","objects_other":"Objects","continue":"Continue","select_visible_columns":"Select visible columns","tutorial":"Tutorials","tutorial_other":"Tour","docs":"Docs","discord":"Discord","danger_zone":"Danger Zone","control_plane":"Control plane","refresh":"Refresh","quickstart":"Quickstart"},"auth":{"invalid_token":"Invalid token","you_are_not_logged_in":"You are not logged in","contact_to_administrator":"For getting the authorization token, contact to the administrator","sign_in_to_dstack":"Welcome to dstack Sky","sign_in_to_dstack_enterprise":"Welcome to dstack","authorization_failed":"Authorization is failed","try_again":"Please try again","login_by_token":"Sign in via a token","another_login_methods":"Other sign in options"},"navigation":{"settings":"Settings","runs":"Runs","models":"Models","fleets":"Fleets","project":"Project","project_other":"Projects","general":"General","users":"Users","user_settings":"User settings","account":"User","billing":"Billing","resources":"Resources","volumes":"Volumes","instances":"Instances"},"backend":{"page_title_one":"Backend","page_title_other":"Backends","add_backend":"Add backend","edit_backend":"Edit backend","empty_message_title":"No backends","empty_message_text":"No backends to display.","type":{"aws":"AWS","aws_description":"Run workflows and store data in Amazon Web Services ","gcp":"GCP","gcp_description":"Run workflows and store data in Google Cloud Platform","azure":"Azure","azure_description":"Run workflows and store data in Microsoft Azure","lambda":"Lambda","lambda_description":"Run workflows and store data in Lambda","local":"Local","local_description":"Run workflows and store data locally via Docker"},"table":{"region":"Region","bucket":"Storage"},"edit":{"success_notification":"Project updating is successful","delete_backend_confirm_title":"Delete backend","delete_backend_confirm_message":"Are you sure you want to delete this backend?","delete_backends_confirm_title":"Delete backends","delete_backends_confirm_message":"Are you sure you want to delete these backends?"},"create":{"success_notification":"Backend is created"}},"gateway":{"page_title_one":"Gateway","page_title_other":"Gateways","add_gateway":"Add gateway","edit_gateway":"Edit gateway","empty_message_title":"No gateways","empty_message_text":"No gateways to display.","edit":{"backend":"Backend","backend_description":"Select a backend","region":"Region","region_description":"Select a region","default":"Default","default_checkbox":"Turn on default","external_ip":"External IP","wildcard_domain":"Wildcard domain","wildcard_domain_description":"Specify the wildcard domain mapped to the external IP.","wildcard_domain_placeholder":"*.mydomain.com","delete_gateway_confirm_title":"Delete gateway","delete_gateway_confirm_message":"Are you sure you want to delete this gateway?","delete_gateways_confirm_title":"Delete gateways","delete_gateways_confirm_message":"Are you sure you want to delete these gateways?","validation":{"wildcard_domain_format":"Should use next format: {{pattern}}"}},"create":{"success_notification":"Gateway is created","creating_notification":"The gateway is creating. It may take some time"},"update":{"success_notification":"Gateway is updated"},"test_domain":{"success_notification":"Domain is valid"}},"projects":{"page_title":"Projects","search_placeholder":"Find projects","empty_message_title":"No projects","empty_message_text":"No projects to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","nomatch_message_button_label":"Clear filter","repositories":"Repositories","runs":"Runs","tags":"Tags","settings":"Settings","join":"Join","leave_confirm_title":"Leave project","leave_confirm_message":"Are you sure you want to leave this project?","leave":"Leave","join_success":"Successfully joined the project","leave_success":"Successfully left the project","join_error":"Failed to join project","leave_error":"Failed to leave project","card":{"backend":"Backend","settings":"Settings"},"edit":{"general":"General","project_name":"Project name","owner":"Owner","project_name_description":"Only latin characters, dashes, underscores, and digits","is_public":"Make project public","is_public_description":"Public projects can be accessed by any user without being a member","backend":"Backend","backend_config":"Backend config","backend_config_description":"Specify the backend config in the YAML format. Click Info for examples.","backend_type":"Type","backend_type_description":"Select a backend type","members_empty_message_title":"No members","members_empty_message_text":"Select project\'s members","update_members_success":"Members are updated","update_visibility_success":"Project visibility updated successfully","update_visibility_confirm_title":"Change project visibility","update_visibility_confirm_message":"Are you sure you want to change the project visibility? This will affect who can access this project.","change_visibility":"Change visibility","project_visibility":"Project visibility","project_visibility_description":"Control who can access this project","make_project_public":"Make project public","delete_project_confirm_title":"Delete project","delete_project_confirm_message":"Are you sure you want to delete this project?","delete_projects_confirm_title":"Delete projects","delete_projects_confirm_message":"Are you sure you want to delete these projects?","delete_this_project":"Delete this project","cli":"CLI","aws":{"authorization":"Authorization","authorization_default":"Default credentials","authorization_access_key":"Access key","access_key":"Access key","access_key_id":"Access key ID","access_key_id_description":"Specify the AWS access key ID","secret_key":"Secret key","secret_key_id":"Secret access key","secret_key_id_description":"Specify the AWS secret access key","regions":"Regions","regions_description":"Select regions to run workflows and store artifacts","regions_placeholder":"Select regions","s3_bucket_name":"Bucket","s3_bucket_name_description":"Select an S3 bucket to store artifacts","ec2_subnet_id":"Subnet","ec2_subnet_id_description":"Select a subnet to run workflows in","ec2_subnet_id_placeholder":"Not selected","vpc_name":"VPC","vpc_name_description":"Enter a vpc"},"azure":{"authorization":"Authorization","authorization_default":"Default credentials","authorization_client":"Client secret","tenant_id":"Tenant ID","tenant_id_description":"Specify an Azure tenant ID","tenant_id_placeholder":"Not selected","client_id":"Client ID","client_id_description":"Specify an Azure client (application) ID","client_secret":"Client secret","client_secret_description":"Specify an Azure client (application) secret","subscription_id":"Subscription ID","subscription_id_description":"Select an Azure subscription ID","subscription_id_placeholder":"Not selected","locations":"Locations","locations_description":"Select locations to run workflows","locations_placeholder":"Select locations","storage_account":"Storage account","storage_account_description":"Select an Azure storage account to store artifacts","storage_account_placeholder":"Not selected"},"gcp":{"authorization":"Authorization","authorization_default":"Default credentials","service_account":"Service account key","credentials_description":"Credentials description","credentials_placeholder":"Credentials placeholder","regions":"Regions","regions_description":"Select regions to run workflows and store artifacts","regions_placeholder":"Select regions","project_id":"Project Id","project_id_description":"Select a project id","project_id_placeholder":"Select a project Id"},"lambda":{"api_key":"API key","api_key_description":"Specify the Lambda API key","regions":"Regions","regions_description":"Select regions to run workflows","regions_placeholder":"Select regions","storage_backend":{"type":"Storage","type_description":"Select backend storage","type_placeholder":"Select type","credentials":{"access_key_id":"Access key ID","access_key_id_description":"Specify the AWS access key ID","secret_key_id":"Secret access key","secret_key_id_description":"Specify the AWS secret access key"},"s3_bucket_name":"Bucket","s3_bucket_name_description":"Select an S3 bucket to store artifacts"}},"local":{"path":"Files path"},"members":{"section_title":"Members","name":"User name","role":"Project role"},"secrets":{"section_title":"Secrets","empty_message_title":"No secrets","empty_message_text":"No secrets to display.","name":"Secret name","value":"Secret value","create_secret":"Create secret","update_secret":"Update secret","delete_confirm_title":"Delete secret","delete_confirm_message":"Are you sure you want to delete the {{name}} secret?","multiple_delete_confirm_title":"Delete secrets","multiple_delete_confirm_message":"Are you sure you want to delete {{count}} secrets?","not_permissions_title":"No permissions","not_permissions_description":"You don\'t have permissions for managing secrets","validation":{"secret_name_format":"Invalid secret name"}},"error_notification":"Update project error","validation":{"user_name_format":"Only letters, numbers, - or _"},"visibility":{"private":"Private","public":"Public"}},"create":{"page_title":"Create project","error_notification":"Create project error","success_notification":"Project is created"},"repo":{"search_placeholder":"Find repositories","empty_message_title":"No repositories","empty_message_text":"No repositories to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","card":{"owner":"Owner","last_run":"Last run","tags_count":"Tags count","directory":"Directory"},"secrets":{"table_title":"Secrets","add_modal_title":"Add secret","update_modal_title":"Update secret","name":"Secret name","name_description":"Secret name","value":"Secret value","value_description":"Secret value","search_placeholder":"Find secrets","empty_message_title":"No secrets","empty_message_text":"No secrets to display."}},"run":{"list_page_title":"Runs","search_placeholder":"Find runs","empty_message_title":"No runs","empty_message_text":"No runs to display.","quickstart_message_text":"Check out the quickstart guide to get started with dstack","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match. Try to change project or clear filter","filter_property_placeholder":"Filter runs by properties","project":"Project","project_placeholder":"Filtering by project","repo":"Repository","repo_placeholder":"Filtering by repository","user":"User","user_placeholder":"Filtering by user","active_only":"Active runs","log":"Logs","log_empty_message_title":"No logs","log_empty_message_text":"No logs to display.","run_name":"Name","workflow_name":"Workflow","configuration":"Configuration","instance":"Instance","priority":"Priority","provider_name":"Provider","status":"Status","submitted_at":"Submitted","finished_at":"Finished","metrics":{"title":"Metrics","show_metrics":"Show metrics","cpu_utilization":"CPU utilization %","memory_used":"System memory used","per_each_cpu_utilization":"GPU utilization %","per_each_memory_used":"GPU memory used"},"jobs":"Jobs","job_name":"Job Name","cost":"Cost","backend":"Backend","region":"Region","instance_id":"Instance ID","resources":"Resources","spot":"Spot","termination_reason":"Termination reason","price":"Price","error":"Error","artifacts":"Artifacts","artifacts_count":"Artifacts","hub_user_name":"User","service_url":"Service URL","statuses":{"pending":"Pending","submitted":"Submitted","provisioning":"Provisioning","pulling":"Pulling","downloading":"Downloading","running":"Running","uploading":"Uploading","stopping":"Stopping","stopped":"Stopped","terminating":"Terminating","terminated":"Terminated","aborting":"Aborting","aborted":"Aborted","failed":"Failed","done":"Done","building":"Building"}},"tag":{"list_page_title":"Artifacts","search_placeholder":"Find tags","empty_message_title":"No tags","empty_message_text":"No tags to display.","tag_name":"Tag","run_name":"Run","artifacts":"Files"},"artifact":{"list_page_title":"Artifacts","search_placeholder":"Find objects","empty_message_title":"No objects","empty_message_text":"No objects to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","name":"Name","type":"Type","size":"Size"}},"models":{"model_name":"Name","url":"URL","gateway":"Gateway","type":"Type","run":"Run","resources":"Resources","price":"Price","submitted_at":"Submitted","user":"User","repository":"Repository","backend":"Backend","code":"Code","empty_message_title":"No models","empty_message_text":"No models to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","nomatch_message_button_label":"Clear filter","details":{"instructions":"System","instructions_description":"Specify system","message_placeholder":"Enter your question","chat_empty_title":"No messages yet","chat_empty_message":"Please start a chat","run_name":"Run name","view_code":"View code","view_code_description":"You can use the following code to start integrating your current prompt and settings into your application."}},"fleets":{"fleet":"Fleet","fleet_placeholder":"Filtering by fleet","fleet_name":"Fleet name","total_instances":"Number of instances","empty_message_title":"No fleets","empty_message_text":"No fleets to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","nomatch_message_button_label":"Clear filter","active_only":"Active fleets","filter_property_placeholder":"Filter fleets by properties","statuses":{"active":"Active","submitted":"Submitted","failed":"Failed","terminating":"Terminating","terminated":"Terminated"},"instances":{"active_only":"Active instances","filter_property_placeholder":"Filter instances by properties","title":"Instances","empty_message_title":"No instances","empty_message_text":"No instances to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","instance_name":"Instance","instance_num":"Instance num","created":"Created","status":"Status","project":"Project","hostname":"Host name","instance_type":"Type","statuses":{"pending":"Pending","provisioning":"Provisioning","idle":"Idle","busy":"Busy","terminating":"Terminating","terminated":"Terminated"},"resources":"Resources","backend":"Backend","region":"Region","spot":"Spot","started":"Started","price":"Price"}},"volume":{"volumes":"Volumes","empty_message_title":"No volumes","empty_message_text":"No volumes to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","delete_volumes_confirm_title":"Delete volumes","delete_volumes_confirm_message":"Are you sure you want to delete these volumes?","active_only":"Active volumes","filter_property_placeholder":"Filter volumes by properties","name":"Name","project":"Project name","region":"Region","backend":"Backend","status":"Status","created":"Created","finished":"Finished","price":"Price (per month)","cost":"Cost","statuses":{"failed":"Failed","submitted":"Submitted","provisioning":"Provisioning","active":"Active","deleted":"Deleted"}},"users":{"page_title":"Users","search_placeholder":"Find members","empty_message_title":"No members","empty_message_text":"No members to display.","nomatch_message_title":"No matches","nomatch_message_text":"We can\'t find a match.","user_name":"User name","user_name_description":"Only latin characters, dashes, underscores, and digits","global_role_description":"Whether the user is an administrator or not","email_description":"Enter user email","token":"Token","token_description":"Specify use your personal access token","global_role":"Global role","active":"Active","active_description":"Specify user activation","activated":"Activated","deactivated":"Deactivated","email":"Email","created_at":"Created at","account":"User","account_settings":"User settings","settings":"Settings","projects":"Projects","create":{"page_title":"Create user","error_notification":"Create user error","success_notification":"User is created"},"edit":{"error_notification":"Update user error","success_notification":"User updating is successful","refresh_token_success_notification":"Token rotating is successful","refresh_token_error_notification":"Token rotating error","refresh_token_confirm_title":"Rotate token","refresh_token_confirm_message":"Are you sure you want to rotate token?","refresh_token_button_label":"Rotate","validation":{"user_name_format":"Only letters, numbers, - or _","email_format":"Incorrect email"}},"manual_payments":{"title":"Credits history","add_payment":"Add payment","empty_message_title":"No payments","empty_message_text":"No payments to display.","create":{"success_notification":"Payment creating is successful"},"edit":{"value":"Amount","value_description":"Enter amount here","description":"Description","description_description":"Describe payment here","created_at":"Created at"}},"token_copied":"Token copied"},"billing":{"title":"Billing","balance":"Balance","billing_history":"Billing history","payment_method":"Payment method","no_payment_method":"No payment method attached","top_up_balance":"Top up balance","edit_payment_method":"Edit payment method","payment_amount":"Payment amount","amount_description":"Minimum: ${{value}}","make_payment":"Make a payment","min_amount_error_message":"The amount is allowed to be more than {{value}}","payment_success_message":"Payment succeeded. There can be a short delay before the balance is updated."},"validation":{"required":"This is required field"},"users_autosuggest":{"placeholder":"Enter username or email to add member","entered_text":"Add member","loading":"Loading users","no_match":"No matches found"},"roles":{"admin":"Admin","manager":"Manager","user":"User"},"confirm_dialog":{"title":"Confirm delete","message":"Are you sure you want to delete?"}}');
|
|
138146
138157
|
;// ./src/locale/index.ts
|
|
138147
138158
|
src_instance.use(src_initReactI18next).init({returnNull:!1,resources:{en:{translation:src_en_namespaceObject}},fallbackLng:"en",interpolation:{escapeValue:!1}});
|
|
138148
138159
|
;// ./src/index.tsx
|
|
@@ -138151,4 +138162,4 @@ var src_container=document.getElementById("root"),src_src_theme={tokens:{fontFam
|
|
|
138151
138162
|
|
|
138152
138163
|
/******/ })()
|
|
138153
138164
|
;
|
|
138154
|
-
//# sourceMappingURL=main-
|
|
138165
|
+
//# sourceMappingURL=main-cc067b7fd1a8f33f97da.js.map
|