mikx1 commited on
Commit
b5ea024
·
1 Parent(s): 0f7eae1

Upload folder using huggingface_hub

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +2 -0
  2. Empty Document +45 -0
  3. README.md +3 -9
  4. app/.gitignore +9 -0
  5. app/Empty Document +6 -0
  6. app/README.md +10 -0
  7. app/backend/gradio_app/__init__.py +4 -0
  8. app/backend/gradio_app/app.py +15 -0
  9. app/backend/gradio_app/app.pyi +16 -0
  10. app/demo/__init__.py +0 -0
  11. app/demo/app.py +11 -0
  12. app/frontend/Example.svelte +19 -0
  13. app/frontend/Index.svelte +35 -0
  14. app/frontend/node_modules/.bin/acorn +3 -0
  15. app/frontend/node_modules/.bin/esbuild +3 -0
  16. app/frontend/node_modules/.bin/svelte-i18n +3 -0
  17. app/frontend/node_modules/.package-lock.json +600 -0
  18. app/frontend/node_modules/@ampproject/remapping/LICENSE +202 -0
  19. app/frontend/node_modules/@ampproject/remapping/README.md +218 -0
  20. app/frontend/node_modules/@ampproject/remapping/dist/remapping.mjs +191 -0
  21. app/frontend/node_modules/@ampproject/remapping/dist/remapping.mjs.map +1 -0
  22. app/frontend/node_modules/@ampproject/remapping/dist/remapping.umd.js +196 -0
  23. app/frontend/node_modules/@ampproject/remapping/dist/remapping.umd.js.map +1 -0
  24. app/frontend/node_modules/@ampproject/remapping/dist/types/build-source-map-tree.d.ts +14 -0
  25. app/frontend/node_modules/@ampproject/remapping/dist/types/remapping.d.ts +19 -0
  26. app/frontend/node_modules/@ampproject/remapping/dist/types/source-map-tree.d.ts +42 -0
  27. app/frontend/node_modules/@ampproject/remapping/dist/types/source-map.d.ts +17 -0
  28. app/frontend/node_modules/@ampproject/remapping/dist/types/types.d.ts +14 -0
  29. app/frontend/node_modules/@ampproject/remapping/package.json +75 -0
  30. app/frontend/node_modules/@esbuild/linux-x64/README.md +3 -0
  31. app/frontend/node_modules/@esbuild/linux-x64/bin/esbuild +3 -0
  32. app/frontend/node_modules/@esbuild/linux-x64/package.json +17 -0
  33. app/frontend/node_modules/@formatjs/ecma402-abstract/262.d.ts +92 -0
  34. app/frontend/node_modules/@formatjs/ecma402-abstract/262.d.ts.map +1 -0
  35. app/frontend/node_modules/@formatjs/ecma402-abstract/262.js +362 -0
  36. app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.d.ts +6 -0
  37. app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.d.ts.map +1 -0
  38. app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.js +12 -0
  39. app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.d.ts +9 -0
  40. app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.d.ts.map +1 -0
  41. app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.js +21 -0
  42. app/frontend/node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.d.ts +7 -0
  43. app/frontend/node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.d.ts.map +1 -0
  44. app/frontend/node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.js +16 -0
  45. app/frontend/node_modules/@formatjs/ecma402-abstract/DefaultNumberOption.d.ts +9 -0
  46. app/frontend/node_modules/@formatjs/ecma402-abstract/DefaultNumberOption.d.ts.map +1 -0
  47. app/frontend/node_modules/@formatjs/ecma402-abstract/DefaultNumberOption.js +14 -0
  48. app/frontend/node_modules/@formatjs/ecma402-abstract/GetNumberOption.d.ts +10 -0
  49. app/frontend/node_modules/@formatjs/ecma402-abstract/GetNumberOption.d.ts.map +1 -0
  50. app/frontend/node_modules/@formatjs/ecma402-abstract/GetNumberOption.js +18 -0
.gitattributes CHANGED
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ app/frontend/node_modules/@esbuild/linux-x64/bin/esbuild filter=lfs diff=lfs merge=lfs -text
37
+ app/frontend/node_modules/esbuild/bin/esbuild filter=lfs diff=lfs merge=lfs -text
Empty Document ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import insightface
3
+ import onnxruntime
4
+ from insightface.app import FaceAnalysis
5
+
6
+ def face_swap(user_image, celebrity_image):
7
+
8
+ # Загрузка моделей
9
+ detector = insightface.model_zoo.get_model('retinaface_r50_v1')
10
+ arcface = insightface.model_zoo.get_model('arcface_r100_v1')
11
+
12
+ # Определение пути к модели замены лица
13
+ onnx_model_path = 'face_swap_model.onnx'
14
+
15
+ # Обнаружение лиц
16
+ user_bbox, user_landmarks = detector.detect(user_image)
17
+ celebrity_bbox, celebrity_landmarks = detector.detect(celebrity_image)
18
+
19
+ # Выравнивание лиц
20
+ user_aligned = FaceAnalysis.align(user_image, user_landmarks)
21
+ celebrity_aligned = FaceAnalysis.align(celebrity_image, celebrity_landmarks)
22
+
23
+ # Получение векторных представлений лиц
24
+ user_embedding = arcface.get_embedding(user_aligned)
25
+ celebrity_embedding = arcface.get_embedding(celebrity_aligned)
26
+
27
+ # Загрузка модели ONNX
28
+ session = onnxruntime.InferenceSession(onnx_model_path)
29
+
30
+ # Подготовка входных данных
31
+ input_name = session.get_inputs()[0].name
32
+ user_data = user_aligned.transpose(2, 0, 1)
33
+ celebrity_data = celebrity_aligned.transpose(2, 0, 1)
34
+ input_feed = {input_name: np.concatenate([user_data, celebrity_data], axis=0)}
35
+
36
+ # Замена лица
37
+ results = session.run(None, input_feed)
38
+ swapped_face = results[0].transpose(1, 2, 0)
39
+
40
+ return swapped_face
41
+
42
+
43
+ iface = gr.Interface(fn=face_swap, inputs=["image", "image"], outputs="image")
44
+
45
+ iface.launch()
README.md CHANGED
@@ -1,12 +1,6 @@
1
  ---
2
- title: Gradio App
3
- emoji: 🌖
4
- colorFrom: pink
5
- colorTo: pink
6
  sdk: gradio
7
- sdk_version: 4.1.1
8
- app_file: app.py
9
- pinned: false
10
  ---
11
-
12
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: gradio_app
3
+ app_file: run.py
 
 
4
  sdk: gradio
5
+ sdk_version: 4.0.2
 
 
6
  ---
 
 
app/.gitignore ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ .eggs/
2
+ dist/
3
+ *.pyc
4
+ __pycache__/
5
+ *.py[cod]
6
+ *$py.class
7
+ __tmp/*
8
+ *.pyi
9
+ node_modules
app/Empty Document ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ def face_swap(user_image, celebrity_image):
2
+
3
+ # Здесь должен быть ваш код для замены лица с использованием InsightFace и ONNX
4
+ return swapped_image
5
+
6
+
app/README.md ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ # gradio_app
3
+ A Custom Gradio component.
4
+
5
+ ## Example usage
6
+
7
+ ```python
8
+ import gradio as gr
9
+ from gradio_app import app
10
+ ```
app/backend/gradio_app/__init__.py ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+
2
+ from .app import app
3
+
4
+ __all__ = ['app']
app/backend/gradio_app/app.py ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from gradio.components.base import Component
2
+
3
+
4
+ class app(Component):
5
+ def preprocess(self, payload):
6
+ return payload
7
+
8
+ def postprocess(self, value):
9
+ return value
10
+
11
+ def example_inputs(self):
12
+ return {"foo": "bar"}
13
+
14
+ def api_info(self):
15
+ return {"type": {}, "description": "any valid json"}
app/backend/gradio_app/app.pyi ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from gradio.components.base import Component
2
+
3
+ from gradio.events import Dependency
4
+
5
+ class app(Component):
6
+ def preprocess(self, payload):
7
+ return payload
8
+
9
+ def postprocess(self, value):
10
+ return value
11
+
12
+ def example_inputs(self):
13
+ return {"foo": "bar"}
14
+
15
+ def api_info(self):
16
+ return {"type": {}, "description": "any valid json"}
app/demo/__init__.py ADDED
File without changes
app/demo/app.py ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ import gradio as gr
3
+ from gradio_app import app
4
+
5
+
6
+ with gr.Blocks() as demo:
7
+ gr.Markdown("# Change the value (keep it JSON) and the front-end will update automatically.")
8
+ app(value={"message": "Hello from Gradio!"}, label="Static")
9
+
10
+
11
+ demo.launch()
app/frontend/Example.svelte ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script lang="ts">
2
+ export let value: string;
3
+ export let type: "gallery" | "table";
4
+ export let selected = false;
5
+ </script>
6
+
7
+ <div
8
+ class:table={type === "table"}
9
+ class:gallery={type === "gallery"}
10
+ class:selected
11
+ >
12
+ {value}
13
+ </div>
14
+
15
+ <style>
16
+ .gallery {
17
+ padding: var(--size-1) var(--size-2);
18
+ }
19
+ </style>
app/frontend/Index.svelte ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script lang="ts">
2
+ import { JsonView } from "@zerodevx/svelte-json-view";
3
+
4
+ import type { Gradio } from "@gradio/utils";
5
+ import { Block, Info } from "@gradio/atoms";
6
+ import { StatusTracker } from "@gradio/statustracker";
7
+ import type { LoadingStatus } from "@gradio/statustracker";
8
+ import type { SelectData } from "@gradio/utils";
9
+
10
+ export let elem_id = "";
11
+ export let elem_classes: string[] = [];
12
+ export let visible = true;
13
+ export let value = false;
14
+ export let container = true;
15
+ export let scale: number | null = null;
16
+ export let min_width: number | undefined = undefined;
17
+ export let loading_status: LoadingStatus;
18
+ export let gradio: Gradio<{
19
+ change: never;
20
+ select: SelectData;
21
+ input: never;
22
+ }>;
23
+ </script>
24
+
25
+ <Block {visible} {elem_id} {elem_classes} {container} {scale} {min_width}>
26
+ {#if loading_status}
27
+ <StatusTracker
28
+ autoscroll={gradio.autoscroll}
29
+ i18n={gradio.i18n}
30
+ {...loading_status}
31
+ />
32
+ {/if}
33
+
34
+ <JsonView json={value} />
35
+ </Block>
app/frontend/node_modules/.bin/acorn ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4c3eb6f1d8932790dbff043839f8ee7686bc614a59ef577e96fed618a4a4b1b8
3
+ size 60
app/frontend/node_modules/.bin/esbuild ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f5e95cf71da076b05263e9109f9aa0bd8e7b55e8ac8f1c4bf32e6eab444fcfab
3
+ size 9424896
app/frontend/node_modules/.bin/svelte-i18n ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d53e121c392192a4f539fea8a6f0676bba78bae5a80aef425fe7b8d05435803d
3
+ size 9211
app/frontend/node_modules/.package-lock.json ADDED
@@ -0,0 +1,600 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "gradio_app",
3
+ "version": "0.2.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "node_modules/@ampproject/remapping": {
8
+ "version": "2.2.1",
9
+ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
10
+ "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
11
+ "peer": true,
12
+ "dependencies": {
13
+ "@jridgewell/gen-mapping": "^0.3.0",
14
+ "@jridgewell/trace-mapping": "^0.3.9"
15
+ },
16
+ "engines": {
17
+ "node": ">=6.0.0"
18
+ }
19
+ },
20
+ "node_modules/@esbuild/linux-x64": {
21
+ "version": "0.19.5",
22
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz",
23
+ "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==",
24
+ "cpu": [
25
+ "x64"
26
+ ],
27
+ "optional": true,
28
+ "os": [
29
+ "linux"
30
+ ],
31
+ "engines": {
32
+ "node": ">=12"
33
+ }
34
+ },
35
+ "node_modules/@formatjs/ecma402-abstract": {
36
+ "version": "1.11.4",
37
+ "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.11.4.tgz",
38
+ "integrity": "sha512-EBikYFp2JCdIfGEb5G9dyCkTGDmC57KSHhRQOC3aYxoPWVZvfWCDjZwkGYHN7Lis/fmuWl906bnNTJifDQ3sXw==",
39
+ "dependencies": {
40
+ "@formatjs/intl-localematcher": "0.2.25",
41
+ "tslib": "^2.1.0"
42
+ }
43
+ },
44
+ "node_modules/@formatjs/fast-memoize": {
45
+ "version": "1.2.1",
46
+ "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-1.2.1.tgz",
47
+ "integrity": "sha512-Rg0e76nomkz3vF9IPlKeV+Qynok0r7YZjL6syLz4/urSg0IbjPZCB/iYUMNsYA643gh4mgrX3T7KEIFIxJBQeg==",
48
+ "dependencies": {
49
+ "tslib": "^2.1.0"
50
+ }
51
+ },
52
+ "node_modules/@formatjs/icu-messageformat-parser": {
53
+ "version": "2.1.0",
54
+ "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.1.0.tgz",
55
+ "integrity": "sha512-Qxv/lmCN6hKpBSss2uQ8IROVnta2r9jd3ymUEIjm2UyIkUCHVcbUVRGL/KS/wv7876edvsPe+hjHVJ4z8YuVaw==",
56
+ "dependencies": {
57
+ "@formatjs/ecma402-abstract": "1.11.4",
58
+ "@formatjs/icu-skeleton-parser": "1.3.6",
59
+ "tslib": "^2.1.0"
60
+ }
61
+ },
62
+ "node_modules/@formatjs/icu-skeleton-parser": {
63
+ "version": "1.3.6",
64
+ "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.3.6.tgz",
65
+ "integrity": "sha512-I96mOxvml/YLrwU2Txnd4klA7V8fRhb6JG/4hm3VMNmeJo1F03IpV2L3wWt7EweqNLES59SZ4d6hVOPCSf80Bg==",
66
+ "dependencies": {
67
+ "@formatjs/ecma402-abstract": "1.11.4",
68
+ "tslib": "^2.1.0"
69
+ }
70
+ },
71
+ "node_modules/@formatjs/intl-localematcher": {
72
+ "version": "0.2.25",
73
+ "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.2.25.tgz",
74
+ "integrity": "sha512-YmLcX70BxoSopLFdLr1Ds99NdlTI2oWoLbaUW2M406lxOIPzE1KQhRz2fPUkq34xVZQaihCoU29h0KK7An3bhA==",
75
+ "dependencies": {
76
+ "tslib": "^2.1.0"
77
+ }
78
+ },
79
+ "node_modules/@gradio/atoms": {
80
+ "version": "0.2.0",
81
+ "resolved": "https://registry.npmjs.org/@gradio/atoms/-/atoms-0.2.0.tgz",
82
+ "integrity": "sha512-7pTXJTZv+KECtTG9vqeq9j7vz5OKkp+TRvh+O4yMbtkvxFEbhYaaUngkWFX26btGiveD+V4RG4qrP17jqpSdGA==",
83
+ "dependencies": {
84
+ "@gradio/icons": "^0.2.0",
85
+ "@gradio/utils": "^0.2.0"
86
+ }
87
+ },
88
+ "node_modules/@gradio/column": {
89
+ "version": "0.1.0",
90
+ "resolved": "https://registry.npmjs.org/@gradio/column/-/column-0.1.0.tgz",
91
+ "integrity": "sha512-P24nqqVnMXBaDA1f/zSN5HZRho4PxP8Dq+7VltPHlmxIEiZYik2AJ4J0LeuIha34FDO0guu/16evdrpvGIUAfw=="
92
+ },
93
+ "node_modules/@gradio/icons": {
94
+ "version": "0.2.0",
95
+ "resolved": "https://registry.npmjs.org/@gradio/icons/-/icons-0.2.0.tgz",
96
+ "integrity": "sha512-rfCSmOF+ALqBOjTWL1ICasyA8JuO0MPwFrtlVMyAWp7R14AN8YChC/gbz5fZ0kNBiGGEYOOfqpKxyvC95jGGlg=="
97
+ },
98
+ "node_modules/@gradio/statustracker": {
99
+ "version": "0.3.0",
100
+ "resolved": "https://registry.npmjs.org/@gradio/statustracker/-/statustracker-0.3.0.tgz",
101
+ "integrity": "sha512-8F3ezqPoGpq7B0EFYGVJkiYOrXCJLMEBcjLTOk2NeM2tXUoOCTieSvJEOstLzM0KkHwY7FvVrc3Dn5iqfIq2lQ==",
102
+ "dependencies": {
103
+ "@gradio/atoms": "^0.2.0",
104
+ "@gradio/column": "^0.1.0",
105
+ "@gradio/icons": "^0.2.0",
106
+ "@gradio/utils": "^0.2.0"
107
+ }
108
+ },
109
+ "node_modules/@gradio/theme": {
110
+ "version": "0.2.0",
111
+ "resolved": "https://registry.npmjs.org/@gradio/theme/-/theme-0.2.0.tgz",
112
+ "integrity": "sha512-33c68Nk7oRXLn08OxPfjcPm7S4tXGOUV1I1bVgzdM2YV5o1QBOS1GEnXPZPu/CEYPePLMB6bsDwffrLEyLGWVQ=="
113
+ },
114
+ "node_modules/@gradio/utils": {
115
+ "version": "0.2.0",
116
+ "resolved": "https://registry.npmjs.org/@gradio/utils/-/utils-0.2.0.tgz",
117
+ "integrity": "sha512-YkwzXufi6IxQrlMW+1sFo8Yn6F9NLL69ZoBsbo7QEhms0v5L7pmOTw+dfd7M3dwbRP2lgjrb52i1kAIN3n6aqQ==",
118
+ "dependencies": {
119
+ "@gradio/theme": "^0.2.0",
120
+ "svelte-i18n": "^3.6.0"
121
+ }
122
+ },
123
+ "node_modules/@jridgewell/gen-mapping": {
124
+ "version": "0.3.3",
125
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
126
+ "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
127
+ "peer": true,
128
+ "dependencies": {
129
+ "@jridgewell/set-array": "^1.0.1",
130
+ "@jridgewell/sourcemap-codec": "^1.4.10",
131
+ "@jridgewell/trace-mapping": "^0.3.9"
132
+ },
133
+ "engines": {
134
+ "node": ">=6.0.0"
135
+ }
136
+ },
137
+ "node_modules/@jridgewell/resolve-uri": {
138
+ "version": "3.1.1",
139
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz",
140
+ "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==",
141
+ "peer": true,
142
+ "engines": {
143
+ "node": ">=6.0.0"
144
+ }
145
+ },
146
+ "node_modules/@jridgewell/set-array": {
147
+ "version": "1.1.2",
148
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
149
+ "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
150
+ "peer": true,
151
+ "engines": {
152
+ "node": ">=6.0.0"
153
+ }
154
+ },
155
+ "node_modules/@jridgewell/sourcemap-codec": {
156
+ "version": "1.4.15",
157
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
158
+ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
159
+ "peer": true
160
+ },
161
+ "node_modules/@jridgewell/trace-mapping": {
162
+ "version": "0.3.20",
163
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz",
164
+ "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==",
165
+ "peer": true,
166
+ "dependencies": {
167
+ "@jridgewell/resolve-uri": "^3.1.0",
168
+ "@jridgewell/sourcemap-codec": "^1.4.14"
169
+ }
170
+ },
171
+ "node_modules/@types/estree": {
172
+ "version": "1.0.4",
173
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.4.tgz",
174
+ "integrity": "sha512-2JwWnHK9H+wUZNorf2Zr6ves96WHoWDJIftkcxPKsS7Djta6Zu519LarhRNljPXkpsZR2ZMwNCPeW7omW07BJw==",
175
+ "peer": true
176
+ },
177
+ "node_modules/@zerodevx/svelte-json-view": {
178
+ "version": "1.0.7",
179
+ "resolved": "https://registry.npmjs.org/@zerodevx/svelte-json-view/-/svelte-json-view-1.0.7.tgz",
180
+ "integrity": "sha512-yW0MV+9BCKOwzt3h86y3xDqYdI5st+Rxk+L5pa0Utq7nlPD+VvxyhL7R1gJoLxQvWwjyAvY/fyUCFTdwDyI14w==",
181
+ "peerDependencies": {
182
+ "svelte": "^3.57.0 || ^4.0.0"
183
+ }
184
+ },
185
+ "node_modules/acorn": {
186
+ "version": "8.11.2",
187
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz",
188
+ "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==",
189
+ "peer": true,
190
+ "bin": {
191
+ "acorn": "bin/acorn"
192
+ },
193
+ "engines": {
194
+ "node": ">=0.4.0"
195
+ }
196
+ },
197
+ "node_modules/aria-query": {
198
+ "version": "5.3.0",
199
+ "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
200
+ "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
201
+ "peer": true,
202
+ "dependencies": {
203
+ "dequal": "^2.0.3"
204
+ }
205
+ },
206
+ "node_modules/axobject-query": {
207
+ "version": "3.2.1",
208
+ "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz",
209
+ "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==",
210
+ "peer": true,
211
+ "dependencies": {
212
+ "dequal": "^2.0.3"
213
+ }
214
+ },
215
+ "node_modules/cli-color": {
216
+ "version": "2.0.3",
217
+ "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-2.0.3.tgz",
218
+ "integrity": "sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==",
219
+ "dependencies": {
220
+ "d": "^1.0.1",
221
+ "es5-ext": "^0.10.61",
222
+ "es6-iterator": "^2.0.3",
223
+ "memoizee": "^0.4.15",
224
+ "timers-ext": "^0.1.7"
225
+ },
226
+ "engines": {
227
+ "node": ">=0.10"
228
+ }
229
+ },
230
+ "node_modules/code-red": {
231
+ "version": "1.0.4",
232
+ "resolved": "https://registry.npmjs.org/code-red/-/code-red-1.0.4.tgz",
233
+ "integrity": "sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==",
234
+ "peer": true,
235
+ "dependencies": {
236
+ "@jridgewell/sourcemap-codec": "^1.4.15",
237
+ "@types/estree": "^1.0.1",
238
+ "acorn": "^8.10.0",
239
+ "estree-walker": "^3.0.3",
240
+ "periscopic": "^3.1.0"
241
+ }
242
+ },
243
+ "node_modules/css-tree": {
244
+ "version": "2.3.1",
245
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz",
246
+ "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
247
+ "peer": true,
248
+ "dependencies": {
249
+ "mdn-data": "2.0.30",
250
+ "source-map-js": "^1.0.1"
251
+ },
252
+ "engines": {
253
+ "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
254
+ }
255
+ },
256
+ "node_modules/d": {
257
+ "version": "1.0.1",
258
+ "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
259
+ "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
260
+ "dependencies": {
261
+ "es5-ext": "^0.10.50",
262
+ "type": "^1.0.1"
263
+ }
264
+ },
265
+ "node_modules/deepmerge": {
266
+ "version": "4.3.1",
267
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
268
+ "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
269
+ "engines": {
270
+ "node": ">=0.10.0"
271
+ }
272
+ },
273
+ "node_modules/dequal": {
274
+ "version": "2.0.3",
275
+ "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
276
+ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
277
+ "peer": true,
278
+ "engines": {
279
+ "node": ">=6"
280
+ }
281
+ },
282
+ "node_modules/es5-ext": {
283
+ "version": "0.10.62",
284
+ "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz",
285
+ "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==",
286
+ "hasInstallScript": true,
287
+ "dependencies": {
288
+ "es6-iterator": "^2.0.3",
289
+ "es6-symbol": "^3.1.3",
290
+ "next-tick": "^1.1.0"
291
+ },
292
+ "engines": {
293
+ "node": ">=0.10"
294
+ }
295
+ },
296
+ "node_modules/es6-iterator": {
297
+ "version": "2.0.3",
298
+ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
299
+ "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==",
300
+ "dependencies": {
301
+ "d": "1",
302
+ "es5-ext": "^0.10.35",
303
+ "es6-symbol": "^3.1.1"
304
+ }
305
+ },
306
+ "node_modules/es6-symbol": {
307
+ "version": "3.1.3",
308
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
309
+ "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
310
+ "dependencies": {
311
+ "d": "^1.0.1",
312
+ "ext": "^1.1.2"
313
+ }
314
+ },
315
+ "node_modules/es6-weak-map": {
316
+ "version": "2.0.3",
317
+ "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz",
318
+ "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==",
319
+ "dependencies": {
320
+ "d": "1",
321
+ "es5-ext": "^0.10.46",
322
+ "es6-iterator": "^2.0.3",
323
+ "es6-symbol": "^3.1.1"
324
+ }
325
+ },
326
+ "node_modules/esbuild": {
327
+ "version": "0.19.5",
328
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz",
329
+ "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==",
330
+ "hasInstallScript": true,
331
+ "bin": {
332
+ "esbuild": "bin/esbuild"
333
+ },
334
+ "engines": {
335
+ "node": ">=12"
336
+ },
337
+ "optionalDependencies": {
338
+ "@esbuild/android-arm": "0.19.5",
339
+ "@esbuild/android-arm64": "0.19.5",
340
+ "@esbuild/android-x64": "0.19.5",
341
+ "@esbuild/darwin-arm64": "0.19.5",
342
+ "@esbuild/darwin-x64": "0.19.5",
343
+ "@esbuild/freebsd-arm64": "0.19.5",
344
+ "@esbuild/freebsd-x64": "0.19.5",
345
+ "@esbuild/linux-arm": "0.19.5",
346
+ "@esbuild/linux-arm64": "0.19.5",
347
+ "@esbuild/linux-ia32": "0.19.5",
348
+ "@esbuild/linux-loong64": "0.19.5",
349
+ "@esbuild/linux-mips64el": "0.19.5",
350
+ "@esbuild/linux-ppc64": "0.19.5",
351
+ "@esbuild/linux-riscv64": "0.19.5",
352
+ "@esbuild/linux-s390x": "0.19.5",
353
+ "@esbuild/linux-x64": "0.19.5",
354
+ "@esbuild/netbsd-x64": "0.19.5",
355
+ "@esbuild/openbsd-x64": "0.19.5",
356
+ "@esbuild/sunos-x64": "0.19.5",
357
+ "@esbuild/win32-arm64": "0.19.5",
358
+ "@esbuild/win32-ia32": "0.19.5",
359
+ "@esbuild/win32-x64": "0.19.5"
360
+ }
361
+ },
362
+ "node_modules/estree-walker": {
363
+ "version": "3.0.3",
364
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
365
+ "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
366
+ "peer": true,
367
+ "dependencies": {
368
+ "@types/estree": "^1.0.0"
369
+ }
370
+ },
371
+ "node_modules/event-emitter": {
372
+ "version": "0.3.5",
373
+ "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
374
+ "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==",
375
+ "dependencies": {
376
+ "d": "1",
377
+ "es5-ext": "~0.10.14"
378
+ }
379
+ },
380
+ "node_modules/ext": {
381
+ "version": "1.7.0",
382
+ "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz",
383
+ "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==",
384
+ "dependencies": {
385
+ "type": "^2.7.2"
386
+ }
387
+ },
388
+ "node_modules/ext/node_modules/type": {
389
+ "version": "2.7.2",
390
+ "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz",
391
+ "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw=="
392
+ },
393
+ "node_modules/globalyzer": {
394
+ "version": "0.1.0",
395
+ "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz",
396
+ "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q=="
397
+ },
398
+ "node_modules/globrex": {
399
+ "version": "0.1.2",
400
+ "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz",
401
+ "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg=="
402
+ },
403
+ "node_modules/intl-messageformat": {
404
+ "version": "9.13.0",
405
+ "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-9.13.0.tgz",
406
+ "integrity": "sha512-7sGC7QnSQGa5LZP7bXLDhVDtQOeKGeBFGHF2Y8LVBwYZoQZCgWeKoPGTa5GMG8g/TzDgeXuYJQis7Ggiw2xTOw==",
407
+ "dependencies": {
408
+ "@formatjs/ecma402-abstract": "1.11.4",
409
+ "@formatjs/fast-memoize": "1.2.1",
410
+ "@formatjs/icu-messageformat-parser": "2.1.0",
411
+ "tslib": "^2.1.0"
412
+ }
413
+ },
414
+ "node_modules/is-promise": {
415
+ "version": "2.2.2",
416
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz",
417
+ "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ=="
418
+ },
419
+ "node_modules/is-reference": {
420
+ "version": "3.0.2",
421
+ "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz",
422
+ "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==",
423
+ "peer": true,
424
+ "dependencies": {
425
+ "@types/estree": "*"
426
+ }
427
+ },
428
+ "node_modules/locate-character": {
429
+ "version": "3.0.0",
430
+ "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz",
431
+ "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==",
432
+ "peer": true
433
+ },
434
+ "node_modules/lru-queue": {
435
+ "version": "0.1.0",
436
+ "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz",
437
+ "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==",
438
+ "dependencies": {
439
+ "es5-ext": "~0.10.2"
440
+ }
441
+ },
442
+ "node_modules/magic-string": {
443
+ "version": "0.30.5",
444
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz",
445
+ "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==",
446
+ "peer": true,
447
+ "dependencies": {
448
+ "@jridgewell/sourcemap-codec": "^1.4.15"
449
+ },
450
+ "engines": {
451
+ "node": ">=12"
452
+ }
453
+ },
454
+ "node_modules/mdn-data": {
455
+ "version": "2.0.30",
456
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz",
457
+ "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==",
458
+ "peer": true
459
+ },
460
+ "node_modules/memoizee": {
461
+ "version": "0.4.15",
462
+ "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz",
463
+ "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==",
464
+ "dependencies": {
465
+ "d": "^1.0.1",
466
+ "es5-ext": "^0.10.53",
467
+ "es6-weak-map": "^2.0.3",
468
+ "event-emitter": "^0.3.5",
469
+ "is-promise": "^2.2.2",
470
+ "lru-queue": "^0.1.0",
471
+ "next-tick": "^1.1.0",
472
+ "timers-ext": "^0.1.7"
473
+ }
474
+ },
475
+ "node_modules/mri": {
476
+ "version": "1.2.0",
477
+ "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
478
+ "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
479
+ "engines": {
480
+ "node": ">=4"
481
+ }
482
+ },
483
+ "node_modules/next-tick": {
484
+ "version": "1.1.0",
485
+ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
486
+ "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
487
+ },
488
+ "node_modules/periscopic": {
489
+ "version": "3.1.0",
490
+ "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz",
491
+ "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==",
492
+ "peer": true,
493
+ "dependencies": {
494
+ "@types/estree": "^1.0.0",
495
+ "estree-walker": "^3.0.0",
496
+ "is-reference": "^3.0.0"
497
+ }
498
+ },
499
+ "node_modules/sade": {
500
+ "version": "1.8.1",
501
+ "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
502
+ "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
503
+ "dependencies": {
504
+ "mri": "^1.1.0"
505
+ },
506
+ "engines": {
507
+ "node": ">=6"
508
+ }
509
+ },
510
+ "node_modules/source-map-js": {
511
+ "version": "1.0.2",
512
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
513
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
514
+ "peer": true,
515
+ "engines": {
516
+ "node": ">=0.10.0"
517
+ }
518
+ },
519
+ "node_modules/svelte": {
520
+ "version": "4.2.2",
521
+ "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.2.2.tgz",
522
+ "integrity": "sha512-My2tytF2e2NnHSpn2M7/3VdXT4JdTglYVUuSuK/mXL2XtulPYbeBfl8Dm1QiaKRn0zoULRnL+EtfZHHP0k4H3A==",
523
+ "peer": true,
524
+ "dependencies": {
525
+ "@ampproject/remapping": "^2.2.1",
526
+ "@jridgewell/sourcemap-codec": "^1.4.15",
527
+ "@jridgewell/trace-mapping": "^0.3.18",
528
+ "acorn": "^8.9.0",
529
+ "aria-query": "^5.3.0",
530
+ "axobject-query": "^3.2.1",
531
+ "code-red": "^1.0.3",
532
+ "css-tree": "^2.3.1",
533
+ "estree-walker": "^3.0.3",
534
+ "is-reference": "^3.0.1",
535
+ "locate-character": "^3.0.0",
536
+ "magic-string": "^0.30.4",
537
+ "periscopic": "^3.1.0"
538
+ },
539
+ "engines": {
540
+ "node": ">=16"
541
+ }
542
+ },
543
+ "node_modules/svelte-i18n": {
544
+ "version": "3.7.4",
545
+ "resolved": "https://registry.npmjs.org/svelte-i18n/-/svelte-i18n-3.7.4.tgz",
546
+ "integrity": "sha512-yGRCNo+eBT4cPuU7IVsYTYjxB7I2V8qgUZPlHnNctJj5IgbJgV78flsRzpjZ/8iUYZrS49oCt7uxlU3AZv/N5Q==",
547
+ "dependencies": {
548
+ "cli-color": "^2.0.3",
549
+ "deepmerge": "^4.2.2",
550
+ "esbuild": "^0.19.2",
551
+ "estree-walker": "^2",
552
+ "intl-messageformat": "^9.13.0",
553
+ "sade": "^1.8.1",
554
+ "tiny-glob": "^0.2.9"
555
+ },
556
+ "bin": {
557
+ "svelte-i18n": "dist/cli.js"
558
+ },
559
+ "engines": {
560
+ "node": ">= 16"
561
+ },
562
+ "peerDependencies": {
563
+ "svelte": "^3 || ^4"
564
+ }
565
+ },
566
+ "node_modules/svelte-i18n/node_modules/estree-walker": {
567
+ "version": "2.0.2",
568
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
569
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
570
+ },
571
+ "node_modules/timers-ext": {
572
+ "version": "0.1.7",
573
+ "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz",
574
+ "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==",
575
+ "dependencies": {
576
+ "es5-ext": "~0.10.46",
577
+ "next-tick": "1"
578
+ }
579
+ },
580
+ "node_modules/tiny-glob": {
581
+ "version": "0.2.9",
582
+ "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz",
583
+ "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==",
584
+ "dependencies": {
585
+ "globalyzer": "0.1.0",
586
+ "globrex": "^0.1.2"
587
+ }
588
+ },
589
+ "node_modules/tslib": {
590
+ "version": "2.6.2",
591
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
592
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
593
+ },
594
+ "node_modules/type": {
595
+ "version": "1.2.0",
596
+ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
597
+ "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
598
+ }
599
+ }
600
+ }
app/frontend/node_modules/@ampproject/remapping/LICENSE ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
178
+
179
+ APPENDIX: How to apply the Apache License to your work.
180
+
181
+ To apply the Apache License to your work, attach the following
182
+ boilerplate notice, with the fields enclosed by brackets "[]"
183
+ replaced with your own identifying information. (Don't include
184
+ the brackets!) The text should be enclosed in the appropriate
185
+ comment syntax for the file format. We also recommend that a
186
+ file or class name and description of purpose be included on the
187
+ same "printed page" as the copyright notice for easier
188
+ identification within third-party archives.
189
+
190
+ Copyright [yyyy] [name of copyright owner]
191
+
192
+ Licensed under the Apache License, Version 2.0 (the "License");
193
+ you may not use this file except in compliance with the License.
194
+ You may obtain a copy of the License at
195
+
196
+ http://www.apache.org/licenses/LICENSE-2.0
197
+
198
+ Unless required by applicable law or agreed to in writing, software
199
+ distributed under the License is distributed on an "AS IS" BASIS,
200
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
+ See the License for the specific language governing permissions and
202
+ limitations under the License.
app/frontend/node_modules/@ampproject/remapping/README.md ADDED
@@ -0,0 +1,218 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # @ampproject/remapping
2
+
3
+ > Remap sequential sourcemaps through transformations to point at the original source code
4
+
5
+ Remapping allows you to take the sourcemaps generated through transforming your code and "remap"
6
+ them to the original source locations. Think "my minified code, transformed with babel and bundled
7
+ with webpack", all pointing to the correct location in your original source code.
8
+
9
+ With remapping, none of your source code transformations need to be aware of the input's sourcemap,
10
+ they only need to generate an output sourcemap. This greatly simplifies building custom
11
+ transformations (think a find-and-replace).
12
+
13
+ ## Installation
14
+
15
+ ```sh
16
+ npm install @ampproject/remapping
17
+ ```
18
+
19
+ ## Usage
20
+
21
+ ```typescript
22
+ function remapping(
23
+ map: SourceMap | SourceMap[],
24
+ loader: (file: string, ctx: LoaderContext) => (SourceMap | null | undefined),
25
+ options?: { excludeContent: boolean, decodedMappings: boolean }
26
+ ): SourceMap;
27
+
28
+ // LoaderContext gives the loader the importing sourcemap, tree depth, the ability to override the
29
+ // "source" location (where child sources are resolved relative to, or the location of original
30
+ // source), and the ability to override the "content" of an original source for inclusion in the
31
+ // output sourcemap.
32
+ type LoaderContext = {
33
+ readonly importer: string;
34
+ readonly depth: number;
35
+ source: string;
36
+ content: string | null | undefined;
37
+ }
38
+ ```
39
+
40
+ `remapping` takes the final output sourcemap, and a `loader` function. For every source file pointer
41
+ in the sourcemap, the `loader` will be called with the resolved path. If the path itself represents
42
+ a transformed file (it has a sourcmap associated with it), then the `loader` should return that
43
+ sourcemap. If not, the path will be treated as an original, untransformed source code.
44
+
45
+ ```js
46
+ // Babel transformed "helloworld.js" into "transformed.js"
47
+ const transformedMap = JSON.stringify({
48
+ file: 'transformed.js',
49
+ // 1st column of 2nd line of output file translates into the 1st source
50
+ // file, line 3, column 2
51
+ mappings: ';CAEE',
52
+ sources: ['helloworld.js'],
53
+ version: 3,
54
+ });
55
+
56
+ // Uglify minified "transformed.js" into "transformed.min.js"
57
+ const minifiedTransformedMap = JSON.stringify({
58
+ file: 'transformed.min.js',
59
+ // 0th column of 1st line of output file translates into the 1st source
60
+ // file, line 2, column 1.
61
+ mappings: 'AACC',
62
+ names: [],
63
+ sources: ['transformed.js'],
64
+ version: 3,
65
+ });
66
+
67
+ const remapped = remapping(
68
+ minifiedTransformedMap,
69
+ (file, ctx) => {
70
+
71
+ // The "transformed.js" file is an transformed file.
72
+ if (file === 'transformed.js') {
73
+ // The root importer is empty.
74
+ console.assert(ctx.importer === '');
75
+ // The depth in the sourcemap tree we're currently loading.
76
+ // The root `minifiedTransformedMap` is depth 0, and its source children are depth 1, etc.
77
+ console.assert(ctx.depth === 1);
78
+
79
+ return transformedMap;
80
+ }
81
+
82
+ // Loader will be called to load transformedMap's source file pointers as well.
83
+ console.assert(file === 'helloworld.js');
84
+ // `transformed.js`'s sourcemap points into `helloworld.js`.
85
+ console.assert(ctx.importer === 'transformed.js');
86
+ // This is a source child of `transformed`, which is a source child of `minifiedTransformedMap`.
87
+ console.assert(ctx.depth === 2);
88
+ return null;
89
+ }
90
+ );
91
+
92
+ console.log(remapped);
93
+ // {
94
+ // file: 'transpiled.min.js',
95
+ // mappings: 'AAEE',
96
+ // sources: ['helloworld.js'],
97
+ // version: 3,
98
+ // };
99
+ ```
100
+
101
+ In this example, `loader` will be called twice:
102
+
103
+ 1. `"transformed.js"`, the first source file pointer in the `minifiedTransformedMap`. We return the
104
+ associated sourcemap for it (its a transformed file, after all) so that sourcemap locations can
105
+ be traced through it into the source files it represents.
106
+ 2. `"helloworld.js"`, our original, unmodified source code. This file does not have a sourcemap, so
107
+ we return `null`.
108
+
109
+ The `remapped` sourcemap now points from `transformed.min.js` into locations in `helloworld.js`. If
110
+ you were to read the `mappings`, it says "0th column of the first line output line points to the 1st
111
+ column of the 2nd line of the file `helloworld.js`".
112
+
113
+ ### Multiple transformations of a file
114
+
115
+ As a convenience, if you have multiple single-source transformations of a file, you may pass an
116
+ array of sourcemap files in the order of most-recent transformation sourcemap first. Note that this
117
+ changes the `importer` and `depth` of each call to our loader. So our above example could have been
118
+ written as:
119
+
120
+ ```js
121
+ const remapped = remapping(
122
+ [minifiedTransformedMap, transformedMap],
123
+ () => null
124
+ );
125
+
126
+ console.log(remapped);
127
+ // {
128
+ // file: 'transpiled.min.js',
129
+ // mappings: 'AAEE',
130
+ // sources: ['helloworld.js'],
131
+ // version: 3,
132
+ // };
133
+ ```
134
+
135
+ ### Advanced control of the loading graph
136
+
137
+ #### `source`
138
+
139
+ The `source` property can overridden to any value to change the location of the current load. Eg,
140
+ for an original source file, it allows us to change the location to the original source regardless
141
+ of what the sourcemap source entry says. And for transformed files, it allows us to change the
142
+ relative resolving location for child sources of the loaded sourcemap.
143
+
144
+ ```js
145
+ const remapped = remapping(
146
+ minifiedTransformedMap,
147
+ (file, ctx) => {
148
+
149
+ if (file === 'transformed.js') {
150
+ // We pretend the transformed.js file actually exists in the 'src/' directory. When the nested
151
+ // source files are loaded, they will now be relative to `src/`.
152
+ ctx.source = 'src/transformed.js';
153
+ return transformedMap;
154
+ }
155
+
156
+ console.assert(file === 'src/helloworld.js');
157
+ // We could futher change the source of this original file, eg, to be inside a nested directory
158
+ // itself. This will be reflected in the remapped sourcemap.
159
+ ctx.source = 'src/nested/transformed.js';
160
+ return null;
161
+ }
162
+ );
163
+
164
+ console.log(remapped);
165
+ // {
166
+ // …,
167
+ // sources: ['src/nested/helloworld.js'],
168
+ // };
169
+ ```
170
+
171
+
172
+ #### `content`
173
+
174
+ The `content` property can be overridden when we encounter an original source file. Eg, this allows
175
+ you to manually provide the source content of the original file regardless of whether the
176
+ `sourcesContent` field is present in the parent sourcemap. It can also be set to `null` to remove
177
+ the source content.
178
+
179
+ ```js
180
+ const remapped = remapping(
181
+ minifiedTransformedMap,
182
+ (file, ctx) => {
183
+
184
+ if (file === 'transformed.js') {
185
+ // transformedMap does not include a `sourcesContent` field, so usually the remapped sourcemap
186
+ // would not include any `sourcesContent` values.
187
+ return transformedMap;
188
+ }
189
+
190
+ console.assert(file === 'helloworld.js');
191
+ // We can read the file to provide the source content.
192
+ ctx.content = fs.readFileSync(file, 'utf8');
193
+ return null;
194
+ }
195
+ );
196
+
197
+ console.log(remapped);
198
+ // {
199
+ // …,
200
+ // sourcesContent: [
201
+ // 'console.log("Hello world!")',
202
+ // ],
203
+ // };
204
+ ```
205
+
206
+ ### Options
207
+
208
+ #### excludeContent
209
+
210
+ By default, `excludeContent` is `false`. Passing `{ excludeContent: true }` will exclude the
211
+ `sourcesContent` field from the returned sourcemap. This is mainly useful when you want to reduce
212
+ the size out the sourcemap.
213
+
214
+ #### decodedMappings
215
+
216
+ By default, `decodedMappings` is `false`. Passing `{ decodedMappings: true }` will leave the
217
+ `mappings` field in a [decoded state](https://github.com/rich-harris/sourcemap-codec) instead of
218
+ encoding into a VLQ string.
app/frontend/node_modules/@ampproject/remapping/dist/remapping.mjs ADDED
@@ -0,0 +1,191 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { decodedMappings, traceSegment, TraceMap } from '@jridgewell/trace-mapping';
2
+ import { GenMapping, maybeAddSegment, setSourceContent, toDecodedMap, toEncodedMap } from '@jridgewell/gen-mapping';
3
+
4
+ const SOURCELESS_MAPPING = /* #__PURE__ */ SegmentObject('', -1, -1, '', null);
5
+ const EMPTY_SOURCES = [];
6
+ function SegmentObject(source, line, column, name, content) {
7
+ return { source, line, column, name, content };
8
+ }
9
+ function Source(map, sources, source, content) {
10
+ return {
11
+ map,
12
+ sources,
13
+ source,
14
+ content,
15
+ };
16
+ }
17
+ /**
18
+ * MapSource represents a single sourcemap, with the ability to trace mappings into its child nodes
19
+ * (which may themselves be SourceMapTrees).
20
+ */
21
+ function MapSource(map, sources) {
22
+ return Source(map, sources, '', null);
23
+ }
24
+ /**
25
+ * A "leaf" node in the sourcemap tree, representing an original, unmodified source file. Recursive
26
+ * segment tracing ends at the `OriginalSource`.
27
+ */
28
+ function OriginalSource(source, content) {
29
+ return Source(null, EMPTY_SOURCES, source, content);
30
+ }
31
+ /**
32
+ * traceMappings is only called on the root level SourceMapTree, and begins the process of
33
+ * resolving each mapping in terms of the original source files.
34
+ */
35
+ function traceMappings(tree) {
36
+ // TODO: Eventually support sourceRoot, which has to be removed because the sources are already
37
+ // fully resolved. We'll need to make sources relative to the sourceRoot before adding them.
38
+ const gen = new GenMapping({ file: tree.map.file });
39
+ const { sources: rootSources, map } = tree;
40
+ const rootNames = map.names;
41
+ const rootMappings = decodedMappings(map);
42
+ for (let i = 0; i < rootMappings.length; i++) {
43
+ const segments = rootMappings[i];
44
+ for (let j = 0; j < segments.length; j++) {
45
+ const segment = segments[j];
46
+ const genCol = segment[0];
47
+ let traced = SOURCELESS_MAPPING;
48
+ // 1-length segments only move the current generated column, there's no source information
49
+ // to gather from it.
50
+ if (segment.length !== 1) {
51
+ const source = rootSources[segment[1]];
52
+ traced = originalPositionFor(source, segment[2], segment[3], segment.length === 5 ? rootNames[segment[4]] : '');
53
+ // If the trace is invalid, then the trace ran into a sourcemap that doesn't contain a
54
+ // respective segment into an original source.
55
+ if (traced == null)
56
+ continue;
57
+ }
58
+ const { column, line, name, content, source } = traced;
59
+ maybeAddSegment(gen, i, genCol, source, line, column, name);
60
+ if (source && content != null)
61
+ setSourceContent(gen, source, content);
62
+ }
63
+ }
64
+ return gen;
65
+ }
66
+ /**
67
+ * originalPositionFor is only called on children SourceMapTrees. It recurses down into its own
68
+ * child SourceMapTrees, until we find the original source map.
69
+ */
70
+ function originalPositionFor(source, line, column, name) {
71
+ if (!source.map) {
72
+ return SegmentObject(source.source, line, column, name, source.content);
73
+ }
74
+ const segment = traceSegment(source.map, line, column);
75
+ // If we couldn't find a segment, then this doesn't exist in the sourcemap.
76
+ if (segment == null)
77
+ return null;
78
+ // 1-length segments only move the current generated column, there's no source information
79
+ // to gather from it.
80
+ if (segment.length === 1)
81
+ return SOURCELESS_MAPPING;
82
+ return originalPositionFor(source.sources[segment[1]], segment[2], segment[3], segment.length === 5 ? source.map.names[segment[4]] : name);
83
+ }
84
+
85
+ function asArray(value) {
86
+ if (Array.isArray(value))
87
+ return value;
88
+ return [value];
89
+ }
90
+ /**
91
+ * Recursively builds a tree structure out of sourcemap files, with each node
92
+ * being either an `OriginalSource` "leaf" or a `SourceMapTree` composed of
93
+ * `OriginalSource`s and `SourceMapTree`s.
94
+ *
95
+ * Every sourcemap is composed of a collection of source files and mappings
96
+ * into locations of those source files. When we generate a `SourceMapTree` for
97
+ * the sourcemap, we attempt to load each source file's own sourcemap. If it
98
+ * does not have an associated sourcemap, it is considered an original,
99
+ * unmodified source file.
100
+ */
101
+ function buildSourceMapTree(input, loader) {
102
+ const maps = asArray(input).map((m) => new TraceMap(m, ''));
103
+ const map = maps.pop();
104
+ for (let i = 0; i < maps.length; i++) {
105
+ if (maps[i].sources.length > 1) {
106
+ throw new Error(`Transformation map ${i} must have exactly one source file.\n` +
107
+ 'Did you specify these with the most recent transformation maps first?');
108
+ }
109
+ }
110
+ let tree = build(map, loader, '', 0);
111
+ for (let i = maps.length - 1; i >= 0; i--) {
112
+ tree = MapSource(maps[i], [tree]);
113
+ }
114
+ return tree;
115
+ }
116
+ function build(map, loader, importer, importerDepth) {
117
+ const { resolvedSources, sourcesContent } = map;
118
+ const depth = importerDepth + 1;
119
+ const children = resolvedSources.map((sourceFile, i) => {
120
+ // The loading context gives the loader more information about why this file is being loaded
121
+ // (eg, from which importer). It also allows the loader to override the location of the loaded
122
+ // sourcemap/original source, or to override the content in the sourcesContent field if it's
123
+ // an unmodified source file.
124
+ const ctx = {
125
+ importer,
126
+ depth,
127
+ source: sourceFile || '',
128
+ content: undefined,
129
+ };
130
+ // Use the provided loader callback to retrieve the file's sourcemap.
131
+ // TODO: We should eventually support async loading of sourcemap files.
132
+ const sourceMap = loader(ctx.source, ctx);
133
+ const { source, content } = ctx;
134
+ // If there is a sourcemap, then we need to recurse into it to load its source files.
135
+ if (sourceMap)
136
+ return build(new TraceMap(sourceMap, source), loader, source, depth);
137
+ // Else, it's an an unmodified source file.
138
+ // The contents of this unmodified source file can be overridden via the loader context,
139
+ // allowing it to be explicitly null or a string. If it remains undefined, we fall back to
140
+ // the importing sourcemap's `sourcesContent` field.
141
+ const sourceContent = content !== undefined ? content : sourcesContent ? sourcesContent[i] : null;
142
+ return OriginalSource(source, sourceContent);
143
+ });
144
+ return MapSource(map, children);
145
+ }
146
+
147
+ /**
148
+ * A SourceMap v3 compatible sourcemap, which only includes fields that were
149
+ * provided to it.
150
+ */
151
+ class SourceMap {
152
+ constructor(map, options) {
153
+ const out = options.decodedMappings ? toDecodedMap(map) : toEncodedMap(map);
154
+ this.version = out.version; // SourceMap spec says this should be first.
155
+ this.file = out.file;
156
+ this.mappings = out.mappings;
157
+ this.names = out.names;
158
+ this.sourceRoot = out.sourceRoot;
159
+ this.sources = out.sources;
160
+ if (!options.excludeContent) {
161
+ this.sourcesContent = out.sourcesContent;
162
+ }
163
+ }
164
+ toString() {
165
+ return JSON.stringify(this);
166
+ }
167
+ }
168
+
169
+ /**
170
+ * Traces through all the mappings in the root sourcemap, through the sources
171
+ * (and their sourcemaps), all the way back to the original source location.
172
+ *
173
+ * `loader` will be called every time we encounter a source file. If it returns
174
+ * a sourcemap, we will recurse into that sourcemap to continue the trace. If
175
+ * it returns a falsey value, that source file is treated as an original,
176
+ * unmodified source file.
177
+ *
178
+ * Pass `excludeContent` to exclude any self-containing source file content
179
+ * from the output sourcemap.
180
+ *
181
+ * Pass `decodedMappings` to receive a SourceMap with decoded (instead of
182
+ * VLQ encoded) mappings.
183
+ */
184
+ function remapping(input, loader, options) {
185
+ const opts = typeof options === 'object' ? options : { excludeContent: !!options, decodedMappings: false };
186
+ const tree = buildSourceMapTree(input, loader);
187
+ return new SourceMap(traceMappings(tree), opts);
188
+ }
189
+
190
+ export { remapping as default };
191
+ //# sourceMappingURL=remapping.mjs.map
app/frontend/node_modules/@ampproject/remapping/dist/remapping.mjs.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"remapping.mjs","sources":["../src/source-map-tree.ts","../src/build-source-map-tree.ts","../src/source-map.ts","../src/remapping.ts"],"sourcesContent":["import { GenMapping, maybeAddSegment, setSourceContent } from '@jridgewell/gen-mapping';\nimport { traceSegment, decodedMappings } from '@jridgewell/trace-mapping';\n\nimport type { TraceMap } from '@jridgewell/trace-mapping';\n\nexport type SourceMapSegmentObject = {\n column: number;\n line: number;\n name: string;\n source: string;\n content: string | null;\n};\n\nexport type OriginalSource = {\n map: null;\n sources: Sources[];\n source: string;\n content: string | null;\n};\n\nexport type MapSource = {\n map: TraceMap;\n sources: Sources[];\n source: string;\n content: null;\n};\n\nexport type Sources = OriginalSource | MapSource;\n\nconst SOURCELESS_MAPPING = /* #__PURE__ */ SegmentObject('', -1, -1, '', null);\nconst EMPTY_SOURCES: Sources[] = [];\n\nfunction SegmentObject(\n source: string,\n line: number,\n column: number,\n name: string,\n content: string | null\n): SourceMapSegmentObject {\n return { source, line, column, name, content };\n}\n\nfunction Source(map: TraceMap, sources: Sources[], source: '', content: null): MapSource;\nfunction Source(\n map: null,\n sources: Sources[],\n source: string,\n content: string | null\n): OriginalSource;\nfunction Source(\n map: TraceMap | null,\n sources: Sources[],\n source: string | '',\n content: string | null\n): Sources {\n return {\n map,\n sources,\n source,\n content,\n } as any;\n}\n\n/**\n * MapSource represents a single sourcemap, with the ability to trace mappings into its child nodes\n * (which may themselves be SourceMapTrees).\n */\nexport function MapSource(map: TraceMap, sources: Sources[]): MapSource {\n return Source(map, sources, '', null);\n}\n\n/**\n * A \"leaf\" node in the sourcemap tree, representing an original, unmodified source file. Recursive\n * segment tracing ends at the `OriginalSource`.\n */\nexport function OriginalSource(source: string, content: string | null): OriginalSource {\n return Source(null, EMPTY_SOURCES, source, content);\n}\n\n/**\n * traceMappings is only called on the root level SourceMapTree, and begins the process of\n * resolving each mapping in terms of the original source files.\n */\nexport function traceMappings(tree: MapSource): GenMapping {\n // TODO: Eventually support sourceRoot, which has to be removed because the sources are already\n // fully resolved. We'll need to make sources relative to the sourceRoot before adding them.\n const gen = new GenMapping({ file: tree.map.file });\n const { sources: rootSources, map } = tree;\n const rootNames = map.names;\n const rootMappings = decodedMappings(map);\n\n for (let i = 0; i < rootMappings.length; i++) {\n const segments = rootMappings[i];\n\n for (let j = 0; j < segments.length; j++) {\n const segment = segments[j];\n const genCol = segment[0];\n let traced: SourceMapSegmentObject | null = SOURCELESS_MAPPING;\n\n // 1-length segments only move the current generated column, there's no source information\n // to gather from it.\n if (segment.length !== 1) {\n const source = rootSources[segment[1]];\n traced = originalPositionFor(\n source,\n segment[2],\n segment[3],\n segment.length === 5 ? rootNames[segment[4]] : ''\n );\n\n // If the trace is invalid, then the trace ran into a sourcemap that doesn't contain a\n // respective segment into an original source.\n if (traced == null) continue;\n }\n\n const { column, line, name, content, source } = traced;\n\n maybeAddSegment(gen, i, genCol, source, line, column, name);\n if (source && content != null) setSourceContent(gen, source, content);\n }\n }\n\n return gen;\n}\n\n/**\n * originalPositionFor is only called on children SourceMapTrees. It recurses down into its own\n * child SourceMapTrees, until we find the original source map.\n */\nexport function originalPositionFor(\n source: Sources,\n line: number,\n column: number,\n name: string\n): SourceMapSegmentObject | null {\n if (!source.map) {\n return SegmentObject(source.source, line, column, name, source.content);\n }\n\n const segment = traceSegment(source.map, line, column);\n\n // If we couldn't find a segment, then this doesn't exist in the sourcemap.\n if (segment == null) return null;\n // 1-length segments only move the current generated column, there's no source information\n // to gather from it.\n if (segment.length === 1) return SOURCELESS_MAPPING;\n\n return originalPositionFor(\n source.sources[segment[1]],\n segment[2],\n segment[3],\n segment.length === 5 ? source.map.names[segment[4]] : name\n );\n}\n","import { TraceMap } from '@jridgewell/trace-mapping';\n\nimport { OriginalSource, MapSource } from './source-map-tree';\n\nimport type { Sources, MapSource as MapSourceType } from './source-map-tree';\nimport type { SourceMapInput, SourceMapLoader, LoaderContext } from './types';\n\nfunction asArray<T>(value: T | T[]): T[] {\n if (Array.isArray(value)) return value;\n return [value];\n}\n\n/**\n * Recursively builds a tree structure out of sourcemap files, with each node\n * being either an `OriginalSource` \"leaf\" or a `SourceMapTree` composed of\n * `OriginalSource`s and `SourceMapTree`s.\n *\n * Every sourcemap is composed of a collection of source files and mappings\n * into locations of those source files. When we generate a `SourceMapTree` for\n * the sourcemap, we attempt to load each source file's own sourcemap. If it\n * does not have an associated sourcemap, it is considered an original,\n * unmodified source file.\n */\nexport default function buildSourceMapTree(\n input: SourceMapInput | SourceMapInput[],\n loader: SourceMapLoader\n): MapSourceType {\n const maps = asArray(input).map((m) => new TraceMap(m, ''));\n const map = maps.pop()!;\n\n for (let i = 0; i < maps.length; i++) {\n if (maps[i].sources.length > 1) {\n throw new Error(\n `Transformation map ${i} must have exactly one source file.\\n` +\n 'Did you specify these with the most recent transformation maps first?'\n );\n }\n }\n\n let tree = build(map, loader, '', 0);\n for (let i = maps.length - 1; i >= 0; i--) {\n tree = MapSource(maps[i], [tree]);\n }\n return tree;\n}\n\nfunction build(\n map: TraceMap,\n loader: SourceMapLoader,\n importer: string,\n importerDepth: number\n): MapSourceType {\n const { resolvedSources, sourcesContent } = map;\n\n const depth = importerDepth + 1;\n const children = resolvedSources.map((sourceFile: string | null, i: number): Sources => {\n // The loading context gives the loader more information about why this file is being loaded\n // (eg, from which importer). It also allows the loader to override the location of the loaded\n // sourcemap/original source, or to override the content in the sourcesContent field if it's\n // an unmodified source file.\n const ctx: LoaderContext = {\n importer,\n depth,\n source: sourceFile || '',\n content: undefined,\n };\n\n // Use the provided loader callback to retrieve the file's sourcemap.\n // TODO: We should eventually support async loading of sourcemap files.\n const sourceMap = loader(ctx.source, ctx);\n\n const { source, content } = ctx;\n\n // If there is a sourcemap, then we need to recurse into it to load its source files.\n if (sourceMap) return build(new TraceMap(sourceMap, source), loader, source, depth);\n\n // Else, it's an an unmodified source file.\n // The contents of this unmodified source file can be overridden via the loader context,\n // allowing it to be explicitly null or a string. If it remains undefined, we fall back to\n // the importing sourcemap's `sourcesContent` field.\n const sourceContent =\n content !== undefined ? content : sourcesContent ? sourcesContent[i] : null;\n return OriginalSource(source, sourceContent);\n });\n\n return MapSource(map, children);\n}\n","import { toDecodedMap, toEncodedMap } from '@jridgewell/gen-mapping';\n\nimport type { GenMapping } from '@jridgewell/gen-mapping';\nimport type { DecodedSourceMap, EncodedSourceMap, Options } from './types';\n\n/**\n * A SourceMap v3 compatible sourcemap, which only includes fields that were\n * provided to it.\n */\nexport default class SourceMap {\n declare file?: string | null;\n declare mappings: EncodedSourceMap['mappings'] | DecodedSourceMap['mappings'];\n declare sourceRoot?: string;\n declare names: string[];\n declare sources: (string | null)[];\n declare sourcesContent?: (string | null)[];\n declare version: 3;\n\n constructor(map: GenMapping, options: Options) {\n const out = options.decodedMappings ? toDecodedMap(map) : toEncodedMap(map);\n this.version = out.version; // SourceMap spec says this should be first.\n this.file = out.file;\n this.mappings = out.mappings as SourceMap['mappings'];\n this.names = out.names as SourceMap['names'];\n\n this.sourceRoot = out.sourceRoot;\n\n this.sources = out.sources as SourceMap['sources'];\n if (!options.excludeContent) {\n this.sourcesContent = out.sourcesContent as SourceMap['sourcesContent'];\n }\n }\n\n toString(): string {\n return JSON.stringify(this);\n }\n}\n","import buildSourceMapTree from './build-source-map-tree';\nimport { traceMappings } from './source-map-tree';\nimport SourceMap from './source-map';\n\nimport type { SourceMapInput, SourceMapLoader, Options } from './types';\nexport type {\n SourceMapSegment,\n EncodedSourceMap,\n EncodedSourceMap as RawSourceMap,\n DecodedSourceMap,\n SourceMapInput,\n SourceMapLoader,\n LoaderContext,\n Options,\n} from './types';\n\n/**\n * Traces through all the mappings in the root sourcemap, through the sources\n * (and their sourcemaps), all the way back to the original source location.\n *\n * `loader` will be called every time we encounter a source file. If it returns\n * a sourcemap, we will recurse into that sourcemap to continue the trace. If\n * it returns a falsey value, that source file is treated as an original,\n * unmodified source file.\n *\n * Pass `excludeContent` to exclude any self-containing source file content\n * from the output sourcemap.\n *\n * Pass `decodedMappings` to receive a SourceMap with decoded (instead of\n * VLQ encoded) mappings.\n */\nexport default function remapping(\n input: SourceMapInput | SourceMapInput[],\n loader: SourceMapLoader,\n options?: boolean | Options\n): SourceMap {\n const opts =\n typeof options === 'object' ? options : { excludeContent: !!options, decodedMappings: false };\n const tree = buildSourceMapTree(input, loader);\n return new SourceMap(traceMappings(tree), opts);\n}\n"],"names":[],"mappings":"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"}
app/frontend/node_modules/@ampproject/remapping/dist/remapping.umd.js ADDED
@@ -0,0 +1,196 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@jridgewell/trace-mapping'), require('@jridgewell/gen-mapping')) :
3
+ typeof define === 'function' && define.amd ? define(['@jridgewell/trace-mapping', '@jridgewell/gen-mapping'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.remapping = factory(global.traceMapping, global.genMapping));
5
+ })(this, (function (traceMapping, genMapping) { 'use strict';
6
+
7
+ const SOURCELESS_MAPPING = /* #__PURE__ */ SegmentObject('', -1, -1, '', null);
8
+ const EMPTY_SOURCES = [];
9
+ function SegmentObject(source, line, column, name, content) {
10
+ return { source, line, column, name, content };
11
+ }
12
+ function Source(map, sources, source, content) {
13
+ return {
14
+ map,
15
+ sources,
16
+ source,
17
+ content,
18
+ };
19
+ }
20
+ /**
21
+ * MapSource represents a single sourcemap, with the ability to trace mappings into its child nodes
22
+ * (which may themselves be SourceMapTrees).
23
+ */
24
+ function MapSource(map, sources) {
25
+ return Source(map, sources, '', null);
26
+ }
27
+ /**
28
+ * A "leaf" node in the sourcemap tree, representing an original, unmodified source file. Recursive
29
+ * segment tracing ends at the `OriginalSource`.
30
+ */
31
+ function OriginalSource(source, content) {
32
+ return Source(null, EMPTY_SOURCES, source, content);
33
+ }
34
+ /**
35
+ * traceMappings is only called on the root level SourceMapTree, and begins the process of
36
+ * resolving each mapping in terms of the original source files.
37
+ */
38
+ function traceMappings(tree) {
39
+ // TODO: Eventually support sourceRoot, which has to be removed because the sources are already
40
+ // fully resolved. We'll need to make sources relative to the sourceRoot before adding them.
41
+ const gen = new genMapping.GenMapping({ file: tree.map.file });
42
+ const { sources: rootSources, map } = tree;
43
+ const rootNames = map.names;
44
+ const rootMappings = traceMapping.decodedMappings(map);
45
+ for (let i = 0; i < rootMappings.length; i++) {
46
+ const segments = rootMappings[i];
47
+ for (let j = 0; j < segments.length; j++) {
48
+ const segment = segments[j];
49
+ const genCol = segment[0];
50
+ let traced = SOURCELESS_MAPPING;
51
+ // 1-length segments only move the current generated column, there's no source information
52
+ // to gather from it.
53
+ if (segment.length !== 1) {
54
+ const source = rootSources[segment[1]];
55
+ traced = originalPositionFor(source, segment[2], segment[3], segment.length === 5 ? rootNames[segment[4]] : '');
56
+ // If the trace is invalid, then the trace ran into a sourcemap that doesn't contain a
57
+ // respective segment into an original source.
58
+ if (traced == null)
59
+ continue;
60
+ }
61
+ const { column, line, name, content, source } = traced;
62
+ genMapping.maybeAddSegment(gen, i, genCol, source, line, column, name);
63
+ if (source && content != null)
64
+ genMapping.setSourceContent(gen, source, content);
65
+ }
66
+ }
67
+ return gen;
68
+ }
69
+ /**
70
+ * originalPositionFor is only called on children SourceMapTrees. It recurses down into its own
71
+ * child SourceMapTrees, until we find the original source map.
72
+ */
73
+ function originalPositionFor(source, line, column, name) {
74
+ if (!source.map) {
75
+ return SegmentObject(source.source, line, column, name, source.content);
76
+ }
77
+ const segment = traceMapping.traceSegment(source.map, line, column);
78
+ // If we couldn't find a segment, then this doesn't exist in the sourcemap.
79
+ if (segment == null)
80
+ return null;
81
+ // 1-length segments only move the current generated column, there's no source information
82
+ // to gather from it.
83
+ if (segment.length === 1)
84
+ return SOURCELESS_MAPPING;
85
+ return originalPositionFor(source.sources[segment[1]], segment[2], segment[3], segment.length === 5 ? source.map.names[segment[4]] : name);
86
+ }
87
+
88
+ function asArray(value) {
89
+ if (Array.isArray(value))
90
+ return value;
91
+ return [value];
92
+ }
93
+ /**
94
+ * Recursively builds a tree structure out of sourcemap files, with each node
95
+ * being either an `OriginalSource` "leaf" or a `SourceMapTree` composed of
96
+ * `OriginalSource`s and `SourceMapTree`s.
97
+ *
98
+ * Every sourcemap is composed of a collection of source files and mappings
99
+ * into locations of those source files. When we generate a `SourceMapTree` for
100
+ * the sourcemap, we attempt to load each source file's own sourcemap. If it
101
+ * does not have an associated sourcemap, it is considered an original,
102
+ * unmodified source file.
103
+ */
104
+ function buildSourceMapTree(input, loader) {
105
+ const maps = asArray(input).map((m) => new traceMapping.TraceMap(m, ''));
106
+ const map = maps.pop();
107
+ for (let i = 0; i < maps.length; i++) {
108
+ if (maps[i].sources.length > 1) {
109
+ throw new Error(`Transformation map ${i} must have exactly one source file.\n` +
110
+ 'Did you specify these with the most recent transformation maps first?');
111
+ }
112
+ }
113
+ let tree = build(map, loader, '', 0);
114
+ for (let i = maps.length - 1; i >= 0; i--) {
115
+ tree = MapSource(maps[i], [tree]);
116
+ }
117
+ return tree;
118
+ }
119
+ function build(map, loader, importer, importerDepth) {
120
+ const { resolvedSources, sourcesContent } = map;
121
+ const depth = importerDepth + 1;
122
+ const children = resolvedSources.map((sourceFile, i) => {
123
+ // The loading context gives the loader more information about why this file is being loaded
124
+ // (eg, from which importer). It also allows the loader to override the location of the loaded
125
+ // sourcemap/original source, or to override the content in the sourcesContent field if it's
126
+ // an unmodified source file.
127
+ const ctx = {
128
+ importer,
129
+ depth,
130
+ source: sourceFile || '',
131
+ content: undefined,
132
+ };
133
+ // Use the provided loader callback to retrieve the file's sourcemap.
134
+ // TODO: We should eventually support async loading of sourcemap files.
135
+ const sourceMap = loader(ctx.source, ctx);
136
+ const { source, content } = ctx;
137
+ // If there is a sourcemap, then we need to recurse into it to load its source files.
138
+ if (sourceMap)
139
+ return build(new traceMapping.TraceMap(sourceMap, source), loader, source, depth);
140
+ // Else, it's an an unmodified source file.
141
+ // The contents of this unmodified source file can be overridden via the loader context,
142
+ // allowing it to be explicitly null or a string. If it remains undefined, we fall back to
143
+ // the importing sourcemap's `sourcesContent` field.
144
+ const sourceContent = content !== undefined ? content : sourcesContent ? sourcesContent[i] : null;
145
+ return OriginalSource(source, sourceContent);
146
+ });
147
+ return MapSource(map, children);
148
+ }
149
+
150
+ /**
151
+ * A SourceMap v3 compatible sourcemap, which only includes fields that were
152
+ * provided to it.
153
+ */
154
+ class SourceMap {
155
+ constructor(map, options) {
156
+ const out = options.decodedMappings ? genMapping.toDecodedMap(map) : genMapping.toEncodedMap(map);
157
+ this.version = out.version; // SourceMap spec says this should be first.
158
+ this.file = out.file;
159
+ this.mappings = out.mappings;
160
+ this.names = out.names;
161
+ this.sourceRoot = out.sourceRoot;
162
+ this.sources = out.sources;
163
+ if (!options.excludeContent) {
164
+ this.sourcesContent = out.sourcesContent;
165
+ }
166
+ }
167
+ toString() {
168
+ return JSON.stringify(this);
169
+ }
170
+ }
171
+
172
+ /**
173
+ * Traces through all the mappings in the root sourcemap, through the sources
174
+ * (and their sourcemaps), all the way back to the original source location.
175
+ *
176
+ * `loader` will be called every time we encounter a source file. If it returns
177
+ * a sourcemap, we will recurse into that sourcemap to continue the trace. If
178
+ * it returns a falsey value, that source file is treated as an original,
179
+ * unmodified source file.
180
+ *
181
+ * Pass `excludeContent` to exclude any self-containing source file content
182
+ * from the output sourcemap.
183
+ *
184
+ * Pass `decodedMappings` to receive a SourceMap with decoded (instead of
185
+ * VLQ encoded) mappings.
186
+ */
187
+ function remapping(input, loader, options) {
188
+ const opts = typeof options === 'object' ? options : { excludeContent: !!options, decodedMappings: false };
189
+ const tree = buildSourceMapTree(input, loader);
190
+ return new SourceMap(traceMappings(tree), opts);
191
+ }
192
+
193
+ return remapping;
194
+
195
+ }));
196
+ //# sourceMappingURL=remapping.umd.js.map
app/frontend/node_modules/@ampproject/remapping/dist/remapping.umd.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"remapping.umd.js","sources":["../src/source-map-tree.ts","../src/build-source-map-tree.ts","../src/source-map.ts","../src/remapping.ts"],"sourcesContent":["import { GenMapping, maybeAddSegment, setSourceContent } from '@jridgewell/gen-mapping';\nimport { traceSegment, decodedMappings } from '@jridgewell/trace-mapping';\n\nimport type { TraceMap } from '@jridgewell/trace-mapping';\n\nexport type SourceMapSegmentObject = {\n column: number;\n line: number;\n name: string;\n source: string;\n content: string | null;\n};\n\nexport type OriginalSource = {\n map: null;\n sources: Sources[];\n source: string;\n content: string | null;\n};\n\nexport type MapSource = {\n map: TraceMap;\n sources: Sources[];\n source: string;\n content: null;\n};\n\nexport type Sources = OriginalSource | MapSource;\n\nconst SOURCELESS_MAPPING = /* #__PURE__ */ SegmentObject('', -1, -1, '', null);\nconst EMPTY_SOURCES: Sources[] = [];\n\nfunction SegmentObject(\n source: string,\n line: number,\n column: number,\n name: string,\n content: string | null\n): SourceMapSegmentObject {\n return { source, line, column, name, content };\n}\n\nfunction Source(map: TraceMap, sources: Sources[], source: '', content: null): MapSource;\nfunction Source(\n map: null,\n sources: Sources[],\n source: string,\n content: string | null\n): OriginalSource;\nfunction Source(\n map: TraceMap | null,\n sources: Sources[],\n source: string | '',\n content: string | null\n): Sources {\n return {\n map,\n sources,\n source,\n content,\n } as any;\n}\n\n/**\n * MapSource represents a single sourcemap, with the ability to trace mappings into its child nodes\n * (which may themselves be SourceMapTrees).\n */\nexport function MapSource(map: TraceMap, sources: Sources[]): MapSource {\n return Source(map, sources, '', null);\n}\n\n/**\n * A \"leaf\" node in the sourcemap tree, representing an original, unmodified source file. Recursive\n * segment tracing ends at the `OriginalSource`.\n */\nexport function OriginalSource(source: string, content: string | null): OriginalSource {\n return Source(null, EMPTY_SOURCES, source, content);\n}\n\n/**\n * traceMappings is only called on the root level SourceMapTree, and begins the process of\n * resolving each mapping in terms of the original source files.\n */\nexport function traceMappings(tree: MapSource): GenMapping {\n // TODO: Eventually support sourceRoot, which has to be removed because the sources are already\n // fully resolved. We'll need to make sources relative to the sourceRoot before adding them.\n const gen = new GenMapping({ file: tree.map.file });\n const { sources: rootSources, map } = tree;\n const rootNames = map.names;\n const rootMappings = decodedMappings(map);\n\n for (let i = 0; i < rootMappings.length; i++) {\n const segments = rootMappings[i];\n\n for (let j = 0; j < segments.length; j++) {\n const segment = segments[j];\n const genCol = segment[0];\n let traced: SourceMapSegmentObject | null = SOURCELESS_MAPPING;\n\n // 1-length segments only move the current generated column, there's no source information\n // to gather from it.\n if (segment.length !== 1) {\n const source = rootSources[segment[1]];\n traced = originalPositionFor(\n source,\n segment[2],\n segment[3],\n segment.length === 5 ? rootNames[segment[4]] : ''\n );\n\n // If the trace is invalid, then the trace ran into a sourcemap that doesn't contain a\n // respective segment into an original source.\n if (traced == null) continue;\n }\n\n const { column, line, name, content, source } = traced;\n\n maybeAddSegment(gen, i, genCol, source, line, column, name);\n if (source && content != null) setSourceContent(gen, source, content);\n }\n }\n\n return gen;\n}\n\n/**\n * originalPositionFor is only called on children SourceMapTrees. It recurses down into its own\n * child SourceMapTrees, until we find the original source map.\n */\nexport function originalPositionFor(\n source: Sources,\n line: number,\n column: number,\n name: string\n): SourceMapSegmentObject | null {\n if (!source.map) {\n return SegmentObject(source.source, line, column, name, source.content);\n }\n\n const segment = traceSegment(source.map, line, column);\n\n // If we couldn't find a segment, then this doesn't exist in the sourcemap.\n if (segment == null) return null;\n // 1-length segments only move the current generated column, there's no source information\n // to gather from it.\n if (segment.length === 1) return SOURCELESS_MAPPING;\n\n return originalPositionFor(\n source.sources[segment[1]],\n segment[2],\n segment[3],\n segment.length === 5 ? source.map.names[segment[4]] : name\n );\n}\n","import { TraceMap } from '@jridgewell/trace-mapping';\n\nimport { OriginalSource, MapSource } from './source-map-tree';\n\nimport type { Sources, MapSource as MapSourceType } from './source-map-tree';\nimport type { SourceMapInput, SourceMapLoader, LoaderContext } from './types';\n\nfunction asArray<T>(value: T | T[]): T[] {\n if (Array.isArray(value)) return value;\n return [value];\n}\n\n/**\n * Recursively builds a tree structure out of sourcemap files, with each node\n * being either an `OriginalSource` \"leaf\" or a `SourceMapTree` composed of\n * `OriginalSource`s and `SourceMapTree`s.\n *\n * Every sourcemap is composed of a collection of source files and mappings\n * into locations of those source files. When we generate a `SourceMapTree` for\n * the sourcemap, we attempt to load each source file's own sourcemap. If it\n * does not have an associated sourcemap, it is considered an original,\n * unmodified source file.\n */\nexport default function buildSourceMapTree(\n input: SourceMapInput | SourceMapInput[],\n loader: SourceMapLoader\n): MapSourceType {\n const maps = asArray(input).map((m) => new TraceMap(m, ''));\n const map = maps.pop()!;\n\n for (let i = 0; i < maps.length; i++) {\n if (maps[i].sources.length > 1) {\n throw new Error(\n `Transformation map ${i} must have exactly one source file.\\n` +\n 'Did you specify these with the most recent transformation maps first?'\n );\n }\n }\n\n let tree = build(map, loader, '', 0);\n for (let i = maps.length - 1; i >= 0; i--) {\n tree = MapSource(maps[i], [tree]);\n }\n return tree;\n}\n\nfunction build(\n map: TraceMap,\n loader: SourceMapLoader,\n importer: string,\n importerDepth: number\n): MapSourceType {\n const { resolvedSources, sourcesContent } = map;\n\n const depth = importerDepth + 1;\n const children = resolvedSources.map((sourceFile: string | null, i: number): Sources => {\n // The loading context gives the loader more information about why this file is being loaded\n // (eg, from which importer). It also allows the loader to override the location of the loaded\n // sourcemap/original source, or to override the content in the sourcesContent field if it's\n // an unmodified source file.\n const ctx: LoaderContext = {\n importer,\n depth,\n source: sourceFile || '',\n content: undefined,\n };\n\n // Use the provided loader callback to retrieve the file's sourcemap.\n // TODO: We should eventually support async loading of sourcemap files.\n const sourceMap = loader(ctx.source, ctx);\n\n const { source, content } = ctx;\n\n // If there is a sourcemap, then we need to recurse into it to load its source files.\n if (sourceMap) return build(new TraceMap(sourceMap, source), loader, source, depth);\n\n // Else, it's an an unmodified source file.\n // The contents of this unmodified source file can be overridden via the loader context,\n // allowing it to be explicitly null or a string. If it remains undefined, we fall back to\n // the importing sourcemap's `sourcesContent` field.\n const sourceContent =\n content !== undefined ? content : sourcesContent ? sourcesContent[i] : null;\n return OriginalSource(source, sourceContent);\n });\n\n return MapSource(map, children);\n}\n","import { toDecodedMap, toEncodedMap } from '@jridgewell/gen-mapping';\n\nimport type { GenMapping } from '@jridgewell/gen-mapping';\nimport type { DecodedSourceMap, EncodedSourceMap, Options } from './types';\n\n/**\n * A SourceMap v3 compatible sourcemap, which only includes fields that were\n * provided to it.\n */\nexport default class SourceMap {\n declare file?: string | null;\n declare mappings: EncodedSourceMap['mappings'] | DecodedSourceMap['mappings'];\n declare sourceRoot?: string;\n declare names: string[];\n declare sources: (string | null)[];\n declare sourcesContent?: (string | null)[];\n declare version: 3;\n\n constructor(map: GenMapping, options: Options) {\n const out = options.decodedMappings ? toDecodedMap(map) : toEncodedMap(map);\n this.version = out.version; // SourceMap spec says this should be first.\n this.file = out.file;\n this.mappings = out.mappings as SourceMap['mappings'];\n this.names = out.names as SourceMap['names'];\n\n this.sourceRoot = out.sourceRoot;\n\n this.sources = out.sources as SourceMap['sources'];\n if (!options.excludeContent) {\n this.sourcesContent = out.sourcesContent as SourceMap['sourcesContent'];\n }\n }\n\n toString(): string {\n return JSON.stringify(this);\n }\n}\n","import buildSourceMapTree from './build-source-map-tree';\nimport { traceMappings } from './source-map-tree';\nimport SourceMap from './source-map';\n\nimport type { SourceMapInput, SourceMapLoader, Options } from './types';\nexport type {\n SourceMapSegment,\n EncodedSourceMap,\n EncodedSourceMap as RawSourceMap,\n DecodedSourceMap,\n SourceMapInput,\n SourceMapLoader,\n LoaderContext,\n Options,\n} from './types';\n\n/**\n * Traces through all the mappings in the root sourcemap, through the sources\n * (and their sourcemaps), all the way back to the original source location.\n *\n * `loader` will be called every time we encounter a source file. If it returns\n * a sourcemap, we will recurse into that sourcemap to continue the trace. If\n * it returns a falsey value, that source file is treated as an original,\n * unmodified source file.\n *\n * Pass `excludeContent` to exclude any self-containing source file content\n * from the output sourcemap.\n *\n * Pass `decodedMappings` to receive a SourceMap with decoded (instead of\n * VLQ encoded) mappings.\n */\nexport default function remapping(\n input: SourceMapInput | SourceMapInput[],\n loader: SourceMapLoader,\n options?: boolean | Options\n): SourceMap {\n const opts =\n typeof options === 'object' ? options : { excludeContent: !!options, decodedMappings: false };\n const tree = buildSourceMapTree(input, loader);\n return new SourceMap(traceMappings(tree), opts);\n}\n"],"names":["GenMapping","decodedMappings","maybeAddSegment","setSourceContent","traceSegment","TraceMap","toDecodedMap","toEncodedMap"],"mappings":";;;;;;IA6BA,MAAM,kBAAkB,mBAAmB,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAc,EAAE,CAAC;IAEpC,SAAS,aAAa,CACpB,MAAc,EACd,IAAY,EACZ,MAAc,EACd,IAAY,EACZ,OAAsB,EAAA;QAEtB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACjD,CAAC;IASD,SAAS,MAAM,CACb,GAAoB,EACpB,OAAkB,EAClB,MAAmB,EACnB,OAAsB,EAAA;QAEtB,OAAO;YACL,GAAG;YACH,OAAO;YACP,MAAM;YACN,OAAO;SACD,CAAC;IACX,CAAC;IAED;;;IAGG;IACa,SAAA,SAAS,CAAC,GAAa,EAAE,OAAkB,EAAA;QACzD,OAAO,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;;IAGG;IACa,SAAA,cAAc,CAAC,MAAc,EAAE,OAAsB,EAAA;QACnE,OAAO,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;;IAGG;IACG,SAAU,aAAa,CAAC,IAAe,EAAA;;;IAG3C,IAAA,MAAM,GAAG,GAAG,IAAIA,qBAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACpD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3C,IAAA,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;IAC5B,IAAA,MAAM,YAAY,GAAGC,4BAAe,CAAC,GAAG,CAAC,CAAC;IAE1C,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IAC5C,QAAA,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAEjC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IACxC,YAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5B,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,MAAM,GAAkC,kBAAkB,CAAC;;;IAI/D,YAAA,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACxB,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,gBAAA,MAAM,GAAG,mBAAmB,CAC1B,MAAM,EACN,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,MAAM,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAClD,CAAC;;;oBAIF,IAAI,MAAM,IAAI,IAAI;wBAAE,SAAS;IAC9B,aAAA;IAED,YAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAEvD,YAAAC,0BAAe,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5D,YAAA,IAAI,MAAM,IAAI,OAAO,IAAI,IAAI;IAAE,gBAAAC,2BAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACvE,SAAA;IACF,KAAA;IAED,IAAA,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;IAGG;IACG,SAAU,mBAAmB,CACjC,MAAe,EACf,IAAY,EACZ,MAAc,EACd,IAAY,EAAA;IAEZ,IAAA,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;IACf,QAAA,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACzE,KAAA;IAED,IAAA,MAAM,OAAO,GAAGC,yBAAY,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;;QAGvD,IAAI,OAAO,IAAI,IAAI;IAAE,QAAA,OAAO,IAAI,CAAC;;;IAGjC,IAAA,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;IAAE,QAAA,OAAO,kBAAkB,CAAC;QAEpD,OAAO,mBAAmB,CACxB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAC1B,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAC3D,CAAC;IACJ;;IClJA,SAAS,OAAO,CAAI,KAAc,EAAA;IAChC,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IAAE,QAAA,OAAO,KAAK,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED;;;;;;;;;;IAUG;IACW,SAAU,kBAAkB,CACxC,KAAwC,EACxC,MAAuB,EAAA;QAEvB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAIC,qBAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5D,IAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAG,CAAC;IAExB,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;IAC9B,YAAA,MAAM,IAAI,KAAK,CACb,CAAA,mBAAA,EAAsB,CAAC,CAAuC,qCAAA,CAAA;IAC5D,gBAAA,uEAAuE,CAC1E,CAAC;IACH,SAAA;IACF,KAAA;IAED,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACrC,IAAA,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;IACzC,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACnC,KAAA;IACD,IAAA,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,KAAK,CACZ,GAAa,EACb,MAAuB,EACvB,QAAgB,EAChB,aAAqB,EAAA;IAErB,IAAA,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC;IAEhD,IAAA,MAAM,KAAK,GAAG,aAAa,GAAG,CAAC,CAAC;QAChC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,UAAyB,EAAE,CAAS,KAAa;;;;;IAKrF,QAAA,MAAM,GAAG,GAAkB;gBACzB,QAAQ;gBACR,KAAK;gBACL,MAAM,EAAE,UAAU,IAAI,EAAE;IACxB,YAAA,OAAO,EAAE,SAAS;aACnB,CAAC;;;YAIF,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE1C,QAAA,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;;IAGhC,QAAA,IAAI,SAAS;IAAE,YAAA,OAAO,KAAK,CAAC,IAAIA,qBAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;;;;;YAMpF,MAAM,aAAa,GACjB,OAAO,KAAK,SAAS,GAAG,OAAO,GAAG,cAAc,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9E,QAAA,OAAO,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC/C,KAAC,CAAC,CAAC;IAEH,IAAA,OAAO,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClC;;ICjFA;;;IAGG;IACW,MAAO,SAAS,CAAA;QAS5B,WAAY,CAAA,GAAe,EAAE,OAAgB,EAAA;IAC3C,QAAA,MAAM,GAAG,GAAG,OAAO,CAAC,eAAe,GAAGC,uBAAY,CAAC,GAAG,CAAC,GAAGC,uBAAY,CAAC,GAAG,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC3B,QAAA,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACrB,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAiC,CAAC;IACtD,QAAA,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAA2B,CAAC;IAE7C,QAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;IAEjC,QAAA,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAA+B,CAAC;IACnD,QAAA,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;IAC3B,YAAA,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,cAA6C,CAAC;IACzE,SAAA;SACF;QAED,QAAQ,GAAA;IACN,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SAC7B;IACF;;ICpBD;;;;;;;;;;;;;;IAcG;IACqB,SAAA,SAAS,CAC/B,KAAwC,EACxC,MAAuB,EACvB,OAA2B,EAAA;QAE3B,MAAM,IAAI,GACR,OAAO,OAAO,KAAK,QAAQ,GAAG,OAAO,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QAChG,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,OAAO,IAAI,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IAClD;;;;;;;;"}
app/frontend/node_modules/@ampproject/remapping/dist/types/build-source-map-tree.d.ts ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import type { MapSource as MapSourceType } from './source-map-tree';
2
+ import type { SourceMapInput, SourceMapLoader } from './types';
3
+ /**
4
+ * Recursively builds a tree structure out of sourcemap files, with each node
5
+ * being either an `OriginalSource` "leaf" or a `SourceMapTree` composed of
6
+ * `OriginalSource`s and `SourceMapTree`s.
7
+ *
8
+ * Every sourcemap is composed of a collection of source files and mappings
9
+ * into locations of those source files. When we generate a `SourceMapTree` for
10
+ * the sourcemap, we attempt to load each source file's own sourcemap. If it
11
+ * does not have an associated sourcemap, it is considered an original,
12
+ * unmodified source file.
13
+ */
14
+ export default function buildSourceMapTree(input: SourceMapInput | SourceMapInput[], loader: SourceMapLoader): MapSourceType;
app/frontend/node_modules/@ampproject/remapping/dist/types/remapping.d.ts ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import SourceMap from './source-map';
2
+ import type { SourceMapInput, SourceMapLoader, Options } from './types';
3
+ export type { SourceMapSegment, EncodedSourceMap, EncodedSourceMap as RawSourceMap, DecodedSourceMap, SourceMapInput, SourceMapLoader, LoaderContext, Options, } from './types';
4
+ /**
5
+ * Traces through all the mappings in the root sourcemap, through the sources
6
+ * (and their sourcemaps), all the way back to the original source location.
7
+ *
8
+ * `loader` will be called every time we encounter a source file. If it returns
9
+ * a sourcemap, we will recurse into that sourcemap to continue the trace. If
10
+ * it returns a falsey value, that source file is treated as an original,
11
+ * unmodified source file.
12
+ *
13
+ * Pass `excludeContent` to exclude any self-containing source file content
14
+ * from the output sourcemap.
15
+ *
16
+ * Pass `decodedMappings` to receive a SourceMap with decoded (instead of
17
+ * VLQ encoded) mappings.
18
+ */
19
+ export default function remapping(input: SourceMapInput | SourceMapInput[], loader: SourceMapLoader, options?: boolean | Options): SourceMap;
app/frontend/node_modules/@ampproject/remapping/dist/types/source-map-tree.d.ts ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { GenMapping } from '@jridgewell/gen-mapping';
2
+ import type { TraceMap } from '@jridgewell/trace-mapping';
3
+ export declare type SourceMapSegmentObject = {
4
+ column: number;
5
+ line: number;
6
+ name: string;
7
+ source: string;
8
+ content: string | null;
9
+ };
10
+ export declare type OriginalSource = {
11
+ map: null;
12
+ sources: Sources[];
13
+ source: string;
14
+ content: string | null;
15
+ };
16
+ export declare type MapSource = {
17
+ map: TraceMap;
18
+ sources: Sources[];
19
+ source: string;
20
+ content: null;
21
+ };
22
+ export declare type Sources = OriginalSource | MapSource;
23
+ /**
24
+ * MapSource represents a single sourcemap, with the ability to trace mappings into its child nodes
25
+ * (which may themselves be SourceMapTrees).
26
+ */
27
+ export declare function MapSource(map: TraceMap, sources: Sources[]): MapSource;
28
+ /**
29
+ * A "leaf" node in the sourcemap tree, representing an original, unmodified source file. Recursive
30
+ * segment tracing ends at the `OriginalSource`.
31
+ */
32
+ export declare function OriginalSource(source: string, content: string | null): OriginalSource;
33
+ /**
34
+ * traceMappings is only called on the root level SourceMapTree, and begins the process of
35
+ * resolving each mapping in terms of the original source files.
36
+ */
37
+ export declare function traceMappings(tree: MapSource): GenMapping;
38
+ /**
39
+ * originalPositionFor is only called on children SourceMapTrees. It recurses down into its own
40
+ * child SourceMapTrees, until we find the original source map.
41
+ */
42
+ export declare function originalPositionFor(source: Sources, line: number, column: number, name: string): SourceMapSegmentObject | null;
app/frontend/node_modules/@ampproject/remapping/dist/types/source-map.d.ts ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import type { GenMapping } from '@jridgewell/gen-mapping';
2
+ import type { DecodedSourceMap, EncodedSourceMap, Options } from './types';
3
+ /**
4
+ * A SourceMap v3 compatible sourcemap, which only includes fields that were
5
+ * provided to it.
6
+ */
7
+ export default class SourceMap {
8
+ file?: string | null;
9
+ mappings: EncodedSourceMap['mappings'] | DecodedSourceMap['mappings'];
10
+ sourceRoot?: string;
11
+ names: string[];
12
+ sources: (string | null)[];
13
+ sourcesContent?: (string | null)[];
14
+ version: 3;
15
+ constructor(map: GenMapping, options: Options);
16
+ toString(): string;
17
+ }
app/frontend/node_modules/@ampproject/remapping/dist/types/types.d.ts ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import type { SourceMapInput } from '@jridgewell/trace-mapping';
2
+ export type { SourceMapSegment, DecodedSourceMap, EncodedSourceMap, } from '@jridgewell/trace-mapping';
3
+ export type { SourceMapInput };
4
+ export declare type LoaderContext = {
5
+ readonly importer: string;
6
+ readonly depth: number;
7
+ source: string;
8
+ content: string | null | undefined;
9
+ };
10
+ export declare type SourceMapLoader = (file: string, ctx: LoaderContext) => SourceMapInput | null | undefined | void;
11
+ export declare type Options = {
12
+ excludeContent?: boolean;
13
+ decodedMappings?: boolean;
14
+ };
app/frontend/node_modules/@ampproject/remapping/package.json ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "@ampproject/remapping",
3
+ "version": "2.2.1",
4
+ "description": "Remap sequential sourcemaps through transformations to point at the original source code",
5
+ "keywords": [
6
+ "source",
7
+ "map",
8
+ "remap"
9
+ ],
10
+ "main": "dist/remapping.umd.js",
11
+ "module": "dist/remapping.mjs",
12
+ "types": "dist/types/remapping.d.ts",
13
+ "exports": {
14
+ ".": [
15
+ {
16
+ "types": "./dist/types/remapping.d.ts",
17
+ "browser": "./dist/remapping.umd.js",
18
+ "require": "./dist/remapping.umd.js",
19
+ "import": "./dist/remapping.mjs"
20
+ },
21
+ "./dist/remapping.umd.js"
22
+ ],
23
+ "./package.json": "./package.json"
24
+ },
25
+ "files": [
26
+ "dist"
27
+ ],
28
+ "author": "Justin Ridgewell <[email protected]>",
29
+ "repository": {
30
+ "type": "git",
31
+ "url": "git+https://github.com/ampproject/remapping.git"
32
+ },
33
+ "license": "Apache-2.0",
34
+ "engines": {
35
+ "node": ">=6.0.0"
36
+ },
37
+ "scripts": {
38
+ "build": "run-s -n build:*",
39
+ "build:rollup": "rollup -c rollup.config.js",
40
+ "build:ts": "tsc --project tsconfig.build.json",
41
+ "lint": "run-s -n lint:*",
42
+ "lint:prettier": "npm run test:lint:prettier -- --write",
43
+ "lint:ts": "npm run test:lint:ts -- --fix",
44
+ "prebuild": "rm -rf dist",
45
+ "prepublishOnly": "npm run preversion",
46
+ "preversion": "run-s test build",
47
+ "test": "run-s -n test:lint test:only",
48
+ "test:debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
49
+ "test:lint": "run-s -n test:lint:*",
50
+ "test:lint:prettier": "prettier --check '{src,test}/**/*.ts'",
51
+ "test:lint:ts": "eslint '{src,test}/**/*.ts'",
52
+ "test:only": "jest --coverage",
53
+ "test:watch": "jest --coverage --watch"
54
+ },
55
+ "devDependencies": {
56
+ "@rollup/plugin-typescript": "8.3.2",
57
+ "@types/jest": "27.4.1",
58
+ "@typescript-eslint/eslint-plugin": "5.20.0",
59
+ "@typescript-eslint/parser": "5.20.0",
60
+ "eslint": "8.14.0",
61
+ "eslint-config-prettier": "8.5.0",
62
+ "jest": "27.5.1",
63
+ "jest-config": "27.5.1",
64
+ "npm-run-all": "4.1.5",
65
+ "prettier": "2.6.2",
66
+ "rollup": "2.70.2",
67
+ "ts-jest": "27.1.4",
68
+ "tslib": "2.4.0",
69
+ "typescript": "4.6.3"
70
+ },
71
+ "dependencies": {
72
+ "@jridgewell/gen-mapping": "^0.3.0",
73
+ "@jridgewell/trace-mapping": "^0.3.9"
74
+ }
75
+ }
app/frontend/node_modules/@esbuild/linux-x64/README.md ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ # esbuild
2
+
3
+ This is the Linux 64-bit binary for esbuild, a JavaScript bundler and minifier. See https://github.com/evanw/esbuild for details.
app/frontend/node_modules/@esbuild/linux-x64/bin/esbuild ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f5e95cf71da076b05263e9109f9aa0bd8e7b55e8ac8f1c4bf32e6eab444fcfab
3
+ size 9424896
app/frontend/node_modules/@esbuild/linux-x64/package.json ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "@esbuild/linux-x64",
3
+ "version": "0.19.5",
4
+ "description": "The Linux 64-bit binary for esbuild, a JavaScript bundler.",
5
+ "repository": "https://github.com/evanw/esbuild",
6
+ "license": "MIT",
7
+ "preferUnplugged": true,
8
+ "engines": {
9
+ "node": ">=12"
10
+ },
11
+ "os": [
12
+ "linux"
13
+ ],
14
+ "cpu": [
15
+ "x64"
16
+ ]
17
+ }
app/frontend/node_modules/@formatjs/ecma402-abstract/262.d.ts ADDED
@@ -0,0 +1,92 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * https://tc39.es/ecma262/#sec-tostring
3
+ */
4
+ export declare function ToString(o: unknown): string;
5
+ /**
6
+ * https://tc39.es/ecma262/#sec-tonumber
7
+ * @param val
8
+ */
9
+ export declare function ToNumber(val: any): number;
10
+ /**
11
+ * https://tc39.es/ecma262/#sec-timeclip
12
+ * @param time
13
+ */
14
+ export declare function TimeClip(time: number): number;
15
+ /**
16
+ * https://tc39.es/ecma262/#sec-toobject
17
+ * @param arg
18
+ */
19
+ export declare function ToObject<T>(arg: T): T extends null ? never : T extends undefined ? never : T;
20
+ /**
21
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-samevalue
22
+ * @param x
23
+ * @param y
24
+ */
25
+ export declare function SameValue(x: any, y: any): boolean;
26
+ /**
27
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-arraycreate
28
+ * @param len
29
+ */
30
+ export declare function ArrayCreate(len: number): any[];
31
+ /**
32
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-hasownproperty
33
+ * @param o
34
+ * @param prop
35
+ */
36
+ export declare function HasOwnProperty(o: object, prop: string): boolean;
37
+ /**
38
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-type
39
+ * @param x
40
+ */
41
+ export declare function Type(x: any): "Null" | "Undefined" | "Object" | "Number" | "Boolean" | "String" | "Symbol" | "BigInt" | undefined;
42
+ /**
43
+ * https://tc39.es/ecma262/#eqn-Day
44
+ * @param t
45
+ */
46
+ export declare function Day(t: number): number;
47
+ /**
48
+ * https://tc39.es/ecma262/#sec-week-day
49
+ * @param t
50
+ */
51
+ export declare function WeekDay(t: number): number;
52
+ /**
53
+ * https://tc39.es/ecma262/#sec-year-number
54
+ * @param y
55
+ */
56
+ export declare function DayFromYear(y: number): number;
57
+ /**
58
+ * https://tc39.es/ecma262/#sec-year-number
59
+ * @param y
60
+ */
61
+ export declare function TimeFromYear(y: number): number;
62
+ /**
63
+ * https://tc39.es/ecma262/#sec-year-number
64
+ * @param t
65
+ */
66
+ export declare function YearFromTime(t: number): number;
67
+ export declare function DaysInYear(y: number): 365 | 366;
68
+ export declare function DayWithinYear(t: number): number;
69
+ export declare function InLeapYear(t: number): 0 | 1;
70
+ /**
71
+ * https://tc39.es/ecma262/#sec-month-number
72
+ * @param t
73
+ */
74
+ export declare function MonthFromTime(t: number): 0 | 1 | 2 | 3 | 4 | 7 | 5 | 6 | 8 | 9 | 10 | 11;
75
+ export declare function DateFromTime(t: number): number;
76
+ export declare function HourFromTime(t: number): number;
77
+ export declare function MinFromTime(t: number): number;
78
+ export declare function SecFromTime(t: number): number;
79
+ /**
80
+ * The abstract operation OrdinaryHasInstance implements
81
+ * the default algorithm for determining if an object O
82
+ * inherits from the instance object inheritance path
83
+ * provided by constructor C.
84
+ * @param C class
85
+ * @param O object
86
+ * @param internalSlots internalSlots
87
+ */
88
+ export declare function OrdinaryHasInstance(C: Object, O: any, internalSlots?: {
89
+ boundTargetFunction: any;
90
+ }): boolean;
91
+ export declare function msFromTime(t: number): number;
92
+ //# sourceMappingURL=262.d.ts.map
app/frontend/node_modules/@formatjs/ecma402-abstract/262.d.ts.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"262.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/262.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAM3C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAiBzC;AAwBD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAQpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EACxB,GAAG,EAAE,CAAC,GACL,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAK1D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,WAYvC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,SAEtC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,WAErD;AAED;;;GAGG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,GAAG,uGAyB1B;AAcD;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,UAE5B;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,UAEhC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,UAErC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,UAErC;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,aAWnC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,UAEtC;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAE3C;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,mDAwCtC;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,UAyCrC;AASD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,UAErC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,UAEpC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,UAEpC;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,GAAG,EACN,aAAa,CAAC,EAAE;IAAC,mBAAmB,EAAE,GAAG,CAAA;CAAC,WAmB3C;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C"}
app/frontend/node_modules/@formatjs/ecma402-abstract/262.js ADDED
@@ -0,0 +1,362 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.msFromTime = exports.OrdinaryHasInstance = exports.SecFromTime = exports.MinFromTime = exports.HourFromTime = exports.DateFromTime = exports.MonthFromTime = exports.InLeapYear = exports.DayWithinYear = exports.DaysInYear = exports.YearFromTime = exports.TimeFromYear = exports.DayFromYear = exports.WeekDay = exports.Day = exports.Type = exports.HasOwnProperty = exports.ArrayCreate = exports.SameValue = exports.ToObject = exports.TimeClip = exports.ToNumber = exports.ToString = void 0;
4
+ /**
5
+ * https://tc39.es/ecma262/#sec-tostring
6
+ */
7
+ function ToString(o) {
8
+ // Only symbol is irregular...
9
+ if (typeof o === 'symbol') {
10
+ throw TypeError('Cannot convert a Symbol value to a string');
11
+ }
12
+ return String(o);
13
+ }
14
+ exports.ToString = ToString;
15
+ /**
16
+ * https://tc39.es/ecma262/#sec-tonumber
17
+ * @param val
18
+ */
19
+ function ToNumber(val) {
20
+ if (val === undefined) {
21
+ return NaN;
22
+ }
23
+ if (val === null) {
24
+ return +0;
25
+ }
26
+ if (typeof val === 'boolean') {
27
+ return val ? 1 : +0;
28
+ }
29
+ if (typeof val === 'number') {
30
+ return val;
31
+ }
32
+ if (typeof val === 'symbol' || typeof val === 'bigint') {
33
+ throw new TypeError('Cannot convert symbol/bigint to number');
34
+ }
35
+ return Number(val);
36
+ }
37
+ exports.ToNumber = ToNumber;
38
+ /**
39
+ * https://tc39.es/ecma262/#sec-tointeger
40
+ * @param n
41
+ */
42
+ function ToInteger(n) {
43
+ var number = ToNumber(n);
44
+ if (isNaN(number) || SameValue(number, -0)) {
45
+ return 0;
46
+ }
47
+ if (isFinite(number)) {
48
+ return number;
49
+ }
50
+ var integer = Math.floor(Math.abs(number));
51
+ if (number < 0) {
52
+ integer = -integer;
53
+ }
54
+ if (SameValue(integer, -0)) {
55
+ return 0;
56
+ }
57
+ return integer;
58
+ }
59
+ /**
60
+ * https://tc39.es/ecma262/#sec-timeclip
61
+ * @param time
62
+ */
63
+ function TimeClip(time) {
64
+ if (!isFinite(time)) {
65
+ return NaN;
66
+ }
67
+ if (Math.abs(time) > 8.64 * 1e15) {
68
+ return NaN;
69
+ }
70
+ return ToInteger(time);
71
+ }
72
+ exports.TimeClip = TimeClip;
73
+ /**
74
+ * https://tc39.es/ecma262/#sec-toobject
75
+ * @param arg
76
+ */
77
+ function ToObject(arg) {
78
+ if (arg == null) {
79
+ throw new TypeError('undefined/null cannot be converted to object');
80
+ }
81
+ return Object(arg);
82
+ }
83
+ exports.ToObject = ToObject;
84
+ /**
85
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-samevalue
86
+ * @param x
87
+ * @param y
88
+ */
89
+ function SameValue(x, y) {
90
+ if (Object.is) {
91
+ return Object.is(x, y);
92
+ }
93
+ // SameValue algorithm
94
+ if (x === y) {
95
+ // Steps 1-5, 7-10
96
+ // Steps 6.b-6.e: +0 != -0
97
+ return x !== 0 || 1 / x === 1 / y;
98
+ }
99
+ // Step 6.a: NaN == NaN
100
+ return x !== x && y !== y;
101
+ }
102
+ exports.SameValue = SameValue;
103
+ /**
104
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-arraycreate
105
+ * @param len
106
+ */
107
+ function ArrayCreate(len) {
108
+ return new Array(len);
109
+ }
110
+ exports.ArrayCreate = ArrayCreate;
111
+ /**
112
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-hasownproperty
113
+ * @param o
114
+ * @param prop
115
+ */
116
+ function HasOwnProperty(o, prop) {
117
+ return Object.prototype.hasOwnProperty.call(o, prop);
118
+ }
119
+ exports.HasOwnProperty = HasOwnProperty;
120
+ /**
121
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#sec-type
122
+ * @param x
123
+ */
124
+ function Type(x) {
125
+ if (x === null) {
126
+ return 'Null';
127
+ }
128
+ if (typeof x === 'undefined') {
129
+ return 'Undefined';
130
+ }
131
+ if (typeof x === 'function' || typeof x === 'object') {
132
+ return 'Object';
133
+ }
134
+ if (typeof x === 'number') {
135
+ return 'Number';
136
+ }
137
+ if (typeof x === 'boolean') {
138
+ return 'Boolean';
139
+ }
140
+ if (typeof x === 'string') {
141
+ return 'String';
142
+ }
143
+ if (typeof x === 'symbol') {
144
+ return 'Symbol';
145
+ }
146
+ if (typeof x === 'bigint') {
147
+ return 'BigInt';
148
+ }
149
+ }
150
+ exports.Type = Type;
151
+ var MS_PER_DAY = 86400000;
152
+ /**
153
+ * https://www.ecma-international.org/ecma-262/11.0/index.html#eqn-modulo
154
+ * @param x
155
+ * @param y
156
+ * @return k of the same sign as y
157
+ */
158
+ function mod(x, y) {
159
+ return x - Math.floor(x / y) * y;
160
+ }
161
+ /**
162
+ * https://tc39.es/ecma262/#eqn-Day
163
+ * @param t
164
+ */
165
+ function Day(t) {
166
+ return Math.floor(t / MS_PER_DAY);
167
+ }
168
+ exports.Day = Day;
169
+ /**
170
+ * https://tc39.es/ecma262/#sec-week-day
171
+ * @param t
172
+ */
173
+ function WeekDay(t) {
174
+ return mod(Day(t) + 4, 7);
175
+ }
176
+ exports.WeekDay = WeekDay;
177
+ /**
178
+ * https://tc39.es/ecma262/#sec-year-number
179
+ * @param y
180
+ */
181
+ function DayFromYear(y) {
182
+ return Date.UTC(y, 0) / MS_PER_DAY;
183
+ }
184
+ exports.DayFromYear = DayFromYear;
185
+ /**
186
+ * https://tc39.es/ecma262/#sec-year-number
187
+ * @param y
188
+ */
189
+ function TimeFromYear(y) {
190
+ return Date.UTC(y, 0);
191
+ }
192
+ exports.TimeFromYear = TimeFromYear;
193
+ /**
194
+ * https://tc39.es/ecma262/#sec-year-number
195
+ * @param t
196
+ */
197
+ function YearFromTime(t) {
198
+ return new Date(t).getUTCFullYear();
199
+ }
200
+ exports.YearFromTime = YearFromTime;
201
+ function DaysInYear(y) {
202
+ if (y % 4 !== 0) {
203
+ return 365;
204
+ }
205
+ if (y % 100 !== 0) {
206
+ return 366;
207
+ }
208
+ if (y % 400 !== 0) {
209
+ return 365;
210
+ }
211
+ return 366;
212
+ }
213
+ exports.DaysInYear = DaysInYear;
214
+ function DayWithinYear(t) {
215
+ return Day(t) - DayFromYear(YearFromTime(t));
216
+ }
217
+ exports.DayWithinYear = DayWithinYear;
218
+ function InLeapYear(t) {
219
+ return DaysInYear(YearFromTime(t)) === 365 ? 0 : 1;
220
+ }
221
+ exports.InLeapYear = InLeapYear;
222
+ /**
223
+ * https://tc39.es/ecma262/#sec-month-number
224
+ * @param t
225
+ */
226
+ function MonthFromTime(t) {
227
+ var dwy = DayWithinYear(t);
228
+ var leap = InLeapYear(t);
229
+ if (dwy >= 0 && dwy < 31) {
230
+ return 0;
231
+ }
232
+ if (dwy < 59 + leap) {
233
+ return 1;
234
+ }
235
+ if (dwy < 90 + leap) {
236
+ return 2;
237
+ }
238
+ if (dwy < 120 + leap) {
239
+ return 3;
240
+ }
241
+ if (dwy < 151 + leap) {
242
+ return 4;
243
+ }
244
+ if (dwy < 181 + leap) {
245
+ return 5;
246
+ }
247
+ if (dwy < 212 + leap) {
248
+ return 6;
249
+ }
250
+ if (dwy < 243 + leap) {
251
+ return 7;
252
+ }
253
+ if (dwy < 273 + leap) {
254
+ return 8;
255
+ }
256
+ if (dwy < 304 + leap) {
257
+ return 9;
258
+ }
259
+ if (dwy < 334 + leap) {
260
+ return 10;
261
+ }
262
+ if (dwy < 365 + leap) {
263
+ return 11;
264
+ }
265
+ throw new Error('Invalid time');
266
+ }
267
+ exports.MonthFromTime = MonthFromTime;
268
+ function DateFromTime(t) {
269
+ var dwy = DayWithinYear(t);
270
+ var mft = MonthFromTime(t);
271
+ var leap = InLeapYear(t);
272
+ if (mft === 0) {
273
+ return dwy + 1;
274
+ }
275
+ if (mft === 1) {
276
+ return dwy - 30;
277
+ }
278
+ if (mft === 2) {
279
+ return dwy - 58 - leap;
280
+ }
281
+ if (mft === 3) {
282
+ return dwy - 89 - leap;
283
+ }
284
+ if (mft === 4) {
285
+ return dwy - 119 - leap;
286
+ }
287
+ if (mft === 5) {
288
+ return dwy - 150 - leap;
289
+ }
290
+ if (mft === 6) {
291
+ return dwy - 180 - leap;
292
+ }
293
+ if (mft === 7) {
294
+ return dwy - 211 - leap;
295
+ }
296
+ if (mft === 8) {
297
+ return dwy - 242 - leap;
298
+ }
299
+ if (mft === 9) {
300
+ return dwy - 272 - leap;
301
+ }
302
+ if (mft === 10) {
303
+ return dwy - 303 - leap;
304
+ }
305
+ if (mft === 11) {
306
+ return dwy - 333 - leap;
307
+ }
308
+ throw new Error('Invalid time');
309
+ }
310
+ exports.DateFromTime = DateFromTime;
311
+ var HOURS_PER_DAY = 24;
312
+ var MINUTES_PER_HOUR = 60;
313
+ var SECONDS_PER_MINUTE = 60;
314
+ var MS_PER_SECOND = 1e3;
315
+ var MS_PER_MINUTE = MS_PER_SECOND * SECONDS_PER_MINUTE;
316
+ var MS_PER_HOUR = MS_PER_MINUTE * MINUTES_PER_HOUR;
317
+ function HourFromTime(t) {
318
+ return mod(Math.floor(t / MS_PER_HOUR), HOURS_PER_DAY);
319
+ }
320
+ exports.HourFromTime = HourFromTime;
321
+ function MinFromTime(t) {
322
+ return mod(Math.floor(t / MS_PER_MINUTE), MINUTES_PER_HOUR);
323
+ }
324
+ exports.MinFromTime = MinFromTime;
325
+ function SecFromTime(t) {
326
+ return mod(Math.floor(t / MS_PER_SECOND), SECONDS_PER_MINUTE);
327
+ }
328
+ exports.SecFromTime = SecFromTime;
329
+ function IsCallable(fn) {
330
+ return typeof fn === 'function';
331
+ }
332
+ /**
333
+ * The abstract operation OrdinaryHasInstance implements
334
+ * the default algorithm for determining if an object O
335
+ * inherits from the instance object inheritance path
336
+ * provided by constructor C.
337
+ * @param C class
338
+ * @param O object
339
+ * @param internalSlots internalSlots
340
+ */
341
+ function OrdinaryHasInstance(C, O, internalSlots) {
342
+ if (!IsCallable(C)) {
343
+ return false;
344
+ }
345
+ if (internalSlots === null || internalSlots === void 0 ? void 0 : internalSlots.boundTargetFunction) {
346
+ var BC = internalSlots === null || internalSlots === void 0 ? void 0 : internalSlots.boundTargetFunction;
347
+ return O instanceof BC;
348
+ }
349
+ if (typeof O !== 'object') {
350
+ return false;
351
+ }
352
+ var P = C.prototype;
353
+ if (typeof P !== 'object') {
354
+ throw new TypeError('OrdinaryHasInstance called on an object with an invalid prototype property.');
355
+ }
356
+ return Object.prototype.isPrototypeOf.call(P, O);
357
+ }
358
+ exports.OrdinaryHasInstance = OrdinaryHasInstance;
359
+ function msFromTime(t) {
360
+ return mod(t, MS_PER_SECOND);
361
+ }
362
+ exports.msFromTime = msFromTime;
app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.d.ts ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ /**
2
+ * http://ecma-international.org/ecma-402/7.0/index.html#sec-canonicalizelocalelist
3
+ * @param locales
4
+ */
5
+ export declare function CanonicalizeLocaleList(locales?: string | string[]): string[];
6
+ //# sourceMappingURL=CanonicalizeLocaleList.d.ts.map
app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.d.ts.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"CanonicalizeLocaleList.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/CanonicalizeLocaleList.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAG5E"}
app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.js ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CanonicalizeLocaleList = void 0;
4
+ /**
5
+ * http://ecma-international.org/ecma-402/7.0/index.html#sec-canonicalizelocalelist
6
+ * @param locales
7
+ */
8
+ function CanonicalizeLocaleList(locales) {
9
+ // TODO
10
+ return Intl.getCanonicalLocales(locales);
11
+ }
12
+ exports.CanonicalizeLocaleList = CanonicalizeLocaleList;
app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.d.ts ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-canonicalizetimezonename
3
+ * @param tz
4
+ */
5
+ export declare function CanonicalizeTimeZoneName(tz: string, { tzData, uppercaseLinks, }: {
6
+ tzData: Record<string, unknown>;
7
+ uppercaseLinks: Record<string, string>;
8
+ }): string;
9
+ //# sourceMappingURL=CanonicalizeTimeZoneName.d.ts.map
app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.d.ts.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"CanonicalizeTimeZoneName.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/CanonicalizeTimeZoneName.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,EACV,EACE,MAAM,EACN,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACvC,UAgBF"}
app/frontend/node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.js ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CanonicalizeTimeZoneName = void 0;
4
+ /**
5
+ * https://tc39.es/ecma402/#sec-canonicalizetimezonename
6
+ * @param tz
7
+ */
8
+ function CanonicalizeTimeZoneName(tz, _a) {
9
+ var tzData = _a.tzData, uppercaseLinks = _a.uppercaseLinks;
10
+ var uppercasedTz = tz.toUpperCase();
11
+ var uppercasedZones = Object.keys(tzData).reduce(function (all, z) {
12
+ all[z.toUpperCase()] = z;
13
+ return all;
14
+ }, {});
15
+ var ianaTimeZone = uppercaseLinks[uppercasedTz] || uppercasedZones[uppercasedTz];
16
+ if (ianaTimeZone === 'Etc/UTC' || ianaTimeZone === 'Etc/GMT') {
17
+ return 'UTC';
18
+ }
19
+ return ianaTimeZone;
20
+ }
21
+ exports.CanonicalizeTimeZoneName = CanonicalizeTimeZoneName;
app/frontend/node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.d.ts ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-coerceoptionstoobject
3
+ * @param options
4
+ * @returns
5
+ */
6
+ export declare function CoerceOptionsToObject<T>(options?: T): T;
7
+ //# sourceMappingURL=CoerceOptionsToObject.d.ts.map
app/frontend/node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.d.ts.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"CoerceOptionsToObject.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/CoerceOptionsToObject.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAKvD"}
app/frontend/node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.js ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CoerceOptionsToObject = void 0;
4
+ var _262_1 = require("./262");
5
+ /**
6
+ * https://tc39.es/ecma402/#sec-coerceoptionstoobject
7
+ * @param options
8
+ * @returns
9
+ */
10
+ function CoerceOptionsToObject(options) {
11
+ if (typeof options === 'undefined') {
12
+ return Object.create(null);
13
+ }
14
+ return (0, _262_1.ToObject)(options);
15
+ }
16
+ exports.CoerceOptionsToObject = CoerceOptionsToObject;
app/frontend/node_modules/@formatjs/ecma402-abstract/DefaultNumberOption.d.ts ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-defaultnumberoption
3
+ * @param val
4
+ * @param min
5
+ * @param max
6
+ * @param fallback
7
+ */
8
+ export declare function DefaultNumberOption(val: any, min: number, max: number, fallback: number): number;
9
+ //# sourceMappingURL=DefaultNumberOption.d.ts.map
app/frontend/node_modules/@formatjs/ecma402-abstract/DefaultNumberOption.d.ts.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"DefaultNumberOption.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/DefaultNumberOption.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,MAAM,CAAA"}
app/frontend/node_modules/@formatjs/ecma402-abstract/DefaultNumberOption.js ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultNumberOption = void 0;
4
+ function DefaultNumberOption(val, min, max, fallback) {
5
+ if (val !== undefined) {
6
+ val = Number(val);
7
+ if (isNaN(val) || val < min || val > max) {
8
+ throw new RangeError("".concat(val, " is outside of range [").concat(min, ", ").concat(max, "]"));
9
+ }
10
+ return Math.floor(val);
11
+ }
12
+ return fallback;
13
+ }
14
+ exports.DefaultNumberOption = DefaultNumberOption;
app/frontend/node_modules/@formatjs/ecma402-abstract/GetNumberOption.d.ts ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-getnumberoption
3
+ * @param options
4
+ * @param property
5
+ * @param min
6
+ * @param max
7
+ * @param fallback
8
+ */
9
+ export declare function GetNumberOption<T extends object, K extends keyof T>(options: T, property: K, minimum: number, maximum: number, fallback: number): number;
10
+ //# sourceMappingURL=GetNumberOption.d.ts.map
app/frontend/node_modules/@formatjs/ecma402-abstract/GetNumberOption.d.ts.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"file":"GetNumberOption.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/GetNumberOption.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EACjE,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,MAAM,CAAA"}
app/frontend/node_modules/@formatjs/ecma402-abstract/GetNumberOption.js ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ /**
3
+ * https://tc39.es/ecma402/#sec-getnumberoption
4
+ * @param options
5
+ * @param property
6
+ * @param min
7
+ * @param max
8
+ * @param fallback
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.GetNumberOption = void 0;
12
+ var DefaultNumberOption_1 = require("./DefaultNumberOption");
13
+ function GetNumberOption(options, property, minimum, maximum, fallback) {
14
+ var val = options[property];
15
+ // @ts-expect-error
16
+ return (0, DefaultNumberOption_1.DefaultNumberOption)(val, minimum, maximum, fallback);
17
+ }
18
+ exports.GetNumberOption = GetNumberOption;