@browsersync/bslive 0.0.7 → 0.0.13

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 (155) hide show
  1. package/Cargo.toml +31 -2
  2. package/bin.js +3 -2
  3. package/bslive/Cargo.toml +16 -1
  4. package/bslive/build.rs +1 -1
  5. package/bslive/src/lib.rs +125 -4
  6. package/bsnext/Cargo.toml +21 -0
  7. package/bsnext/src/main.rs +116 -0
  8. package/crates/bsnext_client/Cargo.toml +8 -0
  9. package/crates/bsnext_client/build.rs +53 -0
  10. package/crates/bsnext_client/generated/dto.ts +147 -0
  11. package/crates/bsnext_client/generated/schema.ts +237 -0
  12. package/crates/bsnext_client/inject/dist/index.js +6540 -0
  13. package/crates/bsnext_client/inject/package.json +12 -0
  14. package/crates/bsnext_client/inject/src/console.ts +25 -0
  15. package/crates/bsnext_client/inject/src/index.ts +73 -0
  16. package/crates/bsnext_client/package-lock.json +2145 -0
  17. package/crates/bsnext_client/package.json +27 -0
  18. package/crates/bsnext_client/src/lib.rs +11 -0
  19. package/crates/bsnext_client/tsconfig.json +22 -0
  20. package/crates/bsnext_client/ui/dist/index.css +78 -0
  21. package/crates/bsnext_client/ui/dist/index.js +997 -0
  22. package/crates/bsnext_client/ui/index.html +18 -0
  23. package/crates/bsnext_client/ui/input.yml +19 -0
  24. package/crates/bsnext_client/ui/package.json +18 -0
  25. package/crates/bsnext_client/ui/src/components/bs-debug.ts +27 -0
  26. package/crates/bsnext_client/ui/src/components/bs-header.ts +33 -0
  27. package/crates/bsnext_client/ui/src/components/bs-icon.ts +101 -0
  28. package/crates/bsnext_client/ui/src/components/bs-server-detail.ts +21 -0
  29. package/crates/bsnext_client/ui/src/components/bs-server-identity.ts +24 -0
  30. package/crates/bsnext_client/ui/src/components/bs-server-list.ts +39 -0
  31. package/crates/bsnext_client/ui/src/index.ts +39 -0
  32. package/crates/bsnext_client/ui/styles/base.css.ts +17 -0
  33. package/crates/bsnext_client/ui/styles/reset.css +52 -0
  34. package/crates/bsnext_client/ui/styles/style.css +29 -0
  35. package/crates/bsnext_client/ui/svg/wordmark-white.svg +38 -0
  36. package/crates/bsnext_core/Cargo.toml +44 -0
  37. package/crates/bsnext_core/src/common_layers.rs +62 -0
  38. package/crates/bsnext_core/src/dir_loader.rs +230 -0
  39. package/crates/bsnext_core/src/dto.rs +341 -0
  40. package/crates/bsnext_core/src/handlers/mod.rs +1 -0
  41. package/crates/bsnext_core/src/handlers/proxy.rs +95 -0
  42. package/crates/bsnext_core/src/lib.rs +12 -0
  43. package/crates/bsnext_core/src/meta/mod.rs +5 -0
  44. package/crates/bsnext_core/src/not_found/mod.rs +1 -0
  45. package/crates/bsnext_core/src/not_found/not_found_service.rs +35 -0
  46. package/crates/bsnext_core/src/panic_handler.rs +32 -0
  47. package/crates/bsnext_core/src/raw_loader.rs +196 -0
  48. package/crates/bsnext_core/src/server/actor.rs +92 -0
  49. package/crates/bsnext_core/src/server/error.rs +41 -0
  50. package/crates/bsnext_core/src/server/handler_change.rs +85 -0
  51. package/crates/bsnext_core/src/server/handler_listen.rs +163 -0
  52. package/crates/bsnext_core/src/server/handler_patch.rs +42 -0
  53. package/crates/bsnext_core/src/server/handler_routes_updated.rs +27 -0
  54. package/crates/bsnext_core/src/server/handler_stop.rs +38 -0
  55. package/crates/bsnext_core/src/server/mod.rs +10 -0
  56. package/crates/bsnext_core/src/server/router/assets.rs +39 -0
  57. package/crates/bsnext_core/src/server/router/mod.rs +123 -0
  58. package/crates/bsnext_core/src/server/router/pub_api.rs +39 -0
  59. package/crates/bsnext_core/src/server/router/snapshots/bsnext_core__server__router__tests__test__handlers.snap +9 -0
  60. package/crates/bsnext_core/src/server/router/tests.rs +209 -0
  61. package/crates/bsnext_core/src/server/signals.rs +11 -0
  62. package/crates/bsnext_core/src/server/state.rs +23 -0
  63. package/crates/bsnext_core/src/servers_supervisor/actor.rs +199 -0
  64. package/crates/bsnext_core/src/servers_supervisor/file_changed_handler.rs +41 -0
  65. package/crates/bsnext_core/src/servers_supervisor/get_servers_handler.rs +24 -0
  66. package/crates/bsnext_core/src/servers_supervisor/input_changed_handler.rs +21 -0
  67. package/crates/bsnext_core/src/servers_supervisor/mod.rs +6 -0
  68. package/crates/bsnext_core/src/servers_supervisor/start_handler.rs +86 -0
  69. package/crates/bsnext_core/src/servers_supervisor/stop_handler.rs +26 -0
  70. package/crates/bsnext_core/src/ws/mod.rs +164 -0
  71. package/crates/bsnext_example/Cargo.toml +10 -0
  72. package/crates/bsnext_example/src/basic.rs +51 -0
  73. package/crates/bsnext_example/src/lib.rs +26 -0
  74. package/crates/bsnext_example/src/lit.rs +37 -0
  75. package/crates/bsnext_example/src/md.rs +18 -0
  76. package/crates/bsnext_fs/Cargo.toml +22 -0
  77. package/crates/bsnext_fs/src/actor.rs +123 -0
  78. package/crates/bsnext_fs/src/buffered_debounce.rs +166 -0
  79. package/crates/bsnext_fs/src/filter.rs +39 -0
  80. package/crates/bsnext_fs/src/inner_fs_event_handler.rs +94 -0
  81. package/crates/bsnext_fs/src/lib.rs +141 -0
  82. package/crates/bsnext_fs/src/remove_path_handler.rs +46 -0
  83. package/crates/bsnext_fs/src/stop_handler.rs +15 -0
  84. package/crates/bsnext_fs/src/stream.rs +167 -0
  85. package/crates/bsnext_fs/src/test/mod.rs +213 -0
  86. package/crates/bsnext_fs/src/watch_path_handler.rs +67 -0
  87. package/crates/bsnext_fs/src/watcher.rs +349 -0
  88. package/crates/bsnext_input/Cargo.toml +25 -0
  89. package/crates/bsnext_input/src/input_test/mod.rs +185 -0
  90. package/crates/bsnext_input/src/input_test/snapshots/bsnext_input__input_test__deserialize_3_headers.snap +29 -0
  91. package/crates/bsnext_input/src/input_test/snapshots/bsnext_input__input_test__deserialize_3_headers_control.snap +25 -0
  92. package/crates/bsnext_input/src/lib.rs +153 -0
  93. package/crates/bsnext_input/src/md.rs +541 -0
  94. package/crates/bsnext_input/src/paths.rs +64 -0
  95. package/crates/bsnext_input/src/route.rs +189 -0
  96. package/crates/bsnext_input/src/route_manifest.rs +186 -0
  97. package/crates/bsnext_input/src/server_config.rs +88 -0
  98. package/crates/bsnext_input/src/target.rs +7 -0
  99. package/crates/bsnext_input/src/watch_opt_test/mod.rs +68 -0
  100. package/crates/bsnext_input/src/yml.rs +1 -0
  101. package/crates/bsnext_output/Cargo.toml +16 -0
  102. package/crates/bsnext_output/src/json.rs +11 -0
  103. package/crates/bsnext_output/src/lib.rs +25 -0
  104. package/crates/bsnext_output/src/pretty.rs +147 -0
  105. package/crates/bsnext_resp/Cargo.toml +13 -0
  106. package/crates/bsnext_resp/src/js/snippet.html +1 -0
  107. package/crates/bsnext_resp/src/js/ws.js +1 -0
  108. package/crates/bsnext_resp/src/lib.rs +79 -0
  109. package/crates/bsnext_system/Cargo.toml +29 -0
  110. package/crates/bsnext_system/src/args.rs +47 -0
  111. package/crates/bsnext_system/src/lib.rs +227 -0
  112. package/crates/bsnext_system/src/monitor.rs +241 -0
  113. package/crates/bsnext_system/src/monitor_any_watchables.rs +133 -0
  114. package/crates/bsnext_system/src/start_kind/snapshots/bsnext_system__start_kind__start_from_paths__test__test-2.snap +12 -0
  115. package/crates/bsnext_system/src/start_kind/snapshots/bsnext_system__start_kind__start_from_paths__test__test.snap +30 -0
  116. package/crates/bsnext_system/src/start_kind/start_from_example.rs +49 -0
  117. package/crates/bsnext_system/src/start_kind/start_from_inputs.rs +67 -0
  118. package/crates/bsnext_system/src/start_kind/start_from_paths.rs +51 -0
  119. package/crates/bsnext_system/src/start_kind.rs +56 -0
  120. package/crates/bsnext_system/src/startup.rs +51 -0
  121. package/crates/bsnext_tracing/Cargo.toml +10 -0
  122. package/crates/bsnext_tracing/src/lib.rs +127 -0
  123. package/examples/basic/input.yml +5 -0
  124. package/examples/basic/public/index.html +15 -0
  125. package/examples/basic/public/reset.css +52 -0
  126. package/examples/basic/public/script.js +1 -0
  127. package/examples/basic/public/styles.css +3 -0
  128. package/examples/kitchen-sink/a-file.md +1 -0
  129. package/examples/kitchen-sink/api/1.json +1 -0
  130. package/examples/kitchen-sink/api/2.json +3 -0
  131. package/examples/kitchen-sink/app.js +1 -0
  132. package/examples/kitchen-sink/input.html +185 -0
  133. package/examples/kitchen-sink/input.yml +133 -0
  134. package/examples/kitchen-sink/styles-2.css +3 -0
  135. package/examples/lit/index.html +21 -0
  136. package/examples/lit/input.yml +5 -0
  137. package/examples/lit/lit.js +82 -0
  138. package/examples/lit/package-lock.json +62 -0
  139. package/examples/lit/package.json +15 -0
  140. package/examples/md-single/frontmatter.md +35 -0
  141. package/examples/md-single/md-single.md +35 -0
  142. package/examples/openai/.nvm +1 -0
  143. package/examples/openai/build.mjs +21 -0
  144. package/examples/openai/index.html +13 -0
  145. package/examples/openai/input.yml +59 -0
  146. package/examples/openai/package-lock.json +720 -0
  147. package/examples/openai/package.json +21 -0
  148. package/examples/openai/src/index.js +21 -0
  149. package/examples/openai/sse/01.txt +8 -0
  150. package/examples/proxy-simple/input.yml +9 -0
  151. package/examples/single/input.yaml +26 -0
  152. package/index.d.ts +2 -0
  153. package/index.js +2 -1
  154. package/package.json +17 -17
  155. package/run.sh +6 -0
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "bsnext_client",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "tsc": "tsc",
8
+ "build": "npm run build --workspaces",
9
+ "test": "echo \"Error: no test specified\" && exit 1",
10
+ "schema": "ts-to-zod generated/dto.ts generated/schema.ts"
11
+ },
12
+ "workspaces": ["inject", "ui"],
13
+ "keywords": [],
14
+ "author": "",
15
+ "license": "ISC",
16
+ "type": "module",
17
+ "dependencies": {
18
+ "esbuild": "^0.20.2",
19
+ "livereload-js": "^4.0.2",
20
+ "rxjs": "^7.8.1",
21
+ "typescript": "^5.4.5",
22
+ "@types/node": "18.19.25",
23
+ "ts-to-zod": "^3.8.2",
24
+ "zod": "^3.22.4",
25
+ "prettier": "^3.2.5"
26
+ }
27
+ }
@@ -0,0 +1,11 @@
1
+ pub const DIR: &str = "dist";
2
+ pub const UI_CSS: &str = include_str!("../ui/dist/index.css");
3
+ pub const UI_JS: &str = include_str!("../ui/dist/index.js");
4
+ const UI_HTML: &str = include_str!("../ui/index.html");
5
+
6
+ pub fn html_with_base(base_override: &str) -> String {
7
+ let base = UI_HTML;
8
+ let next = format!("<base href=\"{}\" />", base_override);
9
+ let replaced = base.replace("<base href=\"/\" />", next.as_str());
10
+ replaced
11
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES6",
4
+ "module": "commonjs",
5
+ "allowJs": true,
6
+ "checkJs": true,
7
+ "noEmit": true,
8
+ "esModuleInterop": true,
9
+ "forceConsistentCasingInFileNames": true,
10
+ "strict": true,
11
+ "skipLibCheck": true,
12
+ "experimentalDecorators": true
13
+ },
14
+ "include": [
15
+ "inject",
16
+ "ui"
17
+ ],
18
+ "exclude": [
19
+ "ui/dist",
20
+ "inject/dist"
21
+ ]
22
+ }
@@ -0,0 +1,78 @@
1
+ /* styles/reset.css */
2
+ *,
3
+ *::before,
4
+ *::after {
5
+ box-sizing: border-box;
6
+ }
7
+ * {
8
+ margin: 0;
9
+ }
10
+ body {
11
+ line-height: 1.5;
12
+ -webkit-font-smoothing: antialiased;
13
+ }
14
+ img,
15
+ picture,
16
+ video,
17
+ canvas,
18
+ svg {
19
+ display: block;
20
+ max-width: 100%;
21
+ }
22
+ input,
23
+ button,
24
+ textarea,
25
+ select {
26
+ font: inherit;
27
+ }
28
+ p,
29
+ h1,
30
+ h2,
31
+ h3,
32
+ h4,
33
+ h5,
34
+ h6 {
35
+ overflow-wrap: break-word;
36
+ }
37
+ #root,
38
+ #__next {
39
+ isolation: isolate;
40
+ }
41
+
42
+ /* styles/style.css */
43
+ :root {
44
+ --brand-blue: #0F2634;
45
+ --brand-grey: #6D6D6D;
46
+ --brand-red: #F24747;
47
+ --brand-white: #FFFFFF;
48
+ --theme-txt-color: var(--brand-blue);
49
+ --theme-page-color: var(--brand-white);
50
+ }
51
+ body {
52
+ font-family:
53
+ -apple-system,
54
+ BlinkMacSystemFont,
55
+ "Segoe UI",
56
+ Roboto,
57
+ Oxygen,
58
+ Ubuntu,
59
+ Cantarell,
60
+ "Open Sans",
61
+ "Helvetica Neue",
62
+ sans-serif;
63
+ color: var(--theme-txt-color);
64
+ background: var(--theme-page-color);
65
+ }
66
+ svg:not(:root) {
67
+ overflow: hidden;
68
+ }
69
+ .main {
70
+ padding-left: 1em;
71
+ padding-right: 1em;
72
+ }
73
+ @media (prefers-color-scheme: dark) {
74
+ :root {
75
+ --theme-txt-color: var(--brand-white);
76
+ --theme-page-color: var(--brand-blue);
77
+ }
78
+ }