NagisaNao commited on
Commit
e6945bf
·
verified ·
1 Parent(s): 938adde
files_cells/notebooks/en/auto-cleaner_en.ipynb CHANGED
@@ -69,7 +69,7 @@
69
  " opacity: 0.25;\n",
70
  "}\n",
71
  "\n",
72
- ".instruction {\n",
73
  " font-family: cursive;\n",
74
  " font-size: 18px;\n",
75
  " color: grey;\n",
@@ -80,7 +80,7 @@
80
  "\n",
81
  "/* Container style */\n",
82
  "\n",
83
- ".container {\n",
84
  " position: relative;\n",
85
  " background-color: #232323;\n",
86
  " width: 800px;\n",
@@ -92,7 +92,7 @@
92
  " overflow: visible;\n",
93
  "}\n",
94
  "\n",
95
- ".container::before {\n",
96
  " position: absolute;\n",
97
  " top: 5px;\n",
98
  " right: 10px;\n",
@@ -102,7 +102,7 @@
102
  " color: rgba(0, 0, 0, 0.2);\n",
103
  "}\n",
104
  "\n",
105
- ".container::after {\n",
106
  " position: absolute;\n",
107
  " top: 30px;\n",
108
  " right: 10px;\n",
@@ -112,7 +112,7 @@
112
  " color: rgba(0, 0, 0, 0.2);\n",
113
  "}\n",
114
  "\n",
115
- ".custom-select-multiple select {\n",
116
  " padding: 10px;\n",
117
  " font-family: cursive;\n",
118
  " border: 1px solid #262626;\n",
@@ -122,7 +122,7 @@
122
  " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
123
  "}\n",
124
  "\n",
125
- ".output {\n",
126
  " padding: 10px;\n",
127
  " height: auto;\n",
128
  " border: 1px solid #262626;\n",
@@ -133,7 +133,7 @@
133
  " box-sizing: border-box;\n",
134
  "}\n",
135
  "\n",
136
- ".output_message {\n",
137
  " font-family: cursive;\n",
138
  " color: white !important;\n",
139
  " font-size: 14px;\n",
@@ -142,7 +142,7 @@
142
  "}\n",
143
  "\n",
144
  "\n",
145
- ".storage_info {\n",
146
  " padding: 5px 20px;\n",
147
  " height: auto;\n",
148
  " border: 1px solid #262626;\n",
@@ -159,7 +159,7 @@
159
  "\n",
160
  "\n",
161
  "/* Button and storage info layout */\n",
162
- ".lower_information_panel {\n",
163
  " display: flex;\n",
164
  " align-items: center;\n",
165
  " justify-content: space-between;\n",
@@ -168,7 +168,7 @@
168
  "\n",
169
  "/* Button style */\n",
170
  "\n",
171
- ".button {\n",
172
  " width: auto;\n",
173
  " font-family: cursive;\n",
174
  " color: white !important;\n",
@@ -182,23 +182,23 @@
182
  " transition: background 0.5s ease-in-out, transform 0.3s ease;\n",
183
  "}\n",
184
  "\n",
185
- ".button:hover {\n",
186
  " cursor: pointer;\n",
187
  " background-size: 200% 200%;\n",
188
  " background-position: right bottom;\n",
189
  " transform: translateY(1px);\n",
190
  "}\n",
191
  "\n",
192
- ".button_execute:hover {\n",
193
  " background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);\n",
194
  "}\n",
195
  "\n",
196
- ".button_clear:hover {\n",
197
  " background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);\n",
198
  "}\n",
199
  "\n",
200
- ".button_execute:active,\n",
201
- ".button_clear:active {\n",
202
  " filter: brightness(0.75);\n",
203
  "}\n",
204
  "\n",
@@ -210,7 +210,7 @@
210
  "/* Animation of elements */\n",
211
  "\n",
212
  "/* Emergence */\n",
213
- ".container {\n",
214
  " animation-name: slideInTopBlur;\n",
215
  " animation-duration: 0.7s;\n",
216
  " animation-fill-mode: forwards;\n",
@@ -230,7 +230,7 @@
230
  "}\n",
231
  "\n",
232
  "/* Leaving */\n",
233
- ".container.hide {\n",
234
  " animation-name: slideOutTopBlur;\n",
235
  " animation-duration: 0.5s;\n",
236
  " animation-fill-mode: forwards;\n",
@@ -293,7 +293,7 @@
293
  "\n",
294
  " with output:\n",
295
  " for message in generate_messages(deleted_files_dict):\n",
296
- " message_widget = HTML(f'<p class=\"output_message\">{message}</p>')\n",
297
  " display(message_widget)\n",
298
  "\n",
299
  "\n",
@@ -337,24 +337,24 @@
337
  "# UI Code\n",
338
  "AutoCleaner_options = AutoCleaner_options = list(directories.keys())\n",
339
  "instruction_label = widgets.HTML('''\n",
340
- "<span class=\"instruction\">Use <span style=\"color: #B2B2B2;\">ctrl</span> or <span style=\"color: #B2B2B2;\">shift</span> for multiple selections.</span>\n",
341
  "''')\n",
342
- "auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class(\"custom-select-multiple\")\n",
343
- "output = widgets.Output().add_class(\"output\")\n",
344
  "# ---\n",
345
- "execute_button = Button(description='Execute Cleaning').add_class(\"button_execute\").add_class(\"button\")\n",
346
  "execute_button.on_click(on_execute_button_press)\n",
347
- "clear_button = Button(description='Hide Widget').add_class(\"button_clear\").add_class(\"button\")\n",
348
  "clear_button.on_click(on_clear_button_press)\n",
349
  "# ---\n",
350
  "storage_info = widgets.HTML(f'''\n",
351
- "<div class=\"storage_info\">Total storage: {total:.2f} GB <span style=\"color: #555\">|</span> Used: {used:.2f} GB <span style=\"color: #555\">|</span> Free: {free:.2f} GB</div>\n",
352
  "''')\n",
353
  "# ---\n",
354
  "buttons = widgets.HBox([execute_button, clear_button])\n",
355
- "lower_information_panel = widgets.HBox([buttons, storage_info]).add_class(\"lower_information_panel\")\n",
356
  "\n",
357
- "container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class(\"container\")\n",
358
  "\n",
359
  "display(container)"
360
  ],
 
69
  " opacity: 0.25;\n",
70
  "}\n",
71
  "\n",
72
+ ".instruction_AC {\n",
73
  " font-family: cursive;\n",
74
  " font-size: 18px;\n",
75
  " color: grey;\n",
 
80
  "\n",
81
  "/* Container style */\n",
82
  "\n",
83
+ ".container_AC {\n",
84
  " position: relative;\n",
85
  " background-color: #232323;\n",
86
  " width: 800px;\n",
 
92
  " overflow: visible;\n",
93
  "}\n",
94
  "\n",
95
+ ".container_AC::before {\n",
96
  " position: absolute;\n",
97
  " top: 5px;\n",
98
  " right: 10px;\n",
 
102
  " color: rgba(0, 0, 0, 0.2);\n",
103
  "}\n",
104
  "\n",
105
+ ".container_AC::after {\n",
106
  " position: absolute;\n",
107
  " top: 30px;\n",
108
  " right: 10px;\n",
 
112
  " color: rgba(0, 0, 0, 0.2);\n",
113
  "}\n",
114
  "\n",
115
+ ".custom-select-multiple_AC select {\n",
116
  " padding: 10px;\n",
117
  " font-family: cursive;\n",
118
  " border: 1px solid #262626;\n",
 
122
  " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
123
  "}\n",
124
  "\n",
125
+ ".output_AC {\n",
126
  " padding: 10px;\n",
127
  " height: auto;\n",
128
  " border: 1px solid #262626;\n",
 
133
  " box-sizing: border-box;\n",
134
  "}\n",
135
  "\n",
136
+ ".output_message_AC {\n",
137
  " font-family: cursive;\n",
138
  " color: white !important;\n",
139
  " font-size: 14px;\n",
 
142
  "}\n",
143
  "\n",
144
  "\n",
145
+ ".storage_info_AC {\n",
146
  " padding: 5px 20px;\n",
147
  " height: auto;\n",
148
  " border: 1px solid #262626;\n",
 
159
  "\n",
160
  "\n",
161
  "/* Button and storage info layout */\n",
162
+ ".lower_information_panel_AC {\n",
163
  " display: flex;\n",
164
  " align-items: center;\n",
165
  " justify-content: space-between;\n",
 
168
  "\n",
169
  "/* Button style */\n",
170
  "\n",
171
+ ".button_AC {\n",
172
  " width: auto;\n",
173
  " font-family: cursive;\n",
174
  " color: white !important;\n",
 
182
  " transition: background 0.5s ease-in-out, transform 0.3s ease;\n",
183
  "}\n",
184
  "\n",
185
+ ".button_AC:hover {\n",
186
  " cursor: pointer;\n",
187
  " background-size: 200% 200%;\n",
188
  " background-position: right bottom;\n",
189
  " transform: translateY(1px);\n",
190
  "}\n",
191
  "\n",
192
+ ".button_execute_AC:hover {\n",
193
  " background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);\n",
194
  "}\n",
195
  "\n",
196
+ ".button_clear_AC:hover {\n",
197
  " background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);\n",
198
  "}\n",
199
  "\n",
200
+ ".button_execute_AC:active,\n",
201
+ ".button_clear_AC:active {\n",
202
  " filter: brightness(0.75);\n",
203
  "}\n",
204
  "\n",
 
210
  "/* Animation of elements */\n",
211
  "\n",
212
  "/* Emergence */\n",
213
+ ".container_AC {\n",
214
  " animation-name: slideInTopBlur;\n",
215
  " animation-duration: 0.7s;\n",
216
  " animation-fill-mode: forwards;\n",
 
230
  "}\n",
231
  "\n",
232
  "/* Leaving */\n",
233
+ ".container_AC.hide {\n",
234
  " animation-name: slideOutTopBlur;\n",
235
  " animation-duration: 0.5s;\n",
236
  " animation-fill-mode: forwards;\n",
 
293
  "\n",
294
  " with output:\n",
295
  " for message in generate_messages(deleted_files_dict):\n",
296
+ " message_widget = HTML(f'<p class=\"output_message_AC\">{message}</p>')\n",
297
  " display(message_widget)\n",
298
  "\n",
299
  "\n",
 
337
  "# UI Code\n",
338
  "AutoCleaner_options = AutoCleaner_options = list(directories.keys())\n",
339
  "instruction_label = widgets.HTML('''\n",
340
+ "<span class=\"instruction_AC\">Use <span style=\"color: #B2B2B2;\">ctrl</span> or <span style=\"color: #B2B2B2;\">shift</span> for multiple selections.</span>\n",
341
  "''')\n",
342
+ "auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class(\"custom-select-multiple_AC\")\n",
343
+ "output = widgets.Output().add_class(\"output_AC\")\n",
344
  "# ---\n",
345
+ "execute_button = Button(description='Execute Cleaning').add_class(\"button_execute_AC\").add_class(\"button_AC\")\n",
346
  "execute_button.on_click(on_execute_button_press)\n",
347
+ "clear_button = Button(description='Hide Widget').add_class(\"button_clear_AC\").add_class(\"button_AC\")\n",
348
  "clear_button.on_click(on_clear_button_press)\n",
349
  "# ---\n",
350
  "storage_info = widgets.HTML(f'''\n",
351
+ "<div class=\"storage_info_AC\">Total storage: {total:.2f} GB <span style=\"color: #555\">|</span> Used: {used:.2f} GB <span style=\"color: #555\">|</span> Free: {free:.2f} GB</div>\n",
352
  "''')\n",
353
  "# ---\n",
354
  "buttons = widgets.HBox([execute_button, clear_button])\n",
355
+ "lower_information_panel = widgets.HBox([buttons, storage_info]).add_class(\"lower_information_panel_AC\")\n",
356
  "\n",
357
+ "container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class(\"container_AC\")\n",
358
  "\n",
359
  "display(container)"
360
  ],
files_cells/notebooks/en/launch_en.ipynb CHANGED
@@ -61,7 +61,7 @@
61
  "commandline_arguments = settings['commandline_arguments']\n",
62
  "\n",
63
  "# ======================== TUNNEL ========================\n",
64
- "if env != \"SAGEMAKER_INTERNAL_IMAGE_URI\":\n",
65
  " password = \"x1101\"\n",
66
  " def get_public_ip(version='ipv4'):\n",
67
  " try:\n",
@@ -88,7 +88,7 @@
88
  "!sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json\n",
89
  "\n",
90
  "\n",
91
- "if env != \"SAGEMAKER_INTERNAL_IMAGE_URI\":\n",
92
  " with tunnel:\n",
93
  " !#python -m http.server 1101\n",
94
  " %cd {webui_path}\n",
 
61
  "commandline_arguments = settings['commandline_arguments']\n",
62
  "\n",
63
  "# ======================== TUNNEL ========================\n",
64
+ "if env != \"SageMaker Studio Lab\":\n",
65
  " password = \"x1101\"\n",
66
  " def get_public_ip(version='ipv4'):\n",
67
  " try:\n",
 
88
  "!sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json\n",
89
  "\n",
90
  "\n",
91
+ "if env != \"SageMaker Studio Lab\":\n",
92
  " with tunnel:\n",
93
  " !#python -m http.server 1101\n",
94
  " %cd {webui_path}\n",
files_cells/notebooks/ru/auto-cleaner_ru.ipynb CHANGED
@@ -11,6 +11,946 @@
11
  },
12
  "language_info": {
13
  "name": "python"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  }
15
  },
16
  "cells": [
@@ -69,7 +1009,7 @@
69
  " opacity: 0.25;\n",
70
  "}\n",
71
  "\n",
72
- ".instruction {\n",
73
  " font-family: cursive;\n",
74
  " font-size: 18px;\n",
75
  " color: grey;\n",
@@ -80,7 +1020,7 @@
80
  "\n",
81
  "/* Container style */\n",
82
  "\n",
83
- ".container {\n",
84
  " position: relative;\n",
85
  " background-color: #232323;\n",
86
  " width: 800px;\n",
@@ -92,7 +1032,7 @@
92
  " overflow: visible;\n",
93
  "}\n",
94
  "\n",
95
- ".container::before {\n",
96
  " position: absolute;\n",
97
  " top: 5px;\n",
98
  " right: 10px;\n",
@@ -102,7 +1042,7 @@
102
  " color: rgba(0, 0, 0, 0.2);\n",
103
  "}\n",
104
  "\n",
105
- ".container::after {\n",
106
  " position: absolute;\n",
107
  " top: 30px;\n",
108
  " right: 10px;\n",
@@ -112,7 +1052,7 @@
112
  " color: rgba(0, 0, 0, 0.2);\n",
113
  "}\n",
114
  "\n",
115
- ".custom-select-multiple select {\n",
116
  " padding: 10px;\n",
117
  " font-family: cursive;\n",
118
  " border: 1px solid #262626;\n",
@@ -122,7 +1062,7 @@
122
  " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
123
  "}\n",
124
  "\n",
125
- ".output {\n",
126
  " padding: 10px;\n",
127
  " height: auto;\n",
128
  " border: 1px solid #262626;\n",
@@ -133,7 +1073,7 @@
133
  " box-sizing: border-box;\n",
134
  "}\n",
135
  "\n",
136
- ".output_message {\n",
137
  " font-family: cursive;\n",
138
  " color: white !important;\n",
139
  " font-size: 14px;\n",
@@ -142,7 +1082,7 @@
142
  "}\n",
143
  "\n",
144
  "\n",
145
- ".storage_info {\n",
146
  " padding: 5px 20px;\n",
147
  " height: auto;\n",
148
  " border: 1px solid #262626;\n",
@@ -159,7 +1099,7 @@
159
  "\n",
160
  "\n",
161
  "/* Button and storage info layout */\n",
162
- ".lower_information_panel {\n",
163
  " display: flex;\n",
164
  " align-items: center;\n",
165
  " justify-content: space-between;\n",
@@ -168,7 +1108,7 @@
168
  "\n",
169
  "/* Button style */\n",
170
  "\n",
171
- ".button {\n",
172
  " width: auto;\n",
173
  " font-family: cursive;\n",
174
  " color: white !important;\n",
@@ -182,23 +1122,23 @@
182
  " transition: background 0.5s ease-in-out, transform 0.3s ease;\n",
183
  "}\n",
184
  "\n",
185
- ".button:hover {\n",
186
  " cursor: pointer;\n",
187
  " background-size: 200% 200%;\n",
188
  " background-position: right bottom;\n",
189
  " transform: translateY(1px);\n",
190
  "}\n",
191
  "\n",
192
- ".button_execute:hover {\n",
193
  " background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);\n",
194
  "}\n",
195
  "\n",
196
- ".button_clear:hover {\n",
197
  " background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);\n",
198
  "}\n",
199
  "\n",
200
- ".button_execute:active,\n",
201
- ".button_clear:active {\n",
202
  " filter: brightness(0.75);\n",
203
  "}\n",
204
  "\n",
@@ -210,7 +1150,7 @@
210
  "/* Animation of elements */\n",
211
  "\n",
212
  "/* Emergence */\n",
213
- ".container {\n",
214
  " animation-name: slideInTopBlur;\n",
215
  " animation-duration: 0.7s;\n",
216
  " animation-fill-mode: forwards;\n",
@@ -230,7 +1170,7 @@
230
  "}\n",
231
  "\n",
232
  "/* Leaving */\n",
233
- ".container.hide {\n",
234
  " animation-name: slideOutTopBlur;\n",
235
  " animation-duration: 0.5s;\n",
236
  " animation-fill-mode: forwards;\n",
@@ -293,7 +1233,7 @@
293
  "\n",
294
  " with output:\n",
295
  " for message in generate_messages(deleted_files_dict):\n",
296
- " message_widget = HTML(f'<p class=\"output_message\">{message}</p>')\n",
297
  " display(message_widget)\n",
298
  "\n",
299
  "\n",
@@ -337,32 +1277,284 @@
337
  "# UI Code\n",
338
  "AutoCleaner_options = AutoCleaner_options = list(directories.keys())\n",
339
  "instruction_label = widgets.HTML('''\n",
340
- "<span class=\"instruction\">Используйте <span style=\"color: #B2B2B2;\">ctrl</span> или <span style=\"color: #B2B2B2;\">shift</span> для множественного выбора.</span>\n",
341
  "''')\n",
342
- "auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class(\"custom-select-multiple\")\n",
343
- "output = widgets.Output().add_class(\"output\")\n",
344
  "# ---\n",
345
- "execute_button = Button(description='Выполнить Очистку').add_class(\"button_execute\").add_class(\"button\")\n",
346
  "execute_button.on_click(on_execute_button_press)\n",
347
- "clear_button = Button(description='Скрыть Виджет').add_class(\"button_clear\").add_class(\"button\")\n",
348
  "clear_button.on_click(on_clear_button_press)\n",
349
  "# ---\n",
350
  "storage_info = widgets.HTML(f'''\n",
351
- "<div class=\"storage_info\">Всего: {total:.2f} GB <span style=\"color: #555\">|</span> Используется: {used:.2f} GB <span style=\"color: #555\">|</span> Свободно: {free:.2f} GB</div>\n",
352
  "''')\n",
353
  "# ---\n",
354
  "buttons = widgets.HBox([execute_button, clear_button])\n",
355
- "lower_information_panel = widgets.HBox([buttons, storage_info]).add_class(\"lower_information_panel\")\n",
356
  "\n",
357
- "container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class(\"container\")\n",
358
  "\n",
359
  "display(container)"
360
  ],
361
  "metadata": {
362
- "id": "I22dFg7F2j3G"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
363
  },
364
- "execution_count": null,
365
- "outputs": []
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
366
  }
367
  ]
368
  }
 
11
  },
12
  "language_info": {
13
  "name": "python"
14
+ },
15
+ "widgets": {
16
+ "application/vnd.jupyter.widget-state+json": {
17
+ "3fe18eeca02d47f79ec7d4df79d5376f": {
18
+ "model_module": "@jupyter-widgets/controls",
19
+ "model_name": "VBoxModel",
20
+ "model_module_version": "1.5.0",
21
+ "state": {
22
+ "_dom_classes": [
23
+ "container_AC",
24
+ "hide"
25
+ ],
26
+ "_model_module": "@jupyter-widgets/controls",
27
+ "_model_module_version": "1.5.0",
28
+ "_model_name": "VBoxModel",
29
+ "_view_count": null,
30
+ "_view_module": "@jupyter-widgets/controls",
31
+ "_view_module_version": "1.5.0",
32
+ "_view_name": "VBoxView",
33
+ "box_style": "",
34
+ "children": [
35
+ "IPY_MODEL_498f0eb487c44057bafb31c749ca2357",
36
+ "IPY_MODEL_88f61add9fa34832969b18f6426b3740",
37
+ "IPY_MODEL_5a6b81847e064bb295762602f40fdec1",
38
+ "IPY_MODEL_d6698d020370418a92315ddf3e4d4afc",
39
+ "IPY_MODEL_76caa0eaf2444c619458641f3b7f54e9",
40
+ "IPY_MODEL_78b1a8a0baa5470d970aa2297fcdf0bc"
41
+ ],
42
+ "layout": "IPY_MODEL_505fccacb6b64da293aaca7bc2730aa7"
43
+ }
44
+ },
45
+ "498f0eb487c44057bafb31c749ca2357": {
46
+ "model_module": "@jupyter-widgets/controls",
47
+ "model_name": "HTMLModel",
48
+ "model_module_version": "1.5.0",
49
+ "state": {
50
+ "_dom_classes": [],
51
+ "_model_module": "@jupyter-widgets/controls",
52
+ "_model_module_version": "1.5.0",
53
+ "_model_name": "HTMLModel",
54
+ "_view_count": null,
55
+ "_view_module": "@jupyter-widgets/controls",
56
+ "_view_module_version": "1.5.0",
57
+ "_view_name": "HTMLView",
58
+ "description": "",
59
+ "description_tooltip": null,
60
+ "layout": "IPY_MODEL_faab2c4f672d4e8891f282e93c7de3bd",
61
+ "placeholder": "​",
62
+ "style": "IPY_MODEL_760cd50a5ec54f0fb203c2cbda8cd73a",
63
+ "value": "\n<span class=\"instruction_AC\">Используйте <span style=\"color: #B2B2B2;\">ctrl</span> или <span style=\"color: #B2B2B2;\">shift</span> для множественного выбора.</span>\n"
64
+ }
65
+ },
66
+ "88f61add9fa34832969b18f6426b3740": {
67
+ "model_module": "@jupyter-widgets/controls",
68
+ "model_name": "HTMLModel",
69
+ "model_module_version": "1.5.0",
70
+ "state": {
71
+ "_dom_classes": [],
72
+ "_model_module": "@jupyter-widgets/controls",
73
+ "_model_module_version": "1.5.0",
74
+ "_model_name": "HTMLModel",
75
+ "_view_count": null,
76
+ "_view_module": "@jupyter-widgets/controls",
77
+ "_view_module_version": "1.5.0",
78
+ "_view_name": "HTMLView",
79
+ "description": "",
80
+ "description_tooltip": null,
81
+ "layout": "IPY_MODEL_8da3e41b39894ad887b4620e9e4d1f2a",
82
+ "placeholder": "​",
83
+ "style": "IPY_MODEL_ba3059acec1c48e79a0e59417afa8614",
84
+ "value": "<hr>"
85
+ }
86
+ },
87
+ "5a6b81847e064bb295762602f40fdec1": {
88
+ "model_module": "@jupyter-widgets/controls",
89
+ "model_name": "SelectMultipleModel",
90
+ "model_module_version": "1.5.0",
91
+ "state": {
92
+ "_dom_classes": [
93
+ "custom-select-multiple_AC"
94
+ ],
95
+ "_model_module": "@jupyter-widgets/controls",
96
+ "_model_module_version": "1.5.0",
97
+ "_model_name": "SelectMultipleModel",
98
+ "_options_labels": [
99
+ "Изображения",
100
+ "Модели",
101
+ "Vae",
102
+ "LoRa",
103
+ "ControlNet Модели"
104
+ ],
105
+ "_view_count": null,
106
+ "_view_module": "@jupyter-widgets/controls",
107
+ "_view_module_version": "1.5.0",
108
+ "_view_name": "SelectMultipleView",
109
+ "description": "",
110
+ "description_tooltip": null,
111
+ "disabled": false,
112
+ "index": [],
113
+ "layout": "IPY_MODEL_1fa702de844149959e294436f71e7ab1",
114
+ "rows": 5,
115
+ "style": "IPY_MODEL_f72e1b06881a468e808063b332791fb1"
116
+ }
117
+ },
118
+ "d6698d020370418a92315ddf3e4d4afc": {
119
+ "model_module": "@jupyter-widgets/output",
120
+ "model_name": "OutputModel",
121
+ "model_module_version": "1.0.0",
122
+ "state": {
123
+ "_dom_classes": [
124
+ "output_AC"
125
+ ],
126
+ "_model_module": "@jupyter-widgets/output",
127
+ "_model_module_version": "1.0.0",
128
+ "_model_name": "OutputModel",
129
+ "_view_count": null,
130
+ "_view_module": "@jupyter-widgets/output",
131
+ "_view_module_version": "1.0.0",
132
+ "_view_name": "OutputView",
133
+ "layout": "IPY_MODEL_0742600d3539458a955cb563f832fa76",
134
+ "msg_id": "",
135
+ "outputs": []
136
+ }
137
+ },
138
+ "76caa0eaf2444c619458641f3b7f54e9": {
139
+ "model_module": "@jupyter-widgets/controls",
140
+ "model_name": "HTMLModel",
141
+ "model_module_version": "1.5.0",
142
+ "state": {
143
+ "_dom_classes": [],
144
+ "_model_module": "@jupyter-widgets/controls",
145
+ "_model_module_version": "1.5.0",
146
+ "_model_name": "HTMLModel",
147
+ "_view_count": null,
148
+ "_view_module": "@jupyter-widgets/controls",
149
+ "_view_module_version": "1.5.0",
150
+ "_view_name": "HTMLView",
151
+ "description": "",
152
+ "description_tooltip": null,
153
+ "layout": "IPY_MODEL_29c64a7c86e942e2abda44c6313c905d",
154
+ "placeholder": "​",
155
+ "style": "IPY_MODEL_53e5d97467594404bc0a7e2de9ed04a1",
156
+ "value": "<hr>"
157
+ }
158
+ },
159
+ "78b1a8a0baa5470d970aa2297fcdf0bc": {
160
+ "model_module": "@jupyter-widgets/controls",
161
+ "model_name": "HBoxModel",
162
+ "model_module_version": "1.5.0",
163
+ "state": {
164
+ "_dom_classes": [
165
+ "lower_information_panel_AC"
166
+ ],
167
+ "_model_module": "@jupyter-widgets/controls",
168
+ "_model_module_version": "1.5.0",
169
+ "_model_name": "HBoxModel",
170
+ "_view_count": null,
171
+ "_view_module": "@jupyter-widgets/controls",
172
+ "_view_module_version": "1.5.0",
173
+ "_view_name": "HBoxView",
174
+ "box_style": "",
175
+ "children": [
176
+ "IPY_MODEL_58153b5b5c4d4cceacbebdc644c2aeb8",
177
+ "IPY_MODEL_478a8bb5d4424b3392cb724f28c91f08"
178
+ ],
179
+ "layout": "IPY_MODEL_c0b8eed93e964b7b8a2368838d35d16d"
180
+ }
181
+ },
182
+ "505fccacb6b64da293aaca7bc2730aa7": {
183
+ "model_module": "@jupyter-widgets/base",
184
+ "model_name": "LayoutModel",
185
+ "model_module_version": "1.2.0",
186
+ "state": {
187
+ "_model_module": "@jupyter-widgets/base",
188
+ "_model_module_version": "1.2.0",
189
+ "_model_name": "LayoutModel",
190
+ "_view_count": null,
191
+ "_view_module": "@jupyter-widgets/base",
192
+ "_view_module_version": "1.2.0",
193
+ "_view_name": "LayoutView",
194
+ "align_content": null,
195
+ "align_items": null,
196
+ "align_self": null,
197
+ "border": null,
198
+ "bottom": null,
199
+ "display": null,
200
+ "flex": null,
201
+ "flex_flow": null,
202
+ "grid_area": null,
203
+ "grid_auto_columns": null,
204
+ "grid_auto_flow": null,
205
+ "grid_auto_rows": null,
206
+ "grid_column": null,
207
+ "grid_gap": null,
208
+ "grid_row": null,
209
+ "grid_template_areas": null,
210
+ "grid_template_columns": null,
211
+ "grid_template_rows": null,
212
+ "height": null,
213
+ "justify_content": null,
214
+ "justify_items": null,
215
+ "left": null,
216
+ "margin": null,
217
+ "max_height": null,
218
+ "max_width": null,
219
+ "min_height": null,
220
+ "min_width": null,
221
+ "object_fit": null,
222
+ "object_position": null,
223
+ "order": null,
224
+ "overflow": null,
225
+ "overflow_x": null,
226
+ "overflow_y": null,
227
+ "padding": null,
228
+ "right": null,
229
+ "top": null,
230
+ "visibility": null,
231
+ "width": null
232
+ }
233
+ },
234
+ "faab2c4f672d4e8891f282e93c7de3bd": {
235
+ "model_module": "@jupyter-widgets/base",
236
+ "model_name": "LayoutModel",
237
+ "model_module_version": "1.2.0",
238
+ "state": {
239
+ "_model_module": "@jupyter-widgets/base",
240
+ "_model_module_version": "1.2.0",
241
+ "_model_name": "LayoutModel",
242
+ "_view_count": null,
243
+ "_view_module": "@jupyter-widgets/base",
244
+ "_view_module_version": "1.2.0",
245
+ "_view_name": "LayoutView",
246
+ "align_content": null,
247
+ "align_items": null,
248
+ "align_self": null,
249
+ "border": null,
250
+ "bottom": null,
251
+ "display": null,
252
+ "flex": null,
253
+ "flex_flow": null,
254
+ "grid_area": null,
255
+ "grid_auto_columns": null,
256
+ "grid_auto_flow": null,
257
+ "grid_auto_rows": null,
258
+ "grid_column": null,
259
+ "grid_gap": null,
260
+ "grid_row": null,
261
+ "grid_template_areas": null,
262
+ "grid_template_columns": null,
263
+ "grid_template_rows": null,
264
+ "height": null,
265
+ "justify_content": null,
266
+ "justify_items": null,
267
+ "left": null,
268
+ "margin": null,
269
+ "max_height": null,
270
+ "max_width": null,
271
+ "min_height": null,
272
+ "min_width": null,
273
+ "object_fit": null,
274
+ "object_position": null,
275
+ "order": null,
276
+ "overflow": null,
277
+ "overflow_x": null,
278
+ "overflow_y": null,
279
+ "padding": null,
280
+ "right": null,
281
+ "top": null,
282
+ "visibility": null,
283
+ "width": null
284
+ }
285
+ },
286
+ "760cd50a5ec54f0fb203c2cbda8cd73a": {
287
+ "model_module": "@jupyter-widgets/controls",
288
+ "model_name": "DescriptionStyleModel",
289
+ "model_module_version": "1.5.0",
290
+ "state": {
291
+ "_model_module": "@jupyter-widgets/controls",
292
+ "_model_module_version": "1.5.0",
293
+ "_model_name": "DescriptionStyleModel",
294
+ "_view_count": null,
295
+ "_view_module": "@jupyter-widgets/base",
296
+ "_view_module_version": "1.2.0",
297
+ "_view_name": "StyleView",
298
+ "description_width": ""
299
+ }
300
+ },
301
+ "8da3e41b39894ad887b4620e9e4d1f2a": {
302
+ "model_module": "@jupyter-widgets/base",
303
+ "model_name": "LayoutModel",
304
+ "model_module_version": "1.2.0",
305
+ "state": {
306
+ "_model_module": "@jupyter-widgets/base",
307
+ "_model_module_version": "1.2.0",
308
+ "_model_name": "LayoutModel",
309
+ "_view_count": null,
310
+ "_view_module": "@jupyter-widgets/base",
311
+ "_view_module_version": "1.2.0",
312
+ "_view_name": "LayoutView",
313
+ "align_content": null,
314
+ "align_items": null,
315
+ "align_self": null,
316
+ "border": null,
317
+ "bottom": null,
318
+ "display": null,
319
+ "flex": null,
320
+ "flex_flow": null,
321
+ "grid_area": null,
322
+ "grid_auto_columns": null,
323
+ "grid_auto_flow": null,
324
+ "grid_auto_rows": null,
325
+ "grid_column": null,
326
+ "grid_gap": null,
327
+ "grid_row": null,
328
+ "grid_template_areas": null,
329
+ "grid_template_columns": null,
330
+ "grid_template_rows": null,
331
+ "height": null,
332
+ "justify_content": null,
333
+ "justify_items": null,
334
+ "left": null,
335
+ "margin": null,
336
+ "max_height": null,
337
+ "max_width": null,
338
+ "min_height": null,
339
+ "min_width": null,
340
+ "object_fit": null,
341
+ "object_position": null,
342
+ "order": null,
343
+ "overflow": null,
344
+ "overflow_x": null,
345
+ "overflow_y": null,
346
+ "padding": null,
347
+ "right": null,
348
+ "top": null,
349
+ "visibility": null,
350
+ "width": null
351
+ }
352
+ },
353
+ "ba3059acec1c48e79a0e59417afa8614": {
354
+ "model_module": "@jupyter-widgets/controls",
355
+ "model_name": "DescriptionStyleModel",
356
+ "model_module_version": "1.5.0",
357
+ "state": {
358
+ "_model_module": "@jupyter-widgets/controls",
359
+ "_model_module_version": "1.5.0",
360
+ "_model_name": "DescriptionStyleModel",
361
+ "_view_count": null,
362
+ "_view_module": "@jupyter-widgets/base",
363
+ "_view_module_version": "1.2.0",
364
+ "_view_name": "StyleView",
365
+ "description_width": ""
366
+ }
367
+ },
368
+ "1fa702de844149959e294436f71e7ab1": {
369
+ "model_module": "@jupyter-widgets/base",
370
+ "model_name": "LayoutModel",
371
+ "model_module_version": "1.2.0",
372
+ "state": {
373
+ "_model_module": "@jupyter-widgets/base",
374
+ "_model_module_version": "1.2.0",
375
+ "_model_name": "LayoutModel",
376
+ "_view_count": null,
377
+ "_view_module": "@jupyter-widgets/base",
378
+ "_view_module_version": "1.2.0",
379
+ "_view_name": "LayoutView",
380
+ "align_content": null,
381
+ "align_items": null,
382
+ "align_self": null,
383
+ "border": null,
384
+ "bottom": null,
385
+ "display": null,
386
+ "flex": null,
387
+ "flex_flow": null,
388
+ "grid_area": null,
389
+ "grid_auto_columns": null,
390
+ "grid_auto_flow": null,
391
+ "grid_auto_rows": null,
392
+ "grid_column": null,
393
+ "grid_gap": null,
394
+ "grid_row": null,
395
+ "grid_template_areas": null,
396
+ "grid_template_columns": null,
397
+ "grid_template_rows": null,
398
+ "height": null,
399
+ "justify_content": null,
400
+ "justify_items": null,
401
+ "left": null,
402
+ "margin": null,
403
+ "max_height": null,
404
+ "max_width": null,
405
+ "min_height": null,
406
+ "min_width": null,
407
+ "object_fit": null,
408
+ "object_position": null,
409
+ "order": null,
410
+ "overflow": null,
411
+ "overflow_x": null,
412
+ "overflow_y": null,
413
+ "padding": null,
414
+ "right": null,
415
+ "top": null,
416
+ "visibility": null,
417
+ "width": "100%"
418
+ }
419
+ },
420
+ "f72e1b06881a468e808063b332791fb1": {
421
+ "model_module": "@jupyter-widgets/controls",
422
+ "model_name": "DescriptionStyleModel",
423
+ "model_module_version": "1.5.0",
424
+ "state": {
425
+ "_model_module": "@jupyter-widgets/controls",
426
+ "_model_module_version": "1.5.0",
427
+ "_model_name": "DescriptionStyleModel",
428
+ "_view_count": null,
429
+ "_view_module": "@jupyter-widgets/base",
430
+ "_view_module_version": "1.2.0",
431
+ "_view_name": "StyleView",
432
+ "description_width": ""
433
+ }
434
+ },
435
+ "29c64a7c86e942e2abda44c6313c905d": {
436
+ "model_module": "@jupyter-widgets/base",
437
+ "model_name": "LayoutModel",
438
+ "model_module_version": "1.2.0",
439
+ "state": {
440
+ "_model_module": "@jupyter-widgets/base",
441
+ "_model_module_version": "1.2.0",
442
+ "_model_name": "LayoutModel",
443
+ "_view_count": null,
444
+ "_view_module": "@jupyter-widgets/base",
445
+ "_view_module_version": "1.2.0",
446
+ "_view_name": "LayoutView",
447
+ "align_content": null,
448
+ "align_items": null,
449
+ "align_self": null,
450
+ "border": null,
451
+ "bottom": null,
452
+ "display": null,
453
+ "flex": null,
454
+ "flex_flow": null,
455
+ "grid_area": null,
456
+ "grid_auto_columns": null,
457
+ "grid_auto_flow": null,
458
+ "grid_auto_rows": null,
459
+ "grid_column": null,
460
+ "grid_gap": null,
461
+ "grid_row": null,
462
+ "grid_template_areas": null,
463
+ "grid_template_columns": null,
464
+ "grid_template_rows": null,
465
+ "height": null,
466
+ "justify_content": null,
467
+ "justify_items": null,
468
+ "left": null,
469
+ "margin": null,
470
+ "max_height": null,
471
+ "max_width": null,
472
+ "min_height": null,
473
+ "min_width": null,
474
+ "object_fit": null,
475
+ "object_position": null,
476
+ "order": null,
477
+ "overflow": null,
478
+ "overflow_x": null,
479
+ "overflow_y": null,
480
+ "padding": null,
481
+ "right": null,
482
+ "top": null,
483
+ "visibility": null,
484
+ "width": null
485
+ }
486
+ },
487
+ "53e5d97467594404bc0a7e2de9ed04a1": {
488
+ "model_module": "@jupyter-widgets/controls",
489
+ "model_name": "DescriptionStyleModel",
490
+ "model_module_version": "1.5.0",
491
+ "state": {
492
+ "_model_module": "@jupyter-widgets/controls",
493
+ "_model_module_version": "1.5.0",
494
+ "_model_name": "DescriptionStyleModel",
495
+ "_view_count": null,
496
+ "_view_module": "@jupyter-widgets/base",
497
+ "_view_module_version": "1.2.0",
498
+ "_view_name": "StyleView",
499
+ "description_width": ""
500
+ }
501
+ },
502
+ "58153b5b5c4d4cceacbebdc644c2aeb8": {
503
+ "model_module": "@jupyter-widgets/controls",
504
+ "model_name": "HBoxModel",
505
+ "model_module_version": "1.5.0",
506
+ "state": {
507
+ "_dom_classes": [],
508
+ "_model_module": "@jupyter-widgets/controls",
509
+ "_model_module_version": "1.5.0",
510
+ "_model_name": "HBoxModel",
511
+ "_view_count": null,
512
+ "_view_module": "@jupyter-widgets/controls",
513
+ "_view_module_version": "1.5.0",
514
+ "_view_name": "HBoxView",
515
+ "box_style": "",
516
+ "children": [
517
+ "IPY_MODEL_1ab673223b22490c8453559e329ac03a",
518
+ "IPY_MODEL_efbaedfac37547da8328ca95a5e10eeb"
519
+ ],
520
+ "layout": "IPY_MODEL_d0c6ac1211b943af85aec33eb2e522c2"
521
+ }
522
+ },
523
+ "478a8bb5d4424b3392cb724f28c91f08": {
524
+ "model_module": "@jupyter-widgets/controls",
525
+ "model_name": "HTMLModel",
526
+ "model_module_version": "1.5.0",
527
+ "state": {
528
+ "_dom_classes": [],
529
+ "_model_module": "@jupyter-widgets/controls",
530
+ "_model_module_version": "1.5.0",
531
+ "_model_name": "HTMLModel",
532
+ "_view_count": null,
533
+ "_view_module": "@jupyter-widgets/controls",
534
+ "_view_module_version": "1.5.0",
535
+ "_view_name": "HTMLView",
536
+ "description": "",
537
+ "description_tooltip": null,
538
+ "layout": "IPY_MODEL_d0f61995fbf24c34a151eef26ed23610",
539
+ "placeholder": "​",
540
+ "style": "IPY_MODEL_b8e7260d500a454a96002d33e919af58",
541
+ "value": "\n<div class=\"storage_info_AC\">Всего: 107.72 GB <span style=\"color: #555\">|</span> Используется: 26.31 GB <span style=\"color: #555\">|</span> Свободно: 81.39 GB</div>\n"
542
+ }
543
+ },
544
+ "c0b8eed93e964b7b8a2368838d35d16d": {
545
+ "model_module": "@jupyter-widgets/base",
546
+ "model_name": "LayoutModel",
547
+ "model_module_version": "1.2.0",
548
+ "state": {
549
+ "_model_module": "@jupyter-widgets/base",
550
+ "_model_module_version": "1.2.0",
551
+ "_model_name": "LayoutModel",
552
+ "_view_count": null,
553
+ "_view_module": "@jupyter-widgets/base",
554
+ "_view_module_version": "1.2.0",
555
+ "_view_name": "LayoutView",
556
+ "align_content": null,
557
+ "align_items": null,
558
+ "align_self": null,
559
+ "border": null,
560
+ "bottom": null,
561
+ "display": null,
562
+ "flex": null,
563
+ "flex_flow": null,
564
+ "grid_area": null,
565
+ "grid_auto_columns": null,
566
+ "grid_auto_flow": null,
567
+ "grid_auto_rows": null,
568
+ "grid_column": null,
569
+ "grid_gap": null,
570
+ "grid_row": null,
571
+ "grid_template_areas": null,
572
+ "grid_template_columns": null,
573
+ "grid_template_rows": null,
574
+ "height": null,
575
+ "justify_content": null,
576
+ "justify_items": null,
577
+ "left": null,
578
+ "margin": null,
579
+ "max_height": null,
580
+ "max_width": null,
581
+ "min_height": null,
582
+ "min_width": null,
583
+ "object_fit": null,
584
+ "object_position": null,
585
+ "order": null,
586
+ "overflow": null,
587
+ "overflow_x": null,
588
+ "overflow_y": null,
589
+ "padding": null,
590
+ "right": null,
591
+ "top": null,
592
+ "visibility": null,
593
+ "width": null
594
+ }
595
+ },
596
+ "1ab673223b22490c8453559e329ac03a": {
597
+ "model_module": "@jupyter-widgets/controls",
598
+ "model_name": "ButtonModel",
599
+ "model_module_version": "1.5.0",
600
+ "state": {
601
+ "_dom_classes": [
602
+ "button_execute_AC",
603
+ "button_AC"
604
+ ],
605
+ "_model_module": "@jupyter-widgets/controls",
606
+ "_model_module_version": "1.5.0",
607
+ "_model_name": "ButtonModel",
608
+ "_view_count": null,
609
+ "_view_module": "@jupyter-widgets/controls",
610
+ "_view_module_version": "1.5.0",
611
+ "_view_name": "ButtonView",
612
+ "button_style": "",
613
+ "description": "Выполнить Очистку",
614
+ "disabled": false,
615
+ "icon": "",
616
+ "layout": "IPY_MODEL_88fbd55e845b47259b114e2ddaa4cf2e",
617
+ "style": "IPY_MODEL_b1c15edf892042d2bd0f856ccad35761",
618
+ "tooltip": ""
619
+ }
620
+ },
621
+ "efbaedfac37547da8328ca95a5e10eeb": {
622
+ "model_module": "@jupyter-widgets/controls",
623
+ "model_name": "ButtonModel",
624
+ "model_module_version": "1.5.0",
625
+ "state": {
626
+ "_dom_classes": [
627
+ "button_clear_AC",
628
+ "button_AC"
629
+ ],
630
+ "_model_module": "@jupyter-widgets/controls",
631
+ "_model_module_version": "1.5.0",
632
+ "_model_name": "ButtonModel",
633
+ "_view_count": null,
634
+ "_view_module": "@jupyter-widgets/controls",
635
+ "_view_module_version": "1.5.0",
636
+ "_view_name": "ButtonView",
637
+ "button_style": "",
638
+ "description": "Скрыть Виджет",
639
+ "disabled": false,
640
+ "icon": "",
641
+ "layout": "IPY_MODEL_378ab655daf54fe6a38a5fe6f5e3153b",
642
+ "style": "IPY_MODEL_84a1673702c141789a3a4d25d8af2ad4",
643
+ "tooltip": ""
644
+ }
645
+ },
646
+ "d0c6ac1211b943af85aec33eb2e522c2": {
647
+ "model_module": "@jupyter-widgets/base",
648
+ "model_name": "LayoutModel",
649
+ "model_module_version": "1.2.0",
650
+ "state": {
651
+ "_model_module": "@jupyter-widgets/base",
652
+ "_model_module_version": "1.2.0",
653
+ "_model_name": "LayoutModel",
654
+ "_view_count": null,
655
+ "_view_module": "@jupyter-widgets/base",
656
+ "_view_module_version": "1.2.0",
657
+ "_view_name": "LayoutView",
658
+ "align_content": null,
659
+ "align_items": null,
660
+ "align_self": null,
661
+ "border": null,
662
+ "bottom": null,
663
+ "display": null,
664
+ "flex": null,
665
+ "flex_flow": null,
666
+ "grid_area": null,
667
+ "grid_auto_columns": null,
668
+ "grid_auto_flow": null,
669
+ "grid_auto_rows": null,
670
+ "grid_column": null,
671
+ "grid_gap": null,
672
+ "grid_row": null,
673
+ "grid_template_areas": null,
674
+ "grid_template_columns": null,
675
+ "grid_template_rows": null,
676
+ "height": null,
677
+ "justify_content": null,
678
+ "justify_items": null,
679
+ "left": null,
680
+ "margin": null,
681
+ "max_height": null,
682
+ "max_width": null,
683
+ "min_height": null,
684
+ "min_width": null,
685
+ "object_fit": null,
686
+ "object_position": null,
687
+ "order": null,
688
+ "overflow": null,
689
+ "overflow_x": null,
690
+ "overflow_y": null,
691
+ "padding": null,
692
+ "right": null,
693
+ "top": null,
694
+ "visibility": null,
695
+ "width": null
696
+ }
697
+ },
698
+ "d0f61995fbf24c34a151eef26ed23610": {
699
+ "model_module": "@jupyter-widgets/base",
700
+ "model_name": "LayoutModel",
701
+ "model_module_version": "1.2.0",
702
+ "state": {
703
+ "_model_module": "@jupyter-widgets/base",
704
+ "_model_module_version": "1.2.0",
705
+ "_model_name": "LayoutModel",
706
+ "_view_count": null,
707
+ "_view_module": "@jupyter-widgets/base",
708
+ "_view_module_version": "1.2.0",
709
+ "_view_name": "LayoutView",
710
+ "align_content": null,
711
+ "align_items": null,
712
+ "align_self": null,
713
+ "border": null,
714
+ "bottom": null,
715
+ "display": null,
716
+ "flex": null,
717
+ "flex_flow": null,
718
+ "grid_area": null,
719
+ "grid_auto_columns": null,
720
+ "grid_auto_flow": null,
721
+ "grid_auto_rows": null,
722
+ "grid_column": null,
723
+ "grid_gap": null,
724
+ "grid_row": null,
725
+ "grid_template_areas": null,
726
+ "grid_template_columns": null,
727
+ "grid_template_rows": null,
728
+ "height": null,
729
+ "justify_content": null,
730
+ "justify_items": null,
731
+ "left": null,
732
+ "margin": null,
733
+ "max_height": null,
734
+ "max_width": null,
735
+ "min_height": null,
736
+ "min_width": null,
737
+ "object_fit": null,
738
+ "object_position": null,
739
+ "order": null,
740
+ "overflow": null,
741
+ "overflow_x": null,
742
+ "overflow_y": null,
743
+ "padding": null,
744
+ "right": null,
745
+ "top": null,
746
+ "visibility": null,
747
+ "width": null
748
+ }
749
+ },
750
+ "b8e7260d500a454a96002d33e919af58": {
751
+ "model_module": "@jupyter-widgets/controls",
752
+ "model_name": "DescriptionStyleModel",
753
+ "model_module_version": "1.5.0",
754
+ "state": {
755
+ "_model_module": "@jupyter-widgets/controls",
756
+ "_model_module_version": "1.5.0",
757
+ "_model_name": "DescriptionStyleModel",
758
+ "_view_count": null,
759
+ "_view_module": "@jupyter-widgets/base",
760
+ "_view_module_version": "1.2.0",
761
+ "_view_name": "StyleView",
762
+ "description_width": ""
763
+ }
764
+ },
765
+ "88fbd55e845b47259b114e2ddaa4cf2e": {
766
+ "model_module": "@jupyter-widgets/base",
767
+ "model_name": "LayoutModel",
768
+ "model_module_version": "1.2.0",
769
+ "state": {
770
+ "_model_module": "@jupyter-widgets/base",
771
+ "_model_module_version": "1.2.0",
772
+ "_model_name": "LayoutModel",
773
+ "_view_count": null,
774
+ "_view_module": "@jupyter-widgets/base",
775
+ "_view_module_version": "1.2.0",
776
+ "_view_name": "LayoutView",
777
+ "align_content": null,
778
+ "align_items": null,
779
+ "align_self": null,
780
+ "border": null,
781
+ "bottom": null,
782
+ "display": null,
783
+ "flex": null,
784
+ "flex_flow": null,
785
+ "grid_area": null,
786
+ "grid_auto_columns": null,
787
+ "grid_auto_flow": null,
788
+ "grid_auto_rows": null,
789
+ "grid_column": null,
790
+ "grid_gap": null,
791
+ "grid_row": null,
792
+ "grid_template_areas": null,
793
+ "grid_template_columns": null,
794
+ "grid_template_rows": null,
795
+ "height": null,
796
+ "justify_content": null,
797
+ "justify_items": null,
798
+ "left": null,
799
+ "margin": null,
800
+ "max_height": null,
801
+ "max_width": null,
802
+ "min_height": null,
803
+ "min_width": null,
804
+ "object_fit": null,
805
+ "object_position": null,
806
+ "order": null,
807
+ "overflow": null,
808
+ "overflow_x": null,
809
+ "overflow_y": null,
810
+ "padding": null,
811
+ "right": null,
812
+ "top": null,
813
+ "visibility": null,
814
+ "width": null
815
+ }
816
+ },
817
+ "b1c15edf892042d2bd0f856ccad35761": {
818
+ "model_module": "@jupyter-widgets/controls",
819
+ "model_name": "ButtonStyleModel",
820
+ "model_module_version": "1.5.0",
821
+ "state": {
822
+ "_model_module": "@jupyter-widgets/controls",
823
+ "_model_module_version": "1.5.0",
824
+ "_model_name": "ButtonStyleModel",
825
+ "_view_count": null,
826
+ "_view_module": "@jupyter-widgets/base",
827
+ "_view_module_version": "1.2.0",
828
+ "_view_name": "StyleView",
829
+ "button_color": null,
830
+ "font_weight": ""
831
+ }
832
+ },
833
+ "378ab655daf54fe6a38a5fe6f5e3153b": {
834
+ "model_module": "@jupyter-widgets/base",
835
+ "model_name": "LayoutModel",
836
+ "model_module_version": "1.2.0",
837
+ "state": {
838
+ "_model_module": "@jupyter-widgets/base",
839
+ "_model_module_version": "1.2.0",
840
+ "_model_name": "LayoutModel",
841
+ "_view_count": null,
842
+ "_view_module": "@jupyter-widgets/base",
843
+ "_view_module_version": "1.2.0",
844
+ "_view_name": "LayoutView",
845
+ "align_content": null,
846
+ "align_items": null,
847
+ "align_self": null,
848
+ "border": null,
849
+ "bottom": null,
850
+ "display": null,
851
+ "flex": null,
852
+ "flex_flow": null,
853
+ "grid_area": null,
854
+ "grid_auto_columns": null,
855
+ "grid_auto_flow": null,
856
+ "grid_auto_rows": null,
857
+ "grid_column": null,
858
+ "grid_gap": null,
859
+ "grid_row": null,
860
+ "grid_template_areas": null,
861
+ "grid_template_columns": null,
862
+ "grid_template_rows": null,
863
+ "height": null,
864
+ "justify_content": null,
865
+ "justify_items": null,
866
+ "left": null,
867
+ "margin": null,
868
+ "max_height": null,
869
+ "max_width": null,
870
+ "min_height": null,
871
+ "min_width": null,
872
+ "object_fit": null,
873
+ "object_position": null,
874
+ "order": null,
875
+ "overflow": null,
876
+ "overflow_x": null,
877
+ "overflow_y": null,
878
+ "padding": null,
879
+ "right": null,
880
+ "top": null,
881
+ "visibility": null,
882
+ "width": null
883
+ }
884
+ },
885
+ "84a1673702c141789a3a4d25d8af2ad4": {
886
+ "model_module": "@jupyter-widgets/controls",
887
+ "model_name": "ButtonStyleModel",
888
+ "model_module_version": "1.5.0",
889
+ "state": {
890
+ "_model_module": "@jupyter-widgets/controls",
891
+ "_model_module_version": "1.5.0",
892
+ "_model_name": "ButtonStyleModel",
893
+ "_view_count": null,
894
+ "_view_module": "@jupyter-widgets/base",
895
+ "_view_module_version": "1.2.0",
896
+ "_view_name": "StyleView",
897
+ "button_color": null,
898
+ "font_weight": ""
899
+ }
900
+ },
901
+ "0742600d3539458a955cb563f832fa76": {
902
+ "model_module": "@jupyter-widgets/base",
903
+ "model_name": "LayoutModel",
904
+ "model_module_version": "1.2.0",
905
+ "state": {
906
+ "_model_module": "@jupyter-widgets/base",
907
+ "_model_module_version": "1.2.0",
908
+ "_model_name": "LayoutModel",
909
+ "_view_count": null,
910
+ "_view_module": "@jupyter-widgets/base",
911
+ "_view_module_version": "1.2.0",
912
+ "_view_name": "LayoutView",
913
+ "align_content": null,
914
+ "align_items": null,
915
+ "align_self": null,
916
+ "border": null,
917
+ "bottom": null,
918
+ "display": null,
919
+ "flex": null,
920
+ "flex_flow": null,
921
+ "grid_area": null,
922
+ "grid_auto_columns": null,
923
+ "grid_auto_flow": null,
924
+ "grid_auto_rows": null,
925
+ "grid_column": null,
926
+ "grid_gap": null,
927
+ "grid_row": null,
928
+ "grid_template_areas": null,
929
+ "grid_template_columns": null,
930
+ "grid_template_rows": null,
931
+ "height": null,
932
+ "justify_content": null,
933
+ "justify_items": null,
934
+ "left": null,
935
+ "margin": null,
936
+ "max_height": null,
937
+ "max_width": null,
938
+ "min_height": null,
939
+ "min_width": null,
940
+ "object_fit": null,
941
+ "object_position": null,
942
+ "order": null,
943
+ "overflow": null,
944
+ "overflow_x": null,
945
+ "overflow_y": null,
946
+ "padding": null,
947
+ "right": null,
948
+ "top": null,
949
+ "visibility": null,
950
+ "width": null
951
+ }
952
+ }
953
+ }
954
  }
955
  },
956
  "cells": [
 
1009
  " opacity: 0.25;\n",
1010
  "}\n",
1011
  "\n",
1012
+ ".instruction_AC {\n",
1013
  " font-family: cursive;\n",
1014
  " font-size: 18px;\n",
1015
  " color: grey;\n",
 
1020
  "\n",
1021
  "/* Container style */\n",
1022
  "\n",
1023
+ ".container_AC {\n",
1024
  " position: relative;\n",
1025
  " background-color: #232323;\n",
1026
  " width: 800px;\n",
 
1032
  " overflow: visible;\n",
1033
  "}\n",
1034
  "\n",
1035
+ ".container_AC::before {\n",
1036
  " position: absolute;\n",
1037
  " top: 5px;\n",
1038
  " right: 10px;\n",
 
1042
  " color: rgba(0, 0, 0, 0.2);\n",
1043
  "}\n",
1044
  "\n",
1045
+ ".container_AC::after {\n",
1046
  " position: absolute;\n",
1047
  " top: 30px;\n",
1048
  " right: 10px;\n",
 
1052
  " color: rgba(0, 0, 0, 0.2);\n",
1053
  "}\n",
1054
  "\n",
1055
+ ".custom-select-multiple_AC select {\n",
1056
  " padding: 10px;\n",
1057
  " font-family: cursive;\n",
1058
  " border: 1px solid #262626;\n",
 
1062
  " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
1063
  "}\n",
1064
  "\n",
1065
+ ".output_AC {\n",
1066
  " padding: 10px;\n",
1067
  " height: auto;\n",
1068
  " border: 1px solid #262626;\n",
 
1073
  " box-sizing: border-box;\n",
1074
  "}\n",
1075
  "\n",
1076
+ ".output_message_AC {\n",
1077
  " font-family: cursive;\n",
1078
  " color: white !important;\n",
1079
  " font-size: 14px;\n",
 
1082
  "}\n",
1083
  "\n",
1084
  "\n",
1085
+ ".storage_info_AC {\n",
1086
  " padding: 5px 20px;\n",
1087
  " height: auto;\n",
1088
  " border: 1px solid #262626;\n",
 
1099
  "\n",
1100
  "\n",
1101
  "/* Button and storage info layout */\n",
1102
+ ".lower_information_panel_AC {\n",
1103
  " display: flex;\n",
1104
  " align-items: center;\n",
1105
  " justify-content: space-between;\n",
 
1108
  "\n",
1109
  "/* Button style */\n",
1110
  "\n",
1111
+ ".button_AC {\n",
1112
  " width: auto;\n",
1113
  " font-family: cursive;\n",
1114
  " color: white !important;\n",
 
1122
  " transition: background 0.5s ease-in-out, transform 0.3s ease;\n",
1123
  "}\n",
1124
  "\n",
1125
+ ".button_AC:hover {\n",
1126
  " cursor: pointer;\n",
1127
  " background-size: 200% 200%;\n",
1128
  " background-position: right bottom;\n",
1129
  " transform: translateY(1px);\n",
1130
  "}\n",
1131
  "\n",
1132
+ ".button_execute_AC:hover {\n",
1133
  " background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);\n",
1134
  "}\n",
1135
  "\n",
1136
+ ".button_clear_AC:hover {\n",
1137
  " background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);\n",
1138
  "}\n",
1139
  "\n",
1140
+ ".button_execute_AC:active,\n",
1141
+ ".button_clear_AC:active {\n",
1142
  " filter: brightness(0.75);\n",
1143
  "}\n",
1144
  "\n",
 
1150
  "/* Animation of elements */\n",
1151
  "\n",
1152
  "/* Emergence */\n",
1153
+ ".container_AC {\n",
1154
  " animation-name: slideInTopBlur;\n",
1155
  " animation-duration: 0.7s;\n",
1156
  " animation-fill-mode: forwards;\n",
 
1170
  "}\n",
1171
  "\n",
1172
  "/* Leaving */\n",
1173
+ ".container_AC.hide {\n",
1174
  " animation-name: slideOutTopBlur;\n",
1175
  " animation-duration: 0.5s;\n",
1176
  " animation-fill-mode: forwards;\n",
 
1233
  "\n",
1234
  " with output:\n",
1235
  " for message in generate_messages(deleted_files_dict):\n",
1236
+ " message_widget = HTML(f'<p class=\"output_message_AC\">{message}</p>')\n",
1237
  " display(message_widget)\n",
1238
  "\n",
1239
  "\n",
 
1277
  "# UI Code\n",
1278
  "AutoCleaner_options = AutoCleaner_options = list(directories.keys())\n",
1279
  "instruction_label = widgets.HTML('''\n",
1280
+ "<span class=\"instruction_AC\">Используйте <span style=\"color: #B2B2B2;\">ctrl</span> или <span style=\"color: #B2B2B2;\">shift</span> для множественного выбора.</span>\n",
1281
  "''')\n",
1282
+ "auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class(\"custom-select-multiple_AC\")\n",
1283
+ "output = widgets.Output().add_class(\"output_AC\")\n",
1284
  "# ---\n",
1285
+ "execute_button = Button(description='Выполнить Очистку').add_class(\"button_execute_AC\").add_class(\"button_AC\")\n",
1286
  "execute_button.on_click(on_execute_button_press)\n",
1287
+ "clear_button = Button(description='Скрыть Виджет').add_class(\"button_clear_AC\").add_class(\"button_AC\")\n",
1288
  "clear_button.on_click(on_clear_button_press)\n",
1289
  "# ---\n",
1290
  "storage_info = widgets.HTML(f'''\n",
1291
+ "<div class=\"storage_info_AC\">Всего: {total:.2f} GB <span style=\"color: #555\">|</span> Используется: {used:.2f} GB <span style=\"color: #555\">|</span> Свободно: {free:.2f} GB</div>\n",
1292
  "''')\n",
1293
  "# ---\n",
1294
  "buttons = widgets.HBox([execute_button, clear_button])\n",
1295
+ "lower_information_panel = widgets.HBox([buttons, storage_info]).add_class(\"lower_information_panel_AC\")\n",
1296
  "\n",
1297
+ "container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class(\"container_AC\")\n",
1298
  "\n",
1299
  "display(container)"
1300
  ],
1301
  "metadata": {
1302
+ "id": "I22dFg7F2j3G",
1303
+ "colab": {
1304
+ "base_uri": "https://localhost:8080/",
1305
+ "height": 17,
1306
+ "referenced_widgets": [
1307
+ "3fe18eeca02d47f79ec7d4df79d5376f",
1308
+ "498f0eb487c44057bafb31c749ca2357",
1309
+ "88f61add9fa34832969b18f6426b3740",
1310
+ "5a6b81847e064bb295762602f40fdec1",
1311
+ "d6698d020370418a92315ddf3e4d4afc",
1312
+ "76caa0eaf2444c619458641f3b7f54e9",
1313
+ "78b1a8a0baa5470d970aa2297fcdf0bc",
1314
+ "505fccacb6b64da293aaca7bc2730aa7",
1315
+ "faab2c4f672d4e8891f282e93c7de3bd",
1316
+ "760cd50a5ec54f0fb203c2cbda8cd73a",
1317
+ "8da3e41b39894ad887b4620e9e4d1f2a",
1318
+ "ba3059acec1c48e79a0e59417afa8614",
1319
+ "1fa702de844149959e294436f71e7ab1",
1320
+ "f72e1b06881a468e808063b332791fb1",
1321
+ "29c64a7c86e942e2abda44c6313c905d",
1322
+ "53e5d97467594404bc0a7e2de9ed04a1",
1323
+ "58153b5b5c4d4cceacbebdc644c2aeb8",
1324
+ "478a8bb5d4424b3392cb724f28c91f08",
1325
+ "c0b8eed93e964b7b8a2368838d35d16d",
1326
+ "1ab673223b22490c8453559e329ac03a",
1327
+ "efbaedfac37547da8328ca95a5e10eeb",
1328
+ "d0c6ac1211b943af85aec33eb2e522c2",
1329
+ "d0f61995fbf24c34a151eef26ed23610",
1330
+ "b8e7260d500a454a96002d33e919af58",
1331
+ "88fbd55e845b47259b114e2ddaa4cf2e",
1332
+ "b1c15edf892042d2bd0f856ccad35761",
1333
+ "378ab655daf54fe6a38a5fe6f5e3153b",
1334
+ "84a1673702c141789a3a4d25d8af2ad4",
1335
+ "0742600d3539458a955cb563f832fa76"
1336
+ ]
1337
+ },
1338
+ "outputId": "2ef71a45-1d33-4299-9397-379d9f7c5e91"
1339
  },
1340
+ "execution_count": 5,
1341
+ "outputs": [
1342
+ {
1343
+ "output_type": "display_data",
1344
+ "data": {
1345
+ "text/plain": [
1346
+ "<IPython.core.display.HTML object>"
1347
+ ],
1348
+ "text/html": [
1349
+ "\n",
1350
+ "<style>\n",
1351
+ "/* General Styles */\n",
1352
+ "\n",
1353
+ "hr {\n",
1354
+ " border-color: grey;\n",
1355
+ " background-color: grey;\n",
1356
+ " opacity: 0.25;\n",
1357
+ "}\n",
1358
+ "\n",
1359
+ ".instruction_AC {\n",
1360
+ " font-family: cursive;\n",
1361
+ " font-size: 18px;\n",
1362
+ " color: grey;\n",
1363
+ " user-select: none;\n",
1364
+ " cursor: default;\n",
1365
+ "}\n",
1366
+ "\n",
1367
+ "\n",
1368
+ "/* Container style */\n",
1369
+ "\n",
1370
+ ".container_AC {\n",
1371
+ " position: relative;\n",
1372
+ " background-color: #232323;\n",
1373
+ " width: 800px;\n",
1374
+ " height: auto;\n",
1375
+ " padding: 15px;\n",
1376
+ " border-radius: 15px;\n",
1377
+ " box-shadow: 0 0 50px rgba(0, 0, 0, 0.3);\n",
1378
+ " margin-bottom: 5px;\n",
1379
+ " overflow: visible;\n",
1380
+ "}\n",
1381
+ "\n",
1382
+ ".container_AC::before {\n",
1383
+ " position: absolute;\n",
1384
+ " top: 5px;\n",
1385
+ " right: 10px;\n",
1386
+ " content: \"AutoCleanerV3.5\";\n",
1387
+ " font-weight: bold;\n",
1388
+ " font-size: 24px;\n",
1389
+ " color: rgba(0, 0, 0, 0.2);\n",
1390
+ "}\n",
1391
+ "\n",
1392
+ ".container_AC::after {\n",
1393
+ " position: absolute;\n",
1394
+ " top: 30px;\n",
1395
+ " right: 10px;\n",
1396
+ " content: \"ANXETY\";\n",
1397
+ " font-weight: bold;\n",
1398
+ " font-size: 18px;\n",
1399
+ " color: rgba(0, 0, 0, 0.2);\n",
1400
+ "}\n",
1401
+ "\n",
1402
+ ".custom-select-multiple_AC select {\n",
1403
+ " padding: 10px;\n",
1404
+ " font-family: cursive;\n",
1405
+ " border: 1px solid #262626;\n",
1406
+ " border-radius: 10px;\n",
1407
+ " color: white;\n",
1408
+ " background-color: #1c1c1c;\n",
1409
+ " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
1410
+ "}\n",
1411
+ "\n",
1412
+ ".output_AC {\n",
1413
+ " padding: 10px;\n",
1414
+ " height: auto;\n",
1415
+ " border: 1px solid #262626;\n",
1416
+ " border-radius: 10px;\n",
1417
+ " background-color: #1c1c1c;\n",
1418
+ " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
1419
+ " width: auto;\n",
1420
+ " box-sizing: border-box;\n",
1421
+ "}\n",
1422
+ "\n",
1423
+ ".output_message_AC {\n",
1424
+ " font-family: cursive;\n",
1425
+ " color: white !important;\n",
1426
+ " font-size: 14px;\n",
1427
+ " user-select: none;\n",
1428
+ " cursor: default\n",
1429
+ "}\n",
1430
+ "\n",
1431
+ "\n",
1432
+ ".storage_info_AC {\n",
1433
+ " padding: 5px 20px;\n",
1434
+ " height: auto;\n",
1435
+ " border: 1px solid #262626;\n",
1436
+ " border-radius: 10px;\n",
1437
+ " background-color: #1c1c1c;\n",
1438
+ " box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n",
1439
+ " width: auto;\n",
1440
+ " font-family: cursive;\n",
1441
+ " color: #B2B2B2 !important;\n",
1442
+ " font-size: 14px;\n",
1443
+ " user-select: none;\n",
1444
+ " cursor: default\n",
1445
+ "}\n",
1446
+ "\n",
1447
+ "\n",
1448
+ "/* Button and storage info layout */\n",
1449
+ ".lower_information_panel_AC {\n",
1450
+ " display: flex;\n",
1451
+ " align-items: center;\n",
1452
+ " justify-content: space-between;\n",
1453
+ "}\n",
1454
+ "\n",
1455
+ "\n",
1456
+ "/* Button style */\n",
1457
+ "\n",
1458
+ ".button_AC {\n",
1459
+ " width: auto;\n",
1460
+ " font-family: cursive;\n",
1461
+ " color: white !important;\n",
1462
+ " font-size: 14px;\n",
1463
+ " font-weight: bold;\n",
1464
+ " height: 35px;\n",
1465
+ " border-radius: 15px;\n",
1466
+ " background-image: radial-gradient(circle at top left, purple 10%, violet 90%);\n",
1467
+ " background-size: 200% 200%;\n",
1468
+ " background-position: left bottom;\n",
1469
+ " transition: background 0.5s ease-in-out, transform 0.3s ease;\n",
1470
+ "}\n",
1471
+ "\n",
1472
+ ".button_AC:hover {\n",
1473
+ " cursor: pointer;\n",
1474
+ " background-size: 200% 200%;\n",
1475
+ " background-position: right bottom;\n",
1476
+ " transform: translateY(1px);\n",
1477
+ "}\n",
1478
+ "\n",
1479
+ ".button_execute_AC:hover {\n",
1480
+ " background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);\n",
1481
+ "}\n",
1482
+ "\n",
1483
+ ".button_clear_AC:hover {\n",
1484
+ " background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);\n",
1485
+ "}\n",
1486
+ "\n",
1487
+ ".button_execute_AC:active,\n",
1488
+ ".button_clear_AC:active {\n",
1489
+ " filter: brightness(0.75);\n",
1490
+ "}\n",
1491
+ "\n",
1492
+ ".jupyter-widgets.lm-Widget:focus {\n",
1493
+ " outline: none;\n",
1494
+ "}\n",
1495
+ "\n",
1496
+ "\n",
1497
+ "/* Animation of elements */\n",
1498
+ "\n",
1499
+ "/* Emergence */\n",
1500
+ ".container_AC {\n",
1501
+ " animation-name: slideInTopBlur;\n",
1502
+ " animation-duration: 0.7s;\n",
1503
+ " animation-fill-mode: forwards;\n",
1504
+ "}\n",
1505
+ "\n",
1506
+ "@keyframes slideInTopBlur {\n",
1507
+ " 0% {\n",
1508
+ " transform: translate3d(0, 50%, 0) scale(0.85) rotate3d(1, 0, 0, -85deg);\n",
1509
+ " filter: blur(5px) grayscale(1) brightness(0.5);\n",
1510
+ " opacity: 0;\n",
1511
+ " }\n",
1512
+ " 100% {\n",
1513
+ " transform: translate3d(0, 0, 0) scale(1) rotate3d(1, 0, 0, 0deg);\n",
1514
+ " filter: blur(0) grayscale(0) brightness(1);\n",
1515
+ " opacity: 1;\n",
1516
+ " }\n",
1517
+ "}\n",
1518
+ "\n",
1519
+ "/* Leaving */\n",
1520
+ ".container_AC.hide {\n",
1521
+ " animation-name: slideOutTopBlur;\n",
1522
+ " animation-duration: 0.5s;\n",
1523
+ " animation-fill-mode: forwards;\n",
1524
+ "}\n",
1525
+ "\n",
1526
+ "@keyframes slideOutTopBlur {\n",
1527
+ " 0% {\n",
1528
+ " transform: translate3d(0, 0, 0) scale(1);\n",
1529
+ " filter: blur(0) grayscale(0) brightness(1);\n",
1530
+ " opacity: 1;\n",
1531
+ " }\n",
1532
+ " 100% {\n",
1533
+ " transform: translate3d(0, -100%, 0);\n",
1534
+ " filter: blur(5px) grayscale(1) brightness(0);\n",
1535
+ " opacity: 0;\n",
1536
+ " }\n",
1537
+ "}\n",
1538
+ "</style>\n"
1539
+ ]
1540
+ },
1541
+ "metadata": {}
1542
+ },
1543
+ {
1544
+ "output_type": "display_data",
1545
+ "data": {
1546
+ "text/plain": [
1547
+ "VBox(children=(HTML(value='\\n<span class=\"instruction_AC\">Используйте <span style=\"color: #B2B2B2;\">ctrl</span…"
1548
+ ],
1549
+ "application/vnd.jupyter.widget-view+json": {
1550
+ "version_major": 2,
1551
+ "version_minor": 0,
1552
+ "model_id": "3fe18eeca02d47f79ec7d4df79d5376f"
1553
+ }
1554
+ },
1555
+ "metadata": {}
1556
+ }
1557
+ ]
1558
  }
1559
  ]
1560
  }
files_cells/notebooks/ru/launch_ru.ipynb CHANGED
@@ -61,7 +61,7 @@
61
  "commandline_arguments = settings['commandline_arguments']\n",
62
  "\n",
63
  "# ======================== TUNNEL ========================\n",
64
- "if env != \"SAGEMAKER_INTERNAL_IMAGE_URI\":\n",
65
  " password = \"x1101\"\n",
66
  " def get_public_ip(version='ipv4'):\n",
67
  " try:\n",
@@ -88,7 +88,7 @@
88
  "!sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json\n",
89
  "\n",
90
  "\n",
91
- "if env != \"SAGEMAKER_INTERNAL_IMAGE_URI\":\n",
92
  " with tunnel:\n",
93
  " !#python -m http.server 1101\n",
94
  " %cd {webui_path}\n",
 
61
  "commandline_arguments = settings['commandline_arguments']\n",
62
  "\n",
63
  "# ======================== TUNNEL ========================\n",
64
+ "if env != \"SageMaker Studio Lab\":\n",
65
  " password = \"x1101\"\n",
66
  " def get_public_ip(version='ipv4'):\n",
67
  " try:\n",
 
88
  "!sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json\n",
89
  "\n",
90
  "\n",
91
+ "if env != \"SageMaker Studio Lab\":\n",
92
  " with tunnel:\n",
93
  " !#python -m http.server 1101\n",
94
  " %cd {webui_path}\n",
files_cells/python/en/auto-cleaner_en.py CHANGED
@@ -56,7 +56,7 @@ hr {
56
  opacity: 0.25;
57
  }
58
 
59
- .instruction {
60
  font-family: cursive;
61
  font-size: 18px;
62
  color: grey;
@@ -67,7 +67,7 @@ hr {
67
 
68
  /* Container style */
69
 
70
- .container {
71
  position: relative;
72
  background-color: #232323;
73
  width: 800px;
@@ -79,7 +79,7 @@ hr {
79
  overflow: visible;
80
  }
81
 
82
- .container::before {
83
  position: absolute;
84
  top: 5px;
85
  right: 10px;
@@ -89,7 +89,7 @@ hr {
89
  color: rgba(0, 0, 0, 0.2);
90
  }
91
 
92
- .container::after {
93
  position: absolute;
94
  top: 30px;
95
  right: 10px;
@@ -99,7 +99,7 @@ hr {
99
  color: rgba(0, 0, 0, 0.2);
100
  }
101
 
102
- .custom-select-multiple select {
103
  padding: 10px;
104
  font-family: cursive;
105
  border: 1px solid #262626;
@@ -109,7 +109,7 @@ hr {
109
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
110
  }
111
 
112
- .output {
113
  padding: 10px;
114
  height: auto;
115
  border: 1px solid #262626;
@@ -120,7 +120,7 @@ hr {
120
  box-sizing: border-box;
121
  }
122
 
123
- .output_message {
124
  font-family: cursive;
125
  color: white !important;
126
  font-size: 14px;
@@ -129,7 +129,7 @@ hr {
129
  }
130
 
131
 
132
- .storage_info {
133
  padding: 5px 20px;
134
  height: auto;
135
  border: 1px solid #262626;
@@ -146,7 +146,7 @@ hr {
146
 
147
 
148
  /* Button and storage info layout */
149
- .lower_information_panel {
150
  display: flex;
151
  align-items: center;
152
  justify-content: space-between;
@@ -155,7 +155,7 @@ hr {
155
 
156
  /* Button style */
157
 
158
- .button {
159
  width: auto;
160
  font-family: cursive;
161
  color: white !important;
@@ -169,23 +169,23 @@ hr {
169
  transition: background 0.5s ease-in-out, transform 0.3s ease;
170
  }
171
 
172
- .button:hover {
173
  cursor: pointer;
174
  background-size: 200% 200%;
175
  background-position: right bottom;
176
  transform: translateY(1px);
177
  }
178
 
179
- .button_execute:hover {
180
  background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);
181
  }
182
 
183
- .button_clear:hover {
184
  background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);
185
  }
186
 
187
- .button_execute:active,
188
- .button_clear:active {
189
  filter: brightness(0.75);
190
  }
191
 
@@ -197,7 +197,7 @@ hr {
197
  /* Animation of elements */
198
 
199
  /* Emergence */
200
- .container {
201
  animation-name: slideInTopBlur;
202
  animation-duration: 0.7s;
203
  animation-fill-mode: forwards;
@@ -217,7 +217,7 @@ hr {
217
  }
218
 
219
  /* Leaving */
220
- .container.hide {
221
  animation-name: slideOutTopBlur;
222
  animation-duration: 0.5s;
223
  animation-fill-mode: forwards;
@@ -280,7 +280,7 @@ def on_execute_button_press(button):
280
 
281
  with output:
282
  for message in generate_messages(deleted_files_dict):
283
- message_widget = HTML(f'<p class="output_message">{message}</p>')
284
  display(message_widget)
285
 
286
 
@@ -324,24 +324,24 @@ free = disk_space.free / (1024 ** 3)
324
  # UI Code
325
  AutoCleaner_options = AutoCleaner_options = list(directories.keys())
326
  instruction_label = widgets.HTML('''
327
- <span class="instruction">Use <span style="color: #B2B2B2;">ctrl</span> or <span style="color: #B2B2B2;">shift</span> for multiple selections.</span>
328
  ''')
329
- auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class("custom-select-multiple")
330
- output = widgets.Output().add_class("output")
331
  # ---
332
- execute_button = Button(description='Execute Cleaning').add_class("button_execute").add_class("button")
333
  execute_button.on_click(on_execute_button_press)
334
- clear_button = Button(description='Hide Widget').add_class("button_clear").add_class("button")
335
  clear_button.on_click(on_clear_button_press)
336
  # ---
337
  storage_info = widgets.HTML(f'''
338
- <div class="storage_info">Total storage: {total:.2f} GB <span style="color: #555">|</span> Used: {used:.2f} GB <span style="color: #555">|</span> Free: {free:.2f} GB</div>
339
  ''')
340
  # ---
341
  buttons = widgets.HBox([execute_button, clear_button])
342
- lower_information_panel = widgets.HBox([buttons, storage_info]).add_class("lower_information_panel")
343
 
344
- container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class("container")
345
 
346
  display(container)
347
 
 
56
  opacity: 0.25;
57
  }
58
 
59
+ .instruction_AC {
60
  font-family: cursive;
61
  font-size: 18px;
62
  color: grey;
 
67
 
68
  /* Container style */
69
 
70
+ .container_AC {
71
  position: relative;
72
  background-color: #232323;
73
  width: 800px;
 
79
  overflow: visible;
80
  }
81
 
82
+ .container_AC::before {
83
  position: absolute;
84
  top: 5px;
85
  right: 10px;
 
89
  color: rgba(0, 0, 0, 0.2);
90
  }
91
 
92
+ .container_AC::after {
93
  position: absolute;
94
  top: 30px;
95
  right: 10px;
 
99
  color: rgba(0, 0, 0, 0.2);
100
  }
101
 
102
+ .custom-select-multiple_AC select {
103
  padding: 10px;
104
  font-family: cursive;
105
  border: 1px solid #262626;
 
109
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
110
  }
111
 
112
+ .output_AC {
113
  padding: 10px;
114
  height: auto;
115
  border: 1px solid #262626;
 
120
  box-sizing: border-box;
121
  }
122
 
123
+ .output_message_AC {
124
  font-family: cursive;
125
  color: white !important;
126
  font-size: 14px;
 
129
  }
130
 
131
 
132
+ .storage_info_AC {
133
  padding: 5px 20px;
134
  height: auto;
135
  border: 1px solid #262626;
 
146
 
147
 
148
  /* Button and storage info layout */
149
+ .lower_information_panel_AC {
150
  display: flex;
151
  align-items: center;
152
  justify-content: space-between;
 
155
 
156
  /* Button style */
157
 
158
+ .button_AC {
159
  width: auto;
160
  font-family: cursive;
161
  color: white !important;
 
169
  transition: background 0.5s ease-in-out, transform 0.3s ease;
170
  }
171
 
172
+ .button_AC:hover {
173
  cursor: pointer;
174
  background-size: 200% 200%;
175
  background-position: right bottom;
176
  transform: translateY(1px);
177
  }
178
 
179
+ .button_execute_AC:hover {
180
  background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);
181
  }
182
 
183
+ .button_clear_AC:hover {
184
  background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);
185
  }
186
 
187
+ .button_execute_AC:active,
188
+ .button_clear_AC:active {
189
  filter: brightness(0.75);
190
  }
191
 
 
197
  /* Animation of elements */
198
 
199
  /* Emergence */
200
+ .container_AC {
201
  animation-name: slideInTopBlur;
202
  animation-duration: 0.7s;
203
  animation-fill-mode: forwards;
 
217
  }
218
 
219
  /* Leaving */
220
+ .container_AC.hide {
221
  animation-name: slideOutTopBlur;
222
  animation-duration: 0.5s;
223
  animation-fill-mode: forwards;
 
280
 
281
  with output:
282
  for message in generate_messages(deleted_files_dict):
283
+ message_widget = HTML(f'<p class="output_message_AC">{message}</p>')
284
  display(message_widget)
285
 
286
 
 
324
  # UI Code
325
  AutoCleaner_options = AutoCleaner_options = list(directories.keys())
326
  instruction_label = widgets.HTML('''
327
+ <span class="instruction_AC">Use <span style="color: #B2B2B2;">ctrl</span> or <span style="color: #B2B2B2;">shift</span> for multiple selections.</span>
328
  ''')
329
+ auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class("custom-select-multiple_AC")
330
+ output = widgets.Output().add_class("output_AC")
331
  # ---
332
+ execute_button = Button(description='Execute Cleaning').add_class("button_execute_AC").add_class("button_AC")
333
  execute_button.on_click(on_execute_button_press)
334
+ clear_button = Button(description='Hide Widget').add_class("button_clear_AC").add_class("button_AC")
335
  clear_button.on_click(on_clear_button_press)
336
  # ---
337
  storage_info = widgets.HTML(f'''
338
+ <div class="storage_info_AC">Total storage: {total:.2f} GB <span style="color: #555">|</span> Used: {used:.2f} GB <span style="color: #555">|</span> Free: {free:.2f} GB</div>
339
  ''')
340
  # ---
341
  buttons = widgets.HBox([execute_button, clear_button])
342
+ lower_information_panel = widgets.HBox([buttons, storage_info]).add_class("lower_information_panel_AC")
343
 
344
+ container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class("container_AC")
345
 
346
  display(container)
347
 
files_cells/python/en/launch_en.py CHANGED
@@ -43,7 +43,7 @@ ngrok_token = settings['ngrok_token']
43
  commandline_arguments = settings['commandline_arguments']
44
 
45
  # ======================== TUNNEL ========================
46
- if env != "SAGEMAKER_INTERNAL_IMAGE_URI":
47
  password = "x1101"
48
  def get_public_ip(version='ipv4'):
49
  try:
@@ -70,7 +70,7 @@ if env != "SAGEMAKER_INTERNAL_IMAGE_URI":
70
  get_ipython().system("sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json")
71
 
72
 
73
- if env != "SAGEMAKER_INTERNAL_IMAGE_URI":
74
  with tunnel:
75
  get_ipython().system('#python -m http.server 1101')
76
  get_ipython().run_line_magic('cd', '{webui_path}')
 
43
  commandline_arguments = settings['commandline_arguments']
44
 
45
  # ======================== TUNNEL ========================
46
+ if env != "SageMaker Studio Lab":
47
  password = "x1101"
48
  def get_public_ip(version='ipv4'):
49
  try:
 
70
  get_ipython().system("sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json")
71
 
72
 
73
+ if env != "SageMaker Studio Lab":
74
  with tunnel:
75
  get_ipython().system('#python -m http.server 1101')
76
  get_ipython().run_line_magic('cd', '{webui_path}')
files_cells/python/ru/auto-cleaner_ru.py CHANGED
@@ -1,7 +1,7 @@
1
  #!/usr/bin/env python
2
  # coding: utf-8
3
 
4
- # In[ ]:
5
 
6
 
7
  # ~ AutoCleaner V3.5 ~ | by ANXETY
@@ -56,7 +56,7 @@ hr {
56
  opacity: 0.25;
57
  }
58
 
59
- .instruction {
60
  font-family: cursive;
61
  font-size: 18px;
62
  color: grey;
@@ -67,7 +67,7 @@ hr {
67
 
68
  /* Container style */
69
 
70
- .container {
71
  position: relative;
72
  background-color: #232323;
73
  width: 800px;
@@ -79,7 +79,7 @@ hr {
79
  overflow: visible;
80
  }
81
 
82
- .container::before {
83
  position: absolute;
84
  top: 5px;
85
  right: 10px;
@@ -89,7 +89,7 @@ hr {
89
  color: rgba(0, 0, 0, 0.2);
90
  }
91
 
92
- .container::after {
93
  position: absolute;
94
  top: 30px;
95
  right: 10px;
@@ -99,7 +99,7 @@ hr {
99
  color: rgba(0, 0, 0, 0.2);
100
  }
101
 
102
- .custom-select-multiple select {
103
  padding: 10px;
104
  font-family: cursive;
105
  border: 1px solid #262626;
@@ -109,7 +109,7 @@ hr {
109
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
110
  }
111
 
112
- .output {
113
  padding: 10px;
114
  height: auto;
115
  border: 1px solid #262626;
@@ -120,7 +120,7 @@ hr {
120
  box-sizing: border-box;
121
  }
122
 
123
- .output_message {
124
  font-family: cursive;
125
  color: white !important;
126
  font-size: 14px;
@@ -129,7 +129,7 @@ hr {
129
  }
130
 
131
 
132
- .storage_info {
133
  padding: 5px 20px;
134
  height: auto;
135
  border: 1px solid #262626;
@@ -146,7 +146,7 @@ hr {
146
 
147
 
148
  /* Button and storage info layout */
149
- .lower_information_panel {
150
  display: flex;
151
  align-items: center;
152
  justify-content: space-between;
@@ -155,7 +155,7 @@ hr {
155
 
156
  /* Button style */
157
 
158
- .button {
159
  width: auto;
160
  font-family: cursive;
161
  color: white !important;
@@ -169,23 +169,23 @@ hr {
169
  transition: background 0.5s ease-in-out, transform 0.3s ease;
170
  }
171
 
172
- .button:hover {
173
  cursor: pointer;
174
  background-size: 200% 200%;
175
  background-position: right bottom;
176
  transform: translateY(1px);
177
  }
178
 
179
- .button_execute:hover {
180
  background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);
181
  }
182
 
183
- .button_clear:hover {
184
  background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);
185
  }
186
 
187
- .button_execute:active,
188
- .button_clear:active {
189
  filter: brightness(0.75);
190
  }
191
 
@@ -197,7 +197,7 @@ hr {
197
  /* Animation of elements */
198
 
199
  /* Emergence */
200
- .container {
201
  animation-name: slideInTopBlur;
202
  animation-duration: 0.7s;
203
  animation-fill-mode: forwards;
@@ -217,7 +217,7 @@ hr {
217
  }
218
 
219
  /* Leaving */
220
- .container.hide {
221
  animation-name: slideOutTopBlur;
222
  animation-duration: 0.5s;
223
  animation-fill-mode: forwards;
@@ -280,7 +280,7 @@ def on_execute_button_press(button):
280
 
281
  with output:
282
  for message in generate_messages(deleted_files_dict):
283
- message_widget = HTML(f'<p class="output_message">{message}</p>')
284
  display(message_widget)
285
 
286
 
@@ -324,24 +324,24 @@ free = disk_space.free / (1024 ** 3)
324
  # UI Code
325
  AutoCleaner_options = AutoCleaner_options = list(directories.keys())
326
  instruction_label = widgets.HTML('''
327
- <span class="instruction">Используйте <span style="color: #B2B2B2;">ctrl</span> или <span style="color: #B2B2B2;">shift</span> для множественного выбора.</span>
328
  ''')
329
- auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class("custom-select-multiple")
330
- output = widgets.Output().add_class("output")
331
  # ---
332
- execute_button = Button(description='Выполнить Очистку').add_class("button_execute").add_class("button")
333
  execute_button.on_click(on_execute_button_press)
334
- clear_button = Button(description='Скрыть Виджет').add_class("button_clear").add_class("button")
335
  clear_button.on_click(on_clear_button_press)
336
  # ---
337
  storage_info = widgets.HTML(f'''
338
- <div class="storage_info">Всего: {total:.2f} GB <span style="color: #555">|</span> Используется: {used:.2f} GB <span style="color: #555">|</span> Свободно: {free:.2f} GB</div>
339
  ''')
340
  # ---
341
  buttons = widgets.HBox([execute_button, clear_button])
342
- lower_information_panel = widgets.HBox([buttons, storage_info]).add_class("lower_information_panel")
343
 
344
- container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class("container")
345
 
346
  display(container)
347
 
 
1
  #!/usr/bin/env python
2
  # coding: utf-8
3
 
4
+ # In[5]:
5
 
6
 
7
  # ~ AutoCleaner V3.5 ~ | by ANXETY
 
56
  opacity: 0.25;
57
  }
58
 
59
+ .instruction_AC {
60
  font-family: cursive;
61
  font-size: 18px;
62
  color: grey;
 
67
 
68
  /* Container style */
69
 
70
+ .container_AC {
71
  position: relative;
72
  background-color: #232323;
73
  width: 800px;
 
79
  overflow: visible;
80
  }
81
 
82
+ .container_AC::before {
83
  position: absolute;
84
  top: 5px;
85
  right: 10px;
 
89
  color: rgba(0, 0, 0, 0.2);
90
  }
91
 
92
+ .container_AC::after {
93
  position: absolute;
94
  top: 30px;
95
  right: 10px;
 
99
  color: rgba(0, 0, 0, 0.2);
100
  }
101
 
102
+ .custom-select-multiple_AC select {
103
  padding: 10px;
104
  font-family: cursive;
105
  border: 1px solid #262626;
 
109
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
110
  }
111
 
112
+ .output_AC {
113
  padding: 10px;
114
  height: auto;
115
  border: 1px solid #262626;
 
120
  box-sizing: border-box;
121
  }
122
 
123
+ .output_message_AC {
124
  font-family: cursive;
125
  color: white !important;
126
  font-size: 14px;
 
129
  }
130
 
131
 
132
+ .storage_info_AC {
133
  padding: 5px 20px;
134
  height: auto;
135
  border: 1px solid #262626;
 
146
 
147
 
148
  /* Button and storage info layout */
149
+ .lower_information_panel_AC {
150
  display: flex;
151
  align-items: center;
152
  justify-content: space-between;
 
155
 
156
  /* Button style */
157
 
158
+ .button_AC {
159
  width: auto;
160
  font-family: cursive;
161
  color: white !important;
 
169
  transition: background 0.5s ease-in-out, transform 0.3s ease;
170
  }
171
 
172
+ .button_AC:hover {
173
  cursor: pointer;
174
  background-size: 200% 200%;
175
  background-position: right bottom;
176
  transform: translateY(1px);
177
  }
178
 
179
+ .button_execute_AC:hover {
180
  background-image: radial-gradient(circle at top left, purple 10%, #93ac47 90%);
181
  }
182
 
183
+ .button_clear_AC:hover {
184
  background-image: radial-gradient(circle at top left, purple 10%, #fc3468 90%);
185
  }
186
 
187
+ .button_execute_AC:active,
188
+ .button_clear_AC:active {
189
  filter: brightness(0.75);
190
  }
191
 
 
197
  /* Animation of elements */
198
 
199
  /* Emergence */
200
+ .container_AC {
201
  animation-name: slideInTopBlur;
202
  animation-duration: 0.7s;
203
  animation-fill-mode: forwards;
 
217
  }
218
 
219
  /* Leaving */
220
+ .container_AC.hide {
221
  animation-name: slideOutTopBlur;
222
  animation-duration: 0.5s;
223
  animation-fill-mode: forwards;
 
280
 
281
  with output:
282
  for message in generate_messages(deleted_files_dict):
283
+ message_widget = HTML(f'<p class="output_message_AC">{message}</p>')
284
  display(message_widget)
285
 
286
 
 
324
  # UI Code
325
  AutoCleaner_options = AutoCleaner_options = list(directories.keys())
326
  instruction_label = widgets.HTML('''
327
+ <span class="instruction_AC">Используйте <span style="color: #B2B2B2;">ctrl</span> или <span style="color: #B2B2B2;">shift</span> для множественного выбора.</span>
328
  ''')
329
+ auto_cleaner_widget = widgets.SelectMultiple(options=AutoCleaner_options, layout=widgets.Layout(width='100%')).add_class("custom-select-multiple_AC")
330
+ output = widgets.Output().add_class("output_AC")
331
  # ---
332
+ execute_button = Button(description='Выполнить Очистку').add_class("button_execute_AC").add_class("button_AC")
333
  execute_button.on_click(on_execute_button_press)
334
+ clear_button = Button(description='Скрыть Виджет').add_class("button_clear_AC").add_class("button_AC")
335
  clear_button.on_click(on_clear_button_press)
336
  # ---
337
  storage_info = widgets.HTML(f'''
338
+ <div class="storage_info_AC">Всего: {total:.2f} GB <span style="color: #555">|</span> Используется: {used:.2f} GB <span style="color: #555">|</span> Свободно: {free:.2f} GB</div>
339
  ''')
340
  # ---
341
  buttons = widgets.HBox([execute_button, clear_button])
342
+ lower_information_panel = widgets.HBox([buttons, storage_info]).add_class("lower_information_panel_AC")
343
 
344
+ container = VBox([instruction_label, widgets.HTML('<hr>'), auto_cleaner_widget, output, widgets.HTML('<hr>'), lower_information_panel]).add_class("container_AC")
345
 
346
  display(container)
347
 
files_cells/python/ru/launch_ru.py CHANGED
@@ -43,7 +43,7 @@ ngrok_token = settings['ngrok_token']
43
  commandline_arguments = settings['commandline_arguments']
44
 
45
  # ======================== TUNNEL ========================
46
- if env != "SAGEMAKER_INTERNAL_IMAGE_URI":
47
  password = "x1101"
48
  def get_public_ip(version='ipv4'):
49
  try:
@@ -70,7 +70,7 @@ if env != "SAGEMAKER_INTERNAL_IMAGE_URI":
70
  get_ipython().system("sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json")
71
 
72
 
73
- if env != "SAGEMAKER_INTERNAL_IMAGE_URI":
74
  with tunnel:
75
  get_ipython().system('#python -m http.server 1101')
76
  get_ipython().run_line_magic('cd', '{webui_path}')
 
43
  commandline_arguments = settings['commandline_arguments']
44
 
45
  # ======================== TUNNEL ========================
46
+ if env != "SageMaker Studio Lab":
47
  password = "x1101"
48
  def get_public_ip(version='ipv4'):
49
  try:
 
70
  get_ipython().system("sed -i 's#\\/home\\/studio-lab-user\\/content#{root_path}#g' {webui_path}/config.json")
71
 
72
 
73
+ if env != "SageMaker Studio Lab":
74
  with tunnel:
75
  get_ipython().system('#python -m http.server 1101')
76
  get_ipython().run_line_magic('cd', '{webui_path}')