@elice/material-runbox 1.260908.0 → 1.260910.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/_virtual/_rollupPluginBabelHelpers.js +16 -0
- package/cjs/assets/runbox-loading.svg.js +7 -0
- package/cjs/components/material-runbox/MaterialRunbox.js +16 -11
- package/cjs/components/material-runbox/MaterialRunboxContent.d.ts +2 -0
- package/cjs/components/material-runbox/MaterialRunboxContent.js +93 -65
- package/cjs/components/material-runbox/MaterialRunboxHeader.js +55 -69
- package/cjs/components/material-runbox/actions/MaterialRunboxActionDisconnect.d.ts +1 -4
- package/cjs/components/material-runbox/actions/MaterialRunboxActionDisconnect.js +29 -2
- package/cjs/components/material-runbox/actions/MaterialRunboxActionDisconnectMenuItem.d.ts +3 -0
- package/cjs/components/material-runbox/actions/MaterialRunboxActionDisconnectMenuItem.js +90 -0
- package/cjs/components/material-runbox/actions/MaterialRunboxActionMenu.d.ts +3 -1
- package/cjs/components/material-runbox/actions/MaterialRunboxActionMenu.js +26 -7
- package/cjs/components/material-runbox/actions/MaterialRunboxActionRestart.d.ts +1 -2
- package/cjs/components/material-runbox/actions/MaterialRunboxActionRestart.js +9 -26
- package/cjs/components/material-runbox/contexts/MaterialRunboxControlContext.d.ts +14 -0
- package/cjs/components/material-runbox/contexts/MaterialRunboxControlContext.js +56 -0
- package/cjs/components/material-runbox/contexts/index.d.ts +2 -0
- package/cjs/components/material-runbox/contexts/index.js +4 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxDiskUsageAlert.d.ts +13 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxDiskUsageAlert.js +71 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxDiskUsageDialog.d.ts +10 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxDiskUsageDialog.js +98 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxEnvResetButton.d.ts +10 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxEnvResetButton.js +151 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxEnvResetDialog.d.ts +13 -0
- package/cjs/components/material-runbox/disk/MaterialRunboxEnvResetDialog.js +98 -0
- package/cjs/components/material-runbox/disk/index.d.ts +8 -1
- package/cjs/components/material-runbox/disk/index.js +8 -2
- package/cjs/components/material-runbox/hooks/index.d.ts +3 -0
- package/cjs/components/material-runbox/hooks/index.js +14 -0
- package/cjs/components/material-runbox/hooks/useRunboxControl.d.ts +4 -3
- package/cjs/components/material-runbox/hooks/useRunboxControl.js +43 -14
- package/cjs/components/material-runbox/hooks/useRunboxDiskUsage.d.ts +16 -0
- package/cjs/components/material-runbox/hooks/useRunboxDiskUsage.js +50 -0
- package/cjs/components/material-runbox/hooks/useRunboxNetworkStatus.d.ts +14 -0
- package/cjs/components/material-runbox/hooks/useRunboxNetworkStatus.js +65 -0
- package/cjs/components/material-runbox/hooks/useRunboxSessionEndWarning.d.ts +18 -0
- package/cjs/components/material-runbox/hooks/useRunboxSessionEndWarning.js +67 -0
- package/cjs/components/material-runbox/locales/en.json.js +1 -1
- package/cjs/components/material-runbox/locales/ja.json.js +1 -1
- package/cjs/components/material-runbox/locales/ko.json.js +1 -1
- package/cjs/components/material-runbox/locales/th.json.js +1 -1
- package/cjs/components/material-runbox/runtime/Runtime.js +21 -18
- package/cjs/components/material-runbox/runtime/RuntimeChangeMaterialDialog.d.ts +0 -1
- package/cjs/components/material-runbox/runtime/RuntimeChangeMaterialDialog.js +9 -3
- package/cjs/components/material-runbox/runtime/RuntimeOverlayAssigned.d.ts +5 -3
- package/cjs/components/material-runbox/runtime/RuntimeOverlayAssigned.js +6 -54
- package/cjs/components/material-runbox/runtime/RuntimeOverlayConflicted.d.ts +0 -1
- package/cjs/components/material-runbox/runtime/RuntimeOverlayConflicted.js +68 -64
- package/cjs/components/material-runbox/runtime/RuntimeOverlayLoading.d.ts +9 -0
- package/cjs/components/material-runbox/runtime/RuntimeOverlayLoading.js +283 -0
- package/cjs/components/material-runbox/runtime/RuntimeOverlayQueued.d.ts +5 -3
- package/cjs/components/material-runbox/runtime/RuntimeOverlayQueued.js +6 -64
- package/cjs/components/material-runbox/runtime/RuntimeOverlayTerminated.d.ts +4 -1
- package/cjs/components/material-runbox/runtime/RuntimeOverlayTerminated.js +92 -70
- package/cjs/components/material-runbox/runtime/runtime-loading-tips.d.ts +7 -0
- package/cjs/components/material-runbox/runtime/runtime-loading-tips.js +148 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusButton.d.ts +15 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusButton.js +117 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusConnectionItem.d.ts +12 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusConnectionItem.js +35 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusPopover.d.ts +14 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusPopover.js +161 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusResourceItem.d.ts +11 -0
- package/cjs/components/material-runbox/status/MaterialRunboxStatusResourceItem.js +41 -0
- package/cjs/components/material-runbox/status/index.d.ts +4 -0
- package/cjs/components/material-runbox/status/index.js +9 -0
- package/cjs/components/material-runbox/theme.d.ts +2 -0
- package/cjs/components/material-runbox/theme.js +15 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaAlmostEndDialog.d.ts +11 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaAlmostEndDialog.js +125 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaAmount.d.ts +13 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaAmount.js +56 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaPerSessionAlmostEndDialog.d.ts +12 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaPerSessionAlmostEndDialog.js +126 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaTimePart.d.ts +15 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxQuotaTimePart.js +50 -0
- package/cjs/components/material-runbox/timer/MaterialRunboxTimer.d.ts +6 -1
- package/cjs/components/material-runbox/timer/MaterialRunboxTimer.js +26 -18
- package/cjs/components/material-runbox/timer/MaterialRunboxTimerDetailPopover.js +21 -81
- package/cjs/components/shared/hooks/index.d.ts +1 -0
- package/cjs/components/shared/hooks/index.js +7 -0
- package/cjs/components/shared/hooks/useBreakpoint.d.ts +4 -0
- package/cjs/components/shared/hooks/useBreakpoint.js +12 -0
- package/es/_virtual/_rollupPluginBabelHelpers.js +13 -1
- package/es/assets/runbox-loading.svg.js +3 -0
- package/es/components/material-runbox/MaterialRunbox.js +16 -11
- package/es/components/material-runbox/MaterialRunboxContent.d.ts +2 -0
- package/es/components/material-runbox/MaterialRunboxContent.js +94 -66
- package/es/components/material-runbox/MaterialRunboxHeader.js +56 -70
- package/es/components/material-runbox/actions/MaterialRunboxActionDisconnect.d.ts +1 -4
- package/es/components/material-runbox/actions/MaterialRunboxActionDisconnect.js +30 -3
- package/es/components/material-runbox/actions/MaterialRunboxActionDisconnectMenuItem.d.ts +3 -0
- package/es/components/material-runbox/actions/MaterialRunboxActionDisconnectMenuItem.js +82 -0
- package/es/components/material-runbox/actions/MaterialRunboxActionMenu.d.ts +3 -1
- package/es/components/material-runbox/actions/MaterialRunboxActionMenu.js +28 -9
- package/es/components/material-runbox/actions/MaterialRunboxActionRestart.d.ts +1 -2
- package/es/components/material-runbox/actions/MaterialRunboxActionRestart.js +9 -26
- package/es/components/material-runbox/contexts/MaterialRunboxControlContext.d.ts +14 -0
- package/es/components/material-runbox/contexts/MaterialRunboxControlContext.js +46 -0
- package/es/components/material-runbox/contexts/index.d.ts +2 -0
- package/es/components/material-runbox/contexts/index.js +1 -0
- package/es/components/material-runbox/disk/MaterialRunboxDiskUsageAlert.d.ts +13 -0
- package/es/components/material-runbox/disk/MaterialRunboxDiskUsageAlert.js +67 -0
- package/es/components/material-runbox/disk/MaterialRunboxDiskUsageDialog.d.ts +10 -0
- package/es/components/material-runbox/disk/MaterialRunboxDiskUsageDialog.js +94 -0
- package/es/components/material-runbox/disk/MaterialRunboxEnvResetButton.d.ts +10 -0
- package/es/components/material-runbox/disk/MaterialRunboxEnvResetButton.js +143 -0
- package/es/components/material-runbox/disk/MaterialRunboxEnvResetDialog.d.ts +13 -0
- package/es/components/material-runbox/disk/MaterialRunboxEnvResetDialog.js +90 -0
- package/es/components/material-runbox/disk/index.d.ts +8 -1
- package/es/components/material-runbox/disk/index.js +4 -1
- package/es/components/material-runbox/hooks/index.d.ts +3 -0
- package/es/components/material-runbox/hooks/index.js +3 -0
- package/es/components/material-runbox/hooks/useRunboxControl.d.ts +4 -3
- package/es/components/material-runbox/hooks/useRunboxControl.js +43 -14
- package/es/components/material-runbox/hooks/useRunboxDiskUsage.d.ts +16 -0
- package/es/components/material-runbox/hooks/useRunboxDiskUsage.js +42 -0
- package/es/components/material-runbox/hooks/useRunboxNetworkStatus.d.ts +14 -0
- package/es/components/material-runbox/hooks/useRunboxNetworkStatus.js +59 -0
- package/es/components/material-runbox/hooks/useRunboxSessionEndWarning.d.ts +18 -0
- package/es/components/material-runbox/hooks/useRunboxSessionEndWarning.js +63 -0
- package/es/components/material-runbox/locales/en.json.js +1 -1
- package/es/components/material-runbox/locales/ja.json.js +1 -1
- package/es/components/material-runbox/locales/ko.json.js +1 -1
- package/es/components/material-runbox/locales/th.json.js +1 -1
- package/es/components/material-runbox/runtime/Runtime.js +22 -19
- package/es/components/material-runbox/runtime/RuntimeChangeMaterialDialog.d.ts +0 -1
- package/es/components/material-runbox/runtime/RuntimeChangeMaterialDialog.js +9 -3
- package/es/components/material-runbox/runtime/RuntimeOverlayAssigned.d.ts +5 -3
- package/es/components/material-runbox/runtime/RuntimeOverlayAssigned.js +7 -55
- package/es/components/material-runbox/runtime/RuntimeOverlayConflicted.d.ts +0 -1
- package/es/components/material-runbox/runtime/RuntimeOverlayConflicted.js +69 -65
- package/es/components/material-runbox/runtime/RuntimeOverlayLoading.d.ts +9 -0
- package/es/components/material-runbox/runtime/RuntimeOverlayLoading.js +275 -0
- package/es/components/material-runbox/runtime/RuntimeOverlayQueued.d.ts +5 -3
- package/es/components/material-runbox/runtime/RuntimeOverlayQueued.js +7 -65
- package/es/components/material-runbox/runtime/RuntimeOverlayTerminated.d.ts +4 -1
- package/es/components/material-runbox/runtime/RuntimeOverlayTerminated.js +82 -60
- package/es/components/material-runbox/runtime/runtime-loading-tips.d.ts +7 -0
- package/es/components/material-runbox/runtime/runtime-loading-tips.js +146 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusButton.d.ts +15 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusButton.js +109 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusConnectionItem.d.ts +12 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusConnectionItem.js +31 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusPopover.d.ts +14 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusPopover.js +157 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusResourceItem.d.ts +11 -0
- package/es/components/material-runbox/status/MaterialRunboxStatusResourceItem.js +37 -0
- package/es/components/material-runbox/status/index.d.ts +4 -0
- package/es/components/material-runbox/status/index.js +2 -0
- package/es/components/material-runbox/theme.d.ts +2 -0
- package/es/components/material-runbox/theme.js +12 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaAlmostEndDialog.d.ts +11 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaAlmostEndDialog.js +121 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaAmount.d.ts +13 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaAmount.js +52 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaPerSessionAlmostEndDialog.d.ts +12 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaPerSessionAlmostEndDialog.js +122 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaTimePart.d.ts +15 -0
- package/es/components/material-runbox/timer/MaterialRunboxQuotaTimePart.js +46 -0
- package/es/components/material-runbox/timer/MaterialRunboxTimer.d.ts +6 -1
- package/es/components/material-runbox/timer/MaterialRunboxTimer.js +25 -17
- package/es/components/material-runbox/timer/MaterialRunboxTimerDetailPopover.js +18 -78
- package/es/components/shared/hooks/index.d.ts +1 -0
- package/es/components/shared/hooks/index.js +1 -0
- package/es/components/shared/hooks/useBreakpoint.d.ts +4 -0
- package/es/components/shared/hooks/useBreakpoint.js +10 -0
- package/package.json +7 -7
- package/cjs/assets/queue.gif.js +0 -7
- package/cjs/assets/runbox_logo.png.js +0 -7
- package/cjs/components/material-runbox/MaterialRunboxFooter.d.ts +0 -4
- package/cjs/components/material-runbox/MaterialRunboxFooter.js +0 -64
- package/cjs/components/material-runbox/disk/MaterialRunboxDiskAlmostFullSnackbar.d.ts +0 -5
- package/cjs/components/material-runbox/disk/MaterialRunboxDiskAlmostFullSnackbar.js +0 -98
- package/cjs/components/material-runbox/timer/MaterialRunboxAlmostEndSnackbars.d.ts +0 -6
- package/cjs/components/material-runbox/timer/MaterialRunboxAlmostEndSnackbars.js +0 -90
- package/es/assets/queue.gif.js +0 -3
- package/es/assets/runbox_logo.png.js +0 -3
- package/es/components/material-runbox/MaterialRunboxFooter.d.ts +0 -4
- package/es/components/material-runbox/MaterialRunboxFooter.js +0 -56
- package/es/components/material-runbox/disk/MaterialRunboxDiskAlmostFullSnackbar.d.ts +0 -5
- package/es/components/material-runbox/disk/MaterialRunboxDiskAlmostFullSnackbar.js +0 -94
- package/es/components/material-runbox/timer/MaterialRunboxAlmostEndSnackbars.d.ts +0 -6
- package/es/components/material-runbox/timer/MaterialRunboxAlmostEndSnackbars.js +0 -86
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { toConsumableArray as _toConsumableArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { faListOl, faSquareTerminal, faRotate, faFloppyDisk, faTriangleExclamation, faSitemap, faTableCells, faDiagramProject, faWindowRestore, faDisplayArrowDown, faHourglassHalf, faCopy, faArrowsUpDownLeftRight, faHardDrive, faClock } from '@fortawesome/pro-regular-svg-icons';
|
|
3
|
+
|
|
4
|
+
//
|
|
5
|
+
//
|
|
6
|
+
//
|
|
7
|
+
/** Shown first, always. Not knowing these two is what costs a learner work. */
|
|
8
|
+
var INTRO_TIPS = [{
|
|
9
|
+
icon: faDisplayArrowDown,
|
|
10
|
+
titleId: 'runbox.runtime.loading.note.environment.title',
|
|
11
|
+
descriptionId: 'runbox.runtime.loading.note.environment.description'
|
|
12
|
+
}, {
|
|
13
|
+
icon: faFloppyDisk,
|
|
14
|
+
titleId: 'runbox.runtime.loading.note.save.title',
|
|
15
|
+
descriptionId: 'runbox.runtime.loading.note.save.description'
|
|
16
|
+
}];
|
|
17
|
+
/**
|
|
18
|
+
* Matched against the container image name, in order -- `VNC-VSCode` carries
|
|
19
|
+
* two keywords, and the editor is what the learner works in.
|
|
20
|
+
*
|
|
21
|
+
* The name is a display name an operator typed (`Jupyter Notebook`,
|
|
22
|
+
* `JupyterNotebook`, `VSCode`), so it is matched loosely rather than listed.
|
|
23
|
+
*/
|
|
24
|
+
var TIP_GROUPS = [{
|
|
25
|
+
keywords: ['jupyter'],
|
|
26
|
+
tips: [{
|
|
27
|
+
icon: faListOl,
|
|
28
|
+
titleId: 'runbox.runtime.loading.tip.jupyter.cell_order.title',
|
|
29
|
+
descriptionId: 'runbox.runtime.loading.tip.jupyter.cell_order.description'
|
|
30
|
+
}, {
|
|
31
|
+
icon: faSquareTerminal,
|
|
32
|
+
titleId: 'runbox.runtime.loading.tip.jupyter.run_cell.title',
|
|
33
|
+
descriptionId: 'runbox.runtime.loading.tip.jupyter.run_cell.description'
|
|
34
|
+
}, {
|
|
35
|
+
icon: faRotate,
|
|
36
|
+
titleId: 'runbox.runtime.loading.tip.jupyter.restart_kernel.title',
|
|
37
|
+
descriptionId: 'runbox.runtime.loading.tip.jupyter.restart_kernel.description'
|
|
38
|
+
}, {
|
|
39
|
+
icon: faListOl,
|
|
40
|
+
titleId: 'runbox.runtime.loading.tip.jupyter.cell_number.title',
|
|
41
|
+
descriptionId: 'runbox.runtime.loading.tip.jupyter.cell_number.description'
|
|
42
|
+
}]
|
|
43
|
+
}, {
|
|
44
|
+
keywords: ['vscode', 'codeserver'],
|
|
45
|
+
tips: [{
|
|
46
|
+
icon: faFloppyDisk,
|
|
47
|
+
titleId: 'runbox.runtime.loading.tip.vscode.save_before_run.title',
|
|
48
|
+
descriptionId: 'runbox.runtime.loading.tip.vscode.save_before_run.description'
|
|
49
|
+
}, {
|
|
50
|
+
icon: faSquareTerminal,
|
|
51
|
+
titleId: 'runbox.runtime.loading.tip.vscode.terminal.title',
|
|
52
|
+
descriptionId: 'runbox.runtime.loading.tip.vscode.terminal.description'
|
|
53
|
+
}, {
|
|
54
|
+
icon: faTriangleExclamation,
|
|
55
|
+
titleId: 'runbox.runtime.loading.tip.vscode.browser_shortcut.title',
|
|
56
|
+
descriptionId: 'runbox.runtime.loading.tip.vscode.browser_shortcut.description'
|
|
57
|
+
}, {
|
|
58
|
+
icon: faSitemap,
|
|
59
|
+
titleId: 'runbox.runtime.loading.tip.vscode.explorer.title',
|
|
60
|
+
descriptionId: 'runbox.runtime.loading.tip.vscode.explorer.description'
|
|
61
|
+
}]
|
|
62
|
+
}, {
|
|
63
|
+
keywords: ['orange'],
|
|
64
|
+
tips: [{
|
|
65
|
+
icon: faTableCells,
|
|
66
|
+
titleId: 'runbox.runtime.loading.tip.orange.widget.title',
|
|
67
|
+
descriptionId: 'runbox.runtime.loading.tip.orange.widget.description'
|
|
68
|
+
}, {
|
|
69
|
+
icon: faDiagramProject,
|
|
70
|
+
titleId: 'runbox.runtime.loading.tip.orange.connect.title',
|
|
71
|
+
descriptionId: 'runbox.runtime.loading.tip.orange.connect.description'
|
|
72
|
+
}, {
|
|
73
|
+
icon: faTableCells,
|
|
74
|
+
titleId: 'runbox.runtime.loading.tip.orange.load_data.title',
|
|
75
|
+
descriptionId: 'runbox.runtime.loading.tip.orange.load_data.description'
|
|
76
|
+
}, {
|
|
77
|
+
icon: faWindowRestore,
|
|
78
|
+
titleId: 'runbox.runtime.loading.tip.orange.open_settings.title',
|
|
79
|
+
descriptionId: 'runbox.runtime.loading.tip.orange.open_settings.description'
|
|
80
|
+
}]
|
|
81
|
+
}, {
|
|
82
|
+
keywords: ['dify', 'n8n', 'comfyui', 'openwebui', 'sonarqube'],
|
|
83
|
+
tips: [{
|
|
84
|
+
icon: faDisplayArrowDown,
|
|
85
|
+
titleId: 'runbox.runtime.loading.tip.app.web_service.title',
|
|
86
|
+
descriptionId: 'runbox.runtime.loading.tip.app.web_service.description'
|
|
87
|
+
}, {
|
|
88
|
+
icon: faHourglassHalf,
|
|
89
|
+
titleId: 'runbox.runtime.loading.tip.app.slow_start.title',
|
|
90
|
+
descriptionId: 'runbox.runtime.loading.tip.app.slow_start.description'
|
|
91
|
+
}, {
|
|
92
|
+
icon: faFloppyDisk,
|
|
93
|
+
titleId: 'runbox.runtime.loading.tip.app.persisted.title',
|
|
94
|
+
descriptionId: 'runbox.runtime.loading.tip.app.persisted.description'
|
|
95
|
+
}]
|
|
96
|
+
}, {
|
|
97
|
+
keywords: ['vnc', 'unityhub', 'pyqt', 'libreoffice', 'flutter', 'codap', 'jmeter'],
|
|
98
|
+
tips: [{
|
|
99
|
+
icon: faWindowRestore,
|
|
100
|
+
titleId: 'runbox.runtime.loading.tip.gui.desktop.title',
|
|
101
|
+
descriptionId: 'runbox.runtime.loading.tip.gui.desktop.description'
|
|
102
|
+
}, {
|
|
103
|
+
icon: faCopy,
|
|
104
|
+
titleId: 'runbox.runtime.loading.tip.gui.clipboard.title',
|
|
105
|
+
descriptionId: 'runbox.runtime.loading.tip.gui.clipboard.description'
|
|
106
|
+
}, {
|
|
107
|
+
icon: faArrowsUpDownLeftRight,
|
|
108
|
+
titleId: 'runbox.runtime.loading.tip.gui.move_window.title',
|
|
109
|
+
descriptionId: 'runbox.runtime.loading.tip.gui.move_window.description'
|
|
110
|
+
}, {
|
|
111
|
+
icon: faHourglassHalf,
|
|
112
|
+
titleId: 'runbox.runtime.loading.tip.gui.slow_start.title',
|
|
113
|
+
descriptionId: 'runbox.runtime.loading.tip.gui.slow_start.description'
|
|
114
|
+
}]
|
|
115
|
+
}];
|
|
116
|
+
/** Closes out every environment, and stands alone when no group matched. */
|
|
117
|
+
var COMMON_TIPS = [{
|
|
118
|
+
icon: faTriangleExclamation,
|
|
119
|
+
titleId: 'runbox.runtime.loading.tip.common.conflict.title',
|
|
120
|
+
descriptionId: 'runbox.runtime.loading.tip.common.conflict.description'
|
|
121
|
+
}, {
|
|
122
|
+
icon: faHardDrive,
|
|
123
|
+
titleId: 'runbox.runtime.loading.tip.common.disk.title',
|
|
124
|
+
descriptionId: 'runbox.runtime.loading.tip.common.disk.description'
|
|
125
|
+
}, {
|
|
126
|
+
icon: faClock,
|
|
127
|
+
titleId: 'runbox.runtime.loading.tip.common.quota.title',
|
|
128
|
+
descriptionId: 'runbox.runtime.loading.tip.common.quota.description'
|
|
129
|
+
}];
|
|
130
|
+
//
|
|
131
|
+
//
|
|
132
|
+
//
|
|
133
|
+
var getRuntimeLoadingTips = function getRuntimeLoadingTips() {
|
|
134
|
+
var containerImageName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
135
|
+
var _a;
|
|
136
|
+
var name = containerImageName.toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
137
|
+
var group = TIP_GROUPS.find(function (_ref) {
|
|
138
|
+
var keywords = _ref.keywords;
|
|
139
|
+
return keywords.some(function (keyword) {
|
|
140
|
+
return name.includes(keyword);
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
return [].concat(INTRO_TIPS, _toConsumableArray((_a = group === null || group === void 0 ? void 0 : group.tips) !== null && _a !== void 0 ? _a : []), COMMON_TIPS);
|
|
144
|
+
};
|
|
145
|
+
|
|
146
|
+
export { getRuntimeLoadingTips };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface MaterialRunboxStatusButtonProps {
|
|
3
|
+
runtimeTemplateId: string;
|
|
4
|
+
courseId: number;
|
|
5
|
+
/** User ID for tutoring. */
|
|
6
|
+
userId?: number;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Opens the runbox connection/resource status popover.
|
|
10
|
+
*
|
|
11
|
+
* Replaces the always-visible resource stats of the removed footer,
|
|
12
|
+
* so the numbers are only shown on explicit request. (`[R-5]` `[R-6]`)
|
|
13
|
+
*/
|
|
14
|
+
declare const MaterialRunboxStatusButton: React.FC<MaterialRunboxStatusButtonProps>;
|
|
15
|
+
export default MaterialRunboxStatusButton;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { useRawEliceIntl } from '@elice/intl';
|
|
5
|
+
import { EliceIcon } from '@elice/mui-elements';
|
|
6
|
+
import { useEliceRunboxRunning } from '@elice/runbox-client';
|
|
7
|
+
import { faDiscDrive, faWifi, faAngleDown } from '@fortawesome/pro-solid-svg-icons';
|
|
8
|
+
import { buttonClasses, Button } from '@mui/material';
|
|
9
|
+
import MaterialRunboxStatusPopover from './MaterialRunboxStatusPopover.js';
|
|
10
|
+
import { useBreakpoint } from '../../shared/hooks/useBreakpoint.js';
|
|
11
|
+
import { useRunboxDiskUsage } from '../hooks/useRunboxDiskUsage.js';
|
|
12
|
+
|
|
13
|
+
//
|
|
14
|
+
//
|
|
15
|
+
//
|
|
16
|
+
/**
|
|
17
|
+
* Opens the runbox connection/resource status popover.
|
|
18
|
+
*
|
|
19
|
+
* Replaces the always-visible resource stats of the removed footer,
|
|
20
|
+
* so the numbers are only shown on explicit request. (`[R-5]` `[R-6]`)
|
|
21
|
+
*/
|
|
22
|
+
var MaterialRunboxStatusButton = function MaterialRunboxStatusButton(_ref) {
|
|
23
|
+
var runtimeTemplateId = _ref.runtimeTemplateId,
|
|
24
|
+
courseId = _ref.courseId,
|
|
25
|
+
userId = _ref.userId;
|
|
26
|
+
var intl = useRawEliceIntl();
|
|
27
|
+
var isSmallTabletOrSmaller = useBreakpoint('md', 'down');
|
|
28
|
+
var _useEliceRunboxRunnin = useEliceRunboxRunning(),
|
|
29
|
+
status = _useEliceRunboxRunnin.status;
|
|
30
|
+
var _useRunboxDiskUsage = useRunboxDiskUsage(),
|
|
31
|
+
severity = _useRunboxDiskUsage.severity,
|
|
32
|
+
diskCurrent = _useRunboxDiskUsage.diskCurrent,
|
|
33
|
+
diskTotal = _useRunboxDiskUsage.diskTotal;
|
|
34
|
+
var _React$useState = React.useState(null),
|
|
35
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
36
|
+
anchorEl = _React$useState2[0],
|
|
37
|
+
setAnchorEl = _React$useState2[1];
|
|
38
|
+
var isRunboxRunning = status === 'running';
|
|
39
|
+
/**
|
|
40
|
+
* Over threshold the button turns into a disk gauge, so the learner sees the
|
|
41
|
+
* number that matters without opening the popover.
|
|
42
|
+
*/
|
|
43
|
+
var buttonProps = severity ? {
|
|
44
|
+
color: severity,
|
|
45
|
+
startIcon: jsx(EliceIcon, {
|
|
46
|
+
icon: faDiscDrive
|
|
47
|
+
}),
|
|
48
|
+
children: isSmallTabletOrSmaller ? undefined : "DISK ".concat(intl.formatDataSize(diskCurrent, {
|
|
49
|
+
unitSystem: 'iec',
|
|
50
|
+
maximumFractionDigits: 2
|
|
51
|
+
}), " / ").concat(intl.formatDataSize(diskTotal, {
|
|
52
|
+
unitSystem: 'iec',
|
|
53
|
+
maximumFractionDigits: 2
|
|
54
|
+
}))
|
|
55
|
+
} : {
|
|
56
|
+
color: 'inherit',
|
|
57
|
+
startIcon: jsx(EliceIcon, {
|
|
58
|
+
icon: faWifi
|
|
59
|
+
}),
|
|
60
|
+
// The label follows the header, but the icon keeps reporting the runtime.
|
|
61
|
+
sx: _defineProperty({}, "& .".concat(buttonClasses.startIcon), {
|
|
62
|
+
color: isRunboxRunning ? 'success.main' : 'text.disabled'
|
|
63
|
+
}),
|
|
64
|
+
children: isSmallTabletOrSmaller ? undefined : intl.formatMessage({
|
|
65
|
+
id: 'runbox.status.button.title'
|
|
66
|
+
})
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
*
|
|
70
|
+
*/
|
|
71
|
+
var handleClose = function handleClose() {
|
|
72
|
+
setAnchorEl(null);
|
|
73
|
+
};
|
|
74
|
+
//
|
|
75
|
+
//
|
|
76
|
+
//
|
|
77
|
+
return jsxs(Fragment, {
|
|
78
|
+
children: [jsx(Button, Object.assign({
|
|
79
|
+
variant: "text",
|
|
80
|
+
size: "small",
|
|
81
|
+
endIcon: jsx(EliceIcon, {
|
|
82
|
+
icon: faAngleDown
|
|
83
|
+
}),
|
|
84
|
+
onClick: function onClick(e) {
|
|
85
|
+
return setAnchorEl(e.currentTarget);
|
|
86
|
+
}
|
|
87
|
+
}, buttonProps)), jsx(MaterialRunboxStatusPopover, {
|
|
88
|
+
open: Boolean(anchorEl),
|
|
89
|
+
anchorEl: anchorEl,
|
|
90
|
+
anchorOrigin: {
|
|
91
|
+
vertical: 'bottom',
|
|
92
|
+
horizontal: 'left'
|
|
93
|
+
},
|
|
94
|
+
transformOrigin: {
|
|
95
|
+
vertical: 'top',
|
|
96
|
+
horizontal: 'left'
|
|
97
|
+
},
|
|
98
|
+
sx: {
|
|
99
|
+
marginTop: '0.5rem'
|
|
100
|
+
},
|
|
101
|
+
runtimeTemplateId: runtimeTemplateId,
|
|
102
|
+
courseId: courseId,
|
|
103
|
+
userId: userId,
|
|
104
|
+
onClose: handleClose
|
|
105
|
+
})]
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export { MaterialRunboxStatusButton as default };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TypographyProps } from '@mui/material';
|
|
2
|
+
import type React from 'react';
|
|
3
|
+
export interface MaterialRunboxStatusConnectionItemProps {
|
|
4
|
+
/** Leading icon element, or a progress indicator while connecting. */
|
|
5
|
+
icon: React.ReactNode;
|
|
6
|
+
/** Row label. */
|
|
7
|
+
label: React.ReactNode;
|
|
8
|
+
/** Palette color for the icon, e.g. `success.main`. */
|
|
9
|
+
color?: TypographyProps['color'];
|
|
10
|
+
}
|
|
11
|
+
declare const MaterialRunboxStatusConnectionItem: React.FC<MaterialRunboxStatusConnectionItemProps>;
|
|
12
|
+
export default MaterialRunboxStatusConnectionItem;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Stack, Typography } from '@mui/material';
|
|
3
|
+
|
|
4
|
+
//
|
|
5
|
+
//
|
|
6
|
+
//
|
|
7
|
+
var MaterialRunboxStatusConnectionItem = function MaterialRunboxStatusConnectionItem(_ref) {
|
|
8
|
+
var icon = _ref.icon,
|
|
9
|
+
label = _ref.label,
|
|
10
|
+
_ref$color = _ref.color,
|
|
11
|
+
color = _ref$color === void 0 ? 'text.disabled' : _ref$color;
|
|
12
|
+
return jsxs(Stack, {
|
|
13
|
+
direction: "row",
|
|
14
|
+
alignItems: "center",
|
|
15
|
+
gap: "0.75rem",
|
|
16
|
+
minHeight: "2.5rem",
|
|
17
|
+
padding: "0 0.75rem",
|
|
18
|
+
children: [jsx(Typography, {
|
|
19
|
+
component: "span",
|
|
20
|
+
display: "inline-flex",
|
|
21
|
+
color: color,
|
|
22
|
+
children: icon
|
|
23
|
+
}), jsx(Typography, {
|
|
24
|
+
variant: "body2",
|
|
25
|
+
color: "text.tertiary",
|
|
26
|
+
children: label
|
|
27
|
+
})]
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export { MaterialRunboxStatusConnectionItem as default };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PopoverProps } from '@mui/material';
|
|
2
|
+
import type React from 'react';
|
|
3
|
+
export interface MaterialRunboxStatusPopoverProps extends Omit<PopoverProps, 'open' | 'onClose' | 'children'> {
|
|
4
|
+
/** Whether the popover is open. */
|
|
5
|
+
open: boolean;
|
|
6
|
+
/** Called when the popover requests to be closed. */
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
runtimeTemplateId: string;
|
|
9
|
+
courseId: number;
|
|
10
|
+
/** User ID for tutoring. */
|
|
11
|
+
userId?: number;
|
|
12
|
+
}
|
|
13
|
+
declare const MaterialRunboxStatusPopover: React.FC<MaterialRunboxStatusPopoverProps>;
|
|
14
|
+
export default MaterialRunboxStatusPopover;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { __rest } from 'tslib';
|
|
3
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
|
+
import { useRawEliceIntl } from '@elice/intl';
|
|
5
|
+
import { EliceIcon } from '@elice/mui-elements';
|
|
6
|
+
import { useEliceRunboxRunning, useEliceRunboxContainerStats } from '@elice/runbox-client';
|
|
7
|
+
import { faWifiSlash, faWifi, faWifiFair, faLinkSimple, faLinkSimpleSlash, faMicrochip, faMemory, faArrowUpRight, faArrowDownLeft, faDiscDrive, faArrowsRotate } from '@fortawesome/pro-solid-svg-icons';
|
|
8
|
+
import { Popover, Fade, Stack, CircularProgress, Divider } from '@mui/material';
|
|
9
|
+
import MaterialRunboxStatusConnectionItem from './MaterialRunboxStatusConnectionItem.js';
|
|
10
|
+
import MaterialRunboxStatusResourceItem from './MaterialRunboxStatusResourceItem.js';
|
|
11
|
+
import { RunboxNetworkStatus, useRunboxNetworkStatus } from '../hooks/useRunboxNetworkStatus.js';
|
|
12
|
+
import MaterialRunboxEnvResetButton from '../disk/MaterialRunboxEnvResetButton.js';
|
|
13
|
+
|
|
14
|
+
//
|
|
15
|
+
//
|
|
16
|
+
//
|
|
17
|
+
var POPOVER_WIDTH = '15.25rem'; // 244px
|
|
18
|
+
var NETWORK_ICON = Object.freeze(_defineProperty(_defineProperty(_defineProperty({}, RunboxNetworkStatus.Good, faWifi), RunboxNetworkStatus.NotGood, faWifiFair), RunboxNetworkStatus.Bad, faWifiSlash));
|
|
19
|
+
var NETWORK_COLOR = Object.freeze(_defineProperty(_defineProperty(_defineProperty({}, RunboxNetworkStatus.Good, 'success.main'), RunboxNetworkStatus.NotGood, 'warning.main'), RunboxNetworkStatus.Bad, 'error.main'));
|
|
20
|
+
//
|
|
21
|
+
//
|
|
22
|
+
//
|
|
23
|
+
var MaterialRunboxStatusPopover = function MaterialRunboxStatusPopover(_a) {
|
|
24
|
+
var open = _a.open,
|
|
25
|
+
onClose = _a.onClose,
|
|
26
|
+
runtimeTemplateId = _a.runtimeTemplateId,
|
|
27
|
+
courseId = _a.courseId,
|
|
28
|
+
userId = _a.userId,
|
|
29
|
+
props = __rest(_a, ["open", "onClose", "runtimeTemplateId", "courseId", "userId"]);
|
|
30
|
+
var intl = useRawEliceIntl();
|
|
31
|
+
var _useEliceRunboxRunnin = useEliceRunboxRunning(),
|
|
32
|
+
status = _useEliceRunboxRunnin.status;
|
|
33
|
+
var _useRunboxNetworkStat = useRunboxNetworkStatus(),
|
|
34
|
+
networkStatus = _useRunboxNetworkStat.status;
|
|
35
|
+
var contStats = useEliceRunboxContainerStats();
|
|
36
|
+
var stats = contStats ? contStats[contStats.length - 1] : null;
|
|
37
|
+
var isRunboxConnecting = status === 'queued' || status === 'assigned';
|
|
38
|
+
var isRunboxRunning = status === 'running';
|
|
39
|
+
// No numbers to show while the runtime comes back up.
|
|
40
|
+
var preparing = intl.formatMessage({
|
|
41
|
+
id: 'runbox.status.resource.preparing'
|
|
42
|
+
});
|
|
43
|
+
//
|
|
44
|
+
//
|
|
45
|
+
//
|
|
46
|
+
return jsx(Popover, Object.assign({
|
|
47
|
+
open: open,
|
|
48
|
+
TransitionComponent: Fade,
|
|
49
|
+
onClose: onClose
|
|
50
|
+
}, props, {
|
|
51
|
+
children: jsxs(Stack, {
|
|
52
|
+
direction: "column",
|
|
53
|
+
gap: "0.75rem",
|
|
54
|
+
padding: "0.75rem",
|
|
55
|
+
width: POPOVER_WIDTH,
|
|
56
|
+
bgcolor: "background.paper",
|
|
57
|
+
children: [jsxs(Stack, {
|
|
58
|
+
direction: "column",
|
|
59
|
+
children: [networkStatus ? jsx(MaterialRunboxStatusConnectionItem, {
|
|
60
|
+
icon: jsx(EliceIcon, {
|
|
61
|
+
icon: NETWORK_ICON[networkStatus],
|
|
62
|
+
fontSize: "small"
|
|
63
|
+
}),
|
|
64
|
+
label: intl.formatMessage({
|
|
65
|
+
id: 'runbox.status.network'
|
|
66
|
+
}),
|
|
67
|
+
color: NETWORK_COLOR[networkStatus]
|
|
68
|
+
}) : null, jsx(MaterialRunboxStatusConnectionItem, {
|
|
69
|
+
icon: isRunboxConnecting ? jsx(CircularProgress, {
|
|
70
|
+
color: "inherit",
|
|
71
|
+
size: "1rem"
|
|
72
|
+
}) : jsx(EliceIcon, {
|
|
73
|
+
icon: isRunboxRunning ? faLinkSimple : faLinkSimpleSlash,
|
|
74
|
+
fontSize: "small"
|
|
75
|
+
}),
|
|
76
|
+
label: intl.formatMessage({
|
|
77
|
+
id: isRunboxConnecting ? 'runbox.status.runtime.connecting' : isRunboxRunning ? 'runbox.status.runtime.connected' : 'runbox.status.runtime.disconnected'
|
|
78
|
+
}),
|
|
79
|
+
color: isRunboxRunning ? 'success.main' : 'text.disabled'
|
|
80
|
+
})]
|
|
81
|
+
}), stats || isRunboxConnecting ? jsxs(Fragment, {
|
|
82
|
+
children: [jsx(Divider, {}), jsxs(Stack, {
|
|
83
|
+
direction: "column",
|
|
84
|
+
children: [jsx(MaterialRunboxStatusResourceItem, {
|
|
85
|
+
icon: jsx(EliceIcon, {
|
|
86
|
+
icon: faMicrochip,
|
|
87
|
+
fontSize: "small"
|
|
88
|
+
}),
|
|
89
|
+
label: "CPU",
|
|
90
|
+
value: stats ? intl.formatNumber(stats.avgCpu, {
|
|
91
|
+
style: 'percent',
|
|
92
|
+
maximumFractionDigits: 2
|
|
93
|
+
}) : preparing
|
|
94
|
+
}), jsx(MaterialRunboxStatusResourceItem, {
|
|
95
|
+
icon: jsx(EliceIcon, {
|
|
96
|
+
icon: faMemory,
|
|
97
|
+
fontSize: "small"
|
|
98
|
+
}),
|
|
99
|
+
label: "Memory",
|
|
100
|
+
value: stats ? "".concat(intl.formatDataSize(stats.memCurrent, {
|
|
101
|
+
unitSystem: 'iec',
|
|
102
|
+
maximumFractionDigits: 2
|
|
103
|
+
}), " / ").concat(intl.formatDataSize(stats.memTotal, {
|
|
104
|
+
unitSystem: 'iec',
|
|
105
|
+
maximumFractionDigits: 2
|
|
106
|
+
})) : preparing
|
|
107
|
+
}), jsx(MaterialRunboxStatusResourceItem, {
|
|
108
|
+
icon: jsx(EliceIcon, {
|
|
109
|
+
icon: faArrowUpRight,
|
|
110
|
+
fontSize: "small"
|
|
111
|
+
}),
|
|
112
|
+
label: "UP",
|
|
113
|
+
value: stats ? "".concat(intl.formatDataSize(stats.netOutPsec, {
|
|
114
|
+
unitSystem: 'iec'
|
|
115
|
+
}), "/s") : preparing
|
|
116
|
+
}), jsx(MaterialRunboxStatusResourceItem, {
|
|
117
|
+
icon: jsx(EliceIcon, {
|
|
118
|
+
icon: faArrowDownLeft,
|
|
119
|
+
fontSize: "small"
|
|
120
|
+
}),
|
|
121
|
+
label: "DOWN",
|
|
122
|
+
value: stats ? "".concat(intl.formatDataSize(stats.netInPsec, {
|
|
123
|
+
unitSystem: 'iec'
|
|
124
|
+
}), "/s") : preparing
|
|
125
|
+
}), jsx(MaterialRunboxStatusResourceItem, {
|
|
126
|
+
icon: jsx(EliceIcon, {
|
|
127
|
+
icon: faDiscDrive,
|
|
128
|
+
fontSize: "small"
|
|
129
|
+
}),
|
|
130
|
+
label: "DISK",
|
|
131
|
+
value: stats ? "".concat(intl.formatDataSize(stats.diskCurrent, {
|
|
132
|
+
unitSystem: 'iec',
|
|
133
|
+
maximumFractionDigits: 2
|
|
134
|
+
}), " / ").concat(intl.formatDataSize(stats.diskTotal, {
|
|
135
|
+
unitSystem: 'iec',
|
|
136
|
+
maximumFractionDigits: 2
|
|
137
|
+
})) : preparing
|
|
138
|
+
})]
|
|
139
|
+
})]
|
|
140
|
+
}) : null, jsx(MaterialRunboxEnvResetButton, {
|
|
141
|
+
fullWidth: true,
|
|
142
|
+
variant: "contained",
|
|
143
|
+
color: "error",
|
|
144
|
+
disabled: !isRunboxRunning,
|
|
145
|
+
startIcon: jsx(EliceIcon, {
|
|
146
|
+
icon: faArrowsRotate
|
|
147
|
+
}),
|
|
148
|
+
runtimeTemplateId: runtimeTemplateId,
|
|
149
|
+
courseId: courseId,
|
|
150
|
+
userId: userId,
|
|
151
|
+
onSuccess: onClose
|
|
152
|
+
})]
|
|
153
|
+
})
|
|
154
|
+
}));
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
export { MaterialRunboxStatusPopover as default };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
export interface MaterialRunboxStatusResourceItemProps {
|
|
3
|
+
/** Leading icon element. */
|
|
4
|
+
icon: React.ReactNode;
|
|
5
|
+
/** Resource label, e.g. `CPU`. */
|
|
6
|
+
label: React.ReactNode;
|
|
7
|
+
/** Formatted value, e.g. `438.33 MiB / 4 GiB`. */
|
|
8
|
+
value: React.ReactNode;
|
|
9
|
+
}
|
|
10
|
+
declare const MaterialRunboxStatusResourceItem: React.FC<MaterialRunboxStatusResourceItemProps>;
|
|
11
|
+
export default MaterialRunboxStatusResourceItem;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Stack, Typography } from '@mui/material';
|
|
3
|
+
|
|
4
|
+
//
|
|
5
|
+
//
|
|
6
|
+
//
|
|
7
|
+
var MaterialRunboxStatusResourceItem = function MaterialRunboxStatusResourceItem(_ref) {
|
|
8
|
+
var icon = _ref.icon,
|
|
9
|
+
label = _ref.label,
|
|
10
|
+
value = _ref.value;
|
|
11
|
+
return jsxs(Stack, {
|
|
12
|
+
direction: "row",
|
|
13
|
+
alignItems: "center",
|
|
14
|
+
gap: "0.75rem",
|
|
15
|
+
padding: "0.375rem 0.75rem",
|
|
16
|
+
children: [jsx(Typography, {
|
|
17
|
+
component: "span",
|
|
18
|
+
display: "inline-flex",
|
|
19
|
+
color: "text.tertiary",
|
|
20
|
+
children: icon
|
|
21
|
+
}), jsxs(Stack, {
|
|
22
|
+
direction: "column",
|
|
23
|
+
children: [jsx(Typography, {
|
|
24
|
+
variant: "body2",
|
|
25
|
+
color: "text.tertiary",
|
|
26
|
+
children: label
|
|
27
|
+
}), jsx(Typography, {
|
|
28
|
+
variant: "caption",
|
|
29
|
+
color: "text.tertiary",
|
|
30
|
+
fontFamily: "'JetBrains Mono', monospace",
|
|
31
|
+
children: value
|
|
32
|
+
})]
|
|
33
|
+
})]
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export { MaterialRunboxStatusResourceItem as default };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as MaterialRunboxStatusButton } from './MaterialRunboxStatusButton';
|
|
2
|
+
export { default as MaterialRunboxStatusPopover } from './MaterialRunboxStatusPopover';
|
|
3
|
+
export type { MaterialRunboxStatusButtonProps } from './MaterialRunboxStatusButton';
|
|
4
|
+
export type { MaterialRunboxStatusPopoverProps } from './MaterialRunboxStatusPopover';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createEliceTheme } from '@elice/mui-system';
|
|
2
|
+
|
|
3
|
+
var runboxDarkTheme = createEliceTheme({
|
|
4
|
+
paletteName: 'purple',
|
|
5
|
+
paletteMode: 'dark'
|
|
6
|
+
});
|
|
7
|
+
var runboxLightTheme = createEliceTheme({
|
|
8
|
+
paletteName: 'purple',
|
|
9
|
+
paletteMode: 'light'
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export { runboxDarkTheme, runboxLightTheme };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface MaterialRunboxQuotaAlmostEndDialogProps {
|
|
2
|
+
open: boolean;
|
|
3
|
+
onClose: () => void;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Warns the learner that the *total* available time is about to run out.
|
|
7
|
+
*
|
|
8
|
+
* Once it does, the practice ends for good — there is no reconnecting.
|
|
9
|
+
*/
|
|
10
|
+
declare const MaterialRunboxQuotaAlmostEndDialog: React.FC<MaterialRunboxQuotaAlmostEndDialogProps>;
|
|
11
|
+
export default MaterialRunboxQuotaAlmostEndDialog;
|