harperdb 4.7.21 → 4.7.22
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/README.md +1 -1
- package/bin/harperdb.js +1 -1
- package/bin/lite.js +1 -1
- package/launchServiceScripts/launchNatsIngestService.js +1 -1
- package/launchServiceScripts/launchNatsReplyService.js +1 -1
- package/launchServiceScripts/launchUpdateNodes4-0-0.js +1 -1
- package/npm-shrinkwrap.json +41 -82
- package/package.json +1 -1
- package/server/jobs/jobProcess.js +1 -1
- package/server/threads/threadServer.js +1 -1
- package/studio/web/assets/{index-cZbhNKPv.js → index-BlG-cpH9.js} +2 -2
- package/studio/web/assets/{index-cZbhNKPv.js.map → index-BlG-cpH9.js.map} +1 -1
- package/studio/web/assets/{index-BMKHXWrK.js → index-BpmqvC1O.js} +5 -5
- package/studio/web/assets/{index-BMKHXWrK.js.map → index-BpmqvC1O.js.map} +1 -1
- package/studio/web/assets/{index-DP5O80Ld.js → index-DFovvBYL.js} +2 -2
- package/studio/web/assets/{index-DP5O80Ld.js.map → index-DFovvBYL.js.map} +1 -1
- package/studio/web/assets/{index.lazy-_WqXCxX6.js → index.lazy-BhReIK4y.js} +2 -2
- package/studio/web/assets/{index.lazy-_WqXCxX6.js.map → index.lazy-BhReIK4y.js.map} +1 -1
- package/studio/web/assets/{profiler-CiZIC7ZI.js → profiler-BhXa8xgR.js} +2 -2
- package/studio/web/assets/{profiler-CiZIC7ZI.js.map → profiler-BhXa8xgR.js.map} +1 -1
- package/studio/web/assets/{react-redux-D8H6oZRQ.js → react-redux-DkN7OdDj.js} +2 -2
- package/studio/web/assets/{react-redux-D8H6oZRQ.js.map → react-redux-DkN7OdDj.js.map} +1 -1
- package/studio/web/assets/{startRecording-oz3NQO5N.js → startRecording-Da15t52a.js} +2 -2
- package/studio/web/assets/{startRecording-oz3NQO5N.js.map → startRecording-Da15t52a.js.map} +1 -1
- package/studio/web/index.html +1 -1
- package/utility/scripts/restartHdb.js +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});import{Y as createHttpRequest,an as jsonStringify,ao as objectEntries,_ as addTelemetryDebug,ap as buildTags,aq as currentDrift,ar as createValueHistory,as as RumPerformanceEntryType,at as RumLongTaskEntryType,au as addDuration,av as SESSION_TIME_OUT_DELAY,aw as mockable,z as addEventListener,ax as getGlobalObject,ay as display,U as setTimeout,az as clocksNow,T as clearTimeout,l as elapsed,aA as clocksOrigin,aB as monitorError}from"./index-BMKHXWrK.js";function createFormDataTransport(configuration,lifeCycle,createEncoder,streamId){const reportError=__name(error=>{lifeCycle.notify(14,{error}),addTelemetryDebug("Error reported to customer",{"error.message":error.message})},"reportError"),httpRequest=createHttpRequest([configuration.profilingEndpointBuilder],reportError),encoder=createEncoder(streamId);return{async send({event,...attachments}){const formData=new FormData,serializedEvent=jsonStringify(event);if(!serializedEvent)throw new Error("Failed to serialize event");formData.append("event",new Blob([serializedEvent],{type:"application/json"}),"event.json");let bytesCount=serializedEvent.length;for(const[key,value]of objectEntries(attachments)){const serializedValue=jsonStringify(value);if(!serializedValue)throw new Error("Failed to serialize attachment");const result=await encode(encoder,serializedValue);bytesCount+=result.outputBytesCount,formData.append(key,new Blob([result.output]),key)}httpRequest.send({data:formData,bytesCount})}}}__name(createFormDataTransport,"createFormDataTransport");function encode(encoder,data){return new Promise(resolve=>{encoder.write(data),encoder.finish(encoderResult=>{resolve(encoderResult)})})}__name(encode,"encode");function getNumberOfSamples(samples){let numberOfSamples=0;for(const sample of samples)sample.stackId!==void 0&&numberOfSamples++;return numberOfSamples}__name(getNumberOfSamples,"getNumberOfSamples");const PATH_MIXED_ALPHANUMERICS=/\/(?![vV]\d{1,2}\/)([^/\d?]*\d+[^/?]*)/g;function getDefaultViewName(viewPathUrl){return viewPathUrl?viewPathUrl.replace(PATH_MIXED_ALPHANUMERICS,"/?"):"/"}__name(getDefaultViewName,"getDefaultViewName");const getCustomOrDefaultViewName=__name((customViewName,viewPathUrl)=>customViewName||getDefaultViewName(viewPathUrl),"getCustomOrDefaultViewName");function buildProfileEventAttributes(profilerTrace,applicationId,sessionId){const{ids,names}=extractViewIdsAndNames(profilerTrace.views),longTaskIds=profilerTrace.longTasks.map(longTask=>longTask.id).filter(id=>id!==void 0),attributes={application:{id:applicationId}};return sessionId&&(attributes.session={id:sessionId}),ids.length&&(attributes.view={id:ids,name:names}),longTaskIds.length&&(attributes.long_task={id:longTaskIds}),attributes}__name(buildProfileEventAttributes,"buildProfileEventAttributes");function extractViewIdsAndNames(views){const result={ids:[],names:[]};for(const view of views)result.ids.push(view.viewId),view.viewName&&result.names.push(view.viewName);return result.names=Array.from(new Set(result.names)),result}__name(extractViewIdsAndNames,"extractViewIdsAndNames");function assembleProfilingPayload(profilerTrace,configuration,sessionId){return{event:buildProfileEvent(profilerTrace,configuration,sessionId),"wall-time.json":profilerTrace}}__name(assembleProfilingPayload,"assembleProfilingPayload");function buildProfileEvent(profilerTrace,configuration,sessionId){const tags=buildTags(configuration),profileAttributes=buildProfileEventAttributes(profilerTrace,configuration.applicationId,sessionId),profileEventTags=buildProfileEventTags(tags);return{...profileAttributes,attachments:["wall-time.json"],start:new Date(profilerTrace.startClocks.timeStamp).toISOString(),end:new Date(profilerTrace.endClocks.timeStamp).toISOString(),family:"chrome",runtime:"chrome",format:"json",version:4,tags_profiler:profileEventTags.join(","),_dd:{clock_drift:currentDrift()}}}__name(buildProfileEvent,"buildProfileEvent");function buildProfileEventTags(tags){return tags.concat(["language:javascript","runtime:chrome","family:chrome","host:browser"])}__name(buildProfileEventTags,"buildProfileEventTags");const LONG_TASK_ID_HISTORY_EXPIRE_DELAY=SESSION_TIME_OUT_DELAY;function createLongTaskHistory(lifeCycle){const history=createValueHistory({expireDelay:LONG_TASK_ID_HISTORY_EXPIRE_DELAY});return lifeCycle.subscribe(12,({rawRumEvent,startClocks,duration})=>{rawRumEvent.type==="long_task"&&history.add({id:rawRumEvent.long_task.id,startClocks,duration,entryType:rawRumEvent.long_task.entry_type===RumLongTaskEntryType.LONG_TASK?RumPerformanceEntryType.LONG_TASK:RumPerformanceEntryType.LONG_ANIMATION_FRAME},startClocks.relative).close(addDuration(startClocks.relative,duration))}),history}__name(createLongTaskHistory,"createLongTaskHistory");const DEFAULT_RUM_PROFILER_CONFIGURATION={sampleIntervalMs:10,collectIntervalMs:6e4,minProfileDurationMs:5e3,minNumberOfSamples:50};function createRumProfiler(configuration,lifeCycle,session,profilingContextManager,createEncoder,viewHistory,profilerConfiguration=DEFAULT_RUM_PROFILER_CONFIGURATION){const transport=createFormDataTransport(configuration,lifeCycle,createEncoder,6);let lastViewEntry;const globalCleanupTasks=[],longTaskHistory=mockable(createLongTaskHistory)(lifeCycle);let instance={state:"stopped",stateReason:"initializing"};lifeCycle.subscribe(9,()=>{stopProfiling("session-expired")}),lifeCycle.subscribe(10,()=>{instance.state==="stopped"&&instance.stateReason==="session-expired"&&start()});function start(){if(instance.state==="running")return;const viewEntry=viewHistory.findView();lastViewEntry=viewEntry?{startClocks:viewEntry.startClocks,viewId:viewEntry.id,viewName:getCustomOrDefaultViewName(viewEntry.name,document.location.pathname)}:void 0,globalCleanupTasks.push(addEventListener(configuration,window,"visibilitychange",handleVisibilityChange).stop,addEventListener(configuration,window,"beforeunload",handleBeforeUnload).stop),startNextProfilerInstance()}__name(start,"start");function stop(){stopProfiling("stopped-by-user")}__name(stop,"stop");function stopProfiling(reason){stopProfilerInstance(reason),globalCleanupTasks.forEach(task=>task()),globalCleanupTasks.length=0,profilingContextManager.set({status:"stopped",error_reason:void 0})}__name(stopProfiling,"stopProfiling");function addEventListeners(existingInstance){if(existingInstance.state==="running")return{cleanupTasks:existingInstance.cleanupTasks};const cleanupTasks=[],viewUpdatedSubscription=lifeCycle.subscribe(2,view=>{const viewEntry={viewId:view.id,viewName:getCustomOrDefaultViewName(view.name,document.location.pathname),startClocks:view.startClocks};collectViewEntry(viewEntry),lastViewEntry=viewEntry});return cleanupTasks.push(viewUpdatedSubscription.unsubscribe),{cleanupTasks}}__name(addEventListeners,"addEventListeners");function startNextProfilerInstance(){const globalThisProfiler=getGlobalObject().Profiler;if(!globalThisProfiler)throw profilingContextManager.set({status:"error",error_reason:"not-supported-by-browser"}),new Error("RUM Profiler is not supported in this browser.");instance.state==="running"&&collectProfilerInstance(instance);const{cleanupTasks}=addEventListeners(instance);let profiler;try{profiler=new globalThisProfiler({sampleInterval:profilerConfiguration.sampleIntervalMs,maxBufferSize:Math.round(profilerConfiguration.collectIntervalMs*1.5/profilerConfiguration.sampleIntervalMs)})}catch(e){e instanceof Error&&e.message.includes("disabled by Document Policy")?(display.warn("[DD_RUM] Profiler startup failed. Ensure your server includes the `Document-Policy: js-profiling` response header when serving HTML pages.",e),profilingContextManager.set({status:"error",error_reason:"missing-document-policy-header"})):profilingContextManager.set({status:"error",error_reason:"unexpected-exception"});return}profilingContextManager.set({status:"running",error_reason:void 0}),instance={state:"running",startClocks:clocksNow(),profiler,timeoutId:setTimeout(startNextProfilerInstance,profilerConfiguration.collectIntervalMs),views:[],cleanupTasks,longTasks:[]},collectViewEntry(lastViewEntry),profiler.addEventListener("samplebufferfull",handleSampleBufferFull)}__name(startNextProfilerInstance,"startNextProfilerInstance");function collectProfilerInstance(runningInstance){clearTimeout(runningInstance.timeoutId),runningInstance.profiler.removeEventListener("samplebufferfull",handleSampleBufferFull);const{startClocks,views}=runningInstance;runningInstance.profiler.stop().then(trace=>{const endClocks=clocksNow(),duration=elapsed(startClocks.timeStamp,endClocks.timeStamp),longTasks=longTaskHistory.findAll(startClocks.relative,duration),isBelowDurationThreshold=duration<profilerConfiguration.minProfileDurationMs,isBelowSampleThreshold=getNumberOfSamples(trace.samples)<profilerConfiguration.minNumberOfSamples;longTasks.length===0&&(isBelowDurationThreshold||isBelowSampleThreshold)||handleProfilerTrace(Object.assign(trace,{startClocks,endClocks,clocksOrigin:clocksOrigin(),longTasks,views,sampleInterval:profilerConfiguration.sampleIntervalMs}))}).catch(monitorError)}__name(collectProfilerInstance,"collectProfilerInstance");function stopProfilerInstance(stateReason){if(instance.state!=="running"){(instance.state==="paused"||instance.state==="stopped"&&stateReason==="stopped-by-user")&&(instance={state:"stopped",stateReason});return}const runningInstance=instance;instance={state:"stopped",stateReason},runningInstance.cleanupTasks.forEach(cleanupTask=>cleanupTask()),collectProfilerInstance(runningInstance)}__name(stopProfilerInstance,"stopProfilerInstance");function pauseProfilerInstance(){if(instance.state!=="running")return;const runningInstance=instance;instance={state:"paused"},runningInstance.cleanupTasks.forEach(cleanupTask=>cleanupTask()),collectProfilerInstance(runningInstance)}__name(pauseProfilerInstance,"pauseProfilerInstance");function collectViewEntry(viewEntry){instance.state!=="running"||!viewEntry||instance.views.push(viewEntry)}__name(collectViewEntry,"collectViewEntry");function handleProfilerTrace(trace){var _a;const sessionId=(_a=session.findTrackedSession())===null||_a===void 0?void 0:_a.id,payload=assembleProfilingPayload(trace,configuration,sessionId);transport.send(payload)}__name(handleProfilerTrace,"handleProfilerTrace");function handleSampleBufferFull(){startNextProfilerInstance()}__name(handleSampleBufferFull,"handleSampleBufferFull");function handleVisibilityChange(){document.visibilityState==="hidden"&&instance.state==="running"?pauseProfilerInstance():document.visibilityState==="visible"&&instance.state==="paused"&&startNextProfilerInstance()}__name(handleVisibilityChange,"handleVisibilityChange");function handleBeforeUnload(){startNextProfilerInstance()}__name(handleBeforeUnload,"handleBeforeUnload");function isStopped(){return instance.state==="stopped"}__name(isStopped,"isStopped");function isRunning(){return instance.state==="running"}__name(isRunning,"isRunning");function isPaused(){return instance.state==="paused"}return __name(isPaused,"isPaused"),{start,stop,isStopped,isRunning,isPaused}}__name(createRumProfiler,"createRumProfiler");export{DEFAULT_RUM_PROFILER_CONFIGURATION,createRumProfiler};
|
|
2
|
-
//# sourceMappingURL=profiler-
|
|
1
|
+
var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});import{Y as createHttpRequest,an as jsonStringify,ao as objectEntries,_ as addTelemetryDebug,ap as buildTags,aq as currentDrift,ar as createValueHistory,as as RumPerformanceEntryType,at as RumLongTaskEntryType,au as addDuration,av as SESSION_TIME_OUT_DELAY,aw as mockable,z as addEventListener,ax as getGlobalObject,ay as display,U as setTimeout,az as clocksNow,T as clearTimeout,l as elapsed,aA as clocksOrigin,aB as monitorError}from"./index-BpmqvC1O.js";function createFormDataTransport(configuration,lifeCycle,createEncoder,streamId){const reportError=__name(error=>{lifeCycle.notify(14,{error}),addTelemetryDebug("Error reported to customer",{"error.message":error.message})},"reportError"),httpRequest=createHttpRequest([configuration.profilingEndpointBuilder],reportError),encoder=createEncoder(streamId);return{async send({event,...attachments}){const formData=new FormData,serializedEvent=jsonStringify(event);if(!serializedEvent)throw new Error("Failed to serialize event");formData.append("event",new Blob([serializedEvent],{type:"application/json"}),"event.json");let bytesCount=serializedEvent.length;for(const[key,value]of objectEntries(attachments)){const serializedValue=jsonStringify(value);if(!serializedValue)throw new Error("Failed to serialize attachment");const result=await encode(encoder,serializedValue);bytesCount+=result.outputBytesCount,formData.append(key,new Blob([result.output]),key)}httpRequest.send({data:formData,bytesCount})}}}__name(createFormDataTransport,"createFormDataTransport");function encode(encoder,data){return new Promise(resolve=>{encoder.write(data),encoder.finish(encoderResult=>{resolve(encoderResult)})})}__name(encode,"encode");function getNumberOfSamples(samples){let numberOfSamples=0;for(const sample of samples)sample.stackId!==void 0&&numberOfSamples++;return numberOfSamples}__name(getNumberOfSamples,"getNumberOfSamples");const PATH_MIXED_ALPHANUMERICS=/\/(?![vV]\d{1,2}\/)([^/\d?]*\d+[^/?]*)/g;function getDefaultViewName(viewPathUrl){return viewPathUrl?viewPathUrl.replace(PATH_MIXED_ALPHANUMERICS,"/?"):"/"}__name(getDefaultViewName,"getDefaultViewName");const getCustomOrDefaultViewName=__name((customViewName,viewPathUrl)=>customViewName||getDefaultViewName(viewPathUrl),"getCustomOrDefaultViewName");function buildProfileEventAttributes(profilerTrace,applicationId,sessionId){const{ids,names}=extractViewIdsAndNames(profilerTrace.views),longTaskIds=profilerTrace.longTasks.map(longTask=>longTask.id).filter(id=>id!==void 0),attributes={application:{id:applicationId}};return sessionId&&(attributes.session={id:sessionId}),ids.length&&(attributes.view={id:ids,name:names}),longTaskIds.length&&(attributes.long_task={id:longTaskIds}),attributes}__name(buildProfileEventAttributes,"buildProfileEventAttributes");function extractViewIdsAndNames(views){const result={ids:[],names:[]};for(const view of views)result.ids.push(view.viewId),view.viewName&&result.names.push(view.viewName);return result.names=Array.from(new Set(result.names)),result}__name(extractViewIdsAndNames,"extractViewIdsAndNames");function assembleProfilingPayload(profilerTrace,configuration,sessionId){return{event:buildProfileEvent(profilerTrace,configuration,sessionId),"wall-time.json":profilerTrace}}__name(assembleProfilingPayload,"assembleProfilingPayload");function buildProfileEvent(profilerTrace,configuration,sessionId){const tags=buildTags(configuration),profileAttributes=buildProfileEventAttributes(profilerTrace,configuration.applicationId,sessionId),profileEventTags=buildProfileEventTags(tags);return{...profileAttributes,attachments:["wall-time.json"],start:new Date(profilerTrace.startClocks.timeStamp).toISOString(),end:new Date(profilerTrace.endClocks.timeStamp).toISOString(),family:"chrome",runtime:"chrome",format:"json",version:4,tags_profiler:profileEventTags.join(","),_dd:{clock_drift:currentDrift()}}}__name(buildProfileEvent,"buildProfileEvent");function buildProfileEventTags(tags){return tags.concat(["language:javascript","runtime:chrome","family:chrome","host:browser"])}__name(buildProfileEventTags,"buildProfileEventTags");const LONG_TASK_ID_HISTORY_EXPIRE_DELAY=SESSION_TIME_OUT_DELAY;function createLongTaskHistory(lifeCycle){const history=createValueHistory({expireDelay:LONG_TASK_ID_HISTORY_EXPIRE_DELAY});return lifeCycle.subscribe(12,({rawRumEvent,startClocks,duration})=>{rawRumEvent.type==="long_task"&&history.add({id:rawRumEvent.long_task.id,startClocks,duration,entryType:rawRumEvent.long_task.entry_type===RumLongTaskEntryType.LONG_TASK?RumPerformanceEntryType.LONG_TASK:RumPerformanceEntryType.LONG_ANIMATION_FRAME},startClocks.relative).close(addDuration(startClocks.relative,duration))}),history}__name(createLongTaskHistory,"createLongTaskHistory");const DEFAULT_RUM_PROFILER_CONFIGURATION={sampleIntervalMs:10,collectIntervalMs:6e4,minProfileDurationMs:5e3,minNumberOfSamples:50};function createRumProfiler(configuration,lifeCycle,session,profilingContextManager,createEncoder,viewHistory,profilerConfiguration=DEFAULT_RUM_PROFILER_CONFIGURATION){const transport=createFormDataTransport(configuration,lifeCycle,createEncoder,6);let lastViewEntry;const globalCleanupTasks=[],longTaskHistory=mockable(createLongTaskHistory)(lifeCycle);let instance={state:"stopped",stateReason:"initializing"};lifeCycle.subscribe(9,()=>{stopProfiling("session-expired")}),lifeCycle.subscribe(10,()=>{instance.state==="stopped"&&instance.stateReason==="session-expired"&&start()});function start(){if(instance.state==="running")return;const viewEntry=viewHistory.findView();lastViewEntry=viewEntry?{startClocks:viewEntry.startClocks,viewId:viewEntry.id,viewName:getCustomOrDefaultViewName(viewEntry.name,document.location.pathname)}:void 0,globalCleanupTasks.push(addEventListener(configuration,window,"visibilitychange",handleVisibilityChange).stop,addEventListener(configuration,window,"beforeunload",handleBeforeUnload).stop),startNextProfilerInstance()}__name(start,"start");function stop(){stopProfiling("stopped-by-user")}__name(stop,"stop");function stopProfiling(reason){stopProfilerInstance(reason),globalCleanupTasks.forEach(task=>task()),globalCleanupTasks.length=0,profilingContextManager.set({status:"stopped",error_reason:void 0})}__name(stopProfiling,"stopProfiling");function addEventListeners(existingInstance){if(existingInstance.state==="running")return{cleanupTasks:existingInstance.cleanupTasks};const cleanupTasks=[],viewUpdatedSubscription=lifeCycle.subscribe(2,view=>{const viewEntry={viewId:view.id,viewName:getCustomOrDefaultViewName(view.name,document.location.pathname),startClocks:view.startClocks};collectViewEntry(viewEntry),lastViewEntry=viewEntry});return cleanupTasks.push(viewUpdatedSubscription.unsubscribe),{cleanupTasks}}__name(addEventListeners,"addEventListeners");function startNextProfilerInstance(){const globalThisProfiler=getGlobalObject().Profiler;if(!globalThisProfiler)throw profilingContextManager.set({status:"error",error_reason:"not-supported-by-browser"}),new Error("RUM Profiler is not supported in this browser.");instance.state==="running"&&collectProfilerInstance(instance);const{cleanupTasks}=addEventListeners(instance);let profiler;try{profiler=new globalThisProfiler({sampleInterval:profilerConfiguration.sampleIntervalMs,maxBufferSize:Math.round(profilerConfiguration.collectIntervalMs*1.5/profilerConfiguration.sampleIntervalMs)})}catch(e){e instanceof Error&&e.message.includes("disabled by Document Policy")?(display.warn("[DD_RUM] Profiler startup failed. Ensure your server includes the `Document-Policy: js-profiling` response header when serving HTML pages.",e),profilingContextManager.set({status:"error",error_reason:"missing-document-policy-header"})):profilingContextManager.set({status:"error",error_reason:"unexpected-exception"});return}profilingContextManager.set({status:"running",error_reason:void 0}),instance={state:"running",startClocks:clocksNow(),profiler,timeoutId:setTimeout(startNextProfilerInstance,profilerConfiguration.collectIntervalMs),views:[],cleanupTasks,longTasks:[]},collectViewEntry(lastViewEntry),profiler.addEventListener("samplebufferfull",handleSampleBufferFull)}__name(startNextProfilerInstance,"startNextProfilerInstance");function collectProfilerInstance(runningInstance){clearTimeout(runningInstance.timeoutId),runningInstance.profiler.removeEventListener("samplebufferfull",handleSampleBufferFull);const{startClocks,views}=runningInstance;runningInstance.profiler.stop().then(trace=>{const endClocks=clocksNow(),duration=elapsed(startClocks.timeStamp,endClocks.timeStamp),longTasks=longTaskHistory.findAll(startClocks.relative,duration),isBelowDurationThreshold=duration<profilerConfiguration.minProfileDurationMs,isBelowSampleThreshold=getNumberOfSamples(trace.samples)<profilerConfiguration.minNumberOfSamples;longTasks.length===0&&(isBelowDurationThreshold||isBelowSampleThreshold)||handleProfilerTrace(Object.assign(trace,{startClocks,endClocks,clocksOrigin:clocksOrigin(),longTasks,views,sampleInterval:profilerConfiguration.sampleIntervalMs}))}).catch(monitorError)}__name(collectProfilerInstance,"collectProfilerInstance");function stopProfilerInstance(stateReason){if(instance.state!=="running"){(instance.state==="paused"||instance.state==="stopped"&&stateReason==="stopped-by-user")&&(instance={state:"stopped",stateReason});return}const runningInstance=instance;instance={state:"stopped",stateReason},runningInstance.cleanupTasks.forEach(cleanupTask=>cleanupTask()),collectProfilerInstance(runningInstance)}__name(stopProfilerInstance,"stopProfilerInstance");function pauseProfilerInstance(){if(instance.state!=="running")return;const runningInstance=instance;instance={state:"paused"},runningInstance.cleanupTasks.forEach(cleanupTask=>cleanupTask()),collectProfilerInstance(runningInstance)}__name(pauseProfilerInstance,"pauseProfilerInstance");function collectViewEntry(viewEntry){instance.state!=="running"||!viewEntry||instance.views.push(viewEntry)}__name(collectViewEntry,"collectViewEntry");function handleProfilerTrace(trace){var _a;const sessionId=(_a=session.findTrackedSession())===null||_a===void 0?void 0:_a.id,payload=assembleProfilingPayload(trace,configuration,sessionId);transport.send(payload)}__name(handleProfilerTrace,"handleProfilerTrace");function handleSampleBufferFull(){startNextProfilerInstance()}__name(handleSampleBufferFull,"handleSampleBufferFull");function handleVisibilityChange(){document.visibilityState==="hidden"&&instance.state==="running"?pauseProfilerInstance():document.visibilityState==="visible"&&instance.state==="paused"&&startNextProfilerInstance()}__name(handleVisibilityChange,"handleVisibilityChange");function handleBeforeUnload(){startNextProfilerInstance()}__name(handleBeforeUnload,"handleBeforeUnload");function isStopped(){return instance.state==="stopped"}__name(isStopped,"isStopped");function isRunning(){return instance.state==="running"}__name(isRunning,"isRunning");function isPaused(){return instance.state==="paused"}return __name(isPaused,"isPaused"),{start,stop,isStopped,isRunning,isPaused}}__name(createRumProfiler,"createRumProfiler");export{DEFAULT_RUM_PROFILER_CONFIGURATION,createRumProfiler};
|
|
2
|
+
//# sourceMappingURL=profiler-BhXa8xgR.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiler-CiZIC7ZI.js","sources":["../../node_modules/.pnpm/@datadog+browser-rum-core@6.28.1/node_modules/@datadog/browser-rum-core/esm/transport/formDataTransport.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/utils/getNumberOfSamples.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/utils/getDefaultViewName.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/utils/getCustomOrDefaultViewName.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/transport/buildProfileEventAttributes.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/transport/assembly.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/longTaskHistory.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/profiler.js"],"sourcesContent":["import { addTelemetryDebug, createHttpRequest, jsonStringify, objectEntries } from '@datadog/browser-core';\nexport function createFormDataTransport(configuration, lifeCycle, createEncoder, streamId) {\n const reportError = (error) => {\n lifeCycle.notify(14 /* LifeCycleEventType.RAW_ERROR_COLLECTED */, { error });\n // monitor-until: forever, to keep an eye on the errors reported to customers\n addTelemetryDebug('Error reported to customer', { 'error.message': error.message });\n };\n const httpRequest = createHttpRequest([configuration.profilingEndpointBuilder], reportError);\n const encoder = createEncoder(streamId);\n return {\n async send({ event, ...attachments }) {\n const formData = new FormData();\n const serializedEvent = jsonStringify(event);\n if (!serializedEvent) {\n throw new Error('Failed to serialize event');\n }\n formData.append('event', new Blob([serializedEvent], { type: 'application/json' }), 'event.json');\n let bytesCount = serializedEvent.length;\n for (const [key, value] of objectEntries(attachments)) {\n const serializedValue = jsonStringify(value);\n if (!serializedValue) {\n throw new Error('Failed to serialize attachment');\n }\n const result = await encode(encoder, serializedValue);\n bytesCount += result.outputBytesCount;\n formData.append(key, new Blob([result.output]), key);\n }\n httpRequest.send({\n data: formData,\n bytesCount,\n });\n },\n };\n}\nfunction encode(encoder, data) {\n return new Promise((resolve) => {\n encoder.write(data);\n encoder.finish((encoderResult) => {\n resolve(encoderResult);\n });\n });\n}\n//# sourceMappingURL=formDataTransport.js.map","/**\n * Counts number of samples when the thread was not idle (stackId is defined)\n *\n * @param samples - Array of collected samples\n * @returns Number of samples\n */\nexport function getNumberOfSamples(samples) {\n let numberOfSamples = 0;\n for (const sample of samples) {\n if (sample.stackId !== undefined) {\n numberOfSamples++;\n }\n }\n return numberOfSamples;\n}\n//# sourceMappingURL=getNumberOfSamples.js.map","// This is the regex used to extract the path from the url (from SimpleUrlGroupingProcessor.java)\n// It's a bit different from the one in the java code because we removed the lookbehind unsupported by Safari.\nconst PATH_MIXED_ALPHANUMERICS = /\\/(?![vV]\\d{1,2}\\/)([^/\\d?]*\\d+[^/?]*)/g;\nexport function getDefaultViewName(viewPathUrl) {\n if (!viewPathUrl) {\n return '/';\n }\n // Replace all the mixed alphanumerics with a ?\n return viewPathUrl.replace(PATH_MIXED_ALPHANUMERICS, '/?');\n}\n//# sourceMappingURL=getDefaultViewName.js.map","import { getDefaultViewName } from './getDefaultViewName';\nexport const getCustomOrDefaultViewName = (customViewName, viewPathUrl) => customViewName || getDefaultViewName(viewPathUrl);\n//# sourceMappingURL=getCustomOrDefaultViewName.js.map","/**\n * Builds attributes for the Profile Event.\n *\n * @param profilerTrace - Profiler trace\n * @param applicationId - application id.\n * @param sessionId - session id.\n * @returns Additional attributes.\n */\nexport function buildProfileEventAttributes(profilerTrace, applicationId, sessionId) {\n // Extract view ids and names from the profiler trace and add them as attributes of the profile event.\n // This will be used to filter the profiles by @view.id and/or @view.name.\n const { ids, names } = extractViewIdsAndNames(profilerTrace.views);\n const longTaskIds = profilerTrace.longTasks.map((longTask) => longTask.id).filter((id) => id !== undefined);\n const attributes = { application: { id: applicationId } };\n if (sessionId) {\n attributes.session = { id: sessionId };\n }\n if (ids.length) {\n attributes.view = { id: ids, name: names };\n }\n if (longTaskIds.length) {\n attributes.long_task = { id: longTaskIds };\n }\n return attributes;\n}\nfunction extractViewIdsAndNames(views) {\n const result = { ids: [], names: [] };\n for (const view of views) {\n result.ids.push(view.viewId);\n if (view.viewName) {\n result.names.push(view.viewName);\n }\n }\n // Remove duplicates\n result.names = Array.from(new Set(result.names));\n return result;\n}\n//# sourceMappingURL=buildProfileEventAttributes.js.map","import { buildTags, currentDrift } from '@datadog/browser-core';\nimport { buildProfileEventAttributes } from './buildProfileEventAttributes';\nexport function assembleProfilingPayload(profilerTrace, configuration, sessionId) {\n const event = buildProfileEvent(profilerTrace, configuration, sessionId);\n return {\n event,\n 'wall-time.json': profilerTrace,\n };\n}\nfunction buildProfileEvent(profilerTrace, configuration, sessionId) {\n const tags = buildTags(configuration); // TODO: get that from the tagContext hook\n const profileAttributes = buildProfileEventAttributes(profilerTrace, configuration.applicationId, sessionId);\n const profileEventTags = buildProfileEventTags(tags);\n const profileEvent = {\n ...profileAttributes,\n attachments: ['wall-time.json'],\n start: new Date(profilerTrace.startClocks.timeStamp).toISOString(),\n end: new Date(profilerTrace.endClocks.timeStamp).toISOString(),\n family: 'chrome',\n runtime: 'chrome',\n format: 'json',\n version: 4, // Ingestion event version (not the version application tag)\n tags_profiler: profileEventTags.join(','),\n _dd: {\n clock_drift: currentDrift(),\n },\n };\n return profileEvent;\n}\n/**\n * Builds tags for the Profile Event.\n *\n * @param tags - RUM tags\n * @returns Combined tags for the Profile Event.\n */\nfunction buildProfileEventTags(tags) {\n // Tags already contains the common tags for all events. (service, env, version, etc.)\n // Here we are adding some specific-to-profiling tags.\n const profileEventTags = tags.concat(['language:javascript', 'runtime:chrome', 'family:chrome', 'host:browser']);\n return profileEventTags;\n}\n//# sourceMappingURL=assembly.js.map","import { addDuration, createValueHistory, SESSION_TIME_OUT_DELAY } from '@datadog/browser-core';\nimport { RumPerformanceEntryType, RumLongTaskEntryType } from '@datadog/browser-rum-core';\nexport const LONG_TASK_ID_HISTORY_EXPIRE_DELAY = SESSION_TIME_OUT_DELAY;\nexport function createLongTaskHistory(lifeCycle) {\n const history = createValueHistory({\n expireDelay: LONG_TASK_ID_HISTORY_EXPIRE_DELAY,\n });\n lifeCycle.subscribe(12 /* LifeCycleEventType.RAW_RUM_EVENT_COLLECTED */, ({ rawRumEvent, startClocks, duration }) => {\n if (rawRumEvent.type === 'long_task') {\n history\n .add({\n id: rawRumEvent.long_task.id,\n startClocks,\n duration: duration,\n entryType: rawRumEvent.long_task.entry_type === RumLongTaskEntryType.LONG_TASK\n ? RumPerformanceEntryType.LONG_TASK\n : RumPerformanceEntryType.LONG_ANIMATION_FRAME,\n }, startClocks.relative)\n .close(addDuration(startClocks.relative, duration));\n }\n });\n return history;\n}\n//# sourceMappingURL=longTaskHistory.js.map","import { addEventListener, clearTimeout, setTimeout, monitorError, display, getGlobalObject, clocksOrigin, clocksNow, elapsed, mockable, } from '@datadog/browser-core';\nimport { createFormDataTransport } from '@datadog/browser-rum-core';\nimport { getNumberOfSamples } from './utils/getNumberOfSamples';\nimport { getCustomOrDefaultViewName } from './utils/getCustomOrDefaultViewName';\nimport { assembleProfilingPayload } from './transport/assembly';\nimport { createLongTaskHistory } from './longTaskHistory';\nexport const DEFAULT_RUM_PROFILER_CONFIGURATION = {\n sampleIntervalMs: 10, // Sample stack trace every 10ms\n collectIntervalMs: 60000, // Collect data every minute\n minProfileDurationMs: 5000, // Require at least 5 seconds of profile data to reduce noise and cost\n minNumberOfSamples: 50, // Require at least 50 samples (~500 ms) to report a profile to reduce noise and cost\n};\nexport function createRumProfiler(configuration, lifeCycle, session, profilingContextManager, createEncoder, viewHistory, profilerConfiguration = DEFAULT_RUM_PROFILER_CONFIGURATION) {\n const transport = createFormDataTransport(configuration, lifeCycle, createEncoder, 6 /* DeflateEncoderStreamId.PROFILING */);\n let lastViewEntry;\n // Global clean-up tasks for listeners that are not specific to a profiler instance (eg. visibility change, before unload)\n const globalCleanupTasks = [];\n const longTaskHistory = mockable(createLongTaskHistory)(lifeCycle);\n let instance = { state: 'stopped', stateReason: 'initializing' };\n // Stops the profiler when session expires\n lifeCycle.subscribe(9 /* LifeCycleEventType.SESSION_EXPIRED */, () => {\n stopProfiling('session-expired');\n });\n // Start the profiler again when session is renewed\n lifeCycle.subscribe(10 /* LifeCycleEventType.SESSION_RENEWED */, () => {\n if (instance.state === 'stopped' && instance.stateReason === 'session-expired') {\n start();\n }\n });\n // Public API to start the profiler.\n function start() {\n if (instance.state === 'running') {\n return;\n }\n const viewEntry = viewHistory.findView();\n // Add initial view\n // Note: `viewEntry.name` is only filled when users use manual view creation via `startView` method.\n lastViewEntry = viewEntry\n ? {\n startClocks: viewEntry.startClocks,\n viewId: viewEntry.id,\n viewName: getCustomOrDefaultViewName(viewEntry.name, document.location.pathname),\n }\n : undefined;\n // Add global clean-up tasks for listeners that are not specific to a profiler instance (eg. visibility change, before unload)\n globalCleanupTasks.push(addEventListener(configuration, window, \"visibilitychange\" /* DOM_EVENT.VISIBILITY_CHANGE */, handleVisibilityChange).stop, addEventListener(configuration, window, \"beforeunload\" /* DOM_EVENT.BEFORE_UNLOAD */, handleBeforeUnload).stop);\n // Start profiler instance\n startNextProfilerInstance();\n }\n // Public API to manually stop the profiler.\n function stop() {\n stopProfiling('stopped-by-user');\n }\n function stopProfiling(reason) {\n // Stop current profiler instance (data collection happens async in background)\n stopProfilerInstance(reason);\n // Cleanup global listeners and reset the array to prevent accumulation across start/stop cycles\n globalCleanupTasks.forEach((task) => task());\n globalCleanupTasks.length = 0;\n // Update Profiling status once the Profiler has been stopped.\n profilingContextManager.set({ status: 'stopped', error_reason: undefined });\n }\n /**\n * Whenever a new Profiler instance is started, we need to add event listeners to surroundings (RUM Events, Long Tasks, etc) to enrich the Profiler data.\n * If the instance is already running, we can keep the same event listeners.\n */\n function addEventListeners(existingInstance) {\n if (existingInstance.state === 'running') {\n // Instance is already running, so we can keep same event listeners.\n return {\n cleanupTasks: existingInstance.cleanupTasks,\n };\n }\n // Store clean-up tasks for this instance (tasks to be executed when the Profiler is stopped or paused.)\n const cleanupTasks = [];\n // Whenever the View is updated, we add a views entry to the profiler instance.\n const viewUpdatedSubscription = lifeCycle.subscribe(2 /* LifeCycleEventType.VIEW_CREATED */, (view) => {\n const viewEntry = {\n viewId: view.id,\n // Note: `viewName` is only filled when users use manual view creation via `startView` method.\n viewName: getCustomOrDefaultViewName(view.name, document.location.pathname),\n startClocks: view.startClocks,\n };\n collectViewEntry(viewEntry);\n // Update last view entry\n lastViewEntry = viewEntry;\n });\n cleanupTasks.push(viewUpdatedSubscription.unsubscribe);\n return {\n cleanupTasks,\n };\n }\n function startNextProfilerInstance() {\n // These APIs might be unavailable in some browsers\n const globalThisProfiler = getGlobalObject().Profiler;\n if (!globalThisProfiler) {\n profilingContextManager.set({ status: 'error', error_reason: 'not-supported-by-browser' });\n throw new Error('RUM Profiler is not supported in this browser.');\n }\n // Collect data from previous running instance (fire-and-forget)\n if (instance.state === 'running') {\n collectProfilerInstance(instance);\n }\n const { cleanupTasks } = addEventListeners(instance);\n let profiler;\n try {\n // We have to create new Profiler each time we start a new instance\n profiler = new globalThisProfiler({\n sampleInterval: profilerConfiguration.sampleIntervalMs,\n // Keep buffer size at 1.5 times of minimum required to collect data for a profiling instance\n maxBufferSize: Math.round((profilerConfiguration.collectIntervalMs * 1.5) / profilerConfiguration.sampleIntervalMs),\n });\n }\n catch (e) {\n if (e instanceof Error && e.message.includes('disabled by Document Policy')) {\n // Missing Response Header (`js-profiling`) that is required to enable the profiler.\n // We should suggest the user to enable the Response Header in their server configuration.\n display.warn('[DD_RUM] Profiler startup failed. Ensure your server includes the `Document-Policy: js-profiling` response header when serving HTML pages.', e);\n profilingContextManager.set({ status: 'error', error_reason: 'missing-document-policy-header' });\n }\n else {\n profilingContextManager.set({ status: 'error', error_reason: 'unexpected-exception' });\n }\n return;\n }\n profilingContextManager.set({ status: 'running', error_reason: undefined });\n // Kick-off the new instance\n instance = {\n state: 'running',\n startClocks: clocksNow(),\n profiler,\n timeoutId: setTimeout(startNextProfilerInstance, profilerConfiguration.collectIntervalMs),\n views: [],\n cleanupTasks,\n longTasks: [],\n };\n // Add last view entry\n collectViewEntry(lastViewEntry);\n // Add event handler case we overflow the buffer\n profiler.addEventListener('samplebufferfull', handleSampleBufferFull);\n }\n function collectProfilerInstance(runningInstance) {\n // Cleanup instance\n clearTimeout(runningInstance.timeoutId);\n runningInstance.profiler.removeEventListener('samplebufferfull', handleSampleBufferFull);\n // Store instance data snapshot in local variables to use in async callback\n const { startClocks, views } = runningInstance;\n // Stop current profiler to get trace\n runningInstance.profiler\n .stop()\n .then((trace) => {\n const endClocks = clocksNow();\n const duration = elapsed(startClocks.timeStamp, endClocks.timeStamp);\n const longTasks = longTaskHistory.findAll(startClocks.relative, duration);\n const isBelowDurationThreshold = duration < profilerConfiguration.minProfileDurationMs;\n const isBelowSampleThreshold = getNumberOfSamples(trace.samples) < profilerConfiguration.minNumberOfSamples;\n if (longTasks.length === 0 && (isBelowDurationThreshold || isBelowSampleThreshold)) {\n // Skip very short profiles to reduce noise and cost, but keep them if they contain long tasks.\n return;\n }\n handleProfilerTrace(\n // Enrich trace with time and instance data\n Object.assign(trace, {\n startClocks,\n endClocks,\n clocksOrigin: clocksOrigin(),\n longTasks,\n views,\n sampleInterval: profilerConfiguration.sampleIntervalMs,\n }));\n })\n .catch(monitorError);\n }\n function stopProfilerInstance(stateReason) {\n if (instance.state !== 'running') {\n if (\n // If paused, profiler data was already collected during pause, just update state\n instance.state === 'paused' ||\n // Update stateReason when already stopped and the user explicitly stops the profiler,\n // so that SESSION_RENEWED does not override the user's intent.\n (instance.state === 'stopped' && stateReason === 'stopped-by-user')) {\n instance = { state: 'stopped', stateReason };\n }\n return;\n }\n // Capture the running instance before changing state\n const runningInstance = instance;\n // Update state synchronously so SESSION_RENEWED check works immediately\n instance = { state: 'stopped', stateReason };\n // Cleanup instance-specific tasks (e.g., view listener)\n runningInstance.cleanupTasks.forEach((cleanupTask) => cleanupTask());\n // Collect and send profile data in background - doesn't block state transitions\n collectProfilerInstance(runningInstance);\n }\n function pauseProfilerInstance() {\n if (instance.state !== 'running') {\n return;\n }\n // Capture the running instance before changing state\n const runningInstance = instance;\n // Update state synchronously\n instance = { state: 'paused' };\n // Cleanup instance-specific tasks\n runningInstance.cleanupTasks.forEach((cleanupTask) => cleanupTask());\n // Collect and send profile data in background\n collectProfilerInstance(runningInstance);\n }\n function collectViewEntry(viewEntry) {\n if (instance.state !== 'running' || !viewEntry) {\n return;\n }\n // Add entry to views\n instance.views.push(viewEntry);\n }\n function handleProfilerTrace(trace) {\n var _a;\n // Find current session to assign it to the Profile.\n const sessionId = (_a = session.findTrackedSession()) === null || _a === void 0 ? void 0 : _a.id;\n const payload = assembleProfilingPayload(trace, configuration, sessionId);\n void transport.send(payload);\n }\n function handleSampleBufferFull() {\n startNextProfilerInstance();\n }\n function handleVisibilityChange() {\n if (document.visibilityState === 'hidden' && instance.state === 'running') {\n // Pause when tab is hidden. We use paused state to distinguish between\n // paused by visibility change and stopped by user.\n // If profiler is paused by the visibility change, we should resume when\n // tab becomes visible again. That's not the case when user stops the profiler.\n pauseProfilerInstance();\n }\n else if (document.visibilityState === 'visible' && instance.state === 'paused') {\n // Resume when tab becomes visible again\n startNextProfilerInstance();\n }\n }\n function handleBeforeUnload() {\n // `unload` can in some cases be triggered while the page is still active (link to a different protocol like mailto:).\n // We can immediately flush (by starting a new profiler instance) to make sure we receive the data, and at the same time keep the profiler active.\n // In case of the regular unload, the profiler will be shut down anyway.\n startNextProfilerInstance();\n }\n function isStopped() {\n return instance.state === 'stopped';\n }\n function isRunning() {\n return instance.state === 'running';\n }\n function isPaused() {\n return instance.state === 'paused';\n }\n return { start, stop, isStopped, isRunning, isPaused };\n}\n//# sourceMappingURL=profiler.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
|
|
1
|
+
{"version":3,"file":"profiler-BhXa8xgR.js","sources":["../../node_modules/.pnpm/@datadog+browser-rum-core@6.28.1/node_modules/@datadog/browser-rum-core/esm/transport/formDataTransport.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/utils/getNumberOfSamples.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/utils/getDefaultViewName.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/utils/getCustomOrDefaultViewName.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/transport/buildProfileEventAttributes.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/transport/assembly.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/longTaskHistory.js","../../node_modules/.pnpm/@datadog+browser-rum@6.28.1/node_modules/@datadog/browser-rum/esm/domain/profiling/profiler.js"],"sourcesContent":["import { addTelemetryDebug, createHttpRequest, jsonStringify, objectEntries } from '@datadog/browser-core';\nexport function createFormDataTransport(configuration, lifeCycle, createEncoder, streamId) {\n const reportError = (error) => {\n lifeCycle.notify(14 /* LifeCycleEventType.RAW_ERROR_COLLECTED */, { error });\n // monitor-until: forever, to keep an eye on the errors reported to customers\n addTelemetryDebug('Error reported to customer', { 'error.message': error.message });\n };\n const httpRequest = createHttpRequest([configuration.profilingEndpointBuilder], reportError);\n const encoder = createEncoder(streamId);\n return {\n async send({ event, ...attachments }) {\n const formData = new FormData();\n const serializedEvent = jsonStringify(event);\n if (!serializedEvent) {\n throw new Error('Failed to serialize event');\n }\n formData.append('event', new Blob([serializedEvent], { type: 'application/json' }), 'event.json');\n let bytesCount = serializedEvent.length;\n for (const [key, value] of objectEntries(attachments)) {\n const serializedValue = jsonStringify(value);\n if (!serializedValue) {\n throw new Error('Failed to serialize attachment');\n }\n const result = await encode(encoder, serializedValue);\n bytesCount += result.outputBytesCount;\n formData.append(key, new Blob([result.output]), key);\n }\n httpRequest.send({\n data: formData,\n bytesCount,\n });\n },\n };\n}\nfunction encode(encoder, data) {\n return new Promise((resolve) => {\n encoder.write(data);\n encoder.finish((encoderResult) => {\n resolve(encoderResult);\n });\n });\n}\n//# sourceMappingURL=formDataTransport.js.map","/**\n * Counts number of samples when the thread was not idle (stackId is defined)\n *\n * @param samples - Array of collected samples\n * @returns Number of samples\n */\nexport function getNumberOfSamples(samples) {\n let numberOfSamples = 0;\n for (const sample of samples) {\n if (sample.stackId !== undefined) {\n numberOfSamples++;\n }\n }\n return numberOfSamples;\n}\n//# sourceMappingURL=getNumberOfSamples.js.map","// This is the regex used to extract the path from the url (from SimpleUrlGroupingProcessor.java)\n// It's a bit different from the one in the java code because we removed the lookbehind unsupported by Safari.\nconst PATH_MIXED_ALPHANUMERICS = /\\/(?![vV]\\d{1,2}\\/)([^/\\d?]*\\d+[^/?]*)/g;\nexport function getDefaultViewName(viewPathUrl) {\n if (!viewPathUrl) {\n return '/';\n }\n // Replace all the mixed alphanumerics with a ?\n return viewPathUrl.replace(PATH_MIXED_ALPHANUMERICS, '/?');\n}\n//# sourceMappingURL=getDefaultViewName.js.map","import { getDefaultViewName } from './getDefaultViewName';\nexport const getCustomOrDefaultViewName = (customViewName, viewPathUrl) => customViewName || getDefaultViewName(viewPathUrl);\n//# sourceMappingURL=getCustomOrDefaultViewName.js.map","/**\n * Builds attributes for the Profile Event.\n *\n * @param profilerTrace - Profiler trace\n * @param applicationId - application id.\n * @param sessionId - session id.\n * @returns Additional attributes.\n */\nexport function buildProfileEventAttributes(profilerTrace, applicationId, sessionId) {\n // Extract view ids and names from the profiler trace and add them as attributes of the profile event.\n // This will be used to filter the profiles by @view.id and/or @view.name.\n const { ids, names } = extractViewIdsAndNames(profilerTrace.views);\n const longTaskIds = profilerTrace.longTasks.map((longTask) => longTask.id).filter((id) => id !== undefined);\n const attributes = { application: { id: applicationId } };\n if (sessionId) {\n attributes.session = { id: sessionId };\n }\n if (ids.length) {\n attributes.view = { id: ids, name: names };\n }\n if (longTaskIds.length) {\n attributes.long_task = { id: longTaskIds };\n }\n return attributes;\n}\nfunction extractViewIdsAndNames(views) {\n const result = { ids: [], names: [] };\n for (const view of views) {\n result.ids.push(view.viewId);\n if (view.viewName) {\n result.names.push(view.viewName);\n }\n }\n // Remove duplicates\n result.names = Array.from(new Set(result.names));\n return result;\n}\n//# sourceMappingURL=buildProfileEventAttributes.js.map","import { buildTags, currentDrift } from '@datadog/browser-core';\nimport { buildProfileEventAttributes } from './buildProfileEventAttributes';\nexport function assembleProfilingPayload(profilerTrace, configuration, sessionId) {\n const event = buildProfileEvent(profilerTrace, configuration, sessionId);\n return {\n event,\n 'wall-time.json': profilerTrace,\n };\n}\nfunction buildProfileEvent(profilerTrace, configuration, sessionId) {\n const tags = buildTags(configuration); // TODO: get that from the tagContext hook\n const profileAttributes = buildProfileEventAttributes(profilerTrace, configuration.applicationId, sessionId);\n const profileEventTags = buildProfileEventTags(tags);\n const profileEvent = {\n ...profileAttributes,\n attachments: ['wall-time.json'],\n start: new Date(profilerTrace.startClocks.timeStamp).toISOString(),\n end: new Date(profilerTrace.endClocks.timeStamp).toISOString(),\n family: 'chrome',\n runtime: 'chrome',\n format: 'json',\n version: 4, // Ingestion event version (not the version application tag)\n tags_profiler: profileEventTags.join(','),\n _dd: {\n clock_drift: currentDrift(),\n },\n };\n return profileEvent;\n}\n/**\n * Builds tags for the Profile Event.\n *\n * @param tags - RUM tags\n * @returns Combined tags for the Profile Event.\n */\nfunction buildProfileEventTags(tags) {\n // Tags already contains the common tags for all events. (service, env, version, etc.)\n // Here we are adding some specific-to-profiling tags.\n const profileEventTags = tags.concat(['language:javascript', 'runtime:chrome', 'family:chrome', 'host:browser']);\n return profileEventTags;\n}\n//# sourceMappingURL=assembly.js.map","import { addDuration, createValueHistory, SESSION_TIME_OUT_DELAY } from '@datadog/browser-core';\nimport { RumPerformanceEntryType, RumLongTaskEntryType } from '@datadog/browser-rum-core';\nexport const LONG_TASK_ID_HISTORY_EXPIRE_DELAY = SESSION_TIME_OUT_DELAY;\nexport function createLongTaskHistory(lifeCycle) {\n const history = createValueHistory({\n expireDelay: LONG_TASK_ID_HISTORY_EXPIRE_DELAY,\n });\n lifeCycle.subscribe(12 /* LifeCycleEventType.RAW_RUM_EVENT_COLLECTED */, ({ rawRumEvent, startClocks, duration }) => {\n if (rawRumEvent.type === 'long_task') {\n history\n .add({\n id: rawRumEvent.long_task.id,\n startClocks,\n duration: duration,\n entryType: rawRumEvent.long_task.entry_type === RumLongTaskEntryType.LONG_TASK\n ? RumPerformanceEntryType.LONG_TASK\n : RumPerformanceEntryType.LONG_ANIMATION_FRAME,\n }, startClocks.relative)\n .close(addDuration(startClocks.relative, duration));\n }\n });\n return history;\n}\n//# sourceMappingURL=longTaskHistory.js.map","import { addEventListener, clearTimeout, setTimeout, monitorError, display, getGlobalObject, clocksOrigin, clocksNow, elapsed, mockable, } from '@datadog/browser-core';\nimport { createFormDataTransport } from '@datadog/browser-rum-core';\nimport { getNumberOfSamples } from './utils/getNumberOfSamples';\nimport { getCustomOrDefaultViewName } from './utils/getCustomOrDefaultViewName';\nimport { assembleProfilingPayload } from './transport/assembly';\nimport { createLongTaskHistory } from './longTaskHistory';\nexport const DEFAULT_RUM_PROFILER_CONFIGURATION = {\n sampleIntervalMs: 10, // Sample stack trace every 10ms\n collectIntervalMs: 60000, // Collect data every minute\n minProfileDurationMs: 5000, // Require at least 5 seconds of profile data to reduce noise and cost\n minNumberOfSamples: 50, // Require at least 50 samples (~500 ms) to report a profile to reduce noise and cost\n};\nexport function createRumProfiler(configuration, lifeCycle, session, profilingContextManager, createEncoder, viewHistory, profilerConfiguration = DEFAULT_RUM_PROFILER_CONFIGURATION) {\n const transport = createFormDataTransport(configuration, lifeCycle, createEncoder, 6 /* DeflateEncoderStreamId.PROFILING */);\n let lastViewEntry;\n // Global clean-up tasks for listeners that are not specific to a profiler instance (eg. visibility change, before unload)\n const globalCleanupTasks = [];\n const longTaskHistory = mockable(createLongTaskHistory)(lifeCycle);\n let instance = { state: 'stopped', stateReason: 'initializing' };\n // Stops the profiler when session expires\n lifeCycle.subscribe(9 /* LifeCycleEventType.SESSION_EXPIRED */, () => {\n stopProfiling('session-expired');\n });\n // Start the profiler again when session is renewed\n lifeCycle.subscribe(10 /* LifeCycleEventType.SESSION_RENEWED */, () => {\n if (instance.state === 'stopped' && instance.stateReason === 'session-expired') {\n start();\n }\n });\n // Public API to start the profiler.\n function start() {\n if (instance.state === 'running') {\n return;\n }\n const viewEntry = viewHistory.findView();\n // Add initial view\n // Note: `viewEntry.name` is only filled when users use manual view creation via `startView` method.\n lastViewEntry = viewEntry\n ? {\n startClocks: viewEntry.startClocks,\n viewId: viewEntry.id,\n viewName: getCustomOrDefaultViewName(viewEntry.name, document.location.pathname),\n }\n : undefined;\n // Add global clean-up tasks for listeners that are not specific to a profiler instance (eg. visibility change, before unload)\n globalCleanupTasks.push(addEventListener(configuration, window, \"visibilitychange\" /* DOM_EVENT.VISIBILITY_CHANGE */, handleVisibilityChange).stop, addEventListener(configuration, window, \"beforeunload\" /* DOM_EVENT.BEFORE_UNLOAD */, handleBeforeUnload).stop);\n // Start profiler instance\n startNextProfilerInstance();\n }\n // Public API to manually stop the profiler.\n function stop() {\n stopProfiling('stopped-by-user');\n }\n function stopProfiling(reason) {\n // Stop current profiler instance (data collection happens async in background)\n stopProfilerInstance(reason);\n // Cleanup global listeners and reset the array to prevent accumulation across start/stop cycles\n globalCleanupTasks.forEach((task) => task());\n globalCleanupTasks.length = 0;\n // Update Profiling status once the Profiler has been stopped.\n profilingContextManager.set({ status: 'stopped', error_reason: undefined });\n }\n /**\n * Whenever a new Profiler instance is started, we need to add event listeners to surroundings (RUM Events, Long Tasks, etc) to enrich the Profiler data.\n * If the instance is already running, we can keep the same event listeners.\n */\n function addEventListeners(existingInstance) {\n if (existingInstance.state === 'running') {\n // Instance is already running, so we can keep same event listeners.\n return {\n cleanupTasks: existingInstance.cleanupTasks,\n };\n }\n // Store clean-up tasks for this instance (tasks to be executed when the Profiler is stopped or paused.)\n const cleanupTasks = [];\n // Whenever the View is updated, we add a views entry to the profiler instance.\n const viewUpdatedSubscription = lifeCycle.subscribe(2 /* LifeCycleEventType.VIEW_CREATED */, (view) => {\n const viewEntry = {\n viewId: view.id,\n // Note: `viewName` is only filled when users use manual view creation via `startView` method.\n viewName: getCustomOrDefaultViewName(view.name, document.location.pathname),\n startClocks: view.startClocks,\n };\n collectViewEntry(viewEntry);\n // Update last view entry\n lastViewEntry = viewEntry;\n });\n cleanupTasks.push(viewUpdatedSubscription.unsubscribe);\n return {\n cleanupTasks,\n };\n }\n function startNextProfilerInstance() {\n // These APIs might be unavailable in some browsers\n const globalThisProfiler = getGlobalObject().Profiler;\n if (!globalThisProfiler) {\n profilingContextManager.set({ status: 'error', error_reason: 'not-supported-by-browser' });\n throw new Error('RUM Profiler is not supported in this browser.');\n }\n // Collect data from previous running instance (fire-and-forget)\n if (instance.state === 'running') {\n collectProfilerInstance(instance);\n }\n const { cleanupTasks } = addEventListeners(instance);\n let profiler;\n try {\n // We have to create new Profiler each time we start a new instance\n profiler = new globalThisProfiler({\n sampleInterval: profilerConfiguration.sampleIntervalMs,\n // Keep buffer size at 1.5 times of minimum required to collect data for a profiling instance\n maxBufferSize: Math.round((profilerConfiguration.collectIntervalMs * 1.5) / profilerConfiguration.sampleIntervalMs),\n });\n }\n catch (e) {\n if (e instanceof Error && e.message.includes('disabled by Document Policy')) {\n // Missing Response Header (`js-profiling`) that is required to enable the profiler.\n // We should suggest the user to enable the Response Header in their server configuration.\n display.warn('[DD_RUM] Profiler startup failed. Ensure your server includes the `Document-Policy: js-profiling` response header when serving HTML pages.', e);\n profilingContextManager.set({ status: 'error', error_reason: 'missing-document-policy-header' });\n }\n else {\n profilingContextManager.set({ status: 'error', error_reason: 'unexpected-exception' });\n }\n return;\n }\n profilingContextManager.set({ status: 'running', error_reason: undefined });\n // Kick-off the new instance\n instance = {\n state: 'running',\n startClocks: clocksNow(),\n profiler,\n timeoutId: setTimeout(startNextProfilerInstance, profilerConfiguration.collectIntervalMs),\n views: [],\n cleanupTasks,\n longTasks: [],\n };\n // Add last view entry\n collectViewEntry(lastViewEntry);\n // Add event handler case we overflow the buffer\n profiler.addEventListener('samplebufferfull', handleSampleBufferFull);\n }\n function collectProfilerInstance(runningInstance) {\n // Cleanup instance\n clearTimeout(runningInstance.timeoutId);\n runningInstance.profiler.removeEventListener('samplebufferfull', handleSampleBufferFull);\n // Store instance data snapshot in local variables to use in async callback\n const { startClocks, views } = runningInstance;\n // Stop current profiler to get trace\n runningInstance.profiler\n .stop()\n .then((trace) => {\n const endClocks = clocksNow();\n const duration = elapsed(startClocks.timeStamp, endClocks.timeStamp);\n const longTasks = longTaskHistory.findAll(startClocks.relative, duration);\n const isBelowDurationThreshold = duration < profilerConfiguration.minProfileDurationMs;\n const isBelowSampleThreshold = getNumberOfSamples(trace.samples) < profilerConfiguration.minNumberOfSamples;\n if (longTasks.length === 0 && (isBelowDurationThreshold || isBelowSampleThreshold)) {\n // Skip very short profiles to reduce noise and cost, but keep them if they contain long tasks.\n return;\n }\n handleProfilerTrace(\n // Enrich trace with time and instance data\n Object.assign(trace, {\n startClocks,\n endClocks,\n clocksOrigin: clocksOrigin(),\n longTasks,\n views,\n sampleInterval: profilerConfiguration.sampleIntervalMs,\n }));\n })\n .catch(monitorError);\n }\n function stopProfilerInstance(stateReason) {\n if (instance.state !== 'running') {\n if (\n // If paused, profiler data was already collected during pause, just update state\n instance.state === 'paused' ||\n // Update stateReason when already stopped and the user explicitly stops the profiler,\n // so that SESSION_RENEWED does not override the user's intent.\n (instance.state === 'stopped' && stateReason === 'stopped-by-user')) {\n instance = { state: 'stopped', stateReason };\n }\n return;\n }\n // Capture the running instance before changing state\n const runningInstance = instance;\n // Update state synchronously so SESSION_RENEWED check works immediately\n instance = { state: 'stopped', stateReason };\n // Cleanup instance-specific tasks (e.g., view listener)\n runningInstance.cleanupTasks.forEach((cleanupTask) => cleanupTask());\n // Collect and send profile data in background - doesn't block state transitions\n collectProfilerInstance(runningInstance);\n }\n function pauseProfilerInstance() {\n if (instance.state !== 'running') {\n return;\n }\n // Capture the running instance before changing state\n const runningInstance = instance;\n // Update state synchronously\n instance = { state: 'paused' };\n // Cleanup instance-specific tasks\n runningInstance.cleanupTasks.forEach((cleanupTask) => cleanupTask());\n // Collect and send profile data in background\n collectProfilerInstance(runningInstance);\n }\n function collectViewEntry(viewEntry) {\n if (instance.state !== 'running' || !viewEntry) {\n return;\n }\n // Add entry to views\n instance.views.push(viewEntry);\n }\n function handleProfilerTrace(trace) {\n var _a;\n // Find current session to assign it to the Profile.\n const sessionId = (_a = session.findTrackedSession()) === null || _a === void 0 ? void 0 : _a.id;\n const payload = assembleProfilingPayload(trace, configuration, sessionId);\n void transport.send(payload);\n }\n function handleSampleBufferFull() {\n startNextProfilerInstance();\n }\n function handleVisibilityChange() {\n if (document.visibilityState === 'hidden' && instance.state === 'running') {\n // Pause when tab is hidden. We use paused state to distinguish between\n // paused by visibility change and stopped by user.\n // If profiler is paused by the visibility change, we should resume when\n // tab becomes visible again. That's not the case when user stops the profiler.\n pauseProfilerInstance();\n }\n else if (document.visibilityState === 'visible' && instance.state === 'paused') {\n // Resume when tab becomes visible again\n startNextProfilerInstance();\n }\n }\n function handleBeforeUnload() {\n // `unload` can in some cases be triggered while the page is still active (link to a different protocol like mailto:).\n // We can immediately flush (by starting a new profiler instance) to make sure we receive the data, and at the same time keep the profiler active.\n // In case of the regular unload, the profiler will be shut down anyway.\n startNextProfilerInstance();\n }\n function isStopped() {\n return instance.state === 'stopped';\n }\n function isRunning() {\n return instance.state === 'running';\n }\n function isPaused() {\n return instance.state === 'paused';\n }\n return { start, stop, isStopped, isRunning, isPaused };\n}\n//# sourceMappingURL=profiler.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});import{aQ as requireReact,a8 as reactExports}from"./index-BMKHXWrK.js";function formatProdErrorMessage(code){return`Minified Redux error #${code}; visit https://redux.js.org/Errors?code=${code} for the full message or use the non-minified dev environment for full errors. `}__name(formatProdErrorMessage,"formatProdErrorMessage");var $$observable=typeof Symbol=="function"&&Symbol.observable||"@@observable",symbol_observable_default=$$observable,randomString=__name(()=>Math.random().toString(36).substring(7).split("").join("."),"randomString"),ActionTypes={INIT:`@@redux/INIT${randomString()}`,REPLACE:`@@redux/REPLACE${randomString()}`,PROBE_UNKNOWN_ACTION:__name(()=>`@@redux/PROBE_UNKNOWN_ACTION${randomString()}`,"PROBE_UNKNOWN_ACTION")},actionTypes_default=ActionTypes;function isPlainObject(obj){if(typeof obj!="object"||obj===null)return!1;let proto=obj;for(;Object.getPrototypeOf(proto)!==null;)proto=Object.getPrototypeOf(proto);return Object.getPrototypeOf(obj)===proto||Object.getPrototypeOf(obj)===null}__name(isPlainObject,"isPlainObject");function createStore(reducer,preloadedState,enhancer){if(typeof reducer!="function")throw new Error(formatProdErrorMessage(2));if(typeof preloadedState=="function"&&typeof enhancer=="function"||typeof enhancer=="function"&&typeof arguments[3]=="function")throw new Error(formatProdErrorMessage(0));if(typeof preloadedState=="function"&&typeof enhancer>"u"&&(enhancer=preloadedState,preloadedState=void 0),typeof enhancer<"u"){if(typeof enhancer!="function")throw new Error(formatProdErrorMessage(1));return enhancer(createStore)(reducer,preloadedState)}let currentReducer=reducer,currentState=preloadedState,currentListeners=new Map,nextListeners=currentListeners,listenerIdCounter=0,isDispatching=!1;function ensureCanMutateNextListeners(){nextListeners===currentListeners&&(nextListeners=new Map,currentListeners.forEach((listener,key)=>{nextListeners.set(key,listener)}))}__name(ensureCanMutateNextListeners,"ensureCanMutateNextListeners");function getState(){if(isDispatching)throw new Error(formatProdErrorMessage(3));return currentState}__name(getState,"getState");function subscribe(listener){if(typeof listener!="function")throw new Error(formatProdErrorMessage(4));if(isDispatching)throw new Error(formatProdErrorMessage(5));let isSubscribed=!0;ensureCanMutateNextListeners();const listenerId=listenerIdCounter++;return nextListeners.set(listenerId,listener),__name(function(){if(isSubscribed){if(isDispatching)throw new Error(formatProdErrorMessage(6));isSubscribed=!1,ensureCanMutateNextListeners(),nextListeners.delete(listenerId),currentListeners=null}},"unsubscribe")}__name(subscribe,"subscribe");function dispatch(action){if(!isPlainObject(action))throw new Error(formatProdErrorMessage(7));if(typeof action.type>"u")throw new Error(formatProdErrorMessage(8));if(typeof action.type!="string")throw new Error(formatProdErrorMessage(17));if(isDispatching)throw new Error(formatProdErrorMessage(9));try{isDispatching=!0,currentState=currentReducer(currentState,action)}finally{isDispatching=!1}return(currentListeners=nextListeners).forEach(listener=>{listener()}),action}__name(dispatch,"dispatch");function replaceReducer(nextReducer){if(typeof nextReducer!="function")throw new Error(formatProdErrorMessage(10));currentReducer=nextReducer,dispatch({type:actionTypes_default.REPLACE})}__name(replaceReducer,"replaceReducer");function observable(){const outerSubscribe=subscribe;return{subscribe(observer){if(typeof observer!="object"||observer===null)throw new Error(formatProdErrorMessage(11));function observeState(){const observerAsObserver=observer;observerAsObserver.next&&observerAsObserver.next(getState())}return __name(observeState,"observeState"),observeState(),{unsubscribe:outerSubscribe(observeState)}},[symbol_observable_default](){return this}}}return __name(observable,"observable"),dispatch({type:actionTypes_default.INIT}),{dispatch,subscribe,getState,replaceReducer,[symbol_observable_default]:observable}}__name(createStore,"createStore");function assertReducerShape(reducers){Object.keys(reducers).forEach(key=>{const reducer=reducers[key];if(typeof reducer(void 0,{type:actionTypes_default.INIT})>"u")throw new Error(formatProdErrorMessage(12));if(typeof reducer(void 0,{type:actionTypes_default.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(formatProdErrorMessage(13))})}__name(assertReducerShape,"assertReducerShape");function combineReducers(reducers){const reducerKeys=Object.keys(reducers),finalReducers={};for(let i=0;i<reducerKeys.length;i++){const key=reducerKeys[i];typeof reducers[key]=="function"&&(finalReducers[key]=reducers[key])}const finalReducerKeys=Object.keys(finalReducers);let shapeAssertionError;try{assertReducerShape(finalReducers)}catch(e){shapeAssertionError=e}return __name(function(state={},action){if(shapeAssertionError)throw shapeAssertionError;let hasChanged=!1;const nextState={};for(let i=0;i<finalReducerKeys.length;i++){const key=finalReducerKeys[i],reducer=finalReducers[key],previousStateForKey=state[key],nextStateForKey=reducer(previousStateForKey,action);if(typeof nextStateForKey>"u")throw action&&action.type,new Error(formatProdErrorMessage(14));nextState[key]=nextStateForKey,hasChanged=hasChanged||nextStateForKey!==previousStateForKey}return hasChanged=hasChanged||finalReducerKeys.length!==Object.keys(state).length,hasChanged?nextState:state},"combination")}__name(combineReducers,"combineReducers");function bindActionCreator(actionCreator,dispatch){return function(...args){return dispatch(actionCreator.apply(this,args))}}__name(bindActionCreator,"bindActionCreator");function bindActionCreators$1(actionCreators,dispatch){if(typeof actionCreators=="function")return bindActionCreator(actionCreators,dispatch);if(typeof actionCreators!="object"||actionCreators===null)throw new Error(formatProdErrorMessage(16));const boundActionCreators={};for(const key in actionCreators){const actionCreator=actionCreators[key];typeof actionCreator=="function"&&(boundActionCreators[key]=bindActionCreator(actionCreator,dispatch))}return boundActionCreators}__name(bindActionCreators$1,"bindActionCreators$1");function compose(...funcs){return funcs.length===0?arg=>arg:funcs.length===1?funcs[0]:funcs.reduce((a,b)=>(...args)=>a(b(...args)))}__name(compose,"compose");function applyMiddleware(...middlewares){return createStore2=>(reducer,preloadedState)=>{const store=createStore2(reducer,preloadedState);let dispatch=__name(()=>{throw new Error(formatProdErrorMessage(15))},"dispatch");const middlewareAPI={getState:store.getState,dispatch:__name((action,...args)=>dispatch(action,...args),"dispatch")},chain=middlewares.map(middleware=>middleware(middlewareAPI));return dispatch=compose(...chain)(store.dispatch),{...store,dispatch}}}__name(applyMiddleware,"applyMiddleware");function isAction(action){return isPlainObject(action)&&"type"in action&&typeof action.type=="string"}__name(isAction,"isAction");function assertIsFunction(func,errorMessage=`expected a function, instead received ${typeof func}`){if(typeof func!="function")throw new TypeError(errorMessage)}__name(assertIsFunction,"assertIsFunction");function assertIsObject(object,errorMessage=`expected an object, instead received ${typeof object}`){if(typeof object!="object")throw new TypeError(errorMessage)}__name(assertIsObject,"assertIsObject");function assertIsArrayOfFunctions(array,errorMessage="expected all items to be functions, instead received the following types: "){if(!array.every(item=>typeof item=="function")){const itemTypes=array.map(item=>typeof item=="function"?`function ${item.name||"unnamed"}()`:typeof item).join(", ");throw new TypeError(`${errorMessage}[${itemTypes}]`)}}__name(assertIsArrayOfFunctions,"assertIsArrayOfFunctions");var ensureIsArray=__name(item=>Array.isArray(item)?item:[item],"ensureIsArray");function getDependencies(createSelectorArgs){const dependencies=Array.isArray(createSelectorArgs[0])?createSelectorArgs[0]:createSelectorArgs;return assertIsArrayOfFunctions(dependencies,"createSelector expects all input-selectors to be functions, but received the following types: "),dependencies}__name(getDependencies,"getDependencies");function collectInputSelectorResults(dependencies,inputSelectorArgs){const inputSelectorResults=[],{length}=dependencies;for(let i=0;i<length;i++)inputSelectorResults.push(dependencies[i].apply(null,inputSelectorArgs));return inputSelectorResults}__name(collectInputSelectorResults,"collectInputSelectorResults");var _a,StrongRef=(_a=class{constructor(value){this.value=value}deref(){return this.value}},__name(_a,"StrongRef"),_a),Ref=typeof WeakRef<"u"?WeakRef:StrongRef,UNTERMINATED=0,TERMINATED=1;function createCacheNode(){return{s:UNTERMINATED,v:void 0,o:null,p:null}}__name(createCacheNode,"createCacheNode");function weakMapMemoize(func,options={}){let fnNode=createCacheNode();const{resultEqualityCheck}=options;let lastResult,resultsCount=0;function memoized(){let cacheNode=fnNode;const{length}=arguments;for(let i=0,l=length;i<l;i++){const arg=arguments[i];if(typeof arg=="function"||typeof arg=="object"&&arg!==null){let objectCache=cacheNode.o;objectCache===null&&(cacheNode.o=objectCache=new WeakMap);const objectNode=objectCache.get(arg);objectNode===void 0?(cacheNode=createCacheNode(),objectCache.set(arg,cacheNode)):cacheNode=objectNode}else{let primitiveCache=cacheNode.p;primitiveCache===null&&(cacheNode.p=primitiveCache=new Map);const primitiveNode=primitiveCache.get(arg);primitiveNode===void 0?(cacheNode=createCacheNode(),primitiveCache.set(arg,cacheNode)):cacheNode=primitiveNode}}const terminatedNode=cacheNode;let result;if(cacheNode.s===TERMINATED)result=cacheNode.v;else if(result=func.apply(null,arguments),resultsCount++,resultEqualityCheck){const lastResultValue=lastResult?.deref?.()??lastResult;lastResultValue!=null&&resultEqualityCheck(lastResultValue,result)&&(result=lastResultValue,resultsCount!==0&&resultsCount--),lastResult=typeof result=="object"&&result!==null||typeof result=="function"?new Ref(result):result}return terminatedNode.s=TERMINATED,terminatedNode.v=result,result}return __name(memoized,"memoized"),memoized.clearCache=()=>{fnNode=createCacheNode(),memoized.resetResultsCount()},memoized.resultsCount=()=>resultsCount,memoized.resetResultsCount=()=>{resultsCount=0},memoized}__name(weakMapMemoize,"weakMapMemoize");function createSelectorCreator(memoizeOrOptions,...memoizeOptionsFromArgs){const createSelectorCreatorOptions=typeof memoizeOrOptions=="function"?{memoize:memoizeOrOptions,memoizeOptions:memoizeOptionsFromArgs}:memoizeOrOptions,createSelector2=__name((...createSelectorArgs)=>{let recomputations=0,dependencyRecomputations=0,lastResult,directlyPassedOptions={},resultFunc=createSelectorArgs.pop();typeof resultFunc=="object"&&(directlyPassedOptions=resultFunc,resultFunc=createSelectorArgs.pop()),assertIsFunction(resultFunc,`createSelector expects an output function after the inputs, but received: [${typeof resultFunc}]`);const combinedOptions={...createSelectorCreatorOptions,...directlyPassedOptions},{memoize,memoizeOptions=[],argsMemoize=weakMapMemoize,argsMemoizeOptions=[]}=combinedOptions,finalMemoizeOptions=ensureIsArray(memoizeOptions),finalArgsMemoizeOptions=ensureIsArray(argsMemoizeOptions),dependencies=getDependencies(createSelectorArgs),memoizedResultFunc=memoize(__name(function(){return recomputations++,resultFunc.apply(null,arguments)},"recomputationWrapper"),...finalMemoizeOptions),selector=argsMemoize(__name(function(){dependencyRecomputations++;const inputSelectorResults=collectInputSelectorResults(dependencies,arguments);return lastResult=memoizedResultFunc.apply(null,inputSelectorResults),lastResult},"dependenciesChecker"),...finalArgsMemoizeOptions);return Object.assign(selector,{resultFunc,memoizedResultFunc,dependencies,dependencyRecomputations:__name(()=>dependencyRecomputations,"dependencyRecomputations"),resetDependencyRecomputations:__name(()=>{dependencyRecomputations=0},"resetDependencyRecomputations"),lastResult:__name(()=>lastResult,"lastResult"),recomputations:__name(()=>recomputations,"recomputations"),resetRecomputations:__name(()=>{recomputations=0},"resetRecomputations"),memoize,argsMemoize})},"createSelector2");return Object.assign(createSelector2,{withTypes:__name(()=>createSelector2,"withTypes")}),createSelector2}__name(createSelectorCreator,"createSelectorCreator");var createSelector=createSelectorCreator(weakMapMemoize),createStructuredSelector=Object.assign((inputSelectorsObject,selectorCreator=createSelector)=>{assertIsObject(inputSelectorsObject,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof inputSelectorsObject}`);const inputSelectorKeys=Object.keys(inputSelectorsObject),dependencies=inputSelectorKeys.map(key=>inputSelectorsObject[key]);return selectorCreator(dependencies,(...inputSelectorResults)=>inputSelectorResults.reduce((composition,value,index)=>(composition[inputSelectorKeys[index]]=value,composition),{}))},{withTypes:__name(()=>createStructuredSelector,"withTypes")}),withSelector={exports:{}},useSyncExternalStoreWithSelector_production={};var hasRequiredUseSyncExternalStoreWithSelector_production;function requireUseSyncExternalStoreWithSelector_production(){if(hasRequiredUseSyncExternalStoreWithSelector_production)return useSyncExternalStoreWithSelector_production;hasRequiredUseSyncExternalStoreWithSelector_production=1;var React=requireReact();function is2(x,y){return x===y&&(x!==0||1/x===1/y)||x!==x&&y!==y}__name(is2,"is");var objectIs=typeof Object.is=="function"?Object.is:is2,useSyncExternalStore=React.useSyncExternalStore,useRef=React.useRef,useEffect=React.useEffect,useMemo=React.useMemo,useDebugValue=React.useDebugValue;return useSyncExternalStoreWithSelector_production.useSyncExternalStoreWithSelector=function(subscribe,getSnapshot,getServerSnapshot,selector,isEqual){var instRef=useRef(null);if(instRef.current===null){var inst={hasValue:!1,value:null};instRef.current=inst}else inst=instRef.current;instRef=useMemo(function(){function memoizedSelector(nextSnapshot){if(!hasMemo){if(hasMemo=!0,memoizedSnapshot=nextSnapshot,nextSnapshot=selector(nextSnapshot),isEqual!==void 0&&inst.hasValue){var currentSelection=inst.value;if(isEqual(currentSelection,nextSnapshot))return memoizedSelection=currentSelection}return memoizedSelection=nextSnapshot}if(currentSelection=memoizedSelection,objectIs(memoizedSnapshot,nextSnapshot))return currentSelection;var nextSelection=selector(nextSnapshot);return isEqual!==void 0&&isEqual(currentSelection,nextSelection)?(memoizedSnapshot=nextSnapshot,currentSelection):(memoizedSnapshot=nextSnapshot,memoizedSelection=nextSelection)}__name(memoizedSelector,"memoizedSelector");var hasMemo=!1,memoizedSnapshot,memoizedSelection,maybeGetServerSnapshot=getServerSnapshot===void 0?null:getServerSnapshot;return[function(){return memoizedSelector(getSnapshot())},maybeGetServerSnapshot===null?void 0:function(){return memoizedSelector(maybeGetServerSnapshot())}]},[getSnapshot,getServerSnapshot,selector,isEqual]);var value=useSyncExternalStore(subscribe,instRef[0],instRef[1]);return useEffect(function(){inst.hasValue=!0,inst.value=value},[value]),useDebugValue(value),value},useSyncExternalStoreWithSelector_production}__name(requireUseSyncExternalStoreWithSelector_production,"requireUseSyncExternalStoreWithSelector_production");var hasRequiredWithSelector;function requireWithSelector(){return hasRequiredWithSelector||(hasRequiredWithSelector=1,withSelector.exports=requireUseSyncExternalStoreWithSelector_production()),withSelector.exports}__name(requireWithSelector,"requireWithSelector");requireWithSelector();var IS_REACT_19=reactExports.version.startsWith("19"),REACT_ELEMENT_TYPE=Symbol.for(IS_REACT_19?"react.transitional.element":"react.element"),REACT_PORTAL_TYPE=Symbol.for("react.portal"),REACT_FRAGMENT_TYPE=Symbol.for("react.fragment"),REACT_STRICT_MODE_TYPE=Symbol.for("react.strict_mode"),REACT_PROFILER_TYPE=Symbol.for("react.profiler"),REACT_CONSUMER_TYPE=Symbol.for("react.consumer"),REACT_CONTEXT_TYPE=Symbol.for("react.context"),REACT_FORWARD_REF_TYPE=Symbol.for("react.forward_ref"),REACT_SUSPENSE_TYPE=Symbol.for("react.suspense"),REACT_SUSPENSE_LIST_TYPE=Symbol.for("react.suspense_list"),REACT_MEMO_TYPE=Symbol.for("react.memo"),REACT_LAZY_TYPE=Symbol.for("react.lazy"),ForwardRef=REACT_FORWARD_REF_TYPE,Memo=REACT_MEMO_TYPE;function typeOf(object){if(typeof object=="object"&&object!==null){const{$$typeof}=object;switch($$typeof){case REACT_ELEMENT_TYPE:switch(object=object.type,object){case REACT_FRAGMENT_TYPE:case REACT_PROFILER_TYPE:case REACT_STRICT_MODE_TYPE:case REACT_SUSPENSE_TYPE:case REACT_SUSPENSE_LIST_TYPE:return object;default:switch(object=object&&object.$$typeof,object){case REACT_CONTEXT_TYPE:case REACT_FORWARD_REF_TYPE:case REACT_LAZY_TYPE:case REACT_MEMO_TYPE:return object;case REACT_CONSUMER_TYPE:return object;default:return $$typeof}}case REACT_PORTAL_TYPE:return $$typeof}}}__name(typeOf,"typeOf");function isMemo(object){return typeOf(object)===REACT_MEMO_TYPE}__name(isMemo,"isMemo");function pureFinalPropsSelectorFactory(mapStateToProps,mapDispatchToProps,mergeProps,dispatch,{areStatesEqual,areOwnPropsEqual,areStatePropsEqual}){let hasRunAtLeastOnce=!1,state,ownProps,stateProps,dispatchProps,mergedProps;function handleFirstCall(firstState,firstOwnProps){return state=firstState,ownProps=firstOwnProps,stateProps=mapStateToProps(state,ownProps),dispatchProps=mapDispatchToProps(dispatch,ownProps),mergedProps=mergeProps(stateProps,dispatchProps,ownProps),hasRunAtLeastOnce=!0,mergedProps}__name(handleFirstCall,"handleFirstCall");function handleNewPropsAndNewState(){return stateProps=mapStateToProps(state,ownProps),mapDispatchToProps.dependsOnOwnProps&&(dispatchProps=mapDispatchToProps(dispatch,ownProps)),mergedProps=mergeProps(stateProps,dispatchProps,ownProps),mergedProps}__name(handleNewPropsAndNewState,"handleNewPropsAndNewState");function handleNewProps(){return mapStateToProps.dependsOnOwnProps&&(stateProps=mapStateToProps(state,ownProps)),mapDispatchToProps.dependsOnOwnProps&&(dispatchProps=mapDispatchToProps(dispatch,ownProps)),mergedProps=mergeProps(stateProps,dispatchProps,ownProps),mergedProps}__name(handleNewProps,"handleNewProps");function handleNewState(){const nextStateProps=mapStateToProps(state,ownProps),statePropsChanged=!areStatePropsEqual(nextStateProps,stateProps);return stateProps=nextStateProps,statePropsChanged&&(mergedProps=mergeProps(stateProps,dispatchProps,ownProps)),mergedProps}__name(handleNewState,"handleNewState");function handleSubsequentCalls(nextState,nextOwnProps){const propsChanged=!areOwnPropsEqual(nextOwnProps,ownProps),stateChanged=!areStatesEqual(nextState,state,nextOwnProps,ownProps);return state=nextState,ownProps=nextOwnProps,propsChanged&&stateChanged?handleNewPropsAndNewState():propsChanged?handleNewProps():stateChanged?handleNewState():mergedProps}return __name(handleSubsequentCalls,"handleSubsequentCalls"),__name(function(nextState,nextOwnProps){return hasRunAtLeastOnce?handleSubsequentCalls(nextState,nextOwnProps):handleFirstCall(nextState,nextOwnProps)},"pureFinalPropsSelector")}__name(pureFinalPropsSelectorFactory,"pureFinalPropsSelectorFactory");function finalPropsSelectorFactory(dispatch,{initMapStateToProps,initMapDispatchToProps,initMergeProps,...options}){const mapStateToProps=initMapStateToProps(dispatch,options),mapDispatchToProps=initMapDispatchToProps(dispatch,options),mergeProps=initMergeProps(dispatch,options);return pureFinalPropsSelectorFactory(mapStateToProps,mapDispatchToProps,mergeProps,dispatch,options)}__name(finalPropsSelectorFactory,"finalPropsSelectorFactory");function bindActionCreators(actionCreators,dispatch){const boundActionCreators={};for(const key in actionCreators){const actionCreator=actionCreators[key];typeof actionCreator=="function"&&(boundActionCreators[key]=(...args)=>dispatch(actionCreator(...args)))}return boundActionCreators}__name(bindActionCreators,"bindActionCreators");function wrapMapToPropsConstant(getConstant){return __name(function(dispatch){const constant=getConstant(dispatch);function constantSelector(){return constant}return __name(constantSelector,"constantSelector"),constantSelector.dependsOnOwnProps=!1,constantSelector},"initConstantSelector")}__name(wrapMapToPropsConstant,"wrapMapToPropsConstant");function getDependsOnOwnProps(mapToProps){return mapToProps.dependsOnOwnProps?!!mapToProps.dependsOnOwnProps:mapToProps.length!==1}__name(getDependsOnOwnProps,"getDependsOnOwnProps");function wrapMapToPropsFunc(mapToProps,methodName){return __name(function(dispatch,{displayName}){const proxy=__name(function(stateOrDispatch,ownProps){return proxy.dependsOnOwnProps?proxy.mapToProps(stateOrDispatch,ownProps):proxy.mapToProps(stateOrDispatch,void 0)},"mapToPropsProxy");return proxy.dependsOnOwnProps=!0,proxy.mapToProps=__name(function(stateOrDispatch,ownProps){proxy.mapToProps=mapToProps,proxy.dependsOnOwnProps=getDependsOnOwnProps(mapToProps);let props=proxy(stateOrDispatch,ownProps);return typeof props=="function"&&(proxy.mapToProps=props,proxy.dependsOnOwnProps=getDependsOnOwnProps(props),props=proxy(stateOrDispatch,ownProps)),props},"detectFactoryAndVerify"),proxy},"initProxySelector")}__name(wrapMapToPropsFunc,"wrapMapToPropsFunc");function createInvalidArgFactory(arg,name){return(dispatch,options)=>{throw new Error(`Invalid value of type ${typeof arg} for ${name} argument when connecting component ${options.wrappedComponentName}.`)}}__name(createInvalidArgFactory,"createInvalidArgFactory");function mapDispatchToPropsFactory(mapDispatchToProps){return mapDispatchToProps&&typeof mapDispatchToProps=="object"?wrapMapToPropsConstant(dispatch=>bindActionCreators(mapDispatchToProps,dispatch)):mapDispatchToProps?typeof mapDispatchToProps=="function"?wrapMapToPropsFunc(mapDispatchToProps):createInvalidArgFactory(mapDispatchToProps,"mapDispatchToProps"):wrapMapToPropsConstant(dispatch=>({dispatch}))}__name(mapDispatchToPropsFactory,"mapDispatchToPropsFactory");function mapStateToPropsFactory(mapStateToProps){return mapStateToProps?typeof mapStateToProps=="function"?wrapMapToPropsFunc(mapStateToProps):createInvalidArgFactory(mapStateToProps,"mapStateToProps"):wrapMapToPropsConstant(()=>({}))}__name(mapStateToPropsFactory,"mapStateToPropsFactory");function defaultMergeProps(stateProps,dispatchProps,ownProps){return{...ownProps,...stateProps,...dispatchProps}}__name(defaultMergeProps,"defaultMergeProps");function wrapMergePropsFunc(mergeProps){return __name(function(dispatch,{displayName,areMergedPropsEqual}){let hasRunOnce=!1,mergedProps;return __name(function(stateProps,dispatchProps,ownProps){const nextMergedProps=mergeProps(stateProps,dispatchProps,ownProps);return hasRunOnce?areMergedPropsEqual(nextMergedProps,mergedProps)||(mergedProps=nextMergedProps):(hasRunOnce=!0,mergedProps=nextMergedProps),mergedProps},"mergePropsProxy")},"initMergePropsProxy")}__name(wrapMergePropsFunc,"wrapMergePropsFunc");function mergePropsFactory(mergeProps){return mergeProps?typeof mergeProps=="function"?wrapMergePropsFunc(mergeProps):createInvalidArgFactory(mergeProps,"mergeProps"):()=>defaultMergeProps}__name(mergePropsFactory,"mergePropsFactory");function defaultNoopBatch(callback){callback()}__name(defaultNoopBatch,"defaultNoopBatch");function createListenerCollection(){let first=null,last=null;return{clear(){first=null,last=null},notify(){defaultNoopBatch(()=>{let listener=first;for(;listener;)listener.callback(),listener=listener.next})},get(){const listeners=[];let listener=first;for(;listener;)listeners.push(listener),listener=listener.next;return listeners},subscribe(callback){let isSubscribed=!0;const listener=last={callback,next:null,prev:last};return listener.prev?listener.prev.next=listener:first=listener,__name(function(){!isSubscribed||first===null||(isSubscribed=!1,listener.next?listener.next.prev=listener.prev:last=listener.prev,listener.prev?listener.prev.next=listener.next:first=listener.next)},"unsubscribe")}}}__name(createListenerCollection,"createListenerCollection");var nullListeners={notify(){},get:__name(()=>[],"get")};function createSubscription(store,parentSub){let unsubscribe,listeners=nullListeners,subscriptionsAmount=0,selfSubscribed=!1;function addNestedSub(listener){trySubscribe();const cleanupListener=listeners.subscribe(listener);let removed=!1;return()=>{removed||(removed=!0,cleanupListener(),tryUnsubscribe())}}__name(addNestedSub,"addNestedSub");function notifyNestedSubs(){listeners.notify()}__name(notifyNestedSubs,"notifyNestedSubs");function handleChangeWrapper(){subscription.onStateChange&&subscription.onStateChange()}__name(handleChangeWrapper,"handleChangeWrapper");function isSubscribed(){return selfSubscribed}__name(isSubscribed,"isSubscribed");function trySubscribe(){subscriptionsAmount++,unsubscribe||(unsubscribe=parentSub?parentSub.addNestedSub(handleChangeWrapper):store.subscribe(handleChangeWrapper),listeners=createListenerCollection())}__name(trySubscribe,"trySubscribe");function tryUnsubscribe(){subscriptionsAmount--,unsubscribe&&subscriptionsAmount===0&&(unsubscribe(),unsubscribe=void 0,listeners.clear(),listeners=nullListeners)}__name(tryUnsubscribe,"tryUnsubscribe");function trySubscribeSelf(){selfSubscribed||(selfSubscribed=!0,trySubscribe())}__name(trySubscribeSelf,"trySubscribeSelf");function tryUnsubscribeSelf(){selfSubscribed&&(selfSubscribed=!1,tryUnsubscribe())}__name(tryUnsubscribeSelf,"tryUnsubscribeSelf");const subscription={addNestedSub,notifyNestedSubs,handleChangeWrapper,isSubscribed,trySubscribe:trySubscribeSelf,tryUnsubscribe:tryUnsubscribeSelf,getListeners:__name(()=>listeners,"getListeners")};return subscription}__name(createSubscription,"createSubscription");var canUseDOM=__name(()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u","canUseDOM"),isDOM=canUseDOM(),isRunningInReactNative=__name(()=>typeof navigator<"u"&&navigator.product==="ReactNative","isRunningInReactNative"),isReactNative=isRunningInReactNative(),getUseIsomorphicLayoutEffect=__name(()=>isDOM||isReactNative?reactExports.useLayoutEffect:reactExports.useEffect,"getUseIsomorphicLayoutEffect"),useIsomorphicLayoutEffect=getUseIsomorphicLayoutEffect();function is(x,y){return x===y?x!==0||y!==0||1/x===1/y:x!==x&&y!==y}__name(is,"is");function shallowEqual(objA,objB){if(is(objA,objB))return!0;if(typeof objA!="object"||objA===null||typeof objB!="object"||objB===null)return!1;const keysA=Object.keys(objA),keysB=Object.keys(objB);if(keysA.length!==keysB.length)return!1;for(let i=0;i<keysA.length;i++)if(!Object.prototype.hasOwnProperty.call(objB,keysA[i])||!is(objA[keysA[i]],objB[keysA[i]]))return!1;return!0}__name(shallowEqual,"shallowEqual");var REACT_STATICS={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},KNOWN_STATICS={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},FORWARD_REF_STATICS={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},MEMO_STATICS={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},TYPE_STATICS={[ForwardRef]:FORWARD_REF_STATICS,[Memo]:MEMO_STATICS};function getStatics(component){return isMemo(component)?MEMO_STATICS:TYPE_STATICS[component.$$typeof]||REACT_STATICS}__name(getStatics,"getStatics");var defineProperty=Object.defineProperty,getOwnPropertyNames=Object.getOwnPropertyNames,getOwnPropertySymbols=Object.getOwnPropertySymbols,getOwnPropertyDescriptor=Object.getOwnPropertyDescriptor,getPrototypeOf=Object.getPrototypeOf,objectPrototype=Object.prototype;function hoistNonReactStatics(targetComponent,sourceComponent){if(typeof sourceComponent!="string"){if(objectPrototype){const inheritedComponent=getPrototypeOf(sourceComponent);inheritedComponent&&inheritedComponent!==objectPrototype&&hoistNonReactStatics(targetComponent,inheritedComponent)}let keys=getOwnPropertyNames(sourceComponent);getOwnPropertySymbols&&(keys=keys.concat(getOwnPropertySymbols(sourceComponent)));const targetStatics=getStatics(targetComponent),sourceStatics=getStatics(sourceComponent);for(let i=0;i<keys.length;++i){const key=keys[i];if(!KNOWN_STATICS[key]&&!(sourceStatics&&sourceStatics[key])&&!(targetStatics&&targetStatics[key])){const descriptor=getOwnPropertyDescriptor(sourceComponent,key);try{defineProperty(targetComponent,key,descriptor)}catch{}}}}return targetComponent}__name(hoistNonReactStatics,"hoistNonReactStatics");var ContextKey=Symbol.for("react-redux-context"),gT=typeof globalThis<"u"?globalThis:{};function getContext(){if(!reactExports.createContext)return{};const contextMap=gT[ContextKey]??=new Map;let realContext=contextMap.get(reactExports.createContext);return realContext||(realContext=reactExports.createContext(null),contextMap.set(reactExports.createContext,realContext)),realContext}__name(getContext,"getContext");var ReactReduxContext=getContext(),NO_SUBSCRIPTION_ARRAY=[null,null];function useIsomorphicLayoutEffectWithArgs(effectFunc,effectArgs,dependencies){useIsomorphicLayoutEffect(()=>effectFunc(...effectArgs),dependencies)}__name(useIsomorphicLayoutEffectWithArgs,"useIsomorphicLayoutEffectWithArgs");function captureWrapperProps(lastWrapperProps,lastChildProps,renderIsScheduled,wrapperProps,childPropsFromStoreUpdate,notifyNestedSubs){lastWrapperProps.current=wrapperProps,renderIsScheduled.current=!1,childPropsFromStoreUpdate.current&&(childPropsFromStoreUpdate.current=null,notifyNestedSubs())}__name(captureWrapperProps,"captureWrapperProps");function subscribeUpdates(shouldHandleStateChanges,store,subscription,childPropsSelector,lastWrapperProps,lastChildProps,renderIsScheduled,isMounted,childPropsFromStoreUpdate,notifyNestedSubs,additionalSubscribeListener){if(!shouldHandleStateChanges)return()=>{};let didUnsubscribe=!1,lastThrownError=null;const checkForUpdates=__name(()=>{if(didUnsubscribe||!isMounted.current)return;const latestStoreState=store.getState();let newChildProps,error;try{newChildProps=childPropsSelector(latestStoreState,lastWrapperProps.current)}catch(e){error=e,lastThrownError=e}error||(lastThrownError=null),newChildProps===lastChildProps.current?renderIsScheduled.current||notifyNestedSubs():(lastChildProps.current=newChildProps,childPropsFromStoreUpdate.current=newChildProps,renderIsScheduled.current=!0,additionalSubscribeListener())},"checkForUpdates");return subscription.onStateChange=checkForUpdates,subscription.trySubscribe(),checkForUpdates(),__name(()=>{if(didUnsubscribe=!0,subscription.tryUnsubscribe(),subscription.onStateChange=null,lastThrownError)throw lastThrownError},"unsubscribeWrapper")}__name(subscribeUpdates,"subscribeUpdates");function strictEqual(a,b){return a===b}__name(strictEqual,"strictEqual");function connect(mapStateToProps,mapDispatchToProps,mergeProps,{pure,areStatesEqual=strictEqual,areOwnPropsEqual=shallowEqual,areStatePropsEqual=shallowEqual,areMergedPropsEqual=shallowEqual,forwardRef=!1,context=ReactReduxContext}={}){const Context=context,initMapStateToProps=mapStateToPropsFactory(mapStateToProps),initMapDispatchToProps=mapDispatchToPropsFactory(mapDispatchToProps),initMergeProps=mergePropsFactory(mergeProps),shouldHandleStateChanges=!!mapStateToProps;return __name(WrappedComponent=>{const wrappedComponentName=WrappedComponent.displayName||WrappedComponent.name||"Component",displayName=`Connect(${wrappedComponentName})`,selectorFactoryOptions={shouldHandleStateChanges,displayName,wrappedComponentName,WrappedComponent,initMapStateToProps,initMapDispatchToProps,initMergeProps,areStatesEqual,areStatePropsEqual,areOwnPropsEqual,areMergedPropsEqual};function ConnectFunction(props){const[propsContext,reactReduxForwardedRef,wrapperProps]=reactExports.useMemo(()=>{const{reactReduxForwardedRef:reactReduxForwardedRef2,...wrapperProps2}=props;return[props.context,reactReduxForwardedRef2,wrapperProps2]},[props]),ContextToUse=reactExports.useMemo(()=>{let ResultContext=Context;return propsContext?.Consumer,ResultContext},[propsContext,Context]),contextValue=reactExports.useContext(ContextToUse),didStoreComeFromProps=!!props.store&&!!props.store.getState&&!!props.store.dispatch,didStoreComeFromContext=!!contextValue&&!!contextValue.store,store=didStoreComeFromProps?props.store:contextValue.store,getServerState=didStoreComeFromContext?contextValue.getServerState:store.getState,childPropsSelector=reactExports.useMemo(()=>finalPropsSelectorFactory(store.dispatch,selectorFactoryOptions),[store]),[subscription,notifyNestedSubs]=reactExports.useMemo(()=>{if(!shouldHandleStateChanges)return NO_SUBSCRIPTION_ARRAY;const subscription2=createSubscription(store,didStoreComeFromProps?void 0:contextValue.subscription),notifyNestedSubs2=subscription2.notifyNestedSubs.bind(subscription2);return[subscription2,notifyNestedSubs2]},[store,didStoreComeFromProps,contextValue]),overriddenContextValue=reactExports.useMemo(()=>didStoreComeFromProps?contextValue:{...contextValue,subscription},[didStoreComeFromProps,contextValue,subscription]),lastChildProps=reactExports.useRef(void 0),lastWrapperProps=reactExports.useRef(wrapperProps),childPropsFromStoreUpdate=reactExports.useRef(void 0),renderIsScheduled=reactExports.useRef(!1),isMounted=reactExports.useRef(!1),latestSubscriptionCallbackError=reactExports.useRef(void 0);useIsomorphicLayoutEffect(()=>(isMounted.current=!0,()=>{isMounted.current=!1}),[]);const actualChildPropsSelector=reactExports.useMemo(()=>__name(()=>childPropsFromStoreUpdate.current&&wrapperProps===lastWrapperProps.current?childPropsFromStoreUpdate.current:childPropsSelector(store.getState(),wrapperProps),"selector"),[store,wrapperProps]),subscribeForReact=reactExports.useMemo(()=>__name(reactListener=>subscription?subscribeUpdates(shouldHandleStateChanges,store,subscription,childPropsSelector,lastWrapperProps,lastChildProps,renderIsScheduled,isMounted,childPropsFromStoreUpdate,notifyNestedSubs,reactListener):()=>{},"subscribe"),[subscription]);useIsomorphicLayoutEffectWithArgs(captureWrapperProps,[lastWrapperProps,lastChildProps,renderIsScheduled,wrapperProps,childPropsFromStoreUpdate,notifyNestedSubs]);let actualChildProps;try{actualChildProps=reactExports.useSyncExternalStore(subscribeForReact,actualChildPropsSelector,getServerState?()=>childPropsSelector(getServerState(),wrapperProps):actualChildPropsSelector)}catch(err){throw latestSubscriptionCallbackError.current&&(err.message+=`
|
|
1
|
+
var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});import{aQ as requireReact,a8 as reactExports}from"./index-BpmqvC1O.js";function formatProdErrorMessage(code){return`Minified Redux error #${code}; visit https://redux.js.org/Errors?code=${code} for the full message or use the non-minified dev environment for full errors. `}__name(formatProdErrorMessage,"formatProdErrorMessage");var $$observable=typeof Symbol=="function"&&Symbol.observable||"@@observable",symbol_observable_default=$$observable,randomString=__name(()=>Math.random().toString(36).substring(7).split("").join("."),"randomString"),ActionTypes={INIT:`@@redux/INIT${randomString()}`,REPLACE:`@@redux/REPLACE${randomString()}`,PROBE_UNKNOWN_ACTION:__name(()=>`@@redux/PROBE_UNKNOWN_ACTION${randomString()}`,"PROBE_UNKNOWN_ACTION")},actionTypes_default=ActionTypes;function isPlainObject(obj){if(typeof obj!="object"||obj===null)return!1;let proto=obj;for(;Object.getPrototypeOf(proto)!==null;)proto=Object.getPrototypeOf(proto);return Object.getPrototypeOf(obj)===proto||Object.getPrototypeOf(obj)===null}__name(isPlainObject,"isPlainObject");function createStore(reducer,preloadedState,enhancer){if(typeof reducer!="function")throw new Error(formatProdErrorMessage(2));if(typeof preloadedState=="function"&&typeof enhancer=="function"||typeof enhancer=="function"&&typeof arguments[3]=="function")throw new Error(formatProdErrorMessage(0));if(typeof preloadedState=="function"&&typeof enhancer>"u"&&(enhancer=preloadedState,preloadedState=void 0),typeof enhancer<"u"){if(typeof enhancer!="function")throw new Error(formatProdErrorMessage(1));return enhancer(createStore)(reducer,preloadedState)}let currentReducer=reducer,currentState=preloadedState,currentListeners=new Map,nextListeners=currentListeners,listenerIdCounter=0,isDispatching=!1;function ensureCanMutateNextListeners(){nextListeners===currentListeners&&(nextListeners=new Map,currentListeners.forEach((listener,key)=>{nextListeners.set(key,listener)}))}__name(ensureCanMutateNextListeners,"ensureCanMutateNextListeners");function getState(){if(isDispatching)throw new Error(formatProdErrorMessage(3));return currentState}__name(getState,"getState");function subscribe(listener){if(typeof listener!="function")throw new Error(formatProdErrorMessage(4));if(isDispatching)throw new Error(formatProdErrorMessage(5));let isSubscribed=!0;ensureCanMutateNextListeners();const listenerId=listenerIdCounter++;return nextListeners.set(listenerId,listener),__name(function(){if(isSubscribed){if(isDispatching)throw new Error(formatProdErrorMessage(6));isSubscribed=!1,ensureCanMutateNextListeners(),nextListeners.delete(listenerId),currentListeners=null}},"unsubscribe")}__name(subscribe,"subscribe");function dispatch(action){if(!isPlainObject(action))throw new Error(formatProdErrorMessage(7));if(typeof action.type>"u")throw new Error(formatProdErrorMessage(8));if(typeof action.type!="string")throw new Error(formatProdErrorMessage(17));if(isDispatching)throw new Error(formatProdErrorMessage(9));try{isDispatching=!0,currentState=currentReducer(currentState,action)}finally{isDispatching=!1}return(currentListeners=nextListeners).forEach(listener=>{listener()}),action}__name(dispatch,"dispatch");function replaceReducer(nextReducer){if(typeof nextReducer!="function")throw new Error(formatProdErrorMessage(10));currentReducer=nextReducer,dispatch({type:actionTypes_default.REPLACE})}__name(replaceReducer,"replaceReducer");function observable(){const outerSubscribe=subscribe;return{subscribe(observer){if(typeof observer!="object"||observer===null)throw new Error(formatProdErrorMessage(11));function observeState(){const observerAsObserver=observer;observerAsObserver.next&&observerAsObserver.next(getState())}return __name(observeState,"observeState"),observeState(),{unsubscribe:outerSubscribe(observeState)}},[symbol_observable_default](){return this}}}return __name(observable,"observable"),dispatch({type:actionTypes_default.INIT}),{dispatch,subscribe,getState,replaceReducer,[symbol_observable_default]:observable}}__name(createStore,"createStore");function assertReducerShape(reducers){Object.keys(reducers).forEach(key=>{const reducer=reducers[key];if(typeof reducer(void 0,{type:actionTypes_default.INIT})>"u")throw new Error(formatProdErrorMessage(12));if(typeof reducer(void 0,{type:actionTypes_default.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(formatProdErrorMessage(13))})}__name(assertReducerShape,"assertReducerShape");function combineReducers(reducers){const reducerKeys=Object.keys(reducers),finalReducers={};for(let i=0;i<reducerKeys.length;i++){const key=reducerKeys[i];typeof reducers[key]=="function"&&(finalReducers[key]=reducers[key])}const finalReducerKeys=Object.keys(finalReducers);let shapeAssertionError;try{assertReducerShape(finalReducers)}catch(e){shapeAssertionError=e}return __name(function(state={},action){if(shapeAssertionError)throw shapeAssertionError;let hasChanged=!1;const nextState={};for(let i=0;i<finalReducerKeys.length;i++){const key=finalReducerKeys[i],reducer=finalReducers[key],previousStateForKey=state[key],nextStateForKey=reducer(previousStateForKey,action);if(typeof nextStateForKey>"u")throw action&&action.type,new Error(formatProdErrorMessage(14));nextState[key]=nextStateForKey,hasChanged=hasChanged||nextStateForKey!==previousStateForKey}return hasChanged=hasChanged||finalReducerKeys.length!==Object.keys(state).length,hasChanged?nextState:state},"combination")}__name(combineReducers,"combineReducers");function bindActionCreator(actionCreator,dispatch){return function(...args){return dispatch(actionCreator.apply(this,args))}}__name(bindActionCreator,"bindActionCreator");function bindActionCreators$1(actionCreators,dispatch){if(typeof actionCreators=="function")return bindActionCreator(actionCreators,dispatch);if(typeof actionCreators!="object"||actionCreators===null)throw new Error(formatProdErrorMessage(16));const boundActionCreators={};for(const key in actionCreators){const actionCreator=actionCreators[key];typeof actionCreator=="function"&&(boundActionCreators[key]=bindActionCreator(actionCreator,dispatch))}return boundActionCreators}__name(bindActionCreators$1,"bindActionCreators$1");function compose(...funcs){return funcs.length===0?arg=>arg:funcs.length===1?funcs[0]:funcs.reduce((a,b)=>(...args)=>a(b(...args)))}__name(compose,"compose");function applyMiddleware(...middlewares){return createStore2=>(reducer,preloadedState)=>{const store=createStore2(reducer,preloadedState);let dispatch=__name(()=>{throw new Error(formatProdErrorMessage(15))},"dispatch");const middlewareAPI={getState:store.getState,dispatch:__name((action,...args)=>dispatch(action,...args),"dispatch")},chain=middlewares.map(middleware=>middleware(middlewareAPI));return dispatch=compose(...chain)(store.dispatch),{...store,dispatch}}}__name(applyMiddleware,"applyMiddleware");function isAction(action){return isPlainObject(action)&&"type"in action&&typeof action.type=="string"}__name(isAction,"isAction");function assertIsFunction(func,errorMessage=`expected a function, instead received ${typeof func}`){if(typeof func!="function")throw new TypeError(errorMessage)}__name(assertIsFunction,"assertIsFunction");function assertIsObject(object,errorMessage=`expected an object, instead received ${typeof object}`){if(typeof object!="object")throw new TypeError(errorMessage)}__name(assertIsObject,"assertIsObject");function assertIsArrayOfFunctions(array,errorMessage="expected all items to be functions, instead received the following types: "){if(!array.every(item=>typeof item=="function")){const itemTypes=array.map(item=>typeof item=="function"?`function ${item.name||"unnamed"}()`:typeof item).join(", ");throw new TypeError(`${errorMessage}[${itemTypes}]`)}}__name(assertIsArrayOfFunctions,"assertIsArrayOfFunctions");var ensureIsArray=__name(item=>Array.isArray(item)?item:[item],"ensureIsArray");function getDependencies(createSelectorArgs){const dependencies=Array.isArray(createSelectorArgs[0])?createSelectorArgs[0]:createSelectorArgs;return assertIsArrayOfFunctions(dependencies,"createSelector expects all input-selectors to be functions, but received the following types: "),dependencies}__name(getDependencies,"getDependencies");function collectInputSelectorResults(dependencies,inputSelectorArgs){const inputSelectorResults=[],{length}=dependencies;for(let i=0;i<length;i++)inputSelectorResults.push(dependencies[i].apply(null,inputSelectorArgs));return inputSelectorResults}__name(collectInputSelectorResults,"collectInputSelectorResults");var _a,StrongRef=(_a=class{constructor(value){this.value=value}deref(){return this.value}},__name(_a,"StrongRef"),_a),Ref=typeof WeakRef<"u"?WeakRef:StrongRef,UNTERMINATED=0,TERMINATED=1;function createCacheNode(){return{s:UNTERMINATED,v:void 0,o:null,p:null}}__name(createCacheNode,"createCacheNode");function weakMapMemoize(func,options={}){let fnNode=createCacheNode();const{resultEqualityCheck}=options;let lastResult,resultsCount=0;function memoized(){let cacheNode=fnNode;const{length}=arguments;for(let i=0,l=length;i<l;i++){const arg=arguments[i];if(typeof arg=="function"||typeof arg=="object"&&arg!==null){let objectCache=cacheNode.o;objectCache===null&&(cacheNode.o=objectCache=new WeakMap);const objectNode=objectCache.get(arg);objectNode===void 0?(cacheNode=createCacheNode(),objectCache.set(arg,cacheNode)):cacheNode=objectNode}else{let primitiveCache=cacheNode.p;primitiveCache===null&&(cacheNode.p=primitiveCache=new Map);const primitiveNode=primitiveCache.get(arg);primitiveNode===void 0?(cacheNode=createCacheNode(),primitiveCache.set(arg,cacheNode)):cacheNode=primitiveNode}}const terminatedNode=cacheNode;let result;if(cacheNode.s===TERMINATED)result=cacheNode.v;else if(result=func.apply(null,arguments),resultsCount++,resultEqualityCheck){const lastResultValue=lastResult?.deref?.()??lastResult;lastResultValue!=null&&resultEqualityCheck(lastResultValue,result)&&(result=lastResultValue,resultsCount!==0&&resultsCount--),lastResult=typeof result=="object"&&result!==null||typeof result=="function"?new Ref(result):result}return terminatedNode.s=TERMINATED,terminatedNode.v=result,result}return __name(memoized,"memoized"),memoized.clearCache=()=>{fnNode=createCacheNode(),memoized.resetResultsCount()},memoized.resultsCount=()=>resultsCount,memoized.resetResultsCount=()=>{resultsCount=0},memoized}__name(weakMapMemoize,"weakMapMemoize");function createSelectorCreator(memoizeOrOptions,...memoizeOptionsFromArgs){const createSelectorCreatorOptions=typeof memoizeOrOptions=="function"?{memoize:memoizeOrOptions,memoizeOptions:memoizeOptionsFromArgs}:memoizeOrOptions,createSelector2=__name((...createSelectorArgs)=>{let recomputations=0,dependencyRecomputations=0,lastResult,directlyPassedOptions={},resultFunc=createSelectorArgs.pop();typeof resultFunc=="object"&&(directlyPassedOptions=resultFunc,resultFunc=createSelectorArgs.pop()),assertIsFunction(resultFunc,`createSelector expects an output function after the inputs, but received: [${typeof resultFunc}]`);const combinedOptions={...createSelectorCreatorOptions,...directlyPassedOptions},{memoize,memoizeOptions=[],argsMemoize=weakMapMemoize,argsMemoizeOptions=[]}=combinedOptions,finalMemoizeOptions=ensureIsArray(memoizeOptions),finalArgsMemoizeOptions=ensureIsArray(argsMemoizeOptions),dependencies=getDependencies(createSelectorArgs),memoizedResultFunc=memoize(__name(function(){return recomputations++,resultFunc.apply(null,arguments)},"recomputationWrapper"),...finalMemoizeOptions),selector=argsMemoize(__name(function(){dependencyRecomputations++;const inputSelectorResults=collectInputSelectorResults(dependencies,arguments);return lastResult=memoizedResultFunc.apply(null,inputSelectorResults),lastResult},"dependenciesChecker"),...finalArgsMemoizeOptions);return Object.assign(selector,{resultFunc,memoizedResultFunc,dependencies,dependencyRecomputations:__name(()=>dependencyRecomputations,"dependencyRecomputations"),resetDependencyRecomputations:__name(()=>{dependencyRecomputations=0},"resetDependencyRecomputations"),lastResult:__name(()=>lastResult,"lastResult"),recomputations:__name(()=>recomputations,"recomputations"),resetRecomputations:__name(()=>{recomputations=0},"resetRecomputations"),memoize,argsMemoize})},"createSelector2");return Object.assign(createSelector2,{withTypes:__name(()=>createSelector2,"withTypes")}),createSelector2}__name(createSelectorCreator,"createSelectorCreator");var createSelector=createSelectorCreator(weakMapMemoize),createStructuredSelector=Object.assign((inputSelectorsObject,selectorCreator=createSelector)=>{assertIsObject(inputSelectorsObject,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof inputSelectorsObject}`);const inputSelectorKeys=Object.keys(inputSelectorsObject),dependencies=inputSelectorKeys.map(key=>inputSelectorsObject[key]);return selectorCreator(dependencies,(...inputSelectorResults)=>inputSelectorResults.reduce((composition,value,index)=>(composition[inputSelectorKeys[index]]=value,composition),{}))},{withTypes:__name(()=>createStructuredSelector,"withTypes")}),withSelector={exports:{}},useSyncExternalStoreWithSelector_production={};var hasRequiredUseSyncExternalStoreWithSelector_production;function requireUseSyncExternalStoreWithSelector_production(){if(hasRequiredUseSyncExternalStoreWithSelector_production)return useSyncExternalStoreWithSelector_production;hasRequiredUseSyncExternalStoreWithSelector_production=1;var React=requireReact();function is2(x,y){return x===y&&(x!==0||1/x===1/y)||x!==x&&y!==y}__name(is2,"is");var objectIs=typeof Object.is=="function"?Object.is:is2,useSyncExternalStore=React.useSyncExternalStore,useRef=React.useRef,useEffect=React.useEffect,useMemo=React.useMemo,useDebugValue=React.useDebugValue;return useSyncExternalStoreWithSelector_production.useSyncExternalStoreWithSelector=function(subscribe,getSnapshot,getServerSnapshot,selector,isEqual){var instRef=useRef(null);if(instRef.current===null){var inst={hasValue:!1,value:null};instRef.current=inst}else inst=instRef.current;instRef=useMemo(function(){function memoizedSelector(nextSnapshot){if(!hasMemo){if(hasMemo=!0,memoizedSnapshot=nextSnapshot,nextSnapshot=selector(nextSnapshot),isEqual!==void 0&&inst.hasValue){var currentSelection=inst.value;if(isEqual(currentSelection,nextSnapshot))return memoizedSelection=currentSelection}return memoizedSelection=nextSnapshot}if(currentSelection=memoizedSelection,objectIs(memoizedSnapshot,nextSnapshot))return currentSelection;var nextSelection=selector(nextSnapshot);return isEqual!==void 0&&isEqual(currentSelection,nextSelection)?(memoizedSnapshot=nextSnapshot,currentSelection):(memoizedSnapshot=nextSnapshot,memoizedSelection=nextSelection)}__name(memoizedSelector,"memoizedSelector");var hasMemo=!1,memoizedSnapshot,memoizedSelection,maybeGetServerSnapshot=getServerSnapshot===void 0?null:getServerSnapshot;return[function(){return memoizedSelector(getSnapshot())},maybeGetServerSnapshot===null?void 0:function(){return memoizedSelector(maybeGetServerSnapshot())}]},[getSnapshot,getServerSnapshot,selector,isEqual]);var value=useSyncExternalStore(subscribe,instRef[0],instRef[1]);return useEffect(function(){inst.hasValue=!0,inst.value=value},[value]),useDebugValue(value),value},useSyncExternalStoreWithSelector_production}__name(requireUseSyncExternalStoreWithSelector_production,"requireUseSyncExternalStoreWithSelector_production");var hasRequiredWithSelector;function requireWithSelector(){return hasRequiredWithSelector||(hasRequiredWithSelector=1,withSelector.exports=requireUseSyncExternalStoreWithSelector_production()),withSelector.exports}__name(requireWithSelector,"requireWithSelector");requireWithSelector();var IS_REACT_19=reactExports.version.startsWith("19"),REACT_ELEMENT_TYPE=Symbol.for(IS_REACT_19?"react.transitional.element":"react.element"),REACT_PORTAL_TYPE=Symbol.for("react.portal"),REACT_FRAGMENT_TYPE=Symbol.for("react.fragment"),REACT_STRICT_MODE_TYPE=Symbol.for("react.strict_mode"),REACT_PROFILER_TYPE=Symbol.for("react.profiler"),REACT_CONSUMER_TYPE=Symbol.for("react.consumer"),REACT_CONTEXT_TYPE=Symbol.for("react.context"),REACT_FORWARD_REF_TYPE=Symbol.for("react.forward_ref"),REACT_SUSPENSE_TYPE=Symbol.for("react.suspense"),REACT_SUSPENSE_LIST_TYPE=Symbol.for("react.suspense_list"),REACT_MEMO_TYPE=Symbol.for("react.memo"),REACT_LAZY_TYPE=Symbol.for("react.lazy"),ForwardRef=REACT_FORWARD_REF_TYPE,Memo=REACT_MEMO_TYPE;function typeOf(object){if(typeof object=="object"&&object!==null){const{$$typeof}=object;switch($$typeof){case REACT_ELEMENT_TYPE:switch(object=object.type,object){case REACT_FRAGMENT_TYPE:case REACT_PROFILER_TYPE:case REACT_STRICT_MODE_TYPE:case REACT_SUSPENSE_TYPE:case REACT_SUSPENSE_LIST_TYPE:return object;default:switch(object=object&&object.$$typeof,object){case REACT_CONTEXT_TYPE:case REACT_FORWARD_REF_TYPE:case REACT_LAZY_TYPE:case REACT_MEMO_TYPE:return object;case REACT_CONSUMER_TYPE:return object;default:return $$typeof}}case REACT_PORTAL_TYPE:return $$typeof}}}__name(typeOf,"typeOf");function isMemo(object){return typeOf(object)===REACT_MEMO_TYPE}__name(isMemo,"isMemo");function pureFinalPropsSelectorFactory(mapStateToProps,mapDispatchToProps,mergeProps,dispatch,{areStatesEqual,areOwnPropsEqual,areStatePropsEqual}){let hasRunAtLeastOnce=!1,state,ownProps,stateProps,dispatchProps,mergedProps;function handleFirstCall(firstState,firstOwnProps){return state=firstState,ownProps=firstOwnProps,stateProps=mapStateToProps(state,ownProps),dispatchProps=mapDispatchToProps(dispatch,ownProps),mergedProps=mergeProps(stateProps,dispatchProps,ownProps),hasRunAtLeastOnce=!0,mergedProps}__name(handleFirstCall,"handleFirstCall");function handleNewPropsAndNewState(){return stateProps=mapStateToProps(state,ownProps),mapDispatchToProps.dependsOnOwnProps&&(dispatchProps=mapDispatchToProps(dispatch,ownProps)),mergedProps=mergeProps(stateProps,dispatchProps,ownProps),mergedProps}__name(handleNewPropsAndNewState,"handleNewPropsAndNewState");function handleNewProps(){return mapStateToProps.dependsOnOwnProps&&(stateProps=mapStateToProps(state,ownProps)),mapDispatchToProps.dependsOnOwnProps&&(dispatchProps=mapDispatchToProps(dispatch,ownProps)),mergedProps=mergeProps(stateProps,dispatchProps,ownProps),mergedProps}__name(handleNewProps,"handleNewProps");function handleNewState(){const nextStateProps=mapStateToProps(state,ownProps),statePropsChanged=!areStatePropsEqual(nextStateProps,stateProps);return stateProps=nextStateProps,statePropsChanged&&(mergedProps=mergeProps(stateProps,dispatchProps,ownProps)),mergedProps}__name(handleNewState,"handleNewState");function handleSubsequentCalls(nextState,nextOwnProps){const propsChanged=!areOwnPropsEqual(nextOwnProps,ownProps),stateChanged=!areStatesEqual(nextState,state,nextOwnProps,ownProps);return state=nextState,ownProps=nextOwnProps,propsChanged&&stateChanged?handleNewPropsAndNewState():propsChanged?handleNewProps():stateChanged?handleNewState():mergedProps}return __name(handleSubsequentCalls,"handleSubsequentCalls"),__name(function(nextState,nextOwnProps){return hasRunAtLeastOnce?handleSubsequentCalls(nextState,nextOwnProps):handleFirstCall(nextState,nextOwnProps)},"pureFinalPropsSelector")}__name(pureFinalPropsSelectorFactory,"pureFinalPropsSelectorFactory");function finalPropsSelectorFactory(dispatch,{initMapStateToProps,initMapDispatchToProps,initMergeProps,...options}){const mapStateToProps=initMapStateToProps(dispatch,options),mapDispatchToProps=initMapDispatchToProps(dispatch,options),mergeProps=initMergeProps(dispatch,options);return pureFinalPropsSelectorFactory(mapStateToProps,mapDispatchToProps,mergeProps,dispatch,options)}__name(finalPropsSelectorFactory,"finalPropsSelectorFactory");function bindActionCreators(actionCreators,dispatch){const boundActionCreators={};for(const key in actionCreators){const actionCreator=actionCreators[key];typeof actionCreator=="function"&&(boundActionCreators[key]=(...args)=>dispatch(actionCreator(...args)))}return boundActionCreators}__name(bindActionCreators,"bindActionCreators");function wrapMapToPropsConstant(getConstant){return __name(function(dispatch){const constant=getConstant(dispatch);function constantSelector(){return constant}return __name(constantSelector,"constantSelector"),constantSelector.dependsOnOwnProps=!1,constantSelector},"initConstantSelector")}__name(wrapMapToPropsConstant,"wrapMapToPropsConstant");function getDependsOnOwnProps(mapToProps){return mapToProps.dependsOnOwnProps?!!mapToProps.dependsOnOwnProps:mapToProps.length!==1}__name(getDependsOnOwnProps,"getDependsOnOwnProps");function wrapMapToPropsFunc(mapToProps,methodName){return __name(function(dispatch,{displayName}){const proxy=__name(function(stateOrDispatch,ownProps){return proxy.dependsOnOwnProps?proxy.mapToProps(stateOrDispatch,ownProps):proxy.mapToProps(stateOrDispatch,void 0)},"mapToPropsProxy");return proxy.dependsOnOwnProps=!0,proxy.mapToProps=__name(function(stateOrDispatch,ownProps){proxy.mapToProps=mapToProps,proxy.dependsOnOwnProps=getDependsOnOwnProps(mapToProps);let props=proxy(stateOrDispatch,ownProps);return typeof props=="function"&&(proxy.mapToProps=props,proxy.dependsOnOwnProps=getDependsOnOwnProps(props),props=proxy(stateOrDispatch,ownProps)),props},"detectFactoryAndVerify"),proxy},"initProxySelector")}__name(wrapMapToPropsFunc,"wrapMapToPropsFunc");function createInvalidArgFactory(arg,name){return(dispatch,options)=>{throw new Error(`Invalid value of type ${typeof arg} for ${name} argument when connecting component ${options.wrappedComponentName}.`)}}__name(createInvalidArgFactory,"createInvalidArgFactory");function mapDispatchToPropsFactory(mapDispatchToProps){return mapDispatchToProps&&typeof mapDispatchToProps=="object"?wrapMapToPropsConstant(dispatch=>bindActionCreators(mapDispatchToProps,dispatch)):mapDispatchToProps?typeof mapDispatchToProps=="function"?wrapMapToPropsFunc(mapDispatchToProps):createInvalidArgFactory(mapDispatchToProps,"mapDispatchToProps"):wrapMapToPropsConstant(dispatch=>({dispatch}))}__name(mapDispatchToPropsFactory,"mapDispatchToPropsFactory");function mapStateToPropsFactory(mapStateToProps){return mapStateToProps?typeof mapStateToProps=="function"?wrapMapToPropsFunc(mapStateToProps):createInvalidArgFactory(mapStateToProps,"mapStateToProps"):wrapMapToPropsConstant(()=>({}))}__name(mapStateToPropsFactory,"mapStateToPropsFactory");function defaultMergeProps(stateProps,dispatchProps,ownProps){return{...ownProps,...stateProps,...dispatchProps}}__name(defaultMergeProps,"defaultMergeProps");function wrapMergePropsFunc(mergeProps){return __name(function(dispatch,{displayName,areMergedPropsEqual}){let hasRunOnce=!1,mergedProps;return __name(function(stateProps,dispatchProps,ownProps){const nextMergedProps=mergeProps(stateProps,dispatchProps,ownProps);return hasRunOnce?areMergedPropsEqual(nextMergedProps,mergedProps)||(mergedProps=nextMergedProps):(hasRunOnce=!0,mergedProps=nextMergedProps),mergedProps},"mergePropsProxy")},"initMergePropsProxy")}__name(wrapMergePropsFunc,"wrapMergePropsFunc");function mergePropsFactory(mergeProps){return mergeProps?typeof mergeProps=="function"?wrapMergePropsFunc(mergeProps):createInvalidArgFactory(mergeProps,"mergeProps"):()=>defaultMergeProps}__name(mergePropsFactory,"mergePropsFactory");function defaultNoopBatch(callback){callback()}__name(defaultNoopBatch,"defaultNoopBatch");function createListenerCollection(){let first=null,last=null;return{clear(){first=null,last=null},notify(){defaultNoopBatch(()=>{let listener=first;for(;listener;)listener.callback(),listener=listener.next})},get(){const listeners=[];let listener=first;for(;listener;)listeners.push(listener),listener=listener.next;return listeners},subscribe(callback){let isSubscribed=!0;const listener=last={callback,next:null,prev:last};return listener.prev?listener.prev.next=listener:first=listener,__name(function(){!isSubscribed||first===null||(isSubscribed=!1,listener.next?listener.next.prev=listener.prev:last=listener.prev,listener.prev?listener.prev.next=listener.next:first=listener.next)},"unsubscribe")}}}__name(createListenerCollection,"createListenerCollection");var nullListeners={notify(){},get:__name(()=>[],"get")};function createSubscription(store,parentSub){let unsubscribe,listeners=nullListeners,subscriptionsAmount=0,selfSubscribed=!1;function addNestedSub(listener){trySubscribe();const cleanupListener=listeners.subscribe(listener);let removed=!1;return()=>{removed||(removed=!0,cleanupListener(),tryUnsubscribe())}}__name(addNestedSub,"addNestedSub");function notifyNestedSubs(){listeners.notify()}__name(notifyNestedSubs,"notifyNestedSubs");function handleChangeWrapper(){subscription.onStateChange&&subscription.onStateChange()}__name(handleChangeWrapper,"handleChangeWrapper");function isSubscribed(){return selfSubscribed}__name(isSubscribed,"isSubscribed");function trySubscribe(){subscriptionsAmount++,unsubscribe||(unsubscribe=parentSub?parentSub.addNestedSub(handleChangeWrapper):store.subscribe(handleChangeWrapper),listeners=createListenerCollection())}__name(trySubscribe,"trySubscribe");function tryUnsubscribe(){subscriptionsAmount--,unsubscribe&&subscriptionsAmount===0&&(unsubscribe(),unsubscribe=void 0,listeners.clear(),listeners=nullListeners)}__name(tryUnsubscribe,"tryUnsubscribe");function trySubscribeSelf(){selfSubscribed||(selfSubscribed=!0,trySubscribe())}__name(trySubscribeSelf,"trySubscribeSelf");function tryUnsubscribeSelf(){selfSubscribed&&(selfSubscribed=!1,tryUnsubscribe())}__name(tryUnsubscribeSelf,"tryUnsubscribeSelf");const subscription={addNestedSub,notifyNestedSubs,handleChangeWrapper,isSubscribed,trySubscribe:trySubscribeSelf,tryUnsubscribe:tryUnsubscribeSelf,getListeners:__name(()=>listeners,"getListeners")};return subscription}__name(createSubscription,"createSubscription");var canUseDOM=__name(()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u","canUseDOM"),isDOM=canUseDOM(),isRunningInReactNative=__name(()=>typeof navigator<"u"&&navigator.product==="ReactNative","isRunningInReactNative"),isReactNative=isRunningInReactNative(),getUseIsomorphicLayoutEffect=__name(()=>isDOM||isReactNative?reactExports.useLayoutEffect:reactExports.useEffect,"getUseIsomorphicLayoutEffect"),useIsomorphicLayoutEffect=getUseIsomorphicLayoutEffect();function is(x,y){return x===y?x!==0||y!==0||1/x===1/y:x!==x&&y!==y}__name(is,"is");function shallowEqual(objA,objB){if(is(objA,objB))return!0;if(typeof objA!="object"||objA===null||typeof objB!="object"||objB===null)return!1;const keysA=Object.keys(objA),keysB=Object.keys(objB);if(keysA.length!==keysB.length)return!1;for(let i=0;i<keysA.length;i++)if(!Object.prototype.hasOwnProperty.call(objB,keysA[i])||!is(objA[keysA[i]],objB[keysA[i]]))return!1;return!0}__name(shallowEqual,"shallowEqual");var REACT_STATICS={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},KNOWN_STATICS={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},FORWARD_REF_STATICS={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},MEMO_STATICS={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},TYPE_STATICS={[ForwardRef]:FORWARD_REF_STATICS,[Memo]:MEMO_STATICS};function getStatics(component){return isMemo(component)?MEMO_STATICS:TYPE_STATICS[component.$$typeof]||REACT_STATICS}__name(getStatics,"getStatics");var defineProperty=Object.defineProperty,getOwnPropertyNames=Object.getOwnPropertyNames,getOwnPropertySymbols=Object.getOwnPropertySymbols,getOwnPropertyDescriptor=Object.getOwnPropertyDescriptor,getPrototypeOf=Object.getPrototypeOf,objectPrototype=Object.prototype;function hoistNonReactStatics(targetComponent,sourceComponent){if(typeof sourceComponent!="string"){if(objectPrototype){const inheritedComponent=getPrototypeOf(sourceComponent);inheritedComponent&&inheritedComponent!==objectPrototype&&hoistNonReactStatics(targetComponent,inheritedComponent)}let keys=getOwnPropertyNames(sourceComponent);getOwnPropertySymbols&&(keys=keys.concat(getOwnPropertySymbols(sourceComponent)));const targetStatics=getStatics(targetComponent),sourceStatics=getStatics(sourceComponent);for(let i=0;i<keys.length;++i){const key=keys[i];if(!KNOWN_STATICS[key]&&!(sourceStatics&&sourceStatics[key])&&!(targetStatics&&targetStatics[key])){const descriptor=getOwnPropertyDescriptor(sourceComponent,key);try{defineProperty(targetComponent,key,descriptor)}catch{}}}}return targetComponent}__name(hoistNonReactStatics,"hoistNonReactStatics");var ContextKey=Symbol.for("react-redux-context"),gT=typeof globalThis<"u"?globalThis:{};function getContext(){if(!reactExports.createContext)return{};const contextMap=gT[ContextKey]??=new Map;let realContext=contextMap.get(reactExports.createContext);return realContext||(realContext=reactExports.createContext(null),contextMap.set(reactExports.createContext,realContext)),realContext}__name(getContext,"getContext");var ReactReduxContext=getContext(),NO_SUBSCRIPTION_ARRAY=[null,null];function useIsomorphicLayoutEffectWithArgs(effectFunc,effectArgs,dependencies){useIsomorphicLayoutEffect(()=>effectFunc(...effectArgs),dependencies)}__name(useIsomorphicLayoutEffectWithArgs,"useIsomorphicLayoutEffectWithArgs");function captureWrapperProps(lastWrapperProps,lastChildProps,renderIsScheduled,wrapperProps,childPropsFromStoreUpdate,notifyNestedSubs){lastWrapperProps.current=wrapperProps,renderIsScheduled.current=!1,childPropsFromStoreUpdate.current&&(childPropsFromStoreUpdate.current=null,notifyNestedSubs())}__name(captureWrapperProps,"captureWrapperProps");function subscribeUpdates(shouldHandleStateChanges,store,subscription,childPropsSelector,lastWrapperProps,lastChildProps,renderIsScheduled,isMounted,childPropsFromStoreUpdate,notifyNestedSubs,additionalSubscribeListener){if(!shouldHandleStateChanges)return()=>{};let didUnsubscribe=!1,lastThrownError=null;const checkForUpdates=__name(()=>{if(didUnsubscribe||!isMounted.current)return;const latestStoreState=store.getState();let newChildProps,error;try{newChildProps=childPropsSelector(latestStoreState,lastWrapperProps.current)}catch(e){error=e,lastThrownError=e}error||(lastThrownError=null),newChildProps===lastChildProps.current?renderIsScheduled.current||notifyNestedSubs():(lastChildProps.current=newChildProps,childPropsFromStoreUpdate.current=newChildProps,renderIsScheduled.current=!0,additionalSubscribeListener())},"checkForUpdates");return subscription.onStateChange=checkForUpdates,subscription.trySubscribe(),checkForUpdates(),__name(()=>{if(didUnsubscribe=!0,subscription.tryUnsubscribe(),subscription.onStateChange=null,lastThrownError)throw lastThrownError},"unsubscribeWrapper")}__name(subscribeUpdates,"subscribeUpdates");function strictEqual(a,b){return a===b}__name(strictEqual,"strictEqual");function connect(mapStateToProps,mapDispatchToProps,mergeProps,{pure,areStatesEqual=strictEqual,areOwnPropsEqual=shallowEqual,areStatePropsEqual=shallowEqual,areMergedPropsEqual=shallowEqual,forwardRef=!1,context=ReactReduxContext}={}){const Context=context,initMapStateToProps=mapStateToPropsFactory(mapStateToProps),initMapDispatchToProps=mapDispatchToPropsFactory(mapDispatchToProps),initMergeProps=mergePropsFactory(mergeProps),shouldHandleStateChanges=!!mapStateToProps;return __name(WrappedComponent=>{const wrappedComponentName=WrappedComponent.displayName||WrappedComponent.name||"Component",displayName=`Connect(${wrappedComponentName})`,selectorFactoryOptions={shouldHandleStateChanges,displayName,wrappedComponentName,WrappedComponent,initMapStateToProps,initMapDispatchToProps,initMergeProps,areStatesEqual,areStatePropsEqual,areOwnPropsEqual,areMergedPropsEqual};function ConnectFunction(props){const[propsContext,reactReduxForwardedRef,wrapperProps]=reactExports.useMemo(()=>{const{reactReduxForwardedRef:reactReduxForwardedRef2,...wrapperProps2}=props;return[props.context,reactReduxForwardedRef2,wrapperProps2]},[props]),ContextToUse=reactExports.useMemo(()=>{let ResultContext=Context;return propsContext?.Consumer,ResultContext},[propsContext,Context]),contextValue=reactExports.useContext(ContextToUse),didStoreComeFromProps=!!props.store&&!!props.store.getState&&!!props.store.dispatch,didStoreComeFromContext=!!contextValue&&!!contextValue.store,store=didStoreComeFromProps?props.store:contextValue.store,getServerState=didStoreComeFromContext?contextValue.getServerState:store.getState,childPropsSelector=reactExports.useMemo(()=>finalPropsSelectorFactory(store.dispatch,selectorFactoryOptions),[store]),[subscription,notifyNestedSubs]=reactExports.useMemo(()=>{if(!shouldHandleStateChanges)return NO_SUBSCRIPTION_ARRAY;const subscription2=createSubscription(store,didStoreComeFromProps?void 0:contextValue.subscription),notifyNestedSubs2=subscription2.notifyNestedSubs.bind(subscription2);return[subscription2,notifyNestedSubs2]},[store,didStoreComeFromProps,contextValue]),overriddenContextValue=reactExports.useMemo(()=>didStoreComeFromProps?contextValue:{...contextValue,subscription},[didStoreComeFromProps,contextValue,subscription]),lastChildProps=reactExports.useRef(void 0),lastWrapperProps=reactExports.useRef(wrapperProps),childPropsFromStoreUpdate=reactExports.useRef(void 0),renderIsScheduled=reactExports.useRef(!1),isMounted=reactExports.useRef(!1),latestSubscriptionCallbackError=reactExports.useRef(void 0);useIsomorphicLayoutEffect(()=>(isMounted.current=!0,()=>{isMounted.current=!1}),[]);const actualChildPropsSelector=reactExports.useMemo(()=>__name(()=>childPropsFromStoreUpdate.current&&wrapperProps===lastWrapperProps.current?childPropsFromStoreUpdate.current:childPropsSelector(store.getState(),wrapperProps),"selector"),[store,wrapperProps]),subscribeForReact=reactExports.useMemo(()=>__name(reactListener=>subscription?subscribeUpdates(shouldHandleStateChanges,store,subscription,childPropsSelector,lastWrapperProps,lastChildProps,renderIsScheduled,isMounted,childPropsFromStoreUpdate,notifyNestedSubs,reactListener):()=>{},"subscribe"),[subscription]);useIsomorphicLayoutEffectWithArgs(captureWrapperProps,[lastWrapperProps,lastChildProps,renderIsScheduled,wrapperProps,childPropsFromStoreUpdate,notifyNestedSubs]);let actualChildProps;try{actualChildProps=reactExports.useSyncExternalStore(subscribeForReact,actualChildPropsSelector,getServerState?()=>childPropsSelector(getServerState(),wrapperProps):actualChildPropsSelector)}catch(err){throw latestSubscriptionCallbackError.current&&(err.message+=`
|
|
2
2
|
The error may be correlated with this previous error:
|
|
3
3
|
${latestSubscriptionCallbackError.current.stack}
|
|
4
4
|
|
|
5
5
|
`),err}useIsomorphicLayoutEffect(()=>{latestSubscriptionCallbackError.current=void 0,childPropsFromStoreUpdate.current=void 0,lastChildProps.current=actualChildProps});const renderedWrappedComponent=reactExports.useMemo(()=>reactExports.createElement(WrappedComponent,{...actualChildProps,ref:reactReduxForwardedRef}),[reactReduxForwardedRef,WrappedComponent,actualChildProps]);return reactExports.useMemo(()=>shouldHandleStateChanges?reactExports.createElement(ContextToUse.Provider,{value:overriddenContextValue},renderedWrappedComponent):renderedWrappedComponent,[ContextToUse,renderedWrappedComponent,overriddenContextValue])}__name(ConnectFunction,"ConnectFunction");const Connect=reactExports.memo(ConnectFunction);if(Connect.WrappedComponent=WrappedComponent,Connect.displayName=ConnectFunction.displayName=displayName,forwardRef){const forwarded=reactExports.forwardRef(__name(function(props,ref){return reactExports.createElement(Connect,{...props,reactReduxForwardedRef:ref})},"forwardConnectRef"));return forwarded.displayName=displayName,forwarded.WrappedComponent=WrappedComponent,hoistNonReactStatics(forwarded,WrappedComponent)}return hoistNonReactStatics(Connect,WrappedComponent)},"wrapWithConnect")}__name(connect,"connect");var connect_default=connect;function Provider(providerProps){const{children,context,serverState,store}=providerProps,contextValue=reactExports.useMemo(()=>{const subscription=createSubscription(store);return{store,subscription,getServerState:serverState?()=>serverState:void 0}},[store,serverState]),previousState=reactExports.useMemo(()=>store.getState(),[store]);useIsomorphicLayoutEffect(()=>{const{subscription}=contextValue;return subscription.onStateChange=subscription.notifyNestedSubs,subscription.trySubscribe(),previousState!==store.getState()&&subscription.notifyNestedSubs(),()=>{subscription.tryUnsubscribe(),subscription.onStateChange=void 0}},[contextValue,previousState]);const Context=context||ReactReduxContext;return reactExports.createElement(Context.Provider,{value:contextValue},children)}__name(Provider,"Provider");var Provider_default=Provider;export{Provider_default as P,createStore as a,applyMiddleware as b,compose as c,createSelector as d,bindActionCreators$1 as e,connect_default as f,isPlainObject as g,combineReducers as h,isAction as i,shallowEqual as s};
|
|
6
|
-
//# sourceMappingURL=react-redux-
|
|
6
|
+
//# sourceMappingURL=react-redux-DkN7OdDj.js.map
|