@amaster.ai/vite-plugins 1.1.0-beta.14 → 1.1.0-beta.16

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/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var crypto=require('crypto'),m=require('fs'),_=require('path'),url=require('url'),T=require('process');var _documentCurrentScript=typeof document!=='undefined'?document.currentScript:null;function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var m__default=/*#__PURE__*/_interopDefault(m);var ___default=/*#__PURE__*/_interopDefault(_);var T__default=/*#__PURE__*/_interopDefault(T);function k(o,t){let e=`${o}:${t}`;return crypto.createHash("md5").update(e).digest("hex").substring(0,12)}var R=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"]);function y(){let o=false;return {name:"vite-plugin-component-id",enforce:"pre",configResolved(t){o=t.command==="serve";},transform(t,e){if(!o||!/\.(tsx|jsx)$/.test(e)||e.includes("node_modules")||!/<[a-z]/.test(t))return null;try{let r=t,n=/<([a-z][\da-z]*)(?=[\s/>])/g,i,s=[];for(;(i=n.exec(t))!==null;){let a=i[1];if(!a)continue;let u=i.index,d=i.index+i[0].length;if(!R.has(a))continue;let c=d,p=!1,f=!1;for(;c<t.length&&!p;)t[c]===">"&&(p=!0,t.substring(u,c).includes("data-node-component-id")&&(f=!0)),c++;f||s.push({index:u,tag:a,tagEndIndex:d});}let l=t;for(let a=s.length-1;a>=0;a--){let u=s[a];if(!u)continue;let{index:d,tagEndIndex:c}=u,p=k(e,d),f=l.substring(0,c),v=l.substring(c);r=`${f} data-node-component-id="${p}"${v}`,l=r;}return {code:r,map:null}}catch{return null}}}}var L=`<script>
1
+ 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var crypto=require('crypto'),m=require('fs'),_=require('path'),url=require('url'),x=require('process');var _documentCurrentScript=typeof document!=='undefined'?document.currentScript:null;function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var m__default=/*#__PURE__*/_interopDefault(m);var ___default=/*#__PURE__*/_interopDefault(_);var x__default=/*#__PURE__*/_interopDefault(x);function O(n,e){let t=`${n}:${e}`;return crypto.createHash("md5").update(t).digest("hex").substring(0,12)}var A=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"]);function v(){let n=false;return {name:"vite-plugin-component-id",enforce:"pre",configResolved(e){n=e.command==="serve";},transform(e,t){if(!n||!/\.(tsx|jsx)$/.test(t)||t.includes("node_modules")||!/<[a-z]/.test(e))return null;try{let r=e,o=/<([a-z][\da-z]*)(?=[\s/>])/g,i,s=[];for(;(i=o.exec(e))!==null;){let a=i[1];if(!a)continue;let c=i.index,d=i.index+i[0].length;if(!A.has(a))continue;let l=d,p=!1,f=!1;for(;l<e.length&&!p;)e[l]===">"&&(p=!0,e.substring(c,l).includes("data-node-component-id")&&(f=!0)),l++;f||s.push({index:c,tag:a,tagEndIndex:d});}let u=e;for(let a=s.length-1;a>=0;a--){let c=s[a];if(!c)continue;let{index:d,tagEndIndex:l}=c,p=O(t,d),f=u.substring(0,l),y=u.substring(l);r=`${f} data-node-component-id="${p}"${y}`,u=r;}return {code:r,map:null}}catch{return null}}}}var q=`<script>
2
2
  document.addEventListener("click", (e) => {
3
3
  const element = e.target;
4
4
  const noJumpOut = document.body.classList.contains("forbid-jump-out")
@@ -16,15 +16,15 @@ document.addEventListener("click", (e) => {
16
16
  e.preventDefault();
17
17
  }
18
18
  });
19
- </script>`;function W(){try{let o=url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href))),t=_.dirname(o),e=_.resolve(t,"../dist/bridge.bridge.js");return `<script>
20
- ${m.readFileSync(e,"utf-8")}
21
- </script>`}catch(o){return console.warn("Failed to read bridge script:",o),""}}function S(){let o=false,t="";return {name:"vite-plugin-editor-bridge",configResolved(e){o=e.command==="serve",o&&(t=W());},transformIndexHtml(e){let n=`${L}${o?t:""}</body>`;return e.replace("</body>",n)}}}function w(o){let t=false,e=o?.routesFilePath||"src/routes.tsx";return {name:"vite-plugin-routes-expose",enforce:"post",configResolved(r){t=r.command==="serve";},transform(r,n){if(!t||!n.endsWith(e))return null;try{return r.includes("window.__APP_ROUTES__")?null:{code:`${r}
19
+ </script>`;function H(){try{let n=url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href))),e=_.dirname(n),t=_.resolve(e,"../dist/bridge.bridge.js");return `<script>
20
+ ${m.readFileSync(t,"utf-8")}
21
+ </script>`}catch(n){return console.warn("Failed to read bridge script:",n),""}}function S(){let n=false,e="";return {name:"vite-plugin-editor-bridge",configResolved(t){n=t.command==="serve",n&&(e=H());},transformIndexHtml(t){let o=`${q}${n?e:""}</body>`;return t.replace("</body>",o)}}}function b(n){let e=false,t=n?.routesFilePath||"src/routes.tsx";return {name:"vite-plugin-routes-expose",enforce:"post",configResolved(r){e=r.command==="serve";},transform(r,o){if(!e||!o.endsWith(t))return null;try{return r.includes("window.__APP_ROUTES__")?null:{code:`${r}
22
22
 
23
23
  // Development mode: Expose routes to window.__APP_ROUTES__
24
24
  if (typeof window !== 'undefined') {
25
25
  window.__APP_ROUTES__ = typeof routes !== 'undefined' && Array.isArray(routes) ? routes : [];
26
26
  }
27
- `,map:null}}catch{return null}}}}function b(){let o="",t=`
27
+ `,map:null}}catch{return null}}}}function w(){let n="",e=`
28
28
  <script>
29
29
  (function() {
30
30
  'use strict';
@@ -705,349 +705,14 @@ if (typeof window !== 'undefined') {
705
705
 
706
706
  originalConsole.log('[BrowserLogs] Log collection started');
707
707
  })();
708
- </script>`;return {name:"vite-plugin-browser-logs",configResolved(e){let r=e.root||T__default.default.cwd();o=___default.default.join(r,"browser.log");},configureServer(e){e.middlewares.use((r,n,i)=>{if(r.url==="/__browser__"&&r.method==="POST"){let s=r.headers.origin||"*",l="";r.on("data",a=>{l+=a.toString();}),r.on("end",()=>{try{let a=___default.default.dirname(o);m__default.default.existsSync(a)||m__default.default.mkdirSync(a,{recursive:!0}),m__default.default.appendFileSync(o,`${l}
709
- `,"utf-8"),n.writeHead(200,{"Content-Type":"application/json","Access-Control-Allow-Origin":s,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type"}),n.end(JSON.stringify({success:!0}));}catch(a){console.error("[BrowserLogs] Write error:",a),n.writeHead(500,{"Content-Type":"application/json","Access-Control-Allow-Origin":s,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type"}),n.end(JSON.stringify({success:false,error:String(a)}));}});}else if(r.url==="/__browser__"&&r.method==="OPTIONS"){let s=r.headers.origin||"*";n.writeHead(204,{"Access-Control-Allow-Origin":s,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type","Access-Control-Max-Age":"86400"}),n.end();}else if(r.url==="/__browser__"){let s=r.headers.origin||"*";n.writeHead(405,{"Content-Type":"application/json","Access-Control-Allow-Origin":s}),n.end(JSON.stringify({error:"Method not allowed"}));}else i();}),console.log("[BrowserLogs] Logs will be written to:",o);},transformIndexHtml(e){return e.replace(/<head([^>]*)>/i,`<head$1>${t}`)}}}function O(){let t=`
710
- <script>
711
- (function() {
712
- 'use strict';
713
-
714
- var PLUGIN_TAG = '[SmartReload]';
715
- // full-reload \u540E\u7B49\u5F85 WebSocket \u65AD\u5F00\u7684\u7A97\u53E3\u671F\uFF08ms\uFF09
716
- var DISCONNECT_DETECT_WINDOW = 300;
717
-
718
- // ============================================
719
- // \u72B6\u6001\u7BA1\u7406
720
- // ============================================
721
- var state = {
722
- // \u662F\u5426\u5DF2\u7ECF\u62E6\u622A\u4E86 Vite HMR WebSocket
723
- wsIntercepted: false,
724
- // \u662F\u5426\u6B63\u5728\u7B49\u5F85\u5224\u65AD full-reload \u7C7B\u578B\uFF08300ms \u7A97\u53E3\u671F\uFF09
725
- detectingReloadType: false,
726
- // \u5EF6\u8FDF\u6267\u884C full-reload \u7684\u5B9A\u65F6\u5668
727
- reloadTimer: null,
728
- // \u662F\u5426\u662F\u670D\u52A1\u5668\u91CD\u542F\u573A\u666F
729
- isServerRestart: false,
730
- // \u662F\u5426\u521A\u5B8C\u6210\u91CD\u8FDE\uFF0C\u9700\u8981\u5FFD\u7565\u4E0B\u4E00\u4E2A full-reload \u6D88\u606F
731
- // Vite 4 \u670D\u52A1\u5668\u542F\u52A8\u540E\u4F1A\u5411\u65B0\u8FDE\u63A5\u7684\u5BA2\u6237\u7AEF\u53D1\u9001 full-reload (path: *)
732
- // \u8FD9\u4E2A\u6D88\u606F\u5E94\u8BE5\u88AB\u5FFD\u7565\uFF0C\u56E0\u4E3A\u6211\u4EEC\u521A\u91CD\u8FDE\u6210\u529F\uFF0C\u4E0D\u9700\u8981\u5237\u65B0
733
- skipNextFullReload: false
734
- };
735
-
736
- // ============================================
737
- // \u65E5\u5FD7\u5DE5\u5177
738
- // ============================================
739
- function log() {
740
- var args = [PLUGIN_TAG];
741
- for (var i = 0; i < arguments.length; i++) {
742
- args.push(arguments[i]);
743
- }
744
- console.log.apply(console, args);
745
- }
746
-
747
- // ============================================
748
- // \u91CD\u7F6E\u72B6\u6001
749
- // ============================================
750
- function resetState() {
751
- state.detectingReloadType = false;
752
- state.isServerRestart = false;
753
- if (state.reloadTimer) {
754
- clearTimeout(state.reloadTimer);
755
- state.reloadTimer = null;
756
- }
757
- }
758
-
759
- // ============================================
760
- // \u6267\u884C\u771F\u6B63\u7684 full-reload
761
- // ============================================
762
- function executeFullReload() {
763
- log('Executing full-reload');
764
- resetState();
765
- location.reload();
766
- }
767
-
768
- // ============================================
769
- // __smartReload__\uFF1A\u68C0\u67E5\u662F\u5426\u5E94\u8BE5\u963B\u6B62 reload
770
- //
771
- // \u8FD4\u56DE true \u8868\u793A\u662F\u670D\u52A1\u5668\u91CD\u542F\u573A\u666F\uFF0C\u4E0D\u5E94\u8BE5\u5237\u65B0\u9875\u9762
772
- // \u8FD4\u56DE false \u8868\u793A\u5E94\u8BE5\u6B63\u5E38\u5237\u65B0
773
- //
774
- // Vite \u5BA2\u6237\u7AEF\u4EE3\u7801\u4E2D\u7684 WebSocket close handler \u5DF2\u88AB\u4FEE\u6539\u4E3A\uFF1A
775
- // if (window.__smartReload__ && window.__smartReload__()) {
776
- // socket = setupWebSocket(...); // \u91CD\u65B0\u521B\u5EFA WebSocket \u6062\u590D HMR
777
- // } else {
778
- // location.reload();
779
- // }
780
- // ============================================
781
- window.__smartReload__ = function() {
782
- if (state.isServerRestart) {
783
- log('Server restart detected, suppressing reload. Will reconnect WebSocket.');
784
- resetState();
785
- return true; // \u963B\u6B62 reload\uFF0C\u7531 Vite \u5BA2\u6237\u7AEF\u91CD\u65B0\u521B\u5EFA WebSocket
786
- }
787
- log('Non-restart scenario, allowing reload');
788
- return false; // \u5141\u8BB8\u6B63\u5E38 reload
789
- };
790
-
791
- // ============================================
792
- // \u62E6\u622A WebSocket \u6784\u9020\u51FD\u6570
793
- // ============================================
794
- var OriginalWebSocket = window.WebSocket;
795
-
796
- function isViteHmrWebSocket(url) {
797
- if (typeof url !== 'string') return false;
798
- return url.includes('/__vite_hmr') || url.includes('?token=');
799
- }
800
-
801
- function createWsProxy(ws) {
802
- var originalAddEventListener = ws.addEventListener.bind(ws);
803
- var originalRemoveEventListener = ws.removeEventListener.bind(ws);
804
-
805
- ws.addEventListener = function(type, listener, options) {
806
- if (type === 'message') {
807
- var wrappedListener = function(event) {
808
- var intercepted = handleWsMessage(event);
809
- if (!intercepted) {
810
- listener.call(ws, event);
811
- }
812
- };
813
- listener.__smartReloadWrapped__ = wrappedListener;
814
- return originalAddEventListener(type, wrappedListener, options);
815
- }
816
- return originalAddEventListener(type, listener, options);
817
- };
818
-
819
- ws.removeEventListener = function(type, listener, options) {
820
- if (type === 'message' && listener.__smartReloadWrapped__) {
821
- return originalRemoveEventListener(type, listener.__smartReloadWrapped__, options);
822
- }
823
- return originalRemoveEventListener(type, listener, options);
824
- };
825
-
826
- var originalOnMessage = null;
827
- var onMessageDescriptor = Object.getOwnPropertyDescriptor(WebSocket.prototype, 'onmessage') ||
828
- Object.getOwnPropertyDescriptor(ws, 'onmessage');
829
-
830
- if (onMessageDescriptor) {
831
- Object.defineProperty(ws, 'onmessage', {
832
- get: function() {
833
- return originalOnMessage;
834
- },
835
- set: function(handler) {
836
- originalOnMessage = handler;
837
- var wrappedHandler = function(event) {
838
- var intercepted = handleWsMessage(event);
839
- if (!intercepted && handler) {
840
- handler.call(ws, event);
841
- }
842
- };
843
- if (onMessageDescriptor.set) {
844
- onMessageDescriptor.set.call(ws, wrappedHandler);
845
- }
846
- },
847
- configurable: true
848
- });
849
- }
850
-
851
- originalAddEventListener('close', function(event) {
852
- handleWsClose(event);
853
- });
854
-
855
- originalAddEventListener('open', function() {
856
- handleWsOpen();
857
- });
858
-
859
- state.wsIntercepted = true;
860
- log('Vite HMR WebSocket intercepted');
861
-
862
- return ws;
863
- }
864
-
865
- window.WebSocket = function SmartReloadWebSocket(url, protocols) {
866
- var ws;
867
- if (protocols !== undefined) {
868
- ws = new OriginalWebSocket(url, protocols);
869
- } else {
870
- ws = new OriginalWebSocket(url);
871
- }
872
-
873
- if (isViteHmrWebSocket(url)) {
874
- return createWsProxy(ws);
875
- }
876
-
877
- return ws;
878
- };
879
-
880
- window.WebSocket.prototype = OriginalWebSocket.prototype;
881
- window.WebSocket.CONNECTING = OriginalWebSocket.CONNECTING;
882
- window.WebSocket.OPEN = OriginalWebSocket.OPEN;
883
- window.WebSocket.CLOSING = OriginalWebSocket.CLOSING;
884
- window.WebSocket.CLOSED = OriginalWebSocket.CLOSED;
885
-
886
- // ============================================
887
- // WebSocket \u6D88\u606F\u5904\u7406
888
- // ============================================
889
- function handleWsMessage(event) {
890
- var data;
891
- try {
892
- data = JSON.parse(event.data);
893
- } catch (e) {
894
- return false;
895
- }
896
-
897
- // \u5904\u7406 full-reload \u6D88\u606F
898
- if (data.type === 'full-reload') {
899
- // \u5982\u679C\u5728\u670D\u52A1\u5668\u91CD\u542F\u6A21\u5F0F\uFF0C\u62E6\u622A\u6240\u6709 full-reload
900
- if (state.isServerRestart) {
901
- log('Suppressed full-reload message during server restart');
902
- return true;
903
- }
904
-
905
- // \u521A\u5B8C\u6210\u91CD\u8FDE\uFF0C\u5FFD\u7565\u670D\u52A1\u5668\u542F\u52A8\u540E\u53D1\u9001\u7684\u7B2C\u4E00\u4E2A full-reload
906
- if (state.skipNextFullReload) {
907
- state.skipNextFullReload = false;
908
- log('Suppressed post-reconnect full-reload, path:', data.path || '(none)');
909
- return true;
910
- }
911
-
912
- log('Intercepted full-reload, path:', data.path || '(none)');
913
-
914
- // \u8FDB\u5165\u68C0\u6D4B\u6A21\u5F0F\uFF1A\u7B49\u5F85\u770B WebSocket \u662F\u5426\u65AD\u5F00
915
- state.detectingReloadType = true;
916
-
917
- // \u5982\u679C\u7A97\u53E3\u671F\u5185 WebSocket \u6CA1\u6709\u65AD\u5F00\uFF0C\u8BF4\u660E\u662F\u771F\u6B63\u7684\u6A21\u5757\u53D8\u66F4
918
- state.reloadTimer = setTimeout(function() {
919
- if (state.detectingReloadType && !state.isServerRestart) {
920
- log('WebSocket still connected after ' + DISCONNECT_DETECT_WINDOW + 'ms - real module change, executing reload');
921
- state.detectingReloadType = false;
922
- executeFullReload();
923
- }
924
- }, DISCONNECT_DETECT_WINDOW);
925
-
926
- return true;
927
- }
928
-
929
- // \u5904\u7406 connected \u6D88\u606F
930
- if (data.type === 'connected') {
931
- if (state.isServerRestart) {
932
- log('HMR reconnected after server restart! Page was NOT reloaded.');
933
- resetState();
934
- }
935
- return false;
936
- }
937
-
938
- return false;
939
- }
940
-
941
- // ============================================
942
- // WebSocket \u8FDE\u63A5\u4E8B\u4EF6\u5904\u7406
943
- // ============================================
944
- function handleWsClose(event) {
945
- log('WebSocket closed, code:', event.code, 'wasClean:', event.wasClean);
946
-
947
- // \u573A\u666F1\uFF1A\u6536\u5230 full-reload \u540E WebSocket \u65AD\u5F00 \u2192 \u670D\u52A1\u5668\u91CD\u542F
948
- if (state.detectingReloadType) {
949
- log('Entering server restart mode: full-reload followed by disconnect');
950
- state.isServerRestart = true;
951
- state.detectingReloadType = false;
952
- if (state.reloadTimer) {
953
- clearTimeout(state.reloadTimer);
954
- state.reloadTimer = null;
955
- }
956
- return;
957
- }
958
-
959
- // \u573A\u666F2\uFF1AWebSocket \u76F4\u63A5\u65AD\u5F00\uFF08\u975E\u6B63\u5E38\u5173\u95ED\uFF09
960
- if (!state.isServerRestart && !event.wasClean) {
961
- log('Entering server restart mode: unexpected disconnect');
962
- state.isServerRestart = true;
963
- }
964
- }
965
-
966
- function handleWsOpen() {
967
- log('WebSocket opened');
968
- }
969
-
970
- // ============================================
971
- // \u66B4\u9732 API \u4F9B\u8C03\u8BD5\u4F7F\u7528
972
- // ============================================
973
- window.__smartReloadState__ = state;
974
- window.__OriginalWebSocket__ = OriginalWebSocket;
975
- window.__smartReloadForceReload__ = function() {
976
- log('Force reload triggered by user');
977
- resetState();
978
- location.reload();
979
- };
980
-
981
- log('Smart Reload initialized');
982
- })();
983
- </script>`.replace(/^\s*<script>\s*/i,"").replace(/\s*<\/script>\s*$/i,"");return {name:"vite-plugin-smart-reload",apply:"serve",transformIndexHtml:{order:"pre",handler(){return [{tag:"script",injectTo:"head-prepend",children:t}]}},transform(e,r){if(!r.includes("vite/dist/client/client.mjs"))return null;let n=e;return n=n.replace(/function setupWebSocket\(([^)]*)\)\s*\{[\s\n]*const (socket\b)/,(i,s,l)=>i.replace(`const ${l}`,`let ${l}`)),n=n.replace(/^(let socket;)$/m,`$1
984
- function __setOuterSocket__(s) { socket = s; }`),n=n.replace(/await waitForSuccessfulPing\(protocol,\s*hostAndPath\);\s*\n\s*location\.reload\(\)/,`await waitForSuccessfulPing(protocol, hostAndPath);
985
- if (window.__smartReload__ && window.__smartReload__()) {
986
- // \u5B9A\u4E49\u53EF\u9012\u5F52\u8C03\u7528\u7684\u91CD\u8FDE\u51FD\u6570\uFF0C\u652F\u6301\u591A\u6B21 PM2 \u91CD\u542F
987
- async function __smartReloadReconnect__() {
988
- console.log('[SmartReload] Vite client: server is back, fetching new WebSocket token...');
989
- try {
990
- var clientResp = await fetch('/@vite/client');
991
- var clientCode = await clientResp.text();
992
- var tokenMatch = clientCode.match(/const\\s+wsToken\\s*=\\s*"([^"]+)"/);
993
- if (tokenMatch && tokenMatch[1]) {
994
- console.log('[SmartReload] Got new wsToken from server');
995
- var newToken = tokenMatch[1];
996
- var wsUrl = protocol + '://' + hostAndPath + '?token=' + newToken;
997
- console.log('[SmartReload] Reconnecting with new token to: ' + wsUrl);
998
- var newSocket = new WebSocket(wsUrl, 'vite-hmr');
999
- var newIsOpened = false;
1000
- newSocket.addEventListener('open', function() {
1001
- newIsOpened = true;
1002
- console.log('[SmartReload] WebSocket reconnected successfully!');
1003
- // \u6807\u8BB0\u5FFD\u7565\u4E0B\u4E00\u4E2A full-reload\uFF08Vite 4 \u670D\u52A1\u5668\u542F\u52A8\u540E\u4F1A\u53D1\u9001\uFF09
1004
- if (window.__smartReloadState__) {
1005
- window.__smartReloadState__.skipNextFullReload = true;
1006
- console.log('[SmartReload] Will skip next full-reload message');
1007
- }
1008
- notifyListeners('vite:ws:connect', { webSocket: newSocket });
1009
- }, { once: true });
1010
- newSocket.addEventListener('message', async function(ev) {
1011
- handleMessage(JSON.parse(ev.data));
1012
- });
1013
- newSocket.addEventListener('close', async function(ev) {
1014
- if (ev.wasClean) return;
1015
- if (!newIsOpened && onCloseWithoutOpen) {
1016
- onCloseWithoutOpen();
1017
- return;
1018
- }
1019
- notifyListeners('vite:ws:disconnect', { webSocket: newSocket });
1020
- console.log('[vite] server connection lost. Polling for restart...');
1021
- await waitForSuccessfulPing(protocol, hostAndPath);
1022
- if (window.__smartReload__ && window.__smartReload__()) {
1023
- await __smartReloadReconnect__();
1024
- } else {
1025
- location.reload();
1026
- }
1027
- });
1028
- // \u66F4\u65B0 setupWebSocket \u5185\u90E8\u7684\u5C40\u90E8 socket \u53D8\u91CF
1029
- socket = newSocket;
1030
- // \u901A\u8FC7 setter \u66F4\u65B0\u5916\u90E8\u4F5C\u7528\u57DF\u7684 socket \u53D8\u91CF
1031
- if (typeof __setOuterSocket__ === 'function') __setOuterSocket__(newSocket);
1032
- } else {
1033
- console.log('[SmartReload] Could not extract new wsToken, reloading page');
1034
- location.reload();
1035
- }
1036
- } catch(e) {
1037
- console.log('[SmartReload] Failed to fetch new client code, reloading page', e);
1038
- location.reload();
1039
- }
1040
- }
1041
- await __smartReloadReconnect__();
1042
- } else {
1043
- location.reload();
1044
- }`),n!==e?{code:n,map:null}:null}}}function h(o={}){let{designWidth:t=375,maxWidth:e=750,baseFontSize:r=12,minRootSize:n=12,maxRootSize:i=24}=o;return {name:"vite-plugin-taro-style-adapter",apply:"serve",transformIndexHtml(s){let l=`
708
+ </script>`;return {name:"vite-plugin-browser-logs",configResolved(t){let r=t.root||x__default.default.cwd();n=___default.default.join(r,"browser.log");},configureServer(t){t.middlewares.use((r,o,i)=>{if(r.url==="/__browser__"&&r.method==="POST"){let s=r.headers.origin||"*",u="";r.on("data",a=>{u+=a.toString();}),r.on("end",()=>{try{let a=___default.default.dirname(n);m__default.default.existsSync(a)||m__default.default.mkdirSync(a,{recursive:!0}),m__default.default.appendFileSync(n,`${u}
709
+ `,"utf-8"),o.writeHead(200,{"Content-Type":"application/json","Access-Control-Allow-Origin":s,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type"}),o.end(JSON.stringify({success:!0}));}catch(a){console.error("[BrowserLogs] Write error:",a),o.writeHead(500,{"Content-Type":"application/json","Access-Control-Allow-Origin":s,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type"}),o.end(JSON.stringify({success:false,error:String(a)}));}});}else if(r.url==="/__browser__"&&r.method==="OPTIONS"){let s=r.headers.origin||"*";o.writeHead(204,{"Access-Control-Allow-Origin":s,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type","Access-Control-Max-Age":"86400"}),o.end();}else if(r.url==="/__browser__"){let s=r.headers.origin||"*";o.writeHead(405,{"Content-Type":"application/json","Access-Control-Allow-Origin":s}),o.end(JSON.stringify({error:"Method not allowed"}));}else i();}),console.log("[BrowserLogs] Logs will be written to:",n);},transformIndexHtml(t){return t.replace(/<head([^>]*)>/i,`<head$1>${e}`)}}}function h(n={}){let{designWidth:e=375,maxWidth:t=750,baseFontSize:r=12,minRootSize:o=12,maxRootSize:i=24}=n;return {name:"vite-plugin-taro-style-adapter",apply:"serve",transformIndexHtml(s){let u=`
1045
710
  <script data-taro-flexible="true">
1046
711
  (function() {
1047
- var designWidth = ${t};
1048
- var maxWidth = ${e};
712
+ var designWidth = ${e};
713
+ var maxWidth = ${t};
1049
714
  var baseFontSize = ${r};
1050
- var minRootSize = ${n};
715
+ var minRootSize = ${o};
1051
716
  var maxRootSize = ${i};
1052
717
 
1053
718
  function setRootFontSize() {
@@ -1082,7 +747,7 @@ function __setOuterSocket__(s) { socket = s; }`),n=n.replace(/await waitForSucce
1082
747
  document.addEventListener('DOMContentLoaded', setRootFontSize);
1083
748
  })();
1084
749
  </script>
1085
- `;return s.replace("</head>",`${l}
750
+ `;return s.replace("</head>",`${u}
1086
751
  <style data-taro-adapter="true">
1087
752
  /* \u4EC5 H5 \u751F\u6548\uFF1A\u9690\u85CF Taro \u9875\u9762\u5BB9\u5668\u6EDA\u52A8\u6761\uFF0C\u4F46\u4ECD\u53EF\u6EDA\u52A8 */
1088
753
  .taro_page {
@@ -1128,5 +793,5 @@ function __setOuterSocket__(s) { socket = s; }`),n=n.replace(/await waitForSucce
1128
793
  object-fit: contain;
1129
794
  }
1130
795
  </style>
1131
- </head>`)}}}function g(o={}){let{ratio:t=2}=o;return {postcssPlugin:"postcss-rpx2px",Declaration(e){e.value.includes("rpx")&&(e.value=e.value.replace(/(-?\d*\.?\d+)rpx/gi,(r,n)=>{let i=parseFloat(n)/t;return i===0?"0":`${i}px`}));}}}g.postcss=true;function H(o={}){let{additional:t=[],autoInjectTaroApp:e=true,autoInjectVite:r=true}=o,n={},i=new Set(t);return e&&Object.keys(process.env).forEach(s=>{s.startsWith("TARO_APP_")&&i.add(s);}),r&&Object.keys(process.env).forEach(s=>{s.startsWith("VITE_")&&i.add(s);}),i.forEach(s=>{let l=process.env[s]||"";n[`process.env.${s}`]=JSON.stringify(l);}),n}function q(){return {"process.env.TARO_APP_API_BASE_URL":JSON.stringify(process.env.TARO_APP_API_BASE_URL||""),"process.env.VITE_API_BASE_URL":JSON.stringify(process.env.VITE_API_BASE_URL||"")}}function D(o={}){let t=[h(o.styleAdapter),{name:"dev-postcss-rpx2px-plugin",apply:"serve",config(e){T__default.default.env.TARO_ENV==="h5"&&typeof e.css?.postcss=="object"&&e.css?.postcss.plugins?.unshift(g());}},y(),S(),w(),O()];return T__default.default.env.WORKSPACE_GIT_REPO&&t.push(b()),t}exports.componentIdPlugin=y;exports.default=D;exports.editorBridgePlugin=S;exports.injectAmasterEnv=q;exports.injectTaroEnv=H;exports.routesExposePlugin=w;exports.rpx2pxPlugin=g;exports.smartReloadPlugin=O;exports.taroStyleAdapterPlugin=h;//# sourceMappingURL=index.cjs.map
796
+ </head>`)}}}function g(n={}){let{ratio:e=2}=n;return {postcssPlugin:"postcss-rpx2px",Declaration(t){t.value.includes("rpx")&&(t.value=t.value.replace(/(-?\d*\.?\d+)rpx/gi,(r,o)=>{let i=parseFloat(o)/e;return i===0?"0":`${i}px`}));}}}g.postcss=true;function k(n={}){let{additional:e=[],autoInjectTaroApp:t=true,autoInjectVite:r=true}=n,o={},i=new Set(e);return t&&Object.keys(process.env).forEach(s=>{s.startsWith("TARO_APP_")&&i.add(s);}),r&&Object.keys(process.env).forEach(s=>{s.startsWith("VITE_")&&i.add(s);}),i.forEach(s=>{let u=process.env[s]||"";o[`process.env.${s}`]=JSON.stringify(u);}),o}function C(){return {"process.env.TARO_APP_API_BASE_URL":JSON.stringify(process.env.TARO_APP_API_BASE_URL||""),"process.env.VITE_API_BASE_URL":JSON.stringify(process.env.VITE_API_BASE_URL||"")}}function j(n={}){let e=[h(n.styleAdapter),{name:"dev-postcss-rpx2px-plugin",apply:"serve",config(t){x__default.default.env.TARO_ENV==="h5"&&typeof t.css?.postcss=="object"&&t.css?.postcss.plugins?.unshift(g());}},v(),S(),b()];return x__default.default.env.WORKSPACE_GIT_REPO&&e.push(w()),e}exports.componentIdPlugin=v;exports.default=j;exports.editorBridgePlugin=S;exports.injectAmasterEnv=C;exports.injectTaroEnv=k;exports.routesExposePlugin=b;exports.rpx2pxPlugin=g;exports.taroStyleAdapterPlugin=h;//# sourceMappingURL=index.cjs.map
1132
797
  //# sourceMappingURL=index.cjs.map