@cloudcare/guance-front-tools 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/.prettierignore +3 -0
  2. package/.prettierrc +6 -0
  3. package/LICENSE +21 -0
  4. package/README.md +31 -0
  5. package/cli.js +16 -0
  6. package/lib/cjs/generated/browserSessionReplay.d.ts +703 -0
  7. package/lib/cjs/generated/browserSessionReplay.js +6 -0
  8. package/lib/cjs/generated/dashboardCharts.d.ts +1372 -0
  9. package/lib/cjs/generated/dashboardCharts.js +6 -0
  10. package/lib/cjs/generated/mobileSessionReplay.d.ts +653 -0
  11. package/lib/cjs/generated/mobileSessionReplay.js +6 -0
  12. package/lib/cjs/generated/sessionReplay.d.ts +1190 -0
  13. package/lib/cjs/generated/sessionReplay.js +6 -0
  14. package/lib/cjs/src/dashboard-charts.d.ts +1 -0
  15. package/lib/cjs/src/dashboard-charts.js +17 -0
  16. package/lib/cjs/src/index.d.ts +2 -0
  17. package/lib/cjs/src/index.js +18 -0
  18. package/lib/cjs/src/session-replay-browser.d.ts +58 -0
  19. package/lib/cjs/src/session-replay-browser.js +69 -0
  20. package/lib/cjs/src/session-replay-mobile.d.ts +30 -0
  21. package/lib/cjs/src/session-replay-mobile.js +42 -0
  22. package/lib/cjs/src/session-replay.d.ts +30 -0
  23. package/lib/cjs/src/session-replay.js +49 -0
  24. package/lib/esm/generated/browserSessionReplay.d.ts +703 -0
  25. package/lib/esm/generated/browserSessionReplay.js +5 -0
  26. package/lib/esm/generated/dashboardCharts.d.ts +1372 -0
  27. package/lib/esm/generated/dashboardCharts.js +5 -0
  28. package/lib/esm/generated/mobileSessionReplay.d.ts +653 -0
  29. package/lib/esm/generated/mobileSessionReplay.js +5 -0
  30. package/lib/esm/generated/sessionReplay.d.ts +1190 -0
  31. package/lib/esm/generated/sessionReplay.js +5 -0
  32. package/lib/esm/src/dashboard-charts.d.ts +1 -0
  33. package/lib/esm/src/dashboard-charts.js +1 -0
  34. package/lib/esm/src/index.d.ts +2 -0
  35. package/lib/esm/src/index.js +2 -0
  36. package/lib/esm/src/session-replay-browser.d.ts +58 -0
  37. package/lib/esm/src/session-replay-browser.js +52 -0
  38. package/lib/esm/src/session-replay-mobile.d.ts +30 -0
  39. package/lib/esm/src/session-replay-mobile.js +25 -0
  40. package/lib/esm/src/session-replay.d.ts +30 -0
  41. package/lib/esm/src/session-replay.js +24 -0
  42. package/lib/example/grafana-dashboard.json +2205 -0
  43. package/lib/example/guance-covert-test.json +629 -0
  44. package/lib/example/guance-dashboard-1.json +672 -0
  45. package/lib/example/guance-dashboard.json +2841 -0
  46. package/lib/scripts/grafana-covert-to-guance.d.ts +1 -0
  47. package/lib/scripts/grafana-covert-to-guance.js +367 -0
  48. package/lib/scripts/grafana-covert-to-guance.ts +374 -0
  49. package/lib/scripts/grafana-dashbord.d.ts +2220 -0
  50. package/lib/scripts/grafana-dashbord.js +1 -0
  51. package/lib/scripts/grafana-dashbord.ts +2427 -0
  52. package/lib/src/dashboard-charts.ts +1 -0
  53. package/lib/src/index.ts +2 -0
  54. package/lib/src/session-replay-browser.ts +98 -0
  55. package/lib/src/session-replay-mobile.ts +54 -0
  56. package/lib/src/session-replay.ts +61 -0
  57. package/package.json +45 -0
  58. package/samples/dashboard/dashboard.json +2842 -0
  59. package/samples/dashboard/promql-dashboard.json +2175 -0
  60. package/samples/session-replay/mobile/record/full-snapshot-record.json +51 -0
  61. package/samples/session-replay/mobile/record/has-focus-record.json +7 -0
  62. package/samples/session-replay/mobile/record/incremental-snapshot-record.json +74 -0
  63. package/samples/session-replay/mobile/record/metadata-record.json +8 -0
  64. package/samples/session-replay/mobile/record/view-end-record.json +4 -0
  65. package/samples/session-replay/mobile/segment/segment.json +110 -0
  66. package/schemas/charts/chart-schema.json +73 -0
  67. package/schemas/charts/common/common-chart-types-schema.json +37 -0
  68. package/schemas/charts/common/common-vars-item-schema.json +117 -0
  69. package/schemas/charts/common/common-vars-schema.json +10 -0
  70. package/schemas/charts/dashboard-schema.json +73 -0
  71. package/schemas/charts/query/queries-schema.json +10 -0
  72. package/schemas/charts/query/query-item-schema.json +42 -0
  73. package/schemas/charts/settings/_common-settings-connect-null-schema.json +7 -0
  74. package/schemas/charts/settings/_common-settings-gradual-color-schema.json +72 -0
  75. package/schemas/charts/settings/_common-settings-groupby-schema.json +22 -0
  76. package/schemas/charts/settings/_common-settings-legend-position-schema.json +14 -0
  77. package/schemas/charts/settings/_common-settings-legend-values-schema.json +19 -0
  78. package/schemas/charts/settings/_common-settings-open-stack-schema.json +8 -0
  79. package/schemas/charts/settings/_common-settings-show-label-schema.json +8 -0
  80. package/schemas/charts/settings/_common-settings-show-line-schema.json +8 -0
  81. package/schemas/charts/settings/_common-settings-stack-content-schema.json +12 -0
  82. package/schemas/charts/settings/_common-settings-stack-type-schema.json +11 -0
  83. package/schemas/charts/settings/chart-alarm-settings-schema.json +48 -0
  84. package/schemas/charts/settings/chart-bar-settings-schema.json +69 -0
  85. package/schemas/charts/settings/chart-chinamap-settings-schema.json +102 -0
  86. package/schemas/charts/settings/chart-funnel-settings-schema.json +34 -0
  87. package/schemas/charts/settings/chart-gauge-settings-schema.json +65 -0
  88. package/schemas/charts/settings/chart-heatmap-settings-schema.json +50 -0
  89. package/schemas/charts/settings/chart-hexgon-settings-schema.json +90 -0
  90. package/schemas/charts/settings/chart-histogram-settings-schema.json +47 -0
  91. package/schemas/charts/settings/chart-iframe-settings-schema.json +24 -0
  92. package/schemas/charts/settings/chart-log-settings-schema.json +84 -0
  93. package/schemas/charts/settings/chart-object-settings-schema.json +52 -0
  94. package/schemas/charts/settings/chart-picture-settings-schema.json +46 -0
  95. package/schemas/charts/settings/chart-pie-settings-schema.json +90 -0
  96. package/schemas/charts/settings/chart-sankey-settings-schema.json +34 -0
  97. package/schemas/charts/settings/chart-scatter-bubble-settings-schema.json +31 -0
  98. package/schemas/charts/settings/chart-sequence-settings-schema.json +76 -0
  99. package/schemas/charts/settings/chart-singlestat-settings-schema.json +163 -0
  100. package/schemas/charts/settings/chart-table-settings-schema.json +184 -0
  101. package/schemas/charts/settings/chart-text-settings-schema.json +20 -0
  102. package/schemas/charts/settings/chart-toplist-settings-schema.json +117 -0
  103. package/schemas/charts/settings/chart-topology-settings-schema.json +71 -0
  104. package/schemas/charts/settings/chart-treemap-settings-schema.json +66 -0
  105. package/schemas/charts/settings/chart-worldmap-settings-schema.json +102 -0
  106. package/schemas/charts/settings/common-settings-schema.json +82 -0
  107. package/schemas/charts/settings/settings-alias-schema.json +47 -0
  108. package/schemas/charts/settings/settings-chart-type-schema.json +27 -0
  109. package/schemas/charts/settings/settings-colors-schema.json +46 -0
  110. package/schemas/charts/settings/settings-compare-schema.json +58 -0
  111. package/schemas/charts/settings/settings-fixed-time-schema.json +49 -0
  112. package/schemas/charts/settings/settings-levels-schema.json +33 -0
  113. package/schemas/charts/settings/settings-schema.json +79 -0
  114. package/schemas/charts/settings/settings-time-schema.json +47 -0
  115. package/schemas/charts/settings/settings-unit-items-schema.json +226 -0
  116. package/schemas/charts/settings/settings-units-schema.json +60 -0
  117. package/schemas/dashboard-schema.json +5 -0
  118. package/schemas/session-replay/browser/attribute-mutation-schema.json +21 -0
  119. package/schemas/session-replay/browser/attributes-schema.json +10 -0
  120. package/schemas/session-replay/browser/cdata-node-schema.json +19 -0
  121. package/schemas/session-replay/browser/creation-reason-schema.json +17 -0
  122. package/schemas/session-replay/browser/document-fragment-node-schema.json +35 -0
  123. package/schemas/session-replay/browser/document-node-schema.json +30 -0
  124. package/schemas/session-replay/browser/document-type-node-schema.json +28 -0
  125. package/schemas/session-replay/browser/element-node-schema.json +33 -0
  126. package/schemas/session-replay/browser/frustration-record-schema.json +49 -0
  127. package/schemas/session-replay/browser/full-snapshot-record-schema.json +26 -0
  128. package/schemas/session-replay/browser/incremental-data-schema.json +36 -0
  129. package/schemas/session-replay/browser/incremental-snapshot-record-schema.json +29 -0
  130. package/schemas/session-replay/browser/input-data-schema.json +27 -0
  131. package/schemas/session-replay/browser/input-state-schema.json +27 -0
  132. package/schemas/session-replay/browser/media-interaction-data-schema.json +23 -0
  133. package/schemas/session-replay/browser/media-interaction-schema.json +20 -0
  134. package/schemas/session-replay/browser/mouse-interaction-data-schema.json +23 -0
  135. package/schemas/session-replay/browser/mouse-interaction-schema.json +47 -0
  136. package/schemas/session-replay/browser/mouse-move-data-schema.json +23 -0
  137. package/schemas/session-replay/browser/mouse-position-schema.json +26 -0
  138. package/schemas/session-replay/browser/mutation-data-schema.json +23 -0
  139. package/schemas/session-replay/browser/mutation-payload-schema.json +42 -0
  140. package/schemas/session-replay/browser/node-added-mutation-schema.json +41 -0
  141. package/schemas/session-replay/browser/node-removed-mutation-schema.json +18 -0
  142. package/schemas/session-replay/browser/node-schema.json +28 -0
  143. package/schemas/session-replay/browser/record-schema.json +30 -0
  144. package/schemas/session-replay/browser/scroll-data-schema.json +23 -0
  145. package/schemas/session-replay/browser/scroll-position-schema.json +22 -0
  146. package/schemas/session-replay/browser/segment-metadata-schema.json +28 -0
  147. package/schemas/session-replay/browser/segment-schema.json +25 -0
  148. package/schemas/session-replay/browser/serialized-node-schema.json +15 -0
  149. package/schemas/session-replay/browser/serialized-node-with-id-schema.json +21 -0
  150. package/schemas/session-replay/browser/stylesheet-rule-add-schema.json +28 -0
  151. package/schemas/session-replay/browser/stylesheet-rule-data-schema.json +23 -0
  152. package/schemas/session-replay/browser/stylesheet-rule-delete-schema.json +24 -0
  153. package/schemas/session-replay/browser/stylesheet-rule-schema.json +29 -0
  154. package/schemas/session-replay/browser/stylesheet-schema.json +30 -0
  155. package/schemas/session-replay/browser/text-mutation-schema.json +27 -0
  156. package/schemas/session-replay/browser/text-node-schema.json +23 -0
  157. package/schemas/session-replay/common/_common-record-schema.json +14 -0
  158. package/schemas/session-replay/common/_common-segment-metadata-schema.json +30 -0
  159. package/schemas/session-replay/common/_slot-supported-common-record-schema.json +21 -0
  160. package/schemas/session-replay/common/focus-record-schema.json +34 -0
  161. package/schemas/session-replay/common/meta-record-schema.json +42 -0
  162. package/schemas/session-replay/common/pointer-interaction-data-schema.json +23 -0
  163. package/schemas/session-replay/common/pointer-interaction-schema.json +34 -0
  164. package/schemas/session-replay/common/segment-context-schema.json +46 -0
  165. package/schemas/session-replay/common/view-end-record-schema.json +23 -0
  166. package/schemas/session-replay/common/viewport-resize-data-schema.json +23 -0
  167. package/schemas/session-replay/common/viewport-resize-dimension-schema.json +18 -0
  168. package/schemas/session-replay/common/visual-viewport-record-schema.json +50 -0
  169. package/schemas/session-replay/full-snapshot-record-schema.json +14 -0
  170. package/schemas/session-replay/incremental-data-schema.json +14 -0
  171. package/schemas/session-replay/incremental-snapshot-record-schema.json +14 -0
  172. package/schemas/session-replay/mobile/_common-shape-wireframe-schema.json +22 -0
  173. package/schemas/session-replay/mobile/_common-shape-wireframe-update-schema.json +22 -0
  174. package/schemas/session-replay/mobile/_common-wireframe-schema.json +38 -0
  175. package/schemas/session-replay/mobile/_common-wireframe-update-schema.json +38 -0
  176. package/schemas/session-replay/mobile/full-snapshot-record-schema.json +38 -0
  177. package/schemas/session-replay/mobile/image-wireframe-schema.json +43 -0
  178. package/schemas/session-replay/mobile/image-wireframe-update-schema.json +43 -0
  179. package/schemas/session-replay/mobile/incremental-data-schema.json +21 -0
  180. package/schemas/session-replay/mobile/incremental-snapshot-record-schema.json +26 -0
  181. package/schemas/session-replay/mobile/mutation-data-schema.json +23 -0
  182. package/schemas/session-replay/mobile/mutation-payload-schema.json +55 -0
  183. package/schemas/session-replay/mobile/placeholder-wireframe-schema.json +28 -0
  184. package/schemas/session-replay/mobile/placeholder-wireframe-update-schema.json +28 -0
  185. package/schemas/session-replay/mobile/record-schema.json +27 -0
  186. package/schemas/session-replay/mobile/segment-metadata-schema.json +25 -0
  187. package/schemas/session-replay/mobile/segment-schema.json +25 -0
  188. package/schemas/session-replay/mobile/shape-border-schema.json +25 -0
  189. package/schemas/session-replay/mobile/shape-style-schema.json +29 -0
  190. package/schemas/session-replay/mobile/shape-wireframe-schema.json +23 -0
  191. package/schemas/session-replay/mobile/shape-wireframe-update-schema.json +23 -0
  192. package/schemas/session-replay/mobile/text-position-schema.json +57 -0
  193. package/schemas/session-replay/mobile/text-style-schema.json +31 -0
  194. package/schemas/session-replay/mobile/text-wireframe-schema.json +34 -0
  195. package/schemas/session-replay/mobile/text-wireframe-update-schema.json +34 -0
  196. package/schemas/session-replay/mobile/touch-data-schema.json +51 -0
  197. package/schemas/session-replay/mobile/webview-wireframe-schema.json +33 -0
  198. package/schemas/session-replay/mobile/webview-wireframe-update-schema.json +33 -0
  199. package/schemas/session-replay/mobile/wireframe-clip-schema.json +29 -0
  200. package/schemas/session-replay/mobile/wireframe-schema.json +24 -0
  201. package/schemas/session-replay/mobile/wireframe-update-mutation-schema.json +24 -0
  202. package/schemas/session-replay/mutation-data-schema.json +14 -0
  203. package/schemas/session-replay/mutation-payload-schema.json +14 -0
  204. package/schemas/session-replay/record-schema.json +14 -0
  205. package/schemas/session-replay/segment-metadata-schema.json +14 -0
  206. package/schemas/session-replay/segment-schema.json +15 -0
  207. package/schemas/session-replay-browser-schema.json +5 -0
  208. package/schemas/session-replay-mobile-schema.json +5 -0
  209. package/schemas/session-replay-schema.json +33 -0
  210. package/scripts/generate.mjs +96 -0
  211. package/scripts/utils.mjs +16 -0
  212. package/scripts/validate.mjs +144 -0
  213. package/tsconfig.cjs.json +7 -0
  214. package/tsconfig.esm.json +7 -0
  215. package/tsconfig.json +13 -0
  216. package/tsconfig.script.json +15 -0
@@ -0,0 +1,41 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/node-added-mutation-schema.json",
4
+ "title": "AddedNodeMutation",
5
+ "type": "object",
6
+ "description": "Schema of an AddedNodeMutation.",
7
+ "required": ["node", "nextId", "parentId"],
8
+ "properties": {
9
+ "node": {
10
+ "$ref": "serialized-node-with-id-schema.json"
11
+ },
12
+ "parentId": {
13
+ "type": "integer",
14
+ "description": "Id for the parent node for this AddedNodeMutation."
15
+ },
16
+ "nextId": {
17
+ "anyOf": [
18
+ {
19
+ "type": "integer",
20
+ "description": "Id for the next sibling node for this AddedNodeMutation."
21
+ },
22
+ {
23
+ "type": "null",
24
+ "description": "Sent when there is no next sibling anymore."
25
+ }
26
+ ]
27
+ },
28
+ "previousId": {
29
+ "anyOf": [
30
+ {
31
+ "type": "integer",
32
+ "description": "Id for the previous sibling node for this AddedNodeMutation."
33
+ },
34
+ {
35
+ "type": "null",
36
+ "description": "Sent when there is no previous sibling anymore."
37
+ }
38
+ ]
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/node-removed-mutation-schema.json",
4
+ "title": "RemovedNodeMutation",
5
+ "type": "object",
6
+ "description": "Schema of a RemovedNodeMutation.",
7
+ "required": ["id", "parentId"],
8
+ "properties": {
9
+ "id": {
10
+ "type": "integer",
11
+ "description": "Id of the mutated node."
12
+ },
13
+ "parentId": {
14
+ "type": "integer",
15
+ "description": "Id for the parent node for this RemovedNodeMutation"
16
+ }
17
+ }
18
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/node-schema.json",
4
+ "title": "BrowserNode",
5
+ "type": "object",
6
+ "description": "Schema of a Node type.",
7
+ "required": ["node", "initialOffset"],
8
+ "properties": {
9
+ "node": {
10
+ "$ref": "serialized-node-with-id-schema.json"
11
+ },
12
+ "initialOffset": {
13
+ "type": "object",
14
+ "description": "Initial node offset position.",
15
+ "required": ["top", "left"],
16
+ "properties": {
17
+ "top": {
18
+ "type": "number",
19
+ "description": "Top position offset for this node."
20
+ },
21
+ "left": {
22
+ "type": "number",
23
+ "description": "Left position offset for this node."
24
+ }
25
+ }
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/record-schema.json",
4
+ "title": "BrowserRecord",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a Session Replay Record.",
7
+ "oneOf": [
8
+ {
9
+ "$ref": "full-snapshot-record-schema.json"
10
+ },
11
+ {
12
+ "$ref": "incremental-snapshot-record-schema.json"
13
+ },
14
+ {
15
+ "$ref": "../common/meta-record-schema.json"
16
+ },
17
+ {
18
+ "$ref": "../common/focus-record-schema.json"
19
+ },
20
+ {
21
+ "$ref": "../common/view-end-record-schema.json"
22
+ },
23
+ {
24
+ "$ref": "../common/visual-viewport-record-schema.json"
25
+ },
26
+ {
27
+ "$ref": "frustration-record-schema.json"
28
+ }
29
+ ]
30
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/scroll-data-schema.json",
4
+ "title": "ScrollData",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a ScrollData.",
7
+ "allOf": [
8
+ {
9
+ "required": ["source"],
10
+ "properties": {
11
+ "source": {
12
+ "type": "integer",
13
+ "const": 3,
14
+ "description": "The source of this type of incremental data.",
15
+ "readOnly": true
16
+ }
17
+ }
18
+ },
19
+ {
20
+ "$ref": "scroll-position-schema.json"
21
+ }
22
+ ]
23
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/scroll-position-schema.json",
4
+ "title": "ScrollPosition",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a ScrollPosition.",
7
+ "required": ["id", "x", "y"],
8
+ "properties": {
9
+ "id": {
10
+ "type": "integer",
11
+ "description": "Id for the target node for this ScrollPosition."
12
+ },
13
+ "x": {
14
+ "type": "number",
15
+ "description": "X-axis coordinate for this ScrollPosition."
16
+ },
17
+ "y": {
18
+ "type": "number",
19
+ "description": "Y-axis coordinate for this ScrollPosition."
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/segment-metadata-schema.json",
4
+ "title": "BrowserSegmentMetadata",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a Session Replay Segment metadata.",
7
+ "allOf": [
8
+ {
9
+ "$ref": "../common/segment-context-schema.json"
10
+ },
11
+ {
12
+ "$ref": "../common/_common-segment-metadata-schema.json"
13
+ },
14
+ {
15
+ "required": ["source", "creation_reason"],
16
+ "properties": {
17
+ "source": {
18
+ "type": "string",
19
+ "description": "The source of this record",
20
+ "const": "browser"
21
+ },
22
+ "creation_reason": {
23
+ "$ref": "creation-reason-schema.json"
24
+ }
25
+ }
26
+ }
27
+ ]
28
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/segment-schema.json",
4
+ "title": "BrowserSegment",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a Session Replay data Segment.",
7
+ "allOf": [
8
+ {
9
+ "$ref": "segment-metadata-schema.json"
10
+ },
11
+ {
12
+ "required": ["records"],
13
+ "properties": {
14
+ "records": {
15
+ "type": "array",
16
+ "items": {
17
+ "$ref": "record-schema.json"
18
+ },
19
+ "description": "The records contained by this Segment.",
20
+ "readOnly": true
21
+ }
22
+ }
23
+ }
24
+ ]
25
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/serialized-node-schema.json",
4
+ "title": "SerializedNode",
5
+ "type": "object",
6
+ "description": "Serialized node contained by this Record.",
7
+ "anyOf": [
8
+ { "$ref": "document-node-schema.json" },
9
+ { "$ref": "document-fragment-node-schema.json" },
10
+ { "$ref": "document-type-node-schema.json" },
11
+ { "$ref": "element-node-schema.json" },
12
+ { "$ref": "text-node-schema.json" },
13
+ { "$ref": "cdata-node-schema.json" }
14
+ ]
15
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/serialized-node-with-id-schema.json",
4
+ "title": "SerializedNodeWithId",
5
+ "type": "object",
6
+ "description": "Serialized node contained by this Record.",
7
+ "required": ["id"],
8
+ "allOf": [
9
+ {
10
+ "required": ["id"],
11
+ "properties": {
12
+ "id": {
13
+ "type": "integer"
14
+ }
15
+ }
16
+ },
17
+ {
18
+ "$ref": "serialized-node-schema.json"
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/stylesheet-rule-add-schema.json",
4
+ "title": "StyleSheetAddRule",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a StyleSheetAddRule.",
7
+ "required": ["rule"],
8
+ "properties": {
9
+ "rule": {
10
+ "type": "string",
11
+ "description": "Text content for this StyleSheetAddRule."
12
+ },
13
+ "index": {
14
+ "description": "Index of this StyleSheetAddRule in its StyleSheet.",
15
+ "oneOf": [
16
+ {
17
+ "type": "integer"
18
+ },
19
+ {
20
+ "type": "array",
21
+ "items": {
22
+ "type": "integer"
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/stylesheet-rule-data-schema.json",
4
+ "title": "StyleSheetRuleData",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a StyleSheetRuleData.",
7
+ "allOf": [
8
+ {
9
+ "required": ["source"],
10
+ "properties": {
11
+ "source": {
12
+ "type": "integer",
13
+ "const": 8,
14
+ "description": "The source of this type of incremental data.",
15
+ "readOnly": true
16
+ }
17
+ }
18
+ },
19
+ {
20
+ "$ref": "stylesheet-rule-schema.json"
21
+ }
22
+ ]
23
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/stylesheet-rule-delete-schema.json",
4
+ "title": "StyleSheetDeleteRule",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a StyleSheetDeleteRule.",
7
+ "required": ["index"],
8
+ "properties": {
9
+ "index": {
10
+ "description": "Index of this StyleSheetDeleteRule in its StyleSheet.",
11
+ "oneOf": [
12
+ {
13
+ "type": "integer"
14
+ },
15
+ {
16
+ "type": "array",
17
+ "items": {
18
+ "type": "integer"
19
+ }
20
+ }
21
+ ]
22
+ }
23
+ }
24
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/stylesheet-rule-schema.json",
4
+ "title": "StyleSheetRule",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a StyleSheetRule.",
7
+ "required": ["id"],
8
+ "properties": {
9
+ "id": {
10
+ "type": "integer",
11
+ "description": "Id of the owner node for this StyleSheetRule.",
12
+ "readOnly": true
13
+ },
14
+ "adds": {
15
+ "type": "array",
16
+ "description": "Rules added to this StyleSheetRule.",
17
+ "items": {
18
+ "$ref": "stylesheet-rule-add-schema.json"
19
+ }
20
+ },
21
+ "removes": {
22
+ "type": "array",
23
+ "description": "Rules deleted from this StyleSheetRule.",
24
+ "items": {
25
+ "$ref": "stylesheet-rule-delete-schema.json"
26
+ }
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/stylesheet-schema.json",
4
+ "title": "StyleSheet",
5
+ "type": "object",
6
+ "description": "Browser-specific. Schema of a StyleSheet",
7
+ "required": ["cssRules"],
8
+ "properties": {
9
+ "cssRules": {
10
+ "type": "array",
11
+ "description": "CSS rules applied (rule.cssText)",
12
+ "items": {
13
+ "description": "Value of css",
14
+ "type": "string"
15
+ }
16
+ },
17
+ "media": {
18
+ "type": "array",
19
+ "description": "MediaList of the stylesheet",
20
+ "items": {
21
+ "description": "Value of css",
22
+ "type": "string"
23
+ }
24
+ },
25
+ "disabled": {
26
+ "type": "boolean",
27
+ "description": "Is the stylesheet disabled"
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/text-mutation-schema.json",
4
+ "title": "TextMutation",
5
+ "type": "object",
6
+ "description": "Schema of a TextMutation.",
7
+ "required": ["id", "value"],
8
+ "properties": {
9
+ "id": {
10
+ "type": "integer",
11
+ "description": "Id of the mutated node."
12
+ },
13
+ "value": {
14
+ "description": "Value for this TextMutation",
15
+ "oneOf": [
16
+ {
17
+ "type": "null",
18
+ "description": "Sent when the text content is removed."
19
+ },
20
+ {
21
+ "type": "string",
22
+ "description": "Text content for this TextMutation."
23
+ }
24
+ ]
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/browser/text-node-schema.json",
4
+ "title": "TextNode",
5
+ "type": "object",
6
+ "description": "Schema of a Text Node.",
7
+ "required": ["type", "textContent"],
8
+ "properties": {
9
+ "type": {
10
+ "type": "integer",
11
+ "description": "The type of this Node.",
12
+ "const": 3,
13
+ "readOnly": true
14
+ },
15
+ "textContent": {
16
+ "type": "string",
17
+ "description": "Text value for this Text Node"
18
+ },
19
+ "isStyle": {
20
+ "const": true
21
+ }
22
+ }
23
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/_common-record-schema.json",
4
+ "title": "CommonRecordSchema",
5
+ "type": "object",
6
+ "description": "Schema of common properties for a Record event type.",
7
+ "required": ["timestamp"],
8
+ "properties": {
9
+ "timestamp": {
10
+ "type": "integer",
11
+ "description": "Defines the UTC time in milliseconds when this Record was performed."
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/_common-segment-metadata-schema.json",
4
+ "title": "CommonSegmentMetadataSchema",
5
+ "type": "object",
6
+ "description": "Schema of common properties for a Segment Metadata type.",
7
+ "required": ["start", "end", "records_count"],
8
+ "properties": {
9
+ "start": {
10
+ "type": "integer",
11
+ "description": "The start UTC timestamp in milliseconds corresponding to the first record in the Segment data. Each timestamp is computed as the UTC interval since 00:00:00.000 01.01.1970."
12
+ },
13
+ "end": {
14
+ "type": "integer",
15
+ "description": "The end UTC timestamp in milliseconds corresponding to the last record in the Segment data. Each timestamp is computed as the UTC interval since 00:00:00.000 01.01.1970."
16
+ },
17
+ "records_count": {
18
+ "type": "integer",
19
+ "description": "The number of records in this Segment."
20
+ },
21
+ "index_in_view": {
22
+ "type": "integer",
23
+ "description": "The index of this Segment in the segments list that was recorded for this view ID. Starts from 0."
24
+ },
25
+ "has_full_snapshot": {
26
+ "type": "boolean",
27
+ "description": "Whether this Segment contains a full snapshot record or not."
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/_slot-supported-common-record-schema.json",
4
+ "title": "SlotSupportedCommonRecordSchema",
5
+ "type": "object",
6
+ "description": "Schema of common properties for a Record event type that is supported by slots.",
7
+ "allOf": [
8
+ {
9
+ "$ref": "_common-record-schema.json"
10
+ },
11
+ {
12
+ "properties": {
13
+ "slotId": {
14
+ "type": "string",
15
+ "description": "Unique ID of the slot that generated this record.",
16
+ "readOnly": true
17
+ }
18
+ }
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/focus-record-schema.json",
4
+ "title": "FocusRecord",
5
+ "type": "object",
6
+ "description": "Schema of a Record type which contains focus information.",
7
+ "allOf": [
8
+ {
9
+ "$ref": "_slot-supported-common-record-schema.json"
10
+ },
11
+ {
12
+ "required": ["type", "data"],
13
+ "properties": {
14
+ "type": {
15
+ "type": "integer",
16
+ "description": "The type of this Record.",
17
+ "const": 6,
18
+ "readOnly": true
19
+ },
20
+ "data": {
21
+ "type": "object",
22
+ "required": ["has_focus"],
23
+ "properties": {
24
+ "has_focus": {
25
+ "type": "boolean",
26
+ "description": "Whether this screen has a focus or not. For now it will always be true for mobile.",
27
+ "readOnly": true
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
33
+ ]
34
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/meta-record-schema.json",
4
+ "title": "MetaRecord",
5
+ "type": "object",
6
+ "description": "Schema of a Record which contains the screen properties.",
7
+ "allOf": [
8
+ {
9
+ "$ref": "_slot-supported-common-record-schema.json"
10
+ },
11
+ {
12
+ "required": ["type", "data"],
13
+ "properties": {
14
+ "type": {
15
+ "type": "integer",
16
+ "description": "The type of this Record.",
17
+ "const": 4,
18
+ "readOnly": true
19
+ },
20
+ "data": {
21
+ "type": "object",
22
+ "description": "The data contained by this record.",
23
+ "required": ["width", "height"],
24
+ "properties": {
25
+ "width": {
26
+ "type": "integer",
27
+ "description": "The width of the screen in pixels, normalized based on the device pixels per inch density (DPI). Example: if a device has a DPI = 2, the normalized width is the current width divided by 2."
28
+ },
29
+ "height": {
30
+ "type": "integer",
31
+ "description": "The height of the screen in pixels, normalized based on the device pixels per inch density (DPI). Example: if a device has a DPI = 2, the normalized height is the current height divided by 2."
32
+ },
33
+ "href": {
34
+ "type": "string",
35
+ "description": "Browser-specific. URL of the view described by this record."
36
+ }
37
+ }
38
+ }
39
+ }
40
+ }
41
+ ]
42
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/pointer-interaction-data-schema.json",
4
+ "title": "PointerInteractionData",
5
+ "type": "object",
6
+ "description": "Schema of a PointerInteractionData.",
7
+ "allOf": [
8
+ {
9
+ "required": ["source"],
10
+ "properties": {
11
+ "source": {
12
+ "type": "integer",
13
+ "const": 9,
14
+ "description": "The source of this type of incremental data.",
15
+ "readOnly": true
16
+ }
17
+ }
18
+ },
19
+ {
20
+ "$ref": "pointer-interaction-schema.json"
21
+ }
22
+ ]
23
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "session-replay/common/pointer-interaction-schema.json",
4
+ "title": "PointerInteraction",
5
+ "type": "object",
6
+ "description": "Schema of a PointerInteraction.",
7
+ "required": ["pointerEventType", "pointerType", "pointerId", "x", "y"],
8
+ "properties": {
9
+ "pointerEventType": {
10
+ "type": "string",
11
+ "description": "Schema of an PointerEventType",
12
+ "enum": ["down", "up", "move"],
13
+ "readOnly": true
14
+ },
15
+ "pointerType": {
16
+ "type": "string",
17
+ "description": "Schema of an PointerType",
18
+ "enum": ["mouse", "touch", "pen"],
19
+ "readOnly": true
20
+ },
21
+ "pointerId": {
22
+ "type": "integer",
23
+ "description": "Id of the pointer of this PointerInteraction."
24
+ },
25
+ "x": {
26
+ "type": "number",
27
+ "description": "X-axis coordinate for this PointerInteraction."
28
+ },
29
+ "y": {
30
+ "type": "number",
31
+ "description": "Y-axis coordinate for this PointerInteraction."
32
+ }
33
+ }
34
+ }