@cloudcare/browser-core 3.1.2 → 3.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/browser/cookie.js +18 -2
- package/cjs/browser/cookie.js.map +1 -1
- package/cjs/browser/htmlDomUtils.js +4 -1
- package/cjs/browser/htmlDomUtils.js.map +1 -1
- package/cjs/configuration/configuration.js +20 -1
- package/cjs/configuration/configuration.js.map +1 -1
- package/cjs/configuration/transportConfiguration.js +15 -6
- package/cjs/configuration/transportConfiguration.js.map +1 -1
- package/cjs/dataMap.js +7 -3
- package/cjs/dataMap.js.map +1 -1
- package/cjs/helper/deviceInfo.js +23 -21
- package/cjs/helper/deviceInfo.js.map +1 -1
- package/cjs/helper/errorTools.js +2 -1
- package/cjs/helper/errorTools.js.map +1 -1
- package/cjs/helper/monitor.js +1 -0
- package/cjs/helper/monitor.js.map +1 -1
- package/cjs/helper/serialisation/rowData.js +7 -5
- package/cjs/helper/serialisation/rowData.js.map +1 -1
- package/cjs/helper/tools.js +67 -18
- package/cjs/helper/tools.js.map +1 -1
- package/cjs/transport/batch.js +23 -10
- package/cjs/transport/batch.js.map +1 -1
- package/cjs/transport/httpRequest.js +31 -12
- package/cjs/transport/httpRequest.js.map +1 -1
- package/cjs/transport/startBatchWithReplica.js +2 -2
- package/cjs/transport/startBatchWithReplica.js.map +1 -1
- package/esm/browser/cookie.js +17 -3
- package/esm/browser/cookie.js.map +1 -1
- package/esm/browser/htmlDomUtils.js +3 -1
- package/esm/browser/htmlDomUtils.js.map +1 -1
- package/esm/configuration/configuration.js +19 -1
- package/esm/configuration/configuration.js.map +1 -1
- package/esm/configuration/transportConfiguration.js +15 -6
- package/esm/configuration/transportConfiguration.js.map +1 -1
- package/esm/dataMap.js +7 -3
- package/esm/dataMap.js.map +1 -1
- package/esm/helper/deviceInfo.js +23 -21
- package/esm/helper/deviceInfo.js.map +1 -1
- package/esm/helper/errorTools.js +1 -0
- package/esm/helper/errorTools.js.map +1 -1
- package/esm/helper/monitor.js +1 -0
- package/esm/helper/monitor.js.map +1 -1
- package/esm/helper/serialisation/rowData.js +8 -6
- package/esm/helper/serialisation/rowData.js.map +1 -1
- package/esm/helper/tools.js +63 -17
- package/esm/helper/tools.js.map +1 -1
- package/esm/transport/batch.js +24 -11
- package/esm/transport/batch.js.map +1 -1
- package/esm/transport/httpRequest.js +31 -12
- package/esm/transport/httpRequest.js.map +1 -1
- package/esm/transport/startBatchWithReplica.js +2 -2
- package/esm/transport/startBatchWithReplica.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/cookie.js +22 -3
- package/src/browser/htmlDomUtils.js +3 -1
- package/src/configuration/configuration.js +29 -2
- package/src/configuration/transportConfiguration.js +19 -13
- package/src/dataMap.js +9 -3
- package/src/helper/deviceInfo.js +23 -20
- package/src/helper/errorTools.js +1 -0
- package/src/helper/monitor.js +1 -0
- package/src/helper/serialisation/rowData.js +9 -6
- package/src/helper/tools.js +71 -18
- package/src/transport/batch.js +28 -12
- package/src/transport/httpRequest.js +46 -11
- package/src/transport/startBatchWithReplica.js +3 -1
- package/src/.DS_Store +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transportConfiguration.js","names":["isFunction","isBoolean","some","TRIM_REGIX","typeMap","rum","log","sessionReplay","getEndPointUrl","
|
|
1
|
+
{"version":3,"file":"transportConfiguration.js","names":["isFunction","isBoolean","some","TRIM_REGIX","typeMap","rum","log","sessionReplay","getEndPointUrl","configuration","type","subUrl","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","length","clientToken","str","replace","computeTransportConfiguration","initConfiguration","isIntakeUrl","isServerError","request","rumEndpoint","logsEndpoint","sessionReplayEndPoint","isIntakeRequest","notTakeRequest","push","takeUrl"],"sources":["../../src/configuration/transportConfiguration.js"],"sourcesContent":["import { isFunction, isBoolean, some } from '../helper/tools'\nvar TRIM_REGIX = /^\\s+|\\s+$/g\nvar typeMap = {\n rum: '/rum',\n log: '/logging',\n sessionReplay: '/rum/replay'\n}\nfunction getEndPointUrl(configuration, type) {\n // type: rum, log,replay\n var subUrl = typeMap[type]\n if (!subUrl) return ''\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n // 绝对路径这种 /xxx\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/write' + subUrl\n } else {\n endpoint = trim(url) + '/v1/write' + subUrl\n }\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '?token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\n}\n\nfunction trim(str) {\n return str.replace(TRIM_REGIX, '')\n}\n\nexport function computeTransportConfiguration(initConfiguration) {\n var isIntakeUrl = function (url) {\n return false\n }\n if (\n 'isIntakeUrl' in initConfiguration &&\n isFunction(initConfiguration.isIntakeUrl) &&\n isBoolean(initConfiguration.isIntakeUrl())\n ) {\n isIntakeUrl = initConfiguration.isIntakeUrl\n }\n var isServerError = function (request) {\n return false\n }\n if (\n 'isServerError' in initConfiguration &&\n isFunction(initConfiguration.isServerError) &&\n isBoolean(initConfiguration.isServerError())\n ) {\n isServerError = initConfiguration.isServerError\n }\n return {\n rumEndpoint: getEndPointUrl(initConfiguration, 'rum'),\n logsEndpoint: getEndPointUrl(initConfiguration, 'log'),\n sessionReplayEndPoint: getEndPointUrl(initConfiguration, 'sessionReplay'),\n isIntakeUrl: isIntakeUrl,\n isServerError: isServerError\n }\n}\nexport function isIntakeRequest(url, configuration) {\n var notTakeRequest = [configuration.rumEndpoint]\n if (configuration.logsEndpoint) {\n notTakeRequest.push(configuration.logsEndpoint)\n }\n if (configuration.sessionReplayEndPoint) {\n notTakeRequest.push(configuration.sessionReplayEndPoint)\n }\n // datakit 地址,log 地址,以及客户自定义过滤方法定义url\n return (\n some(notTakeRequest, function (takeUrl) {\n return url.indexOf(takeUrl) === 0\n }) || configuration.isIntakeUrl(url)\n )\n}\n"],"mappings":"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"}
|
package/esm/dataMap.js
CHANGED
|
@@ -12,7 +12,6 @@ export var commonTags = {
|
|
|
12
12
|
session_id: 'session.id',
|
|
13
13
|
session_type: 'session.type',
|
|
14
14
|
session_sampling: 'session.is_sampling',
|
|
15
|
-
session_has_replay: 'session.has_replay',
|
|
16
15
|
is_signin: 'user.is_signin',
|
|
17
16
|
os: 'device.os',
|
|
18
17
|
os_version: 'device.os_version',
|
|
@@ -37,7 +36,10 @@ export var commonFields = {
|
|
|
37
36
|
action_id: 'action.id',
|
|
38
37
|
action_ids: 'action.ids',
|
|
39
38
|
view_in_foreground: 'view.in_foreground',
|
|
40
|
-
display: 'display'
|
|
39
|
+
display: 'display',
|
|
40
|
+
session_has_replay: 'session.has_replay',
|
|
41
|
+
is_login: 'user.is_login',
|
|
42
|
+
page_states: '_gc.page_states'
|
|
41
43
|
};
|
|
42
44
|
// 需要用双引号将字符串类型的field value括起来, 这里有数组标示[string, path]
|
|
43
45
|
export var dataMap = {
|
|
@@ -60,6 +62,7 @@ export var dataMap = {
|
|
|
60
62
|
largest_contentful_paint: 'view.largest_contentful_paint',
|
|
61
63
|
largest_contentful_paint_element_selector: 'view.largest_contentful_paint_element_selector',
|
|
62
64
|
cumulative_layout_shift: 'view.cumulative_layout_shift',
|
|
65
|
+
cumulative_layout_shift_target_selector: 'view.cumulative_layout_shift_target_selector',
|
|
63
66
|
first_input_delay: 'view.first_input_delay',
|
|
64
67
|
loading_time: 'view.loading_time',
|
|
65
68
|
dom_interactive: 'view.dom_interactive',
|
|
@@ -67,15 +70,16 @@ export var dataMap = {
|
|
|
67
70
|
dom_complete: 'view.dom_complete',
|
|
68
71
|
load_event: 'view.load_event',
|
|
69
72
|
first_input_time: 'view.first_input_time',
|
|
73
|
+
first_input_target_selector: 'view.first_input_target_selector',
|
|
70
74
|
first_paint_time: 'view.fpt',
|
|
71
75
|
interaction_to_next_paint: 'view.interaction_to_next_paint',
|
|
76
|
+
interaction_to_next_paint_target_selector: 'view.interaction_to_next_paint_target_selector',
|
|
72
77
|
resource_load_time: 'view.resource_load_time',
|
|
73
78
|
time_to_interactive: 'view.tti',
|
|
74
79
|
dom: 'view.dom',
|
|
75
80
|
dom_ready: 'view.dom_ready',
|
|
76
81
|
time_spent: 'view.time_spent',
|
|
77
82
|
first_byte: 'view.first_byte',
|
|
78
|
-
page_states: '_gc.page_states',
|
|
79
83
|
frustration_count: 'view.frustration.count',
|
|
80
84
|
custom_timings: 'view.custom_timings'
|
|
81
85
|
}
|
package/esm/dataMap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataMap.js","names":["RumEventType","commonTags","sdk_name","sdk_version","app_id","env","service","version","userid","user_email","user_name","session_id","session_type","session_sampling","session_has_replay","is_signin","os","os_version","os_version_major","browser","browser_version","browser_version_major","screen_size","network_type","device","view_id","view_referrer","view_url","view_host","view_path","view_name","view_path_group","view_url_query","commonFields","action_id","action_ids","view_in_foreground","display","dataMap","view","type","VIEW","tags","view_loading_type","view_apdex_level","view_privacy_replay_level","fields","is_active","session_replay_stats","session_is_active","view_error_count","view_resource_count","view_long_task_count","view_action_count","first_contentful_paint","largest_contentful_paint","largest_contentful_paint_element_selector","cumulative_layout_shift","first_input_delay","loading_time","dom_interactive","dom_content_loaded","dom_complete","load_event","first_input_time","first_paint_time","interaction_to_next_paint","resource_load_time","time_to_interactive","dom","dom_ready","time_spent","first_byte","page_states","frustration_count","custom_timings","resource","RESOURCE","trace_id","span_id","resource_url","resource_url_host","resource_url_path","resource_url_path_group","resource_url_query","resource_type","resource_status","resource_status_group","resource_method","duration","resource_size","resource_encode_size","resource_render_blocking_status","resource_dns","resource_tcp","resource_ssl","resource_ttfb","resource_trans","resource_redirect","resource_first_byte","resource_dns_time","resource_download_time","resource_first_byte_time","resource_connect_time","resource_ssl_time","resource_redirect_time","error","ERROR","error_id","error_source","error_type","error_handling","error_message","error_stack","error_causes","long_task","LONG_TASK","long_task_id","action","ACTION","action_type","action_name","action_error_count","action_resource_count","action_frustration_types","action_long_task_count","action_target","action_position","telemetry","status","message","error_kind","browser_log","LOGGER","error_resource_url","error_resource_url_host","error_resource_url_path","error_resource_url_path_group","error_resource_status","error_resource_status_group","error_resource_method"],"sources":["../src/dataMap.js"],"sourcesContent":["import { RumEventType } from './helper/enums'\nexport var commonTags = {\n sdk_name: '_gc.sdk_name',\n sdk_version: '_gc.sdk_version',\n app_id: 'application.id',\n env: 'env',\n service: 'service',\n version: 'version',\n userid: 'user.id',\n user_email: 'user.email',\n user_name: 'user.name',\n session_id: 'session.id',\n session_type: 'session.type',\n session_sampling: 'session.is_sampling',\n session_has_replay: 'session.has_replay',\n is_signin: 'user.is_signin',\n os: 'device.os',\n os_version: 'device.os_version',\n os_version_major: 'device.os_version_major',\n browser: 'device.browser',\n browser_version: 'device.browser_version',\n browser_version_major: 'device.browser_version_major',\n screen_size: 'device.screen_size',\n network_type: 'device.network_type',\n device: 'device.device',\n view_id: 'view.id',\n view_referrer: 'view.referrer',\n view_url: 'view.url',\n view_host: 'view.host',\n view_path: 'view.path',\n view_name: 'view.path', // 冗余一个字段\n view_path_group: 'view.path_group',\n view_url_query: 'view.url_query'\n}\nexport var commonFields = {\n action_id: 'action.id',\n action_ids: 'action.ids',\n view_in_foreground: 'view.in_foreground',\n display: 'display'\n}\n// 需要用双引号将字符串类型的field value括起来, 这里有数组标示[string, path]\nexport var dataMap = {\n view: {\n type: RumEventType.VIEW,\n tags: {\n view_loading_type: 'view.loading_type',\n view_apdex_level: 'view.apdex_level',\n view_privacy_replay_level: 'privacy.replay_level'\n },\n fields: {\n is_active: 'view.is_active',\n session_replay_stats: '_gc.replay_stats',\n session_is_active: 'session.is_active',\n view_error_count: 'view.error.count',\n view_resource_count: 'view.resource.count',\n view_long_task_count: 'view.long_task.count',\n view_action_count: 'view.action.count',\n first_contentful_paint: 'view.first_contentful_paint',\n largest_contentful_paint: 'view.largest_contentful_paint',\n largest_contentful_paint_element_selector:\n 'view.largest_contentful_paint_element_selector',\n cumulative_layout_shift: 'view.cumulative_layout_shift',\n first_input_delay: 'view.first_input_delay',\n loading_time: 'view.loading_time',\n dom_interactive: 'view.dom_interactive',\n dom_content_loaded: 'view.dom_content_loaded',\n dom_complete: 'view.dom_complete',\n load_event: 'view.load_event',\n first_input_time: 'view.first_input_time',\n first_paint_time: 'view.fpt',\n interaction_to_next_paint: 'view.interaction_to_next_paint',\n resource_load_time: 'view.resource_load_time',\n time_to_interactive: 'view.tti',\n dom: 'view.dom',\n dom_ready: 'view.dom_ready',\n time_spent: 'view.time_spent',\n first_byte: 'view.first_byte',\n page_states: '_gc.page_states',\n frustration_count: 'view.frustration.count',\n custom_timings: 'view.custom_timings'\n }\n },\n resource: {\n type: RumEventType.RESOURCE,\n tags: {\n trace_id: '_gc.trace_id',\n span_id: '_gc.span_id',\n resource_url: 'resource.url',\n resource_url_host: 'resource.url_host',\n resource_url_path: 'resource.url_path',\n resource_url_path_group: 'resource.url_path_group',\n resource_url_query: 'resource.url_query',\n resource_type: 'resource.type',\n resource_status: 'resource.status',\n resource_status_group: 'resource.status_group',\n resource_method: 'resource.method'\n },\n fields: {\n duration: 'resource.duration',\n resource_size: 'resource.size',\n resource_encode_size: 'resource.encode_size',\n resource_render_blocking_status: 'resource.render_blocking_status',\n resource_dns: 'resource.dns',\n resource_tcp: 'resource.tcp',\n resource_ssl: 'resource.ssl',\n resource_ttfb: 'resource.ttfb',\n resource_trans: 'resource.trans',\n resource_redirect: 'resource.redirect',\n resource_first_byte: 'resource.firstbyte',\n resource_dns_time: 'resource.dns_time',\n resource_download_time: 'resource.download_time',\n resource_first_byte_time: 'resource.first_byte_time',\n resource_connect_time: 'resource.connect_time',\n resource_ssl_time: 'resource.ssl_time',\n resource_redirect_time: 'resource.redirect_time'\n }\n },\n error: {\n type: RumEventType.ERROR,\n tags: {\n error_id: 'error.id',\n trace_id: '_gc.trace_id',\n span_id: '_gc.span_id',\n error_source: 'error.source',\n error_type: 'error.type',\n error_handling: 'error.handling'\n // resource_url: 'error.resource.url',\n // resource_url_host: 'error.resource.url_host',\n // resource_url_path: 'error.resource.url_path',\n // resource_url_path_group: 'error.resource.url_path_group',\n // resource_status: 'error.resource.status',\n // resource_status_group: 'error.resource.status_group',\n // resource_method: 'error.resource.method'\n },\n fields: {\n error_message: ['string', 'error.message'],\n error_stack: ['string', 'error.stack'],\n error_causes: ['string', 'error.causes']\n }\n },\n long_task: {\n type: RumEventType.LONG_TASK,\n tags: {\n long_task_id: 'long_task.id'\n },\n fields: {\n duration: 'long_task.duration'\n }\n },\n action: {\n type: RumEventType.ACTION,\n tags: {\n action_type: 'action.type'\n },\n fields: {\n action_name: 'action.target.name',\n duration: 'action.loading_time',\n action_error_count: 'action.error.count',\n action_resource_count: 'action.resource.count',\n action_frustration_types: 'action.frustration.type',\n action_long_task_count: 'action.long_task.count',\n action_target: '_gc.action.target',\n action_position: '_gc.action.position'\n }\n },\n telemetry: {\n type: 'telemetry',\n fields: {\n status: 'telemetry.status',\n message: ['string', 'telemetry.message'],\n type: 'telemetry.type',\n error_stack: ['string', 'telemetry.error.stack'],\n error_kind: ['string', 'telemetry.error.kind']\n }\n },\n browser_log: {\n type: RumEventType.LOGGER,\n tags: {\n error_source: 'error.source',\n error_type: 'error.type',\n error_resource_url: 'http.url',\n error_resource_url_host: 'http.url_host',\n error_resource_url_path: 'http.url_path',\n error_resource_url_path_group: 'http.url_path_group',\n error_resource_status: 'http.status_code',\n error_resource_status_group: 'http.status_group',\n error_resource_method: 'http.method',\n action_id: 'user_action.id',\n service: 'service',\n status: 'status'\n },\n fields: {\n message: ['string', 'message']\n }\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dataMap.js","names":["RumEventType","commonTags","sdk_name","sdk_version","app_id","env","service","version","userid","user_email","user_name","session_id","session_type","session_sampling","is_signin","os","os_version","os_version_major","browser","browser_version","browser_version_major","screen_size","network_type","device","view_id","view_referrer","view_url","view_host","view_path","view_name","view_path_group","view_url_query","commonFields","action_id","action_ids","view_in_foreground","display","session_has_replay","is_login","page_states","dataMap","view","type","VIEW","tags","view_loading_type","view_apdex_level","view_privacy_replay_level","fields","is_active","session_replay_stats","session_is_active","view_error_count","view_resource_count","view_long_task_count","view_action_count","first_contentful_paint","largest_contentful_paint","largest_contentful_paint_element_selector","cumulative_layout_shift","cumulative_layout_shift_target_selector","first_input_delay","loading_time","dom_interactive","dom_content_loaded","dom_complete","load_event","first_input_time","first_input_target_selector","first_paint_time","interaction_to_next_paint","interaction_to_next_paint_target_selector","resource_load_time","time_to_interactive","dom","dom_ready","time_spent","first_byte","frustration_count","custom_timings","resource","RESOURCE","trace_id","span_id","resource_url","resource_url_host","resource_url_path","resource_url_path_group","resource_url_query","resource_type","resource_status","resource_status_group","resource_method","duration","resource_size","resource_encode_size","resource_render_blocking_status","resource_dns","resource_tcp","resource_ssl","resource_ttfb","resource_trans","resource_redirect","resource_first_byte","resource_dns_time","resource_download_time","resource_first_byte_time","resource_connect_time","resource_ssl_time","resource_redirect_time","error","ERROR","error_id","error_source","error_type","error_handling","error_message","error_stack","error_causes","long_task","LONG_TASK","long_task_id","action","ACTION","action_type","action_name","action_error_count","action_resource_count","action_frustration_types","action_long_task_count","action_target","action_position","telemetry","status","message","error_kind","browser_log","LOGGER","error_resource_url","error_resource_url_host","error_resource_url_path","error_resource_url_path_group","error_resource_status","error_resource_status_group","error_resource_method"],"sources":["../src/dataMap.js"],"sourcesContent":["import { RumEventType } from './helper/enums'\nexport var commonTags = {\n sdk_name: '_gc.sdk_name',\n sdk_version: '_gc.sdk_version',\n app_id: 'application.id',\n env: 'env',\n service: 'service',\n version: 'version',\n userid: 'user.id',\n user_email: 'user.email',\n user_name: 'user.name',\n session_id: 'session.id',\n session_type: 'session.type',\n session_sampling: 'session.is_sampling',\n is_signin: 'user.is_signin',\n os: 'device.os',\n os_version: 'device.os_version',\n os_version_major: 'device.os_version_major',\n browser: 'device.browser',\n browser_version: 'device.browser_version',\n browser_version_major: 'device.browser_version_major',\n screen_size: 'device.screen_size',\n network_type: 'device.network_type',\n device: 'device.device',\n view_id: 'view.id',\n view_referrer: 'view.referrer',\n view_url: 'view.url',\n view_host: 'view.host',\n view_path: 'view.path',\n view_name: 'view.path', // 冗余一个字段\n view_path_group: 'view.path_group',\n view_url_query: 'view.url_query'\n}\nexport var commonFields = {\n action_id: 'action.id',\n action_ids: 'action.ids',\n view_in_foreground: 'view.in_foreground',\n display: 'display',\n session_has_replay: 'session.has_replay',\n is_login: 'user.is_login',\n page_states: '_gc.page_states'\n}\n// 需要用双引号将字符串类型的field value括起来, 这里有数组标示[string, path]\nexport var dataMap = {\n view: {\n type: RumEventType.VIEW,\n tags: {\n view_loading_type: 'view.loading_type',\n view_apdex_level: 'view.apdex_level',\n view_privacy_replay_level: 'privacy.replay_level'\n },\n fields: {\n is_active: 'view.is_active',\n session_replay_stats: '_gc.replay_stats',\n session_is_active: 'session.is_active',\n view_error_count: 'view.error.count',\n view_resource_count: 'view.resource.count',\n view_long_task_count: 'view.long_task.count',\n view_action_count: 'view.action.count',\n first_contentful_paint: 'view.first_contentful_paint',\n largest_contentful_paint: 'view.largest_contentful_paint',\n largest_contentful_paint_element_selector:\n 'view.largest_contentful_paint_element_selector',\n cumulative_layout_shift: 'view.cumulative_layout_shift',\n cumulative_layout_shift_target_selector:\n 'view.cumulative_layout_shift_target_selector',\n first_input_delay: 'view.first_input_delay',\n loading_time: 'view.loading_time',\n dom_interactive: 'view.dom_interactive',\n dom_content_loaded: 'view.dom_content_loaded',\n dom_complete: 'view.dom_complete',\n load_event: 'view.load_event',\n first_input_time: 'view.first_input_time',\n first_input_target_selector: 'view.first_input_target_selector',\n first_paint_time: 'view.fpt',\n interaction_to_next_paint: 'view.interaction_to_next_paint',\n interaction_to_next_paint_target_selector:\n 'view.interaction_to_next_paint_target_selector',\n resource_load_time: 'view.resource_load_time',\n time_to_interactive: 'view.tti',\n dom: 'view.dom',\n dom_ready: 'view.dom_ready',\n time_spent: 'view.time_spent',\n first_byte: 'view.first_byte',\n frustration_count: 'view.frustration.count',\n custom_timings: 'view.custom_timings'\n }\n },\n resource: {\n type: RumEventType.RESOURCE,\n tags: {\n trace_id: '_gc.trace_id',\n span_id: '_gc.span_id',\n resource_url: 'resource.url',\n resource_url_host: 'resource.url_host',\n resource_url_path: 'resource.url_path',\n resource_url_path_group: 'resource.url_path_group',\n resource_url_query: 'resource.url_query',\n resource_type: 'resource.type',\n resource_status: 'resource.status',\n resource_status_group: 'resource.status_group',\n resource_method: 'resource.method'\n },\n fields: {\n duration: 'resource.duration',\n resource_size: 'resource.size',\n resource_encode_size: 'resource.encode_size',\n resource_render_blocking_status: 'resource.render_blocking_status',\n resource_dns: 'resource.dns',\n resource_tcp: 'resource.tcp',\n resource_ssl: 'resource.ssl',\n resource_ttfb: 'resource.ttfb',\n resource_trans: 'resource.trans',\n resource_redirect: 'resource.redirect',\n resource_first_byte: 'resource.firstbyte',\n resource_dns_time: 'resource.dns_time',\n resource_download_time: 'resource.download_time',\n resource_first_byte_time: 'resource.first_byte_time',\n resource_connect_time: 'resource.connect_time',\n resource_ssl_time: 'resource.ssl_time',\n resource_redirect_time: 'resource.redirect_time'\n }\n },\n error: {\n type: RumEventType.ERROR,\n tags: {\n error_id: 'error.id',\n trace_id: '_gc.trace_id',\n span_id: '_gc.span_id',\n error_source: 'error.source',\n error_type: 'error.type',\n error_handling: 'error.handling'\n // resource_url: 'error.resource.url',\n // resource_url_host: 'error.resource.url_host',\n // resource_url_path: 'error.resource.url_path',\n // resource_url_path_group: 'error.resource.url_path_group',\n // resource_status: 'error.resource.status',\n // resource_status_group: 'error.resource.status_group',\n // resource_method: 'error.resource.method'\n },\n fields: {\n error_message: ['string', 'error.message'],\n error_stack: ['string', 'error.stack'],\n error_causes: ['string', 'error.causes']\n }\n },\n long_task: {\n type: RumEventType.LONG_TASK,\n tags: {\n long_task_id: 'long_task.id'\n },\n fields: {\n duration: 'long_task.duration'\n }\n },\n action: {\n type: RumEventType.ACTION,\n tags: {\n action_type: 'action.type'\n },\n fields: {\n action_name: 'action.target.name',\n duration: 'action.loading_time',\n action_error_count: 'action.error.count',\n action_resource_count: 'action.resource.count',\n action_frustration_types: 'action.frustration.type',\n action_long_task_count: 'action.long_task.count',\n action_target: '_gc.action.target',\n action_position: '_gc.action.position'\n }\n },\n telemetry: {\n type: 'telemetry',\n fields: {\n status: 'telemetry.status',\n message: ['string', 'telemetry.message'],\n type: 'telemetry.type',\n error_stack: ['string', 'telemetry.error.stack'],\n error_kind: ['string', 'telemetry.error.kind']\n }\n },\n browser_log: {\n type: RumEventType.LOGGER,\n tags: {\n error_source: 'error.source',\n error_type: 'error.type',\n error_resource_url: 'http.url',\n error_resource_url_host: 'http.url_host',\n error_resource_url_path: 'http.url_path',\n error_resource_url_path_group: 'http.url_path_group',\n error_resource_status: 'http.status_code',\n error_resource_status_group: 'http.status_group',\n error_resource_method: 'http.method',\n action_id: 'user_action.id',\n service: 'service',\n status: 'status'\n },\n fields: {\n message: ['string', 'message']\n }\n }\n}\n"],"mappings":"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"}
|
package/esm/helper/deviceInfo.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { display } from '../helper/display';
|
|
2
|
+
import { monitor } from '../helper/monitor';
|
|
2
3
|
var VariableLibrary = {
|
|
3
4
|
navigator: typeof window !== 'undefined' && typeof window.navigator != 'undefined' ? window.navigator : {},
|
|
4
5
|
// 信息map
|
|
@@ -12,7 +13,7 @@ var VariableLibrary = {
|
|
|
12
13
|
// 方法库
|
|
13
14
|
var MethodLibrary = {
|
|
14
15
|
// 获取匹配库
|
|
15
|
-
getMatchMap: function
|
|
16
|
+
getMatchMap: monitor(function (u) {
|
|
16
17
|
return {
|
|
17
18
|
// 内核
|
|
18
19
|
Trident: u.indexOf('Trident') > -1 || u.indexOf('NET CLR') > -1,
|
|
@@ -82,9 +83,9 @@ var MethodLibrary = {
|
|
|
82
83
|
Tablet: u.indexOf('Tablet') > -1 || u.indexOf('Nexus 7') > -1,
|
|
83
84
|
iPad: u.indexOf('iPad') > -1
|
|
84
85
|
};
|
|
85
|
-
},
|
|
86
|
+
}),
|
|
86
87
|
// 在信息map和匹配库中进行匹配
|
|
87
|
-
matchInfoMap: function
|
|
88
|
+
matchInfoMap: monitor(function (_this) {
|
|
88
89
|
var u = VariableLibrary.navigator.userAgent || '';
|
|
89
90
|
var match = MethodLibrary.getMatchMap(u);
|
|
90
91
|
for (var s in VariableLibrary.infoMap) {
|
|
@@ -95,15 +96,15 @@ var MethodLibrary = {
|
|
|
95
96
|
}
|
|
96
97
|
}
|
|
97
98
|
}
|
|
98
|
-
},
|
|
99
|
+
}),
|
|
99
100
|
// 获取当前操作系统
|
|
100
|
-
getOS: function
|
|
101
|
+
getOS: monitor(function () {
|
|
101
102
|
var _this = this;
|
|
102
103
|
MethodLibrary.matchInfoMap(_this);
|
|
103
104
|
return _this.os || 'Unknown';
|
|
104
|
-
},
|
|
105
|
+
}),
|
|
105
106
|
// 获取操作系统版本
|
|
106
|
-
getOSVersion: function
|
|
107
|
+
getOSVersion: monitor(function () {
|
|
107
108
|
var _this = this;
|
|
108
109
|
var u = VariableLibrary.navigator.userAgent || '';
|
|
109
110
|
_this.osVersion = '';
|
|
@@ -156,9 +157,9 @@ var MethodLibrary = {
|
|
|
156
157
|
version: _this.osVersion,
|
|
157
158
|
osMajor: _this.osMajor
|
|
158
159
|
};
|
|
159
|
-
},
|
|
160
|
+
}),
|
|
160
161
|
// 获取横竖屏状态
|
|
161
|
-
getOrientationStatu: function
|
|
162
|
+
getOrientationStatu: monitor(function () {
|
|
162
163
|
var orientationStatus = '';
|
|
163
164
|
var orientation = window.matchMedia('(orientation: portrait)');
|
|
164
165
|
if (orientation.matches) {
|
|
@@ -167,16 +168,16 @@ var MethodLibrary = {
|
|
|
167
168
|
orientationStatus = '横屏';
|
|
168
169
|
}
|
|
169
170
|
return orientationStatus;
|
|
170
|
-
},
|
|
171
|
+
}),
|
|
171
172
|
// 获取设备类型
|
|
172
|
-
getDeviceType: function
|
|
173
|
+
getDeviceType: monitor(function () {
|
|
173
174
|
var _this = this;
|
|
174
175
|
_this.device = 'PC';
|
|
175
176
|
MethodLibrary.matchInfoMap(_this);
|
|
176
177
|
return _this.device;
|
|
177
|
-
},
|
|
178
|
+
}),
|
|
178
179
|
// 获取网络状态
|
|
179
|
-
getNetwork: function
|
|
180
|
+
getNetwork: monitor(function () {
|
|
180
181
|
var connection = window.navigator.connection || window.navigator.mozConnection || window.navigator.webkitConnection;
|
|
181
182
|
var result = 'unknown';
|
|
182
183
|
var type = connection ? connection.type || connection.effectiveType : null;
|
|
@@ -213,9 +214,9 @@ var MethodLibrary = {
|
|
|
213
214
|
}
|
|
214
215
|
}
|
|
215
216
|
return result;
|
|
216
|
-
},
|
|
217
|
+
}),
|
|
217
218
|
// 获取当前语言
|
|
218
|
-
getLanguage: function
|
|
219
|
+
getLanguage: monitor(function () {
|
|
219
220
|
var _this = this;
|
|
220
221
|
_this.language = function () {
|
|
221
222
|
var language = VariableLibrary.navigator.browserLanguage || VariableLibrary.navigator.language || '';
|
|
@@ -226,9 +227,9 @@ var MethodLibrary = {
|
|
|
226
227
|
return arr.join('_');
|
|
227
228
|
}();
|
|
228
229
|
return _this.language;
|
|
229
|
-
},
|
|
230
|
+
}),
|
|
230
231
|
// 浏览器信息
|
|
231
|
-
getBrowserInfo: function
|
|
232
|
+
getBrowserInfo: monitor(function () {
|
|
232
233
|
var _this = this;
|
|
233
234
|
MethodLibrary.matchInfoMap(_this);
|
|
234
235
|
var u = VariableLibrary.navigator.userAgent || '';
|
|
@@ -260,7 +261,7 @@ var MethodLibrary = {
|
|
|
260
261
|
if (is360) {
|
|
261
262
|
if (_mime('type', 'application/gameplugin')) {
|
|
262
263
|
match['360SE'] = true;
|
|
263
|
-
} else if (VariableLibrary.navigator && typeof VariableLibrary.navigator['connection']['saveData'] == 'undefined') {
|
|
264
|
+
} else if (VariableLibrary.navigator && VariableLibrary.navigator.connection && typeof VariableLibrary.navigator['connection']['saveData'] == 'undefined') {
|
|
264
265
|
match['360SE'] = true;
|
|
265
266
|
} else {
|
|
266
267
|
match['360EE'] = true;
|
|
@@ -499,9 +500,9 @@ var MethodLibrary = {
|
|
|
499
500
|
engine: _this.engine,
|
|
500
501
|
browserMajor: _this.browserMajor
|
|
501
502
|
};
|
|
502
|
-
},
|
|
503
|
+
}),
|
|
503
504
|
// 获取地理位置
|
|
504
|
-
getGeoPostion: function
|
|
505
|
+
getGeoPostion: monitor(function (callback) {
|
|
505
506
|
navigator && navigator.geolocation && navigator.geolocation.getCurrentPosition(
|
|
506
507
|
// 位置获取成功
|
|
507
508
|
function (position) {
|
|
@@ -511,12 +512,13 @@ var MethodLibrary = {
|
|
|
511
512
|
function (error) {
|
|
512
513
|
display.warn(error);
|
|
513
514
|
});
|
|
514
|
-
}
|
|
515
|
+
})
|
|
515
516
|
};
|
|
516
517
|
var _deviceInfo = {};
|
|
517
518
|
if (typeof window !== 'undefined') {
|
|
518
519
|
_deviceInfo = {
|
|
519
520
|
os: MethodLibrary.getOS(),
|
|
521
|
+
MethodLibrary: MethodLibrary,
|
|
520
522
|
osVersion: MethodLibrary.getOSVersion().version,
|
|
521
523
|
osVersionMajor: MethodLibrary.getOSVersion().osMajor,
|
|
522
524
|
browser: MethodLibrary.getBrowserInfo().browser,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceInfo.js","names":["display","VariableLibrary","navigator","window","infoMap","engine","browser","os","device","MethodLibrary","getMatchMap","u","Trident","indexOf","Presto","WebKit","Gecko","Safari","Chrome","IE","Edge","Firefox","Chromium","Opera","Vivaldi","Yandex","Arora","Lunascape","QupZilla","Kindle","Iceweasel","Konqueror","Iceape","SeaMonkey","Epiphany","UC","QQBrowser","QQ","Baidu","Maxthon","Sogou","LBBROWSER","TheWorld","XiaoMi","Quark","Qiyu","Wechat","Taobao","Alipay","Weibo","Douban","Suning","iQiYi","Windows","Linux","Android","Ubuntu","FreeBSD","Debian","BlackBerry","MeeGo","Symbian","iOS","WebOS","Mobile","Tablet","iPad","matchInfoMap","_this","userAgent","match","s","i","length","value","getOS","getOSVersion","osVersion","osMajor","v","replace","oldWindowsVersionMap","WindowsPhone","MacOS","split","version","getOrientationStatu","orientationStatus","orientation","matchMedia","matches","getDeviceType","getNetwork","connection","mozConnection","webkitConnection","result","type","effectiveType","getLanguage","language","browserLanguage","arr","toUpperCase","join","getBrowserInfo","_mime","option","mimeTypes","key","is360","chrome","chrome_version","showModalDialog","navigator_top","screenTop","screenY","browerVersionMap","FirefoxFocus","CocCoc","_","SE","hash","EE","Explorer","WechatWork","browserVersion","browserMajor","parseInt","getGeoPostion","callback","geolocation","getCurrentPosition","position","error","warn","_deviceInfo","osVersionMajor","browserVersionMajor","screenSize","screen","width","height","networkType","divice","deviceInfo"],"sources":["../../src/helper/deviceInfo.js"],"sourcesContent":["import { display } from '../helper/display'\nvar VariableLibrary = {\n navigator:\n typeof window !== 'undefined' && typeof window.navigator != 'undefined'\n ? window.navigator\n : {},\n // 信息map\n infoMap: {\n engine: ['WebKit', 'Trident', 'Gecko', 'Presto'],\n browser: [\n 'Safari',\n 'Chrome',\n 'Edge',\n 'IE',\n 'IE 11',\n 'IE 10',\n 'IE 9',\n 'IE 8',\n 'IE 7',\n 'Firefox',\n 'Firefox Focus',\n 'Chromium',\n 'Opera',\n 'Vivaldi',\n 'Yandex',\n 'Arora',\n 'Lunascape',\n 'QupZilla',\n 'Coc Coc',\n 'Kindle',\n 'Iceweasel',\n 'Konqueror',\n 'Iceape',\n 'SeaMonkey',\n 'Epiphany',\n '360',\n '360SE',\n '360EE',\n 'UC',\n 'QQBrowser',\n 'QQ',\n 'Baidu',\n 'Maxthon',\n 'Sogou',\n 'LBBROWSER',\n '2345Explorer',\n 'TheWorld',\n 'XiaoMi',\n 'Quark',\n 'Qiyu',\n 'Wechat',\n ,\n 'WechatWork',\n 'Taobao',\n 'Alipay',\n 'Weibo',\n 'Douban',\n 'Suning',\n 'iQiYi'\n ],\n os: [\n 'Windows',\n 'Linux',\n 'Mac OS',\n 'Android',\n 'Ubuntu',\n 'FreeBSD',\n 'Debian',\n 'iOS',\n 'Windows Phone',\n 'BlackBerry',\n 'MeeGo',\n 'Symbian',\n 'Chrome OS',\n 'WebOS'\n ],\n device: ['Mobile', 'Tablet', 'iPad']\n }\n}\n// 方法库\nvar MethodLibrary = {\n // 获取匹配库\n getMatchMap: function (u) {\n return {\n // 内核\n Trident: u.indexOf('Trident') > -1 || u.indexOf('NET CLR') > -1,\n Presto: u.indexOf('Presto') > -1,\n WebKit: u.indexOf('AppleWebKit') > -1,\n Gecko: u.indexOf('Gecko/') > -1,\n // 浏览器\n Safari: u.indexOf('Safari') > -1,\n Chrome: u.indexOf('Chrome') > -1 || u.indexOf('CriOS') > -1,\n IE: u.indexOf('MSIE') > -1 || u.indexOf('Trident') > -1,\n Edge: u.indexOf('Edge') > -1 || u.indexOf('Edg') > -1,\n Firefox: u.indexOf('Firefox') > -1 || u.indexOf('FxiOS') > -1,\n 'Firefox Focus': u.indexOf('Focus') > -1,\n Chromium: u.indexOf('Chromium') > -1,\n Opera: u.indexOf('Opera') > -1 || u.indexOf('OPR') > -1,\n Vivaldi: u.indexOf('Vivaldi') > -1,\n Yandex: u.indexOf('YaBrowser') > -1,\n Arora: u.indexOf('Arora') > -1,\n Lunascape: u.indexOf('Lunascape') > -1,\n QupZilla: u.indexOf('QupZilla') > -1,\n 'Coc Coc': u.indexOf('coc_coc_browser') > -1,\n Kindle: u.indexOf('Kindle') > -1 || u.indexOf('Silk/') > -1,\n Iceweasel: u.indexOf('Iceweasel') > -1,\n Konqueror: u.indexOf('Konqueror') > -1,\n Iceape: u.indexOf('Iceape') > -1,\n SeaMonkey: u.indexOf('SeaMonkey') > -1,\n Epiphany: u.indexOf('Epiphany') > -1,\n 360: u.indexOf('QihooBrowser') > -1 || u.indexOf('QHBrowser') > -1,\n '360EE': u.indexOf('360EE') > -1,\n '360SE': u.indexOf('360SE') > -1,\n UC: u.indexOf('UC') > -1 || u.indexOf(' UBrowser') > -1,\n QQBrowser: u.indexOf('QQBrowser') > -1,\n QQ: u.indexOf('QQ/') > -1,\n Baidu: u.indexOf('Baidu') > -1 || u.indexOf('BIDUBrowser') > -1,\n Maxthon: u.indexOf('Maxthon') > -1,\n Sogou: u.indexOf('MetaSr') > -1 || u.indexOf('Sogou') > -1,\n LBBROWSER: u.indexOf('LBBROWSER') > -1,\n '2345Explorer': u.indexOf('2345Explorer') > -1,\n TheWorld: u.indexOf('TheWorld') > -1,\n XiaoMi: u.indexOf('MiuiBrowser') > -1,\n Quark: u.indexOf('Quark') > -1,\n Qiyu: u.indexOf('Qiyu') > -1,\n Wechat: u.indexOf('MicroMessenger') > -1,\n Taobao: u.indexOf('AliApp(TB') > -1,\n Alipay: u.indexOf('AliApp(AP') > -1,\n Weibo: u.indexOf('Weibo') > -1,\n Douban: u.indexOf('com.douban.frodo') > -1,\n Suning: u.indexOf('SNEBUY-APP') > -1,\n iQiYi: u.indexOf('IqiyiApp') > -1,\n // 系统或平台\n Windows: u.indexOf('Windows') > -1,\n Linux: u.indexOf('Linux') > -1 || u.indexOf('X11') > -1,\n 'Mac OS': u.indexOf('Macintosh') > -1,\n Android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1,\n Ubuntu: u.indexOf('Ubuntu') > -1,\n FreeBSD: u.indexOf('FreeBSD') > -1,\n Debian: u.indexOf('Debian') > -1,\n 'Windows Phone':\n u.indexOf('IEMobile') > -1 || u.indexOf('Windows Phone') > -1,\n BlackBerry: u.indexOf('BlackBerry') > -1 || u.indexOf('RIM') > -1,\n MeeGo: u.indexOf('MeeGo') > -1,\n Symbian: u.indexOf('Symbian') > -1,\n iOS: u.indexOf('like Mac OS X') > -1,\n 'Chrome OS': u.indexOf('CrOS') > -1,\n WebOS: u.indexOf('hpwOS') > -1,\n // 设备\n Mobile:\n u.indexOf('Mobi') > -1 ||\n u.indexOf('iPh') > -1 ||\n u.indexOf('480') > -1,\n Tablet: u.indexOf('Tablet') > -1 || u.indexOf('Nexus 7') > -1,\n iPad: u.indexOf('iPad') > -1\n }\n },\n // 在信息map和匹配库中进行匹配\n matchInfoMap: function (_this) {\n var u = VariableLibrary.navigator.userAgent || ''\n var match = MethodLibrary.getMatchMap(u)\n for (var s in VariableLibrary.infoMap) {\n for (var i = 0; i < VariableLibrary.infoMap[s].length; i++) {\n var value = VariableLibrary.infoMap[s][i]\n if (match[value]) {\n _this[s] = value\n }\n }\n }\n },\n // 获取当前操作系统\n getOS: function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n return _this.os || 'Unknown'\n },\n // 获取操作系统版本\n getOSVersion: function () {\n var _this = this\n var u = VariableLibrary.navigator.userAgent || ''\n _this.osVersion = ''\n _this.osMajor = ''\n // 系统版本信息\n var osVersion = {\n Windows: function () {\n var v = u.replace(/^.*Windows NT ([\\d.]+);.*$/, '$1')\n var oldWindowsVersionMap = {\n 6.4: '10',\n 6.3: '8.1',\n 6.2: '8',\n 6.1: '7',\n '6.0': 'Vista',\n 5.2: 'XP',\n 5.1: 'XP',\n '5.0': '2000'\n }\n return oldWindowsVersionMap[v] || v\n },\n Android: function () {\n return u.replace(/^.*Android ([\\d.]+);.*$/, '$1')\n },\n iOS: function () {\n return u.replace(/^.*OS ([\\d_]+) like.*$/, '$1').replace(/_/g, '.')\n },\n Debian: function () {\n return u.replace(/^.*Debian\\/([\\d.]+).*$/, '$1')\n },\n 'Windows Phone': function () {\n return u.replace(/^.*Windows Phone( OS)? ([\\d.]+);.*$/, '$2')\n },\n 'Mac OS': function () {\n return u.replace(/^.*Mac OS X ([\\d_]+).*$/, '$1').replace(/_/g, '.')\n },\n WebOS: function () {\n return u.replace(/^.*hpwOS\\/([\\d.]+);.*$/, '$1')\n }\n }\n if (osVersion[_this.os]) {\n _this.osVersion = osVersion[_this.os]()\n if (_this.osVersion === u) {\n _this.osVersion = ''\n }\n }\n if (_this.osVersion) {\n _this.osMajor =\n _this.osVersion.split('.').length && _this.osVersion.split('.')[0]\n }\n return {\n version: _this.osVersion,\n osMajor: _this.osMajor\n }\n },\n // 获取横竖屏状态\n getOrientationStatu: function () {\n var orientationStatus = ''\n var orientation = window.matchMedia('(orientation: portrait)')\n if (orientation.matches) {\n orientationStatus = '竖屏'\n } else {\n orientationStatus = '横屏'\n }\n return orientationStatus\n },\n // 获取设备类型\n getDeviceType: function () {\n var _this = this\n _this.device = 'PC'\n MethodLibrary.matchInfoMap(_this)\n return _this.device\n },\n // 获取网络状态\n getNetwork: function () {\n var connection =\n window.navigator.connection ||\n window.navigator.mozConnection ||\n window.navigator.webkitConnection\n var result = 'unknown'\n var type = connection ? connection.type || connection.effectiveType : null\n if (type && typeof type === 'string') {\n switch (type) {\n // possible type values\n case 'bluetooth':\n case 'cellular':\n result = 'cellular'\n break\n case 'none':\n result = 'none'\n break\n case 'ethernet':\n case 'wifi':\n case 'wimax':\n result = 'wifi'\n break\n case 'other':\n case 'unknown':\n result = 'unknown'\n break\n // possible effectiveType values\n case 'slow-2g':\n case '2g':\n case '3g':\n result = 'cellular'\n break\n case '4g':\n result = 'wifi'\n break\n default:\n break\n }\n }\n return result\n },\n // 获取当前语言\n getLanguage: function () {\n var _this = this\n _this.language = (function () {\n var language =\n VariableLibrary.navigator.browserLanguage ||\n VariableLibrary.navigator.language ||\n ''\n var arr = language.split('-')\n if (arr[1]) {\n arr[1] = arr[1].toUpperCase()\n }\n return arr.join('_')\n })()\n return _this.language\n },\n // 浏览器信息\n getBrowserInfo: function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n\n var u = VariableLibrary.navigator.userAgent || ''\n\n var _mime = function (option, value) {\n var mimeTypes = VariableLibrary.navigator.mimeTypes\n for (var key in mimeTypes) {\n if (mimeTypes[key][option] == value) {\n return true\n }\n }\n return false\n }\n\n var match = MethodLibrary.getMatchMap(u)\n\n var is360 = false\n if (typeof window !== 'undefined' && window.chrome) {\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n if (chrome_version > 36 && window.showModalDialog) {\n is360 = true\n } else if (chrome_version > 45) {\n is360 = _mime('type', 'application/vnd.chromium.remoting-viewer')\n }\n }\n if (match['Baidu'] && match['Opera']) {\n match['Baidu'] = false\n }\n if (match['Mobile']) {\n match['Mobile'] = !(u.indexOf('iPad') > -1)\n }\n if (is360) {\n if (_mime('type', 'application/gameplugin')) {\n match['360SE'] = true\n } else if (\n VariableLibrary.navigator &&\n typeof VariableLibrary.navigator['connection']['saveData'] ==\n 'undefined'\n ) {\n match['360SE'] = true\n } else {\n match['360EE'] = true\n }\n }\n if (match['IE'] || match['Edge']) {\n var navigator_top = window.screenTop - window.screenY\n switch (navigator_top) {\n case 71: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 99: // 有收藏栏,贴边\n break\n case 102: // 有收藏栏,非贴边\n match['360EE'] = true\n break\n case 75: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 105: // 有收藏栏,贴边\n break\n case 104: // 有收藏栏,非贴边\n match['360SE'] = true\n break\n default:\n break\n }\n }\n\n var browerVersionMap = {\n Safari: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Chrome: function () {\n return u\n .replace(/^.*Chrome\\/([\\d.]+).*$/, '$1')\n .replace(/^.*CriOS\\/([\\d.]+).*$/, '$1')\n },\n IE: function () {\n return u\n .replace(/^.*MSIE ([\\d.]+).*$/, '$1')\n .replace(/^.*rv:([\\d.]+).*$/, '$1')\n },\n Edge: function () {\n return u.replace(/^.*Edge?\\/([\\d.]+).*$/, '$1')\n },\n Firefox: function () {\n return u\n .replace(/^.*Firefox\\/([\\d.]+).*$/, '$1')\n .replace(/^.*FxiOS\\/([\\d.]+).*$/, '$1')\n },\n 'Firefox Focus': function () {\n return u.replace(/^.*Focus\\/([\\d.]+).*$/, '$1')\n },\n Chromium: function () {\n return u.replace(/^.*Chromium\\/([\\d.]+).*$/, '$1')\n },\n Opera: function () {\n return u\n .replace(/^.*Opera\\/([\\d.]+).*$/, '$1')\n .replace(/^.*OPR\\/([\\d.]+).*$/, '$1')\n },\n Vivaldi: function () {\n return u.replace(/^.*Vivaldi\\/([\\d.]+).*$/, '$1')\n },\n Yandex: function () {\n return u.replace(/^.*YaBrowser\\/([\\d.]+).*$/, '$1')\n },\n Arora: function () {\n return u.replace(/^.*Arora\\/([\\d.]+).*$/, '$1')\n },\n Lunascape: function () {\n return u.replace(/^.*Lunascape[\\/\\s]([\\d.]+).*$/, '$1')\n },\n QupZilla: function () {\n return u.replace(/^.*QupZilla[\\/\\s]([\\d.]+).*$/, '$1')\n },\n 'Coc Coc': function () {\n return u.replace(/^.*coc_coc_browser\\/([\\d.]+).*$/, '$1')\n },\n Kindle: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Iceweasel: function () {\n return u.replace(/^.*Iceweasel\\/([\\d.]+).*$/, '$1')\n },\n Konqueror: function () {\n return u.replace(/^.*Konqueror\\/([\\d.]+).*$/, '$1')\n },\n Iceape: function () {\n return u.replace(/^.*Iceape\\/([\\d.]+).*$/, '$1')\n },\n SeaMonkey: function () {\n return u.replace(/^.*SeaMonkey\\/([\\d.]+).*$/, '$1')\n },\n Epiphany: function () {\n return u.replace(/^.*Epiphany\\/([\\d.]+).*$/, '$1')\n },\n 360: function () {\n return u.replace(/^.*QihooBrowser\\/([\\d.]+).*$/, '$1')\n },\n '360SE': function () {\n var hash = {\n 63: '10.0',\n 55: '9.1',\n 45: '8.1',\n 42: '8.0',\n 31: '7.0',\n 21: '6.3'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n '360EE': function () {\n var hash = { 69: '11.0', 63: '9.5', 55: '9.0', 50: '8.7', 30: '7.5' }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n Maxthon: function () {\n return u.replace(/^.*Maxthon\\/([\\d.]+).*$/, '$1')\n },\n QQBrowser: function () {\n return u.replace(/^.*QQBrowser\\/([\\d.]+).*$/, '$1')\n },\n QQ: function () {\n return u.replace(/^.*QQ\\/([\\d.]+).*$/, '$1')\n },\n Baidu: function () {\n return u.replace(/^.*BIDUBrowser[\\s\\/]([\\d.]+).*$/, '$1')\n },\n UC: function () {\n return u.replace(/^.*UC?Browser\\/([\\d.]+).*$/, '$1')\n },\n Sogou: function () {\n return u\n .replace(/^.*SE ([\\d.X]+).*$/, '$1')\n .replace(/^.*SogouMobileBrowser\\/([\\d.]+).*$/, '$1')\n },\n LBBROWSER: function () {\n var version = ''\n if (u.indexOf('LieBaoFast') > -1) {\n version = u.replace(/^.*LieBaoFast\\/([\\d.]+).*$/, '$1')\n }\n var hash = {\n 57: '6.5',\n 49: '6.0',\n 46: '5.9',\n 42: '5.3',\n 39: '5.2',\n 34: '5.0',\n 29: '4.5',\n 21: '4.0'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return version || hash[chrome_version] || ''\n },\n '2345Explorer': function () {\n return u.replace(/^.*2345Explorer\\/([\\d.]+).*$/, '$1')\n },\n TheWorld: function () {\n return u.replace(/^.*TheWorld ([\\d.]+).*$/, '$1')\n },\n XiaoMi: function () {\n return u.replace(/^.*MiuiBrowser\\/([\\d.]+).*$/, '$1')\n },\n Quark: function () {\n return u.replace(/^.*Quark\\/([\\d.]+).*$/, '$1')\n },\n Qiyu: function () {\n return u.replace(/^.*Qiyu\\/([\\d.]+).*$/, '$1')\n },\n Wechat: function () {\n return u.replace(/^.*MicroMessenger\\/([\\d.]+).*$/, '$1')\n },\n WechatWork: function () {\n return u.replace(/^.*wxwork\\/([\\d.]+).*$/, '$1')\n },\n Taobao: function () {\n return u.replace(/^.*AliApp\\(TB\\/([\\d.]+).*$/, '$1')\n },\n Alipay: function () {\n return u.replace(/^.*AliApp\\(AP\\/([\\d.]+).*$/, '$1')\n },\n Weibo: function () {\n return u.replace(/^.*weibo__([\\d.]+).*$/, '$1')\n },\n Douban: function () {\n return u.replace(/^.*com.douban.frodo\\/([\\d.]+).*$/, '$1')\n },\n Suning: function () {\n return u.replace(/^.*SNEBUY-APP([\\d.]+).*$/, '$1')\n },\n iQiYi: function () {\n return u.replace(/^.*IqiyiVersion\\/([\\d.]+).*$/, '$1')\n }\n }\n _this.browserVersion = ''\n _this.browserMajor = ''\n if (browerVersionMap[_this.browser]) {\n _this.browserVersion = browerVersionMap[_this.browser]()\n if (_this.browserVersion == u) {\n _this.browserVersion = ''\n }\n }\n if (_this.browser == 'Chrome' && u.match(/\\S+Browser/)) {\n _this.browser = u.match(/\\S+Browser/)[0]\n _this.version = u.replace(/^.*Browser\\/([\\d.]+).*$/, '$1')\n }\n if (_this.browser == 'Edge') {\n if (_this.version > '75') {\n _this.engine = 'Blink'\n } else {\n _this.engine = 'EdgeHTML'\n }\n }\n if (_this.browser == 'Chrome' && parseInt(_this.browserVersion) > 27) {\n _this.engine = 'Blink'\n } else if (\n match['Chrome'] &&\n _this.engine == 'WebKit' &&\n parseInt(_this.browserVersion) > 27\n ) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Opera' && parseInt(_this.version) > 12) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Yandex') {\n _this.engine = 'Blink'\n }\n if (_this.browserVersion) {\n _this.browserMajor =\n _this.browserVersion.split('.').length &&\n this.browserVersion.split('.')[0]\n }\n return {\n browser: _this.browser,\n browserVersion: _this.browserVersion,\n engine: _this.engine,\n browserMajor: _this.browserMajor\n }\n },\n // 获取地理位置\n getGeoPostion: function (callback) {\n navigator &&\n navigator.geolocation &&\n navigator.geolocation.getCurrentPosition(\n // 位置获取成功\n function (position) {\n callback(position)\n },\n // 位置获取失败\n function (error) {\n display.warn(error)\n }\n )\n }\n}\nvar _deviceInfo = {}\nif (typeof window !== 'undefined') {\n _deviceInfo = {\n os: MethodLibrary.getOS(),\n osVersion: MethodLibrary.getOSVersion().version,\n osVersionMajor: MethodLibrary.getOSVersion().osMajor,\n browser: MethodLibrary.getBrowserInfo().browser,\n browserVersion: MethodLibrary.getBrowserInfo().browserVersion,\n browserVersionMajor: MethodLibrary.getBrowserInfo().browserMajor,\n screenSize: window.screen.width + '*' + window.screen.height,\n networkType: MethodLibrary.getNetwork(),\n divice: MethodLibrary.getDeviceType()\n }\n}\nexport var deviceInfo = _deviceInfo\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deviceInfo.js","names":["display","monitor","VariableLibrary","navigator","window","infoMap","engine","browser","os","device","MethodLibrary","getMatchMap","u","Trident","indexOf","Presto","WebKit","Gecko","Safari","Chrome","IE","Edge","Firefox","Chromium","Opera","Vivaldi","Yandex","Arora","Lunascape","QupZilla","Kindle","Iceweasel","Konqueror","Iceape","SeaMonkey","Epiphany","UC","QQBrowser","QQ","Baidu","Maxthon","Sogou","LBBROWSER","TheWorld","XiaoMi","Quark","Qiyu","Wechat","Taobao","Alipay","Weibo","Douban","Suning","iQiYi","Windows","Linux","Android","Ubuntu","FreeBSD","Debian","BlackBerry","MeeGo","Symbian","iOS","WebOS","Mobile","Tablet","iPad","matchInfoMap","_this","userAgent","match","s","i","length","value","getOS","getOSVersion","osVersion","osMajor","v","replace","oldWindowsVersionMap","WindowsPhone","MacOS","split","version","getOrientationStatu","orientationStatus","orientation","matchMedia","matches","getDeviceType","getNetwork","connection","mozConnection","webkitConnection","result","type","effectiveType","getLanguage","language","browserLanguage","arr","toUpperCase","join","getBrowserInfo","_mime","option","mimeTypes","key","is360","chrome","chrome_version","showModalDialog","navigator_top","screenTop","screenY","browerVersionMap","FirefoxFocus","CocCoc","_","SE","hash","EE","Explorer","WechatWork","browserVersion","browserMajor","parseInt","getGeoPostion","callback","geolocation","getCurrentPosition","position","error","warn","_deviceInfo","osVersionMajor","browserVersionMajor","screenSize","screen","width","height","networkType","divice","deviceInfo"],"sources":["../../src/helper/deviceInfo.js"],"sourcesContent":["import { display } from '../helper/display'\nimport { monitor } from '../helper/monitor'\nvar VariableLibrary = {\n navigator:\n typeof window !== 'undefined' && typeof window.navigator != 'undefined'\n ? window.navigator\n : {},\n // 信息map\n infoMap: {\n engine: ['WebKit', 'Trident', 'Gecko', 'Presto'],\n browser: [\n 'Safari',\n 'Chrome',\n 'Edge',\n 'IE',\n 'IE 11',\n 'IE 10',\n 'IE 9',\n 'IE 8',\n 'IE 7',\n 'Firefox',\n 'Firefox Focus',\n 'Chromium',\n 'Opera',\n 'Vivaldi',\n 'Yandex',\n 'Arora',\n 'Lunascape',\n 'QupZilla',\n 'Coc Coc',\n 'Kindle',\n 'Iceweasel',\n 'Konqueror',\n 'Iceape',\n 'SeaMonkey',\n 'Epiphany',\n '360',\n '360SE',\n '360EE',\n 'UC',\n 'QQBrowser',\n 'QQ',\n 'Baidu',\n 'Maxthon',\n 'Sogou',\n 'LBBROWSER',\n '2345Explorer',\n 'TheWorld',\n 'XiaoMi',\n 'Quark',\n 'Qiyu',\n 'Wechat',\n ,\n 'WechatWork',\n 'Taobao',\n 'Alipay',\n 'Weibo',\n 'Douban',\n 'Suning',\n 'iQiYi'\n ],\n os: [\n 'Windows',\n 'Linux',\n 'Mac OS',\n 'Android',\n 'Ubuntu',\n 'FreeBSD',\n 'Debian',\n 'iOS',\n 'Windows Phone',\n 'BlackBerry',\n 'MeeGo',\n 'Symbian',\n 'Chrome OS',\n 'WebOS'\n ],\n device: ['Mobile', 'Tablet', 'iPad']\n }\n}\n// 方法库\nvar MethodLibrary = {\n // 获取匹配库\n getMatchMap: monitor(function (u) {\n return {\n // 内核\n Trident: u.indexOf('Trident') > -1 || u.indexOf('NET CLR') > -1,\n Presto: u.indexOf('Presto') > -1,\n WebKit: u.indexOf('AppleWebKit') > -1,\n Gecko: u.indexOf('Gecko/') > -1,\n // 浏览器\n Safari: u.indexOf('Safari') > -1,\n Chrome: u.indexOf('Chrome') > -1 || u.indexOf('CriOS') > -1,\n IE: u.indexOf('MSIE') > -1 || u.indexOf('Trident') > -1,\n Edge: u.indexOf('Edge') > -1 || u.indexOf('Edg') > -1,\n Firefox: u.indexOf('Firefox') > -1 || u.indexOf('FxiOS') > -1,\n 'Firefox Focus': u.indexOf('Focus') > -1,\n Chromium: u.indexOf('Chromium') > -1,\n Opera: u.indexOf('Opera') > -1 || u.indexOf('OPR') > -1,\n Vivaldi: u.indexOf('Vivaldi') > -1,\n Yandex: u.indexOf('YaBrowser') > -1,\n Arora: u.indexOf('Arora') > -1,\n Lunascape: u.indexOf('Lunascape') > -1,\n QupZilla: u.indexOf('QupZilla') > -1,\n 'Coc Coc': u.indexOf('coc_coc_browser') > -1,\n Kindle: u.indexOf('Kindle') > -1 || u.indexOf('Silk/') > -1,\n Iceweasel: u.indexOf('Iceweasel') > -1,\n Konqueror: u.indexOf('Konqueror') > -1,\n Iceape: u.indexOf('Iceape') > -1,\n SeaMonkey: u.indexOf('SeaMonkey') > -1,\n Epiphany: u.indexOf('Epiphany') > -1,\n 360: u.indexOf('QihooBrowser') > -1 || u.indexOf('QHBrowser') > -1,\n '360EE': u.indexOf('360EE') > -1,\n '360SE': u.indexOf('360SE') > -1,\n UC: u.indexOf('UC') > -1 || u.indexOf(' UBrowser') > -1,\n QQBrowser: u.indexOf('QQBrowser') > -1,\n QQ: u.indexOf('QQ/') > -1,\n Baidu: u.indexOf('Baidu') > -1 || u.indexOf('BIDUBrowser') > -1,\n Maxthon: u.indexOf('Maxthon') > -1,\n Sogou: u.indexOf('MetaSr') > -1 || u.indexOf('Sogou') > -1,\n LBBROWSER: u.indexOf('LBBROWSER') > -1,\n '2345Explorer': u.indexOf('2345Explorer') > -1,\n TheWorld: u.indexOf('TheWorld') > -1,\n XiaoMi: u.indexOf('MiuiBrowser') > -1,\n Quark: u.indexOf('Quark') > -1,\n Qiyu: u.indexOf('Qiyu') > -1,\n Wechat: u.indexOf('MicroMessenger') > -1,\n Taobao: u.indexOf('AliApp(TB') > -1,\n Alipay: u.indexOf('AliApp(AP') > -1,\n Weibo: u.indexOf('Weibo') > -1,\n Douban: u.indexOf('com.douban.frodo') > -1,\n Suning: u.indexOf('SNEBUY-APP') > -1,\n iQiYi: u.indexOf('IqiyiApp') > -1,\n // 系统或平台\n Windows: u.indexOf('Windows') > -1,\n Linux: u.indexOf('Linux') > -1 || u.indexOf('X11') > -1,\n 'Mac OS': u.indexOf('Macintosh') > -1,\n Android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1,\n Ubuntu: u.indexOf('Ubuntu') > -1,\n FreeBSD: u.indexOf('FreeBSD') > -1,\n Debian: u.indexOf('Debian') > -1,\n 'Windows Phone':\n u.indexOf('IEMobile') > -1 || u.indexOf('Windows Phone') > -1,\n BlackBerry: u.indexOf('BlackBerry') > -1 || u.indexOf('RIM') > -1,\n MeeGo: u.indexOf('MeeGo') > -1,\n Symbian: u.indexOf('Symbian') > -1,\n iOS: u.indexOf('like Mac OS X') > -1,\n 'Chrome OS': u.indexOf('CrOS') > -1,\n WebOS: u.indexOf('hpwOS') > -1,\n // 设备\n Mobile:\n u.indexOf('Mobi') > -1 ||\n u.indexOf('iPh') > -1 ||\n u.indexOf('480') > -1,\n Tablet: u.indexOf('Tablet') > -1 || u.indexOf('Nexus 7') > -1,\n iPad: u.indexOf('iPad') > -1\n }\n }),\n // 在信息map和匹配库中进行匹配\n matchInfoMap: monitor(function (_this) {\n var u = VariableLibrary.navigator.userAgent || ''\n var match = MethodLibrary.getMatchMap(u)\n for (var s in VariableLibrary.infoMap) {\n for (var i = 0; i < VariableLibrary.infoMap[s].length; i++) {\n var value = VariableLibrary.infoMap[s][i]\n if (match[value]) {\n _this[s] = value\n }\n }\n }\n }),\n // 获取当前操作系统\n getOS: monitor(function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n return _this.os || 'Unknown'\n }),\n // 获取操作系统版本\n getOSVersion: monitor(function () {\n var _this = this\n var u = VariableLibrary.navigator.userAgent || ''\n _this.osVersion = ''\n _this.osMajor = ''\n // 系统版本信息\n var osVersion = {\n Windows: function () {\n var v = u.replace(/^.*Windows NT ([\\d.]+);.*$/, '$1')\n var oldWindowsVersionMap = {\n 6.4: '10',\n 6.3: '8.1',\n 6.2: '8',\n 6.1: '7',\n '6.0': 'Vista',\n 5.2: 'XP',\n 5.1: 'XP',\n '5.0': '2000'\n }\n return oldWindowsVersionMap[v] || v\n },\n Android: function () {\n return u.replace(/^.*Android ([\\d.]+);.*$/, '$1')\n },\n iOS: function () {\n return u.replace(/^.*OS ([\\d_]+) like.*$/, '$1').replace(/_/g, '.')\n },\n Debian: function () {\n return u.replace(/^.*Debian\\/([\\d.]+).*$/, '$1')\n },\n 'Windows Phone': function () {\n return u.replace(/^.*Windows Phone( OS)? ([\\d.]+);.*$/, '$2')\n },\n 'Mac OS': function () {\n return u.replace(/^.*Mac OS X ([\\d_]+).*$/, '$1').replace(/_/g, '.')\n },\n WebOS: function () {\n return u.replace(/^.*hpwOS\\/([\\d.]+);.*$/, '$1')\n }\n }\n if (osVersion[_this.os]) {\n _this.osVersion = osVersion[_this.os]()\n if (_this.osVersion === u) {\n _this.osVersion = ''\n }\n }\n if (_this.osVersion) {\n _this.osMajor =\n _this.osVersion.split('.').length && _this.osVersion.split('.')[0]\n }\n return {\n version: _this.osVersion,\n osMajor: _this.osMajor\n }\n }),\n // 获取横竖屏状态\n getOrientationStatu: monitor(function () {\n var orientationStatus = ''\n var orientation = window.matchMedia('(orientation: portrait)')\n if (orientation.matches) {\n orientationStatus = '竖屏'\n } else {\n orientationStatus = '横屏'\n }\n return orientationStatus\n }),\n // 获取设备类型\n getDeviceType: monitor(function () {\n var _this = this\n _this.device = 'PC'\n MethodLibrary.matchInfoMap(_this)\n return _this.device\n }),\n // 获取网络状态\n getNetwork: monitor(function () {\n var connection =\n window.navigator.connection ||\n window.navigator.mozConnection ||\n window.navigator.webkitConnection\n var result = 'unknown'\n var type = connection ? connection.type || connection.effectiveType : null\n if (type && typeof type === 'string') {\n switch (type) {\n // possible type values\n case 'bluetooth':\n case 'cellular':\n result = 'cellular'\n break\n case 'none':\n result = 'none'\n break\n case 'ethernet':\n case 'wifi':\n case 'wimax':\n result = 'wifi'\n break\n case 'other':\n case 'unknown':\n result = 'unknown'\n break\n // possible effectiveType values\n case 'slow-2g':\n case '2g':\n case '3g':\n result = 'cellular'\n break\n case '4g':\n result = 'wifi'\n break\n default:\n break\n }\n }\n return result\n }),\n // 获取当前语言\n getLanguage: monitor(function () {\n var _this = this\n _this.language = (function () {\n var language =\n VariableLibrary.navigator.browserLanguage ||\n VariableLibrary.navigator.language ||\n ''\n var arr = language.split('-')\n if (arr[1]) {\n arr[1] = arr[1].toUpperCase()\n }\n return arr.join('_')\n })()\n return _this.language\n }),\n // 浏览器信息\n getBrowserInfo: monitor(function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n\n var u = VariableLibrary.navigator.userAgent || ''\n\n var _mime = function (option, value) {\n var mimeTypes = VariableLibrary.navigator.mimeTypes\n for (var key in mimeTypes) {\n if (mimeTypes[key][option] == value) {\n return true\n }\n }\n return false\n }\n\n var match = MethodLibrary.getMatchMap(u)\n\n var is360 = false\n if (typeof window !== 'undefined' && window.chrome) {\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n if (chrome_version > 36 && window.showModalDialog) {\n is360 = true\n } else if (chrome_version > 45) {\n is360 = _mime('type', 'application/vnd.chromium.remoting-viewer')\n }\n }\n if (match['Baidu'] && match['Opera']) {\n match['Baidu'] = false\n }\n if (match['Mobile']) {\n match['Mobile'] = !(u.indexOf('iPad') > -1)\n }\n if (is360) {\n if (_mime('type', 'application/gameplugin')) {\n match['360SE'] = true\n } else if (\n VariableLibrary.navigator &&\n VariableLibrary.navigator.connection &&\n typeof VariableLibrary.navigator['connection']['saveData'] ==\n 'undefined'\n ) {\n match['360SE'] = true\n } else {\n match['360EE'] = true\n }\n }\n if (match['IE'] || match['Edge']) {\n var navigator_top = window.screenTop - window.screenY\n switch (navigator_top) {\n case 71: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 99: // 有收藏栏,贴边\n break\n case 102: // 有收藏栏,非贴边\n match['360EE'] = true\n break\n case 75: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 105: // 有收藏栏,贴边\n break\n case 104: // 有收藏栏,非贴边\n match['360SE'] = true\n break\n default:\n break\n }\n }\n\n var browerVersionMap = {\n Safari: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Chrome: function () {\n return u\n .replace(/^.*Chrome\\/([\\d.]+).*$/, '$1')\n .replace(/^.*CriOS\\/([\\d.]+).*$/, '$1')\n },\n IE: function () {\n return u\n .replace(/^.*MSIE ([\\d.]+).*$/, '$1')\n .replace(/^.*rv:([\\d.]+).*$/, '$1')\n },\n Edge: function () {\n return u.replace(/^.*Edge?\\/([\\d.]+).*$/, '$1')\n },\n Firefox: function () {\n return u\n .replace(/^.*Firefox\\/([\\d.]+).*$/, '$1')\n .replace(/^.*FxiOS\\/([\\d.]+).*$/, '$1')\n },\n 'Firefox Focus': function () {\n return u.replace(/^.*Focus\\/([\\d.]+).*$/, '$1')\n },\n Chromium: function () {\n return u.replace(/^.*Chromium\\/([\\d.]+).*$/, '$1')\n },\n Opera: function () {\n return u\n .replace(/^.*Opera\\/([\\d.]+).*$/, '$1')\n .replace(/^.*OPR\\/([\\d.]+).*$/, '$1')\n },\n Vivaldi: function () {\n return u.replace(/^.*Vivaldi\\/([\\d.]+).*$/, '$1')\n },\n Yandex: function () {\n return u.replace(/^.*YaBrowser\\/([\\d.]+).*$/, '$1')\n },\n Arora: function () {\n return u.replace(/^.*Arora\\/([\\d.]+).*$/, '$1')\n },\n Lunascape: function () {\n return u.replace(/^.*Lunascape[\\/\\s]([\\d.]+).*$/, '$1')\n },\n QupZilla: function () {\n return u.replace(/^.*QupZilla[\\/\\s]([\\d.]+).*$/, '$1')\n },\n 'Coc Coc': function () {\n return u.replace(/^.*coc_coc_browser\\/([\\d.]+).*$/, '$1')\n },\n Kindle: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Iceweasel: function () {\n return u.replace(/^.*Iceweasel\\/([\\d.]+).*$/, '$1')\n },\n Konqueror: function () {\n return u.replace(/^.*Konqueror\\/([\\d.]+).*$/, '$1')\n },\n Iceape: function () {\n return u.replace(/^.*Iceape\\/([\\d.]+).*$/, '$1')\n },\n SeaMonkey: function () {\n return u.replace(/^.*SeaMonkey\\/([\\d.]+).*$/, '$1')\n },\n Epiphany: function () {\n return u.replace(/^.*Epiphany\\/([\\d.]+).*$/, '$1')\n },\n 360: function () {\n return u.replace(/^.*QihooBrowser\\/([\\d.]+).*$/, '$1')\n },\n '360SE': function () {\n var hash = {\n 63: '10.0',\n 55: '9.1',\n 45: '8.1',\n 42: '8.0',\n 31: '7.0',\n 21: '6.3'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n '360EE': function () {\n var hash = { 69: '11.0', 63: '9.5', 55: '9.0', 50: '8.7', 30: '7.5' }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n Maxthon: function () {\n return u.replace(/^.*Maxthon\\/([\\d.]+).*$/, '$1')\n },\n QQBrowser: function () {\n return u.replace(/^.*QQBrowser\\/([\\d.]+).*$/, '$1')\n },\n QQ: function () {\n return u.replace(/^.*QQ\\/([\\d.]+).*$/, '$1')\n },\n Baidu: function () {\n return u.replace(/^.*BIDUBrowser[\\s\\/]([\\d.]+).*$/, '$1')\n },\n UC: function () {\n return u.replace(/^.*UC?Browser\\/([\\d.]+).*$/, '$1')\n },\n Sogou: function () {\n return u\n .replace(/^.*SE ([\\d.X]+).*$/, '$1')\n .replace(/^.*SogouMobileBrowser\\/([\\d.]+).*$/, '$1')\n },\n LBBROWSER: function () {\n var version = ''\n if (u.indexOf('LieBaoFast') > -1) {\n version = u.replace(/^.*LieBaoFast\\/([\\d.]+).*$/, '$1')\n }\n var hash = {\n 57: '6.5',\n 49: '6.0',\n 46: '5.9',\n 42: '5.3',\n 39: '5.2',\n 34: '5.0',\n 29: '4.5',\n 21: '4.0'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return version || hash[chrome_version] || ''\n },\n '2345Explorer': function () {\n return u.replace(/^.*2345Explorer\\/([\\d.]+).*$/, '$1')\n },\n TheWorld: function () {\n return u.replace(/^.*TheWorld ([\\d.]+).*$/, '$1')\n },\n XiaoMi: function () {\n return u.replace(/^.*MiuiBrowser\\/([\\d.]+).*$/, '$1')\n },\n Quark: function () {\n return u.replace(/^.*Quark\\/([\\d.]+).*$/, '$1')\n },\n Qiyu: function () {\n return u.replace(/^.*Qiyu\\/([\\d.]+).*$/, '$1')\n },\n Wechat: function () {\n return u.replace(/^.*MicroMessenger\\/([\\d.]+).*$/, '$1')\n },\n WechatWork: function () {\n return u.replace(/^.*wxwork\\/([\\d.]+).*$/, '$1')\n },\n Taobao: function () {\n return u.replace(/^.*AliApp\\(TB\\/([\\d.]+).*$/, '$1')\n },\n Alipay: function () {\n return u.replace(/^.*AliApp\\(AP\\/([\\d.]+).*$/, '$1')\n },\n Weibo: function () {\n return u.replace(/^.*weibo__([\\d.]+).*$/, '$1')\n },\n Douban: function () {\n return u.replace(/^.*com.douban.frodo\\/([\\d.]+).*$/, '$1')\n },\n Suning: function () {\n return u.replace(/^.*SNEBUY-APP([\\d.]+).*$/, '$1')\n },\n iQiYi: function () {\n return u.replace(/^.*IqiyiVersion\\/([\\d.]+).*$/, '$1')\n }\n }\n _this.browserVersion = ''\n _this.browserMajor = ''\n if (browerVersionMap[_this.browser]) {\n _this.browserVersion = browerVersionMap[_this.browser]()\n if (_this.browserVersion == u) {\n _this.browserVersion = ''\n }\n }\n if (_this.browser == 'Chrome' && u.match(/\\S+Browser/)) {\n _this.browser = u.match(/\\S+Browser/)[0]\n _this.version = u.replace(/^.*Browser\\/([\\d.]+).*$/, '$1')\n }\n if (_this.browser == 'Edge') {\n if (_this.version > '75') {\n _this.engine = 'Blink'\n } else {\n _this.engine = 'EdgeHTML'\n }\n }\n if (_this.browser == 'Chrome' && parseInt(_this.browserVersion) > 27) {\n _this.engine = 'Blink'\n } else if (\n match['Chrome'] &&\n _this.engine == 'WebKit' &&\n parseInt(_this.browserVersion) > 27\n ) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Opera' && parseInt(_this.version) > 12) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Yandex') {\n _this.engine = 'Blink'\n }\n if (_this.browserVersion) {\n _this.browserMajor =\n _this.browserVersion.split('.').length &&\n this.browserVersion.split('.')[0]\n }\n return {\n browser: _this.browser,\n browserVersion: _this.browserVersion,\n engine: _this.engine,\n browserMajor: _this.browserMajor\n }\n }),\n // 获取地理位置\n getGeoPostion: monitor(function (callback) {\n navigator &&\n navigator.geolocation &&\n navigator.geolocation.getCurrentPosition(\n // 位置获取成功\n function (position) {\n callback(position)\n },\n // 位置获取失败\n function (error) {\n display.warn(error)\n }\n )\n })\n}\nvar _deviceInfo = {}\nif (typeof window !== 'undefined') {\n _deviceInfo = {\n os: MethodLibrary.getOS(),\n MethodLibrary,\n osVersion: MethodLibrary.getOSVersion().version,\n osVersionMajor: MethodLibrary.getOSVersion().osMajor,\n browser: MethodLibrary.getBrowserInfo().browser,\n browserVersion: MethodLibrary.getBrowserInfo().browserVersion,\n browserVersionMajor: MethodLibrary.getBrowserInfo().browserMajor,\n screenSize: window.screen.width + '*' + window.screen.height,\n networkType: MethodLibrary.getNetwork(),\n divice: MethodLibrary.getDeviceType()\n }\n}\nexport var deviceInfo = _deviceInfo\n"],"mappings":"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"}
|
package/esm/helper/errorTools.js
CHANGED
|
@@ -2,6 +2,7 @@ import { each, noop } from './tools';
|
|
|
2
2
|
import { jsonStringify } from '../helper/serialisation/jsonStringify';
|
|
3
3
|
import { computeStackTrace } from '../tracekit';
|
|
4
4
|
import { callMonitored } from '../helper/monitor';
|
|
5
|
+
import { sanitize } from '../helper/sanitize';
|
|
5
6
|
export var NO_ERROR_STACK_PRESENT_MESSAGE = 'No stack, consider using an instance of Error';
|
|
6
7
|
export var ErrorSource = {
|
|
7
8
|
AGENT: 'agent',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorTools.js","names":["each","noop","jsonStringify","computeStackTrace","callMonitored","NO_ERROR_STACK_PRESENT_MESSAGE","ErrorSource","AGENT","CONSOLE","NETWORK","SOURCE","LOGGER","CUSTOM","computeRawError","data","stackTrace","originalError","handlingStack","startClocks","nonErrorPrefix","source","handling","isErrorInstance","Error","message","computeMessage","stack","hasUsableStack","toStackTraceString","causes","flattenErrorCauses","undefined","type","name","sanitize","length","url","formatUnknownError","errorObject","createHandlingStack","internalFramesToSkip","error","formattedStack","e","slice","result","formatErrorMessage","frame","func","args","join","line","column","getFileFromStackTraceString","execResult","exec","parentSource","currentError","cause","push"],"sources":["../../src/helper/errorTools.js"],"sourcesContent":["import { each, noop } from './tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { computeStackTrace } from '../tracekit'\nimport { callMonitored } from '../helper/monitor'\nexport var NO_ERROR_STACK_PRESENT_MESSAGE =\n 'No stack, consider using an instance of Error'\nexport var ErrorSource = {\n AGENT: 'agent',\n CONSOLE: 'console',\n NETWORK: 'network',\n SOURCE: 'source',\n LOGGER: 'logger',\n CUSTOM: 'custom'\n}\n\nexport function computeRawError(data) {\n var stackTrace = data.stackTrace\n var originalError = data.originalError\n var handlingStack = data.handlingStack\n var startClocks = data.startClocks\n var nonErrorPrefix = data.nonErrorPrefix\n var source = data.source\n var handling = data.handling\n var isErrorInstance = originalError instanceof Error\n var message = computeMessage(\n stackTrace,\n isErrorInstance,\n nonErrorPrefix,\n originalError\n )\n var stack = hasUsableStack(isErrorInstance, stackTrace)\n ? toStackTraceString(stackTrace)\n : NO_ERROR_STACK_PRESENT_MESSAGE\n var causes = isErrorInstance\n ? flattenErrorCauses(originalError, source)\n : undefined\n var type = stackTrace && stackTrace.name\n\n return {\n startClocks: startClocks,\n source: source,\n handling: handling,\n originalError: originalError,\n message: message,\n stack: stack,\n handlingStack: handlingStack,\n type: type,\n causes: causes\n }\n}\nfunction computeMessage(\n stackTrace,\n isErrorInstance,\n nonErrorPrefix,\n originalError\n) {\n // Favor stackTrace message only if tracekit has really been able to extract something meaningful (message + name)\n // TODO rework tracekit integration to avoid scattering error building logic\n return stackTrace && stackTrace.message && stackTrace && stackTrace.name\n ? stackTrace.message\n : !isErrorInstance\n ? nonErrorPrefix + ' ' + jsonStringify(sanitize(originalError))\n : 'Empty message'\n}\nfunction hasUsableStack(isErrorInstance, stackTrace) {\n if (stackTrace === undefined) {\n return false\n }\n if (isErrorInstance) {\n return true\n }\n // handle cases where tracekit return stack = [] or stack = [{url: undefined, line: undefined, column: undefined}]\n // TODO rework tracekit integration to avoid generating those unusable stack\n return (\n stackTrace.stack.length > 0 &&\n (stackTrace.stack.length > 1 || stackTrace.stack[0].url !== undefined)\n )\n}\n\nexport function formatUnknownError(\n stackTrace,\n errorObject,\n nonErrorPrefix,\n handlingStack\n) {\n if (\n !stackTrace ||\n (stackTrace.message === undefined && !(errorObject instanceof Error))\n ) {\n return {\n message: nonErrorPrefix + '' + jsonStringify(errorObject),\n stack: 'No stack, consider using an instance of Error',\n handlingStack: handlingStack,\n type: stackTrace && stackTrace.name\n }\n }\n return {\n message: stackTrace.message || 'Empty message',\n stack: toStackTraceString(stackTrace),\n handlingStack: handlingStack,\n type: stackTrace.name\n }\n}\n/**\n Creates a stacktrace without SDK internal frames.\n \n Constraints:\n - Has to be called at the utmost position of the call stack.\n - No internal monitoring should encapsulate the function, that is why we need to use callMonitored inside of it.\n */\nexport function createHandlingStack() {\n /**\n * Skip the two internal frames:\n * - SDK API (console.error, ...)\n * - this function\n * in order to keep only the user calls\n */\n var internalFramesToSkip = 2\n var error = new Error()\n var formattedStack\n\n // IE needs to throw the error to fill in the stack trace\n if (!error.stack) {\n try {\n throw error\n } catch (e) {\n noop()\n }\n }\n callMonitored(function () {\n var stackTrace = computeStackTrace(error)\n stackTrace.stack = stackTrace.stack.slice(internalFramesToSkip)\n formattedStack = toStackTraceString(stackTrace)\n })\n\n return formattedStack\n}\nexport function toStackTraceString(stack) {\n var result = formatErrorMessage(stack)\n each(stack.stack, function (frame) {\n var func = frame.func === '?' ? '<anonymous>' : frame.func\n var args =\n frame.args && frame.args.length > 0\n ? '(' + frame.args.join(', ') + ')'\n : ''\n var line = frame.line ? ':' + frame.line : ''\n var column = frame.line && frame.column ? ':' + frame.column : ''\n result += '\\n at ' + func + args + ' @ ' + frame.url + line + column\n })\n return result\n}\nexport function formatErrorMessage(stack) {\n return (stack.name || 'Error') + ': ' + stack.message\n}\nexport function getFileFromStackTraceString(stack) {\n var execResult = /@ (.+)/.exec(stack)\n return execResult && execResult[1]\n}\nexport function flattenErrorCauses(error, parentSource) {\n var currentError = error\n var causes = []\n while (\n currentError &&\n currentError.cause instanceof Error &&\n causes.length < 10\n ) {\n var stackTrace = computeStackTrace(currentError.cause)\n causes.push({\n message: currentError.cause.message,\n source: parentSource,\n type: stackTrace && stackTrace.name,\n stack: stackTrace && toStackTraceString(stackTrace)\n })\n currentError = currentError.cause\n }\n return causes.length ? causes : undefined\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"errorTools.js","names":["each","noop","jsonStringify","computeStackTrace","callMonitored","sanitize","NO_ERROR_STACK_PRESENT_MESSAGE","ErrorSource","AGENT","CONSOLE","NETWORK","SOURCE","LOGGER","CUSTOM","computeRawError","data","stackTrace","originalError","handlingStack","startClocks","nonErrorPrefix","source","handling","isErrorInstance","Error","message","computeMessage","stack","hasUsableStack","toStackTraceString","causes","flattenErrorCauses","undefined","type","name","length","url","formatUnknownError","errorObject","createHandlingStack","internalFramesToSkip","error","formattedStack","e","slice","result","formatErrorMessage","frame","func","args","join","line","column","getFileFromStackTraceString","execResult","exec","parentSource","currentError","cause","push"],"sources":["../../src/helper/errorTools.js"],"sourcesContent":["import { each, noop } from './tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { computeStackTrace } from '../tracekit'\nimport { callMonitored } from '../helper/monitor'\nimport { sanitize } from '../helper/sanitize'\nexport var NO_ERROR_STACK_PRESENT_MESSAGE =\n 'No stack, consider using an instance of Error'\nexport var ErrorSource = {\n AGENT: 'agent',\n CONSOLE: 'console',\n NETWORK: 'network',\n SOURCE: 'source',\n LOGGER: 'logger',\n CUSTOM: 'custom'\n}\n\nexport function computeRawError(data) {\n var stackTrace = data.stackTrace\n var originalError = data.originalError\n var handlingStack = data.handlingStack\n var startClocks = data.startClocks\n var nonErrorPrefix = data.nonErrorPrefix\n var source = data.source\n var handling = data.handling\n var isErrorInstance = originalError instanceof Error\n var message = computeMessage(\n stackTrace,\n isErrorInstance,\n nonErrorPrefix,\n originalError\n )\n var stack = hasUsableStack(isErrorInstance, stackTrace)\n ? toStackTraceString(stackTrace)\n : NO_ERROR_STACK_PRESENT_MESSAGE\n var causes = isErrorInstance\n ? flattenErrorCauses(originalError, source)\n : undefined\n var type = stackTrace && stackTrace.name\n\n return {\n startClocks: startClocks,\n source: source,\n handling: handling,\n originalError: originalError,\n message: message,\n stack: stack,\n handlingStack: handlingStack,\n type: type,\n causes: causes\n }\n}\nfunction computeMessage(\n stackTrace,\n isErrorInstance,\n nonErrorPrefix,\n originalError\n) {\n // Favor stackTrace message only if tracekit has really been able to extract something meaningful (message + name)\n // TODO rework tracekit integration to avoid scattering error building logic\n return stackTrace && stackTrace.message && stackTrace && stackTrace.name\n ? stackTrace.message\n : !isErrorInstance\n ? nonErrorPrefix + ' ' + jsonStringify(sanitize(originalError))\n : 'Empty message'\n}\nfunction hasUsableStack(isErrorInstance, stackTrace) {\n if (stackTrace === undefined) {\n return false\n }\n if (isErrorInstance) {\n return true\n }\n // handle cases where tracekit return stack = [] or stack = [{url: undefined, line: undefined, column: undefined}]\n // TODO rework tracekit integration to avoid generating those unusable stack\n return (\n stackTrace.stack.length > 0 &&\n (stackTrace.stack.length > 1 || stackTrace.stack[0].url !== undefined)\n )\n}\n\nexport function formatUnknownError(\n stackTrace,\n errorObject,\n nonErrorPrefix,\n handlingStack\n) {\n if (\n !stackTrace ||\n (stackTrace.message === undefined && !(errorObject instanceof Error))\n ) {\n return {\n message: nonErrorPrefix + '' + jsonStringify(errorObject),\n stack: 'No stack, consider using an instance of Error',\n handlingStack: handlingStack,\n type: stackTrace && stackTrace.name\n }\n }\n return {\n message: stackTrace.message || 'Empty message',\n stack: toStackTraceString(stackTrace),\n handlingStack: handlingStack,\n type: stackTrace.name\n }\n}\n/**\n Creates a stacktrace without SDK internal frames.\n \n Constraints:\n - Has to be called at the utmost position of the call stack.\n - No internal monitoring should encapsulate the function, that is why we need to use callMonitored inside of it.\n */\nexport function createHandlingStack() {\n /**\n * Skip the two internal frames:\n * - SDK API (console.error, ...)\n * - this function\n * in order to keep only the user calls\n */\n var internalFramesToSkip = 2\n var error = new Error()\n var formattedStack\n\n // IE needs to throw the error to fill in the stack trace\n if (!error.stack) {\n try {\n throw error\n } catch (e) {\n noop()\n }\n }\n callMonitored(function () {\n var stackTrace = computeStackTrace(error)\n stackTrace.stack = stackTrace.stack.slice(internalFramesToSkip)\n formattedStack = toStackTraceString(stackTrace)\n })\n\n return formattedStack\n}\nexport function toStackTraceString(stack) {\n var result = formatErrorMessage(stack)\n each(stack.stack, function (frame) {\n var func = frame.func === '?' ? '<anonymous>' : frame.func\n var args =\n frame.args && frame.args.length > 0\n ? '(' + frame.args.join(', ') + ')'\n : ''\n var line = frame.line ? ':' + frame.line : ''\n var column = frame.line && frame.column ? ':' + frame.column : ''\n result += '\\n at ' + func + args + ' @ ' + frame.url + line + column\n })\n return result\n}\nexport function formatErrorMessage(stack) {\n return (stack.name || 'Error') + ': ' + stack.message\n}\nexport function getFileFromStackTraceString(stack) {\n var execResult = /@ (.+)/.exec(stack)\n return execResult && execResult[1]\n}\nexport function flattenErrorCauses(error, parentSource) {\n var currentError = error\n var causes = []\n while (\n currentError &&\n currentError.cause instanceof Error &&\n causes.length < 10\n ) {\n var stackTrace = computeStackTrace(currentError.cause)\n causes.push({\n message: currentError.cause.message,\n source: parentSource,\n type: stackTrace && stackTrace.name,\n stack: stackTrace && toStackTraceString(stackTrace)\n })\n currentError = currentError.cause\n }\n return causes.length ? causes : undefined\n}\n"],"mappings":"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"}
|
package/esm/helper/monitor.js
CHANGED
|
@@ -32,6 +32,7 @@ export function callMonitored(fn, context, args) {
|
|
|
32
32
|
}
|
|
33
33
|
export function displayIfDebugEnabled(api) {
|
|
34
34
|
var args = [].slice.call(arguments, 1);
|
|
35
|
+
// display.apply(null, [api, '[MONITOR]'].concat(args))
|
|
35
36
|
if (debugMode) {
|
|
36
37
|
display.apply(null, [api, '[MONITOR]'].concat(args));
|
|
37
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitor.js","names":["ConsoleApiName","display","onMonitorErrorCollected","debugMode","startMonitorErrorCollection","newOnMonitorErrorCollected","setDebugMode","newDebugMode","resetMonitor","undefined","monitor","fn","callMonitored","arguments","context","args","apply","e","displayIfDebugEnabled","error","api","slice","call","concat"],"sources":["../../src/helper/monitor.js"],"sourcesContent":["import { ConsoleApiName, display } from './display'\nvar onMonitorErrorCollected\nvar debugMode = false\n\nexport function startMonitorErrorCollection(newOnMonitorErrorCollected) {\n onMonitorErrorCollected = newOnMonitorErrorCollected\n}\n\nexport function setDebugMode(newDebugMode) {\n debugMode = newDebugMode\n}\n\nexport function resetMonitor() {\n onMonitorErrorCollected = undefined\n debugMode = false\n}\n\nexport function monitor(fn) {\n return function () {\n return callMonitored(fn, this, arguments)\n }\n}\n\nexport function callMonitored(fn, context, args) {\n try {\n return fn.apply(context, args)\n } catch (e) {\n displayIfDebugEnabled(ConsoleApiName.error, e)\n if (onMonitorErrorCollected) {\n try {\n onMonitorErrorCollected(e)\n } catch (e) {\n displayIfDebugEnabled(ConsoleApiName.error, e)\n }\n }\n }\n}\n\nexport function displayIfDebugEnabled(api) {\n var args = [].slice.call(arguments, 1)\n if (debugMode) {\n display.apply(null, [api, '[MONITOR]'].concat(args))\n }\n}\n"],"mappings":"AAAA,SAASA,cAAc,EAAEC,OAAO,QAAQ,WAAW;AACnD,IAAIC,uBAAuB;AAC3B,IAAIC,SAAS,GAAG,KAAK;AAErB,OAAO,SAASC,2BAA2BA,CAACC,0BAA0B,EAAE;EACtEH,uBAAuB,GAAGG,0BAA0B;AACtD;AAEA,OAAO,SAASC,YAAYA,CAACC,YAAY,EAAE;EACzCJ,SAAS,GAAGI,YAAY;AAC1B;AAEA,OAAO,SAASC,YAAYA,CAAA,EAAG;EAC7BN,uBAAuB,GAAGO,SAAS;EACnCN,SAAS,GAAG,KAAK;AACnB;AAEA,OAAO,SAASO,OAAOA,CAACC,EAAE,EAAE;EAC1B,OAAO,YAAY;IACjB,OAAOC,aAAa,CAACD,EAAE,EAAE,IAAI,EAAEE,SAAS,CAAC;EAC3C,CAAC;AACH;AAEA,OAAO,SAASD,aAAaA,CAACD,EAAE,EAAEG,OAAO,EAAEC,IAAI,EAAE;EAC/C,IAAI;IACF,OAAOJ,EAAE,CAACK,KAAK,CAACF,OAAO,EAAEC,IAAI,CAAC;EAChC,CAAC,CAAC,OAAOE,CAAC,EAAE;IACVC,qBAAqB,CAAClB,cAAc,CAACmB,KAAK,EAAEF,CAAC,CAAC;IAC9C,IAAIf,uBAAuB,EAAE;MAC3B,IAAI;QACFA,uBAAuB,CAACe,CAAC,CAAC;MAC5B,CAAC,CAAC,OAAOA,CAAC,EAAE;QACVC,qBAAqB,CAAClB,cAAc,CAACmB,KAAK,EAAEF,CAAC,CAAC;MAChD;IACF;EACF;AACF;AAEA,OAAO,SAASC,qBAAqBA,CAACE,GAAG,EAAE;EACzC,IAAIL,IAAI,GAAG,EAAE,CAACM,KAAK,CAACC,IAAI,CAACT,SAAS,EAAE,CAAC,CAAC;EACtC,IAAIV,SAAS,EAAE;IACbF,OAAO,CAACe,KAAK,CAAC,IAAI,EAAE,CAACI,GAAG,EAAE,WAAW,CAAC,CAACG,MAAM,CAACR,IAAI,CAAC,CAAC;EACtD;AACF"}
|
|
1
|
+
{"version":3,"file":"monitor.js","names":["ConsoleApiName","display","onMonitorErrorCollected","debugMode","startMonitorErrorCollection","newOnMonitorErrorCollected","setDebugMode","newDebugMode","resetMonitor","undefined","monitor","fn","callMonitored","arguments","context","args","apply","e","displayIfDebugEnabled","error","api","slice","call","concat"],"sources":["../../src/helper/monitor.js"],"sourcesContent":["import { ConsoleApiName, display } from './display'\nvar onMonitorErrorCollected\nvar debugMode = false\n\nexport function startMonitorErrorCollection(newOnMonitorErrorCollected) {\n onMonitorErrorCollected = newOnMonitorErrorCollected\n}\n\nexport function setDebugMode(newDebugMode) {\n debugMode = newDebugMode\n}\n\nexport function resetMonitor() {\n onMonitorErrorCollected = undefined\n debugMode = false\n}\n\nexport function monitor(fn) {\n return function () {\n return callMonitored(fn, this, arguments)\n }\n}\n\nexport function callMonitored(fn, context, args) {\n try {\n return fn.apply(context, args)\n } catch (e) {\n displayIfDebugEnabled(ConsoleApiName.error, e)\n if (onMonitorErrorCollected) {\n try {\n onMonitorErrorCollected(e)\n } catch (e) {\n displayIfDebugEnabled(ConsoleApiName.error, e)\n }\n }\n }\n}\n\nexport function displayIfDebugEnabled(api) {\n var args = [].slice.call(arguments, 1)\n // display.apply(null, [api, '[MONITOR]'].concat(args))\n if (debugMode) {\n display.apply(null, [api, '[MONITOR]'].concat(args))\n }\n}\n"],"mappings":"AAAA,SAASA,cAAc,EAAEC,OAAO,QAAQ,WAAW;AACnD,IAAIC,uBAAuB;AAC3B,IAAIC,SAAS,GAAG,KAAK;AAErB,OAAO,SAASC,2BAA2BA,CAACC,0BAA0B,EAAE;EACtEH,uBAAuB,GAAGG,0BAA0B;AACtD;AAEA,OAAO,SAASC,YAAYA,CAACC,YAAY,EAAE;EACzCJ,SAAS,GAAGI,YAAY;AAC1B;AAEA,OAAO,SAASC,YAAYA,CAAA,EAAG;EAC7BN,uBAAuB,GAAGO,SAAS;EACnCN,SAAS,GAAG,KAAK;AACnB;AAEA,OAAO,SAASO,OAAOA,CAACC,EAAE,EAAE;EAC1B,OAAO,YAAY;IACjB,OAAOC,aAAa,CAACD,EAAE,EAAE,IAAI,EAAEE,SAAS,CAAC;EAC3C,CAAC;AACH;AAEA,OAAO,SAASD,aAAaA,CAACD,EAAE,EAAEG,OAAO,EAAEC,IAAI,EAAE;EAC/C,IAAI;IACF,OAAOJ,EAAE,CAACK,KAAK,CAACF,OAAO,EAAEC,IAAI,CAAC;EAChC,CAAC,CAAC,OAAOE,CAAC,EAAE;IACVC,qBAAqB,CAAClB,cAAc,CAACmB,KAAK,EAAEF,CAAC,CAAC;IAC9C,IAAIf,uBAAuB,EAAE;MAC3B,IAAI;QACFA,uBAAuB,CAACe,CAAC,CAAC;MAC5B,CAAC,CAAC,OAAOA,CAAC,EAAE;QACVC,qBAAqB,CAAClB,cAAc,CAACmB,KAAK,EAAEF,CAAC,CAAC;MAChD;IACF;EACF;AACF;AAEA,OAAO,SAASC,qBAAqBA,CAACE,GAAG,EAAE;EACzC,IAAIL,IAAI,GAAG,EAAE,CAACM,KAAK,CAACC,IAAI,CAACT,SAAS,EAAE,CAAC,CAAC;EACtC;EACA,IAAIV,SAAS,EAAE;IACbF,OAAO,CAACe,KAAK,CAAC,IAAI,EAAE,CAACI,GAAG,EAAE,WAAW,CAAC,CAACG,MAAM,CAACR,IAAI,CAAC,CAAC;EACtD;AACF"}
|