pywebexec 2.1.17__tar.gz → 2.1.18__tar.gz

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.
Files changed (83) hide show
  1. {pywebexec-2.1.17/pywebexec.egg-info → pywebexec-2.1.18}/PKG-INFO +1 -1
  2. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/executables.js +1 -6
  3. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/schemaform.js +12 -3
  4. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/swagger-form.js +1 -1
  5. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/version.py +2 -2
  6. {pywebexec-2.1.17 → pywebexec-2.1.18/pywebexec.egg-info}/PKG-INFO +1 -1
  7. {pywebexec-2.1.17 → pywebexec-2.1.18}/.github/workflows/python-publish.yml +0 -0
  8. {pywebexec-2.1.17 → pywebexec-2.1.18}/.gitignore +0 -0
  9. {pywebexec-2.1.17 → pywebexec-2.1.18}/LICENSE +0 -0
  10. {pywebexec-2.1.17 → pywebexec-2.1.18}/README.md +0 -0
  11. {pywebexec-2.1.17 → pywebexec-2.1.18}/pyproject.toml +0 -0
  12. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/__init__.py +0 -0
  13. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/host_ip.py +0 -0
  14. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/pywebexec.py +0 -0
  15. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/css/form.css +0 -0
  16. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/css/markdown.css +0 -0
  17. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/css/style.css +0 -0
  18. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/css/swagger-ui.css +0 -0
  19. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/css/swagger-ui.css.map +0 -0
  20. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/css/xterm.css +0 -0
  21. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/CommitMonoNerdFontMono-Regular.ttf +0 -0
  22. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/LICENSE +0 -0
  23. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/glyphicons-halflings-regular.eot +0 -0
  24. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/glyphicons-halflings-regular.svg +0 -0
  25. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/glyphicons-halflings-regular.ttf +0 -0
  26. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/glyphicons-halflings-regular.woff +0 -0
  27. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/fonts/glyphicons-halflings-regular.woff2 +0 -0
  28. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/aborted.svg +0 -0
  29. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/copy.svg +0 -0
  30. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/copy_ok.svg +0 -0
  31. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/down-arrow.svg +0 -0
  32. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/failed.svg +0 -0
  33. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/favicon.svg +0 -0
  34. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/fit-tty.svg +0 -0
  35. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/fit-win.svg +0 -0
  36. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/font-decrease.svg +0 -0
  37. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/font-increase.svg +0 -0
  38. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/norun.svg +0 -0
  39. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/pause.svg +0 -0
  40. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/popup.svg +0 -0
  41. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/resume.svg +0 -0
  42. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/running.svg +0 -0
  43. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/success.svg +0 -0
  44. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/images/swagger-ui.svg +0 -0
  45. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/js-yaml/LICENSE +0 -0
  46. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/js-yaml/js-yaml.min.js +0 -0
  47. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/marked/LICENSE.md +0 -0
  48. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/marked/marked.min.js +0 -0
  49. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/popup.js +0 -0
  50. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/script.js +0 -0
  51. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/swagger-ui/LICENSE +0 -0
  52. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/swagger-ui/swagger-ui-bundle.js +0 -0
  53. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/swagger-ui/swagger-ui-standalone-preset.js +0 -0
  54. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/LICENSE +0 -0
  55. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-canvas.js +0 -0
  56. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-canvas.js.map +0 -0
  57. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-fit.js +0 -0
  58. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-fit.js.map +0 -0
  59. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-unicode-graphemes.js +0 -0
  60. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-unicode-graphemes.js.map +0 -0
  61. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-unicode11.js +0 -0
  62. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/addon-unicode11.js.map +0 -0
  63. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/xterm.js +0 -0
  64. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/js/xterm/xterm.js.map +0 -0
  65. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/LICENSE +0 -0
  66. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/deps/README.md +0 -0
  67. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/deps/img/glyphicons-halflings.png +0 -0
  68. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/deps/jquery.min.js +0 -0
  69. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/deps/jsv.js +0 -0
  70. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/deps/underscore.js +0 -0
  71. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/static/jsonform/lib/jsonform.js +0 -0
  72. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/swagger.yaml +0 -0
  73. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/templates/__init__.py +0 -0
  74. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/templates/index.html +0 -0
  75. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/templates/popup.html +0 -0
  76. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec/templates/swagger_ui.html +0 -0
  77. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec.egg-info/SOURCES.txt +0 -0
  78. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec.egg-info/dependency_links.txt +0 -0
  79. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec.egg-info/entry_points.txt +0 -0
  80. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec.egg-info/requires.txt +0 -0
  81. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexec.egg-info/top_level.txt +0 -0
  82. {pywebexec-2.1.17 → pywebexec-2.1.18}/pywebexecdev +0 -0
  83. {pywebexec-2.1.17 → pywebexec-2.1.18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pywebexec
3
- Version: 2.1.17
3
+ Version: 2.1.18
4
4
  Summary: Simple Python HTTP Exec Server
5
5
  Home-page: https://github.com/joknarf/pywebexec
6
6
  Author: Franck Jouvanceau
@@ -256,8 +256,6 @@ async function fetchExecutables() {
256
256
 
257
257
  }
258
258
 
259
- let schemaValues = {};
260
-
261
259
  paramsInput.addEventListener('focus', () => {
262
260
  const currentCmd = commandInput.value;
263
261
  paramsInput.name = currentCmd;
@@ -267,8 +265,6 @@ paramsInput.addEventListener('focus', () => {
267
265
  if (gExecutables[currentCmd] && gExecutables[currentCmd].schema && gExecutables[currentCmd].schema.properties && paramsContainer.style.display == 'none') {
268
266
  createSchemaForm($('#schemaForm'), gExecutables[currentCmd].schema, async function (errors, values) {
269
267
  if (errors) {
270
- schemaValues[currentCmd] = values;
271
-
272
268
  console.log(errors);
273
269
  alert(errors[0].message);
274
270
  return false;
@@ -276,7 +272,6 @@ paramsInput.addEventListener('focus', () => {
276
272
  const commandName = commandInput.value;
277
273
  fitAddon.fit();
278
274
  terminal.clear();
279
- schemaValues[currentCmd] = values;
280
275
  payload = { params: values, rows: terminal.rows, cols: terminal.cols }
281
276
  if ('parallel' in values) {
282
277
  payload['parallel'] = values['parallel'];
@@ -306,7 +301,7 @@ paramsInput.addEventListener('focus', () => {
306
301
  console.log('Error running command:', error);
307
302
  }
308
303
  }
309
- }, schemaValues[currentCmd]);
304
+ }, currentCmd.toString());
310
305
  setHelpDivPosition();
311
306
  paramsContainer.style.display = 'block';
312
307
  const input1 = schemaFormPW.querySelector('input, select, textarea');
@@ -52,8 +52,13 @@ function extractKeysAndPlaceholders(obj, formoptions, prefix = '') {
52
52
  }
53
53
  return result;
54
54
  }
55
-
56
- function createSchemaForm(form, schema, onSubmit, value={}) {
55
+ let schemaValues = {};
56
+ function createSchemaForm(form, schema, onSubmit, schemaName) {
57
+ if (schemaValues[schemaName]) {
58
+ value = schemaValues[schemaName];
59
+ } else {
60
+ value = {};
61
+ }
57
62
  if (schema && schema.schema_options) {
58
63
  schema_options = schema.schema_options;
59
64
  } else {
@@ -162,7 +167,11 @@ function createSchemaForm(form, schema, onSubmit, value={}) {
162
167
  txt.setAttribute("spellcheck", "false");
163
168
  txt.addEventListener("input", () => adjustTxtHeight(txt));
164
169
  });
165
-
170
+ form[0].addEventListener('input', () => {
171
+ schemaValues[schemaName] = jsform.root.getFormValues();
172
+ // localStorage.setItem('schemaValues', JSON.stringify(schemaValues));
173
+ });
174
+
166
175
  return jsform;
167
176
  }
168
177
  function adjustTxtHeight(txt) {
@@ -88,7 +88,7 @@ window.onload = function() {
88
88
  const form = document.createElement("form");
89
89
  form.id = routePathId;
90
90
  form.classList.add("schema-form");
91
- jsform = createSchemaForm($(form), swaggerSchemas[routePath], null);
91
+ jsform = createSchemaForm($(form), swaggerSchemas[routePath], null, routePath);
92
92
  // form.addEventListener("input", formInput(node, jsform));
93
93
  form.addEventListener("input", addFormInputListener(node, jsform));
94
94
  node.parentNode.insertBefore(form, node.nextSibling);
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '2.1.17'
21
- __version_tuple__ = version_tuple = (2, 1, 17)
20
+ __version__ = version = '2.1.18'
21
+ __version_tuple__ = version_tuple = (2, 1, 18)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pywebexec
3
- Version: 2.1.17
3
+ Version: 2.1.18
4
4
  Summary: Simple Python HTTP Exec Server
5
5
  Home-page: https://github.com/joknarf/pywebexec
6
6
  Author: Franck Jouvanceau
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes