@concord-consortium/cloud-file-manager 2.1.0-pre.14 → 2.1.0-pre.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@concord-consortium/cloud-file-manager",
3
3
  "description": "Wrapper for providing file management for web applications",
4
4
  "author": "The Concord Consortium",
5
- "version": "2.1.0-pre.14",
5
+ "version": "2.1.0-pre.16",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "git+https://github.com/concord-consortium/cloud-file-manager.git"
@@ -27,6 +27,7 @@
27
27
  "classnames": "^2.4.0",
28
28
  "create-react-class": "^15.7.0",
29
29
  "diff": "^5.1.0",
30
+ "file-saver": "^2.0.5",
30
31
  "iframe-phone": "^1.3.1",
31
32
  "jiff": "^0.7.3",
32
33
  "jquery": "^3.7.1",
@@ -45,6 +46,7 @@
45
46
  "@testing-library/react": "^12.1.5",
46
47
  "@testing-library/user-event": "^14.5.1",
47
48
  "@types/create-react-class": "^15.6.6",
49
+ "@types/file-saver": "^2.0.7",
48
50
  "@types/jest": "^29.5.11",
49
51
  "@types/jiff": "^0.7.5",
50
52
  "@types/jquery": "^3.5.29",
@@ -102,8 +104,8 @@
102
104
  "build:codap": "npm run clean && cross-env-shell NODE_ENV=production dest=../codap/apps/dg/resources/cloud-file-manager codap=1 noGlobals=1 noMap=1 'webpack && mv $dest/js/app.js $dest/js/app.js.ignore'",
103
105
  "build:codap:development": "npm run clean && cross-env-shell NODE_ENV=development dest=../codap/apps/dg/resources/cloud-file-manager codap=1 noGlobals=1 noMap=1 'webpack && mv $dest/js/app.js $dest/js/app.js.ignore'",
104
106
  "prepublishOnly": "npm run build:all",
105
- "publish:npm:latest": "npm publish --access public",
106
- "publish:npm:latest:preview": "npm publish --access public --dry-run",
107
+ "publish:npm:latest": "npm publish --access public --tag latest",
108
+ "publish:npm:latest:preview": "npm publish --access public --tag latest --dry-run",
107
109
  "publish:npm:next": "npm publish --access public --tag next",
108
110
  "publish:npm:next:preview": "npm publish --access public --tag next --dry-run",
109
111
  "yalc:publish": "npx yalc publish --push",
@@ -1,2 +0,0 @@
1
- /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
2
- export var saveAs: any;
@@ -1,164 +0,0 @@
1
- /* FileSaver.js
2
- * A saveAs() FileSaver implementation.
3
- * 1.3.2
4
- * 2016-06-16 18:25:19
5
- *
6
- * By Eli Grey, http://eligrey.com
7
- * License: MIT
8
- * See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
9
- */
10
- /*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */
11
- /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
12
- var saveAs = saveAs || (function (view) {
13
- "use strict";
14
- // IE <10 is explicitly unsupported
15
- if (typeof view === "undefined" || typeof navigator !== "undefined" && /MSIE [1-9]\./.test(navigator.userAgent)) {
16
- return;
17
- }
18
- var doc = view.document
19
- // only get URL when necessary in case Blob.js hasn't overridden it yet
20
- , get_URL = function () {
21
- return view.URL || view.webkitURL || view;
22
- }, save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a"), can_use_save_link = "download" in save_link, click = function (node) {
23
- var event = new MouseEvent("click");
24
- node.dispatchEvent(event);
25
- }, is_safari = /constructor/i.test(view.HTMLElement) || view.safari, is_chrome_ios = /CriOS\/[\d]+/.test(navigator.userAgent), throw_outside = function (ex) {
26
- (view.setImmediate || view.setTimeout)(function () {
27
- throw ex;
28
- }, 0);
29
- }
30
- // the Blob API is fundamentally broken as there is no "downloadfinished" event to subscribe to
31
- , arbitrary_revoke_timeout = 1000 * 40 // in ms
32
- , revoke = function (file) {
33
- var revoker = function () {
34
- if (typeof file === "string") { // file is an object URL
35
- get_URL().revokeObjectURL(file);
36
- }
37
- else { // file is a File
38
- file.remove();
39
- }
40
- };
41
- setTimeout(revoker, arbitrary_revoke_timeout);
42
- }, dispatch = function (filesaver, event_types, event) {
43
- event_types = [].concat(event_types);
44
- var i = event_types.length;
45
- while (i--) {
46
- var listener = filesaver["on" + event_types[i]];
47
- if (typeof listener === "function") {
48
- try {
49
- listener.call(filesaver, event || filesaver);
50
- }
51
- catch (ex) {
52
- throw_outside(ex);
53
- }
54
- }
55
- }
56
- }, auto_bom = function (blob) {
57
- // prepend BOM for UTF-8 XML and text/* types (including HTML)
58
- // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF
59
- if (/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)) {
60
- return new Blob([String.fromCharCode(0xFEFF), blob], { type: blob.type });
61
- }
62
- return blob;
63
- }, FileSaver = function (blob, name, no_auto_bom) {
64
- if (!no_auto_bom) {
65
- blob = auto_bom(blob);
66
- }
67
- // First try a.download, then web filesystem, then object URLs
68
- var filesaver = this, force = true // [CC 2016-12-05] type === force_saveable_type
69
- , object_url, dispatch_all = function () {
70
- dispatch(filesaver, "writestart progress write writeend".split(" "));
71
- }
72
- // on any filesys errors revert to saving with object URLs
73
- , fs_error = function () {
74
- if ((is_chrome_ios || (force && is_safari)) && view.FileReader) {
75
- // Safari doesn't allow downloading of blob urls
76
- var reader = new FileReader();
77
- reader.onloadend = function () {
78
- var url = is_chrome_ios ? reader.result : reader.result.replace(/^data:[^;]*;/, 'data:attachment/file;');
79
- var popup = view.open(url, '_blank');
80
- if (!popup)
81
- view.location.href = url;
82
- url = undefined; // release reference before dispatching
83
- filesaver.readyState = filesaver.DONE;
84
- dispatch_all();
85
- };
86
- reader.readAsDataURL(blob);
87
- filesaver.readyState = filesaver.INIT;
88
- return;
89
- }
90
- // don't create more object URLs than needed
91
- if (!object_url) {
92
- object_url = get_URL().createObjectURL(blob);
93
- }
94
- if (force) {
95
- view.location.href = object_url;
96
- }
97
- else {
98
- var opened = view.open(object_url, "_blank");
99
- if (!opened) {
100
- // Apple does not allow window.open, see https://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html
101
- view.location.href = object_url;
102
- }
103
- }
104
- filesaver.readyState = filesaver.DONE;
105
- dispatch_all();
106
- revoke(object_url);
107
- };
108
- filesaver.readyState = filesaver.INIT;
109
- if (can_use_save_link) {
110
- object_url = get_URL().createObjectURL(blob);
111
- setTimeout(function () {
112
- save_link.href = object_url;
113
- save_link.download = name;
114
- click(save_link);
115
- dispatch_all();
116
- revoke(object_url);
117
- filesaver.readyState = filesaver.DONE;
118
- });
119
- return;
120
- }
121
- fs_error();
122
- }, FS_proto = FileSaver.prototype, saveAs = function (blob, name, no_auto_bom) {
123
- return new FileSaver(blob, name || blob.name || "download", no_auto_bom);
124
- };
125
- // IE 10+ (native saveAs)
126
- if (typeof navigator !== "undefined" && navigator.msSaveOrOpenBlob) {
127
- return function (blob, name, no_auto_bom) {
128
- name = name || blob.name || "download";
129
- if (!no_auto_bom) {
130
- blob = auto_bom(blob);
131
- }
132
- return navigator.msSaveOrOpenBlob(blob, name);
133
- };
134
- }
135
- FS_proto.abort = function () { };
136
- FS_proto.readyState = FS_proto.INIT = 0;
137
- FS_proto.WRITING = 1;
138
- FS_proto.DONE = 2;
139
- FS_proto.error =
140
- FS_proto.onwritestart =
141
- FS_proto.onprogress =
142
- FS_proto.onwrite =
143
- FS_proto.onabort =
144
- FS_proto.onerror =
145
- FS_proto.onwriteend =
146
- null;
147
- return saveAs;
148
- }(typeof self !== "undefined" && self
149
- || typeof window !== "undefined" && window
150
- // eslint-disable-next-line babel/no-invalid-this
151
- || this.content // TODO: What do we think `this` is here? ¯\_(ツ)_/¯
152
- ));
153
- // `self` is undefined in Firefox for Android content script context
154
- // while `this` is nsIContentFrameMessageManager
155
- // with an attribute `content` that corresponds to the window
156
- if (typeof module !== "undefined" && module.exports) {
157
- module.exports.saveAs = saveAs;
158
- }
159
- else if ((typeof define !== "undefined" && define !== null) && (define.amd !== null)) {
160
- define("FileSaver.js", function () {
161
- return saveAs;
162
- });
163
- }
164
- //# sourceMappingURL=file-saver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-saver.js","sourceRoot":"","sources":["../../../src/code/lib/file-saver.js"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
2
- export var saveAs: any;
@@ -1,164 +0,0 @@
1
- /* FileSaver.js
2
- * A saveAs() FileSaver implementation.
3
- * 1.3.2
4
- * 2016-06-16 18:25:19
5
- *
6
- * By Eli Grey, http://eligrey.com
7
- * License: MIT
8
- * See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
9
- */
10
- /*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */
11
- /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
12
- var saveAs = saveAs || (function (view) {
13
- "use strict";
14
- // IE <10 is explicitly unsupported
15
- if (typeof view === "undefined" || typeof navigator !== "undefined" && /MSIE [1-9]\./.test(navigator.userAgent)) {
16
- return;
17
- }
18
- var doc = view.document
19
- // only get URL when necessary in case Blob.js hasn't overridden it yet
20
- , get_URL = function () {
21
- return view.URL || view.webkitURL || view;
22
- }, save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a"), can_use_save_link = "download" in save_link, click = function (node) {
23
- var event = new MouseEvent("click");
24
- node.dispatchEvent(event);
25
- }, is_safari = /constructor/i.test(view.HTMLElement) || view.safari, is_chrome_ios = /CriOS\/[\d]+/.test(navigator.userAgent), throw_outside = function (ex) {
26
- (view.setImmediate || view.setTimeout)(function () {
27
- throw ex;
28
- }, 0);
29
- }
30
- // the Blob API is fundamentally broken as there is no "downloadfinished" event to subscribe to
31
- , arbitrary_revoke_timeout = 1000 * 40 // in ms
32
- , revoke = function (file) {
33
- var revoker = function () {
34
- if (typeof file === "string") { // file is an object URL
35
- get_URL().revokeObjectURL(file);
36
- }
37
- else { // file is a File
38
- file.remove();
39
- }
40
- };
41
- setTimeout(revoker, arbitrary_revoke_timeout);
42
- }, dispatch = function (filesaver, event_types, event) {
43
- event_types = [].concat(event_types);
44
- var i = event_types.length;
45
- while (i--) {
46
- var listener = filesaver["on" + event_types[i]];
47
- if (typeof listener === "function") {
48
- try {
49
- listener.call(filesaver, event || filesaver);
50
- }
51
- catch (ex) {
52
- throw_outside(ex);
53
- }
54
- }
55
- }
56
- }, auto_bom = function (blob) {
57
- // prepend BOM for UTF-8 XML and text/* types (including HTML)
58
- // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF
59
- if (/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)) {
60
- return new Blob([String.fromCharCode(0xFEFF), blob], { type: blob.type });
61
- }
62
- return blob;
63
- }, FileSaver = function (blob, name, no_auto_bom) {
64
- if (!no_auto_bom) {
65
- blob = auto_bom(blob);
66
- }
67
- // First try a.download, then web filesystem, then object URLs
68
- var filesaver = this, force = true // [CC 2016-12-05] type === force_saveable_type
69
- , object_url, dispatch_all = function () {
70
- dispatch(filesaver, "writestart progress write writeend".split(" "));
71
- }
72
- // on any filesys errors revert to saving with object URLs
73
- , fs_error = function () {
74
- if ((is_chrome_ios || (force && is_safari)) && view.FileReader) {
75
- // Safari doesn't allow downloading of blob urls
76
- var reader = new FileReader();
77
- reader.onloadend = function () {
78
- var url = is_chrome_ios ? reader.result : reader.result.replace(/^data:[^;]*;/, 'data:attachment/file;');
79
- var popup = view.open(url, '_blank');
80
- if (!popup)
81
- view.location.href = url;
82
- url = undefined; // release reference before dispatching
83
- filesaver.readyState = filesaver.DONE;
84
- dispatch_all();
85
- };
86
- reader.readAsDataURL(blob);
87
- filesaver.readyState = filesaver.INIT;
88
- return;
89
- }
90
- // don't create more object URLs than needed
91
- if (!object_url) {
92
- object_url = get_URL().createObjectURL(blob);
93
- }
94
- if (force) {
95
- view.location.href = object_url;
96
- }
97
- else {
98
- var opened = view.open(object_url, "_blank");
99
- if (!opened) {
100
- // Apple does not allow window.open, see https://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html
101
- view.location.href = object_url;
102
- }
103
- }
104
- filesaver.readyState = filesaver.DONE;
105
- dispatch_all();
106
- revoke(object_url);
107
- };
108
- filesaver.readyState = filesaver.INIT;
109
- if (can_use_save_link) {
110
- object_url = get_URL().createObjectURL(blob);
111
- setTimeout(function () {
112
- save_link.href = object_url;
113
- save_link.download = name;
114
- click(save_link);
115
- dispatch_all();
116
- revoke(object_url);
117
- filesaver.readyState = filesaver.DONE;
118
- });
119
- return;
120
- }
121
- fs_error();
122
- }, FS_proto = FileSaver.prototype, saveAs = function (blob, name, no_auto_bom) {
123
- return new FileSaver(blob, name || blob.name || "download", no_auto_bom);
124
- };
125
- // IE 10+ (native saveAs)
126
- if (typeof navigator !== "undefined" && navigator.msSaveOrOpenBlob) {
127
- return function (blob, name, no_auto_bom) {
128
- name = name || blob.name || "download";
129
- if (!no_auto_bom) {
130
- blob = auto_bom(blob);
131
- }
132
- return navigator.msSaveOrOpenBlob(blob, name);
133
- };
134
- }
135
- FS_proto.abort = function () { };
136
- FS_proto.readyState = FS_proto.INIT = 0;
137
- FS_proto.WRITING = 1;
138
- FS_proto.DONE = 2;
139
- FS_proto.error =
140
- FS_proto.onwritestart =
141
- FS_proto.onprogress =
142
- FS_proto.onwrite =
143
- FS_proto.onabort =
144
- FS_proto.onerror =
145
- FS_proto.onwriteend =
146
- null;
147
- return saveAs;
148
- }(typeof self !== "undefined" && self
149
- || typeof window !== "undefined" && window
150
- // eslint-disable-next-line babel/no-invalid-this
151
- || this.content // TODO: What do we think `this` is here? ¯\_(ツ)_/¯
152
- ));
153
- // `self` is undefined in Firefox for Android content script context
154
- // while `this` is nsIContentFrameMessageManager
155
- // with an attribute `content` that corresponds to the window
156
- if (typeof module !== "undefined" && module.exports) {
157
- module.exports.saveAs = saveAs;
158
- }
159
- else if ((typeof define !== "undefined" && define !== null) && (define.amd !== null)) {
160
- define("FileSaver.js", function () {
161
- return saveAs;
162
- });
163
- }
164
- //# sourceMappingURL=file-saver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-saver.js","sourceRoot":"","sources":["../../../src/code/lib/file-saver.js"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,qGAAqG;AAErG,mFAAmF;AAEnF,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,IAAI;IACrC,YAAY,CAAA;IACZ,mCAAmC;IACnC,IAAI,OAAO,IAAI,KAAK,WAAW,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QACjH,OAAM;IACP,CAAC;IACD,IACC,GAAG,GAAG,IAAI,CAAC,QAAQ;IACnB,uEAAuE;MACrE,OAAO,GAAG;QACX,OAAO,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAA;IAC1C,CAAC,EACC,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,8BAA8B,EAAE,GAAG,CAAC,EACpE,iBAAiB,GAAG,UAAU,IAAI,SAAS,EAC3C,KAAK,GAAG,UAAU,IAAI;QACvB,IAAI,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;QACnC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC,EACC,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,EAChE,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EACxD,aAAa,GAAG,UAAU,EAAE;QAC7B,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,EAAE,CAAA;QACT,CAAC,EAAE,CAAC,CAAC,CAAA;IACN,CAAC;IACD,+FAA+F;MAC7F,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC,QAAQ;MAC7C,MAAM,GAAG,UAAU,IAAI;QACxB,IAAI,OAAO,GAAG;YACb,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC,wBAAwB;gBACvD,OAAO,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;YAChC,CAAC;iBAAM,CAAC,CAAC,iBAAiB;gBACzB,IAAI,CAAC,MAAM,EAAE,CAAA;YACd,CAAC;QACF,CAAC,CAAA;QACD,UAAU,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAA;IAC9C,CAAC,EACC,QAAQ,GAAG,UAAU,SAAS,EAAE,WAAW,EAAE,KAAK;QACnD,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACpC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAA;QAC1B,OAAO,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;YAC/C,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACJ,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,IAAI,SAAS,CAAC,CAAA;gBAC7C,CAAC;gBAAC,OAAO,EAAE,EAAE,CAAC;oBACb,aAAa,CAAC,EAAE,CAAC,CAAA;gBAClB,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC,EACC,QAAQ,GAAG,UAAU,IAAI;QAC1B,8DAA8D;QAC9D,0EAA0E;QAC1E,IAAI,4EAA4E,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClG,OAAO,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1E,CAAC;QACD,OAAO,IAAI,CAAA;IACZ,CAAC,EACC,SAAS,GAAG,UAAU,IAAI,EAAE,IAAI,EAAE,WAAW;QAC9C,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QACtB,CAAC;QACD,8DAA8D;QAC9D,IACC,SAAS,GAAG,IAAI,EACd,KAAK,GAAG,IAAI,CAAE,+CAA+C;UAC7D,UAAU,EACV,YAAY,GAAG;YAChB,QAAQ,CAAC,SAAS,EAAE,oCAAoC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;QACrE,CAAC;QACD,0DAA0D;UACxD,QAAQ,GAAG;YACZ,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChE,gDAAgD;gBAChD,IAAI,MAAM,GAAG,IAAI,UAAU,EAAE,CAAA;gBAC7B,MAAM,CAAC,SAAS,GAAG;oBAClB,IAAI,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAA;oBACxG,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;oBACpC,IAAI,CAAC,KAAK;wBAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAA;oBACpC,GAAG,GAAG,SAAS,CAAA,CAAC,uCAAuC;oBACvD,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAA;oBACrC,YAAY,EAAE,CAAA;gBACf,CAAC,CAAA;gBACD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;gBAC1B,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAA;gBACrC,OAAM;YACP,CAAC;YACD,4CAA4C;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjB,UAAU,GAAG,OAAO,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;YAC7C,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAA;YAChC,CAAC;iBAAM,CAAC;gBACP,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;gBAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;oBACb,gMAAgM;oBAChM,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAA;gBAChC,CAAC;YACF,CAAC;YACD,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAA;YACrC,YAAY,EAAE,CAAA;YACd,MAAM,CAAC,UAAU,CAAC,CAAA;QACnB,CAAC,CAAA;QAEF,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAA;QAErC,IAAI,iBAAiB,EAAE,CAAC;YACvB,UAAU,GAAG,OAAO,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;YAC5C,UAAU,CAAC;gBACV,SAAS,CAAC,IAAI,GAAG,UAAU,CAAA;gBAC3B,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAA;gBACzB,KAAK,CAAC,SAAS,CAAC,CAAA;gBAChB,YAAY,EAAE,CAAA;gBACd,MAAM,CAAC,UAAU,CAAC,CAAA;gBAClB,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAA;YACtC,CAAC,CAAC,CAAA;YACF,OAAM;QACP,CAAC;QAED,QAAQ,EAAE,CAAA;IACX,CAAC,EACC,QAAQ,GAAG,SAAS,CAAC,SAAS,EAC9B,MAAM,GAAG,UAAU,IAAI,EAAE,IAAI,EAAE,WAAW;QAC3C,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,UAAU,EAAE,WAAW,CAAC,CAAA;IACzE,CAAC,CAAA;IAEF,yBAAyB;IACzB,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,gBAAgB,EAAE,CAAC;QACpE,OAAO,UAAU,IAAI,EAAE,IAAI,EAAE,WAAW;YACvC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,UAAU,CAAA;YAEtC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAClB,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;YACtB,CAAC;YACD,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC9C,CAAC,CAAA;IACF,CAAC;IAED,QAAQ,CAAC,KAAK,GAAG,cAAc,CAAC,CAAA;IAChC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAA;IACvC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAA;IACpB,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAA;IAEjB,QAAQ,CAAC,KAAK;QACb,QAAQ,CAAC,YAAY;YACrB,QAAQ,CAAC,UAAU;gBACnB,QAAQ,CAAC,OAAO;oBAChB,QAAQ,CAAC,OAAO;wBAChB,QAAQ,CAAC,OAAO;4BAChB,QAAQ,CAAC,UAAU;gCACnB,IAAI,CAAA;IAEL,OAAO,MAAM,CAAA;AACd,CAAC,CACA,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI;OAChC,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM;IAC1C,iDAAiD;OAC9C,IAAI,CAAC,OAAO,CAAC,oDAAoD;CACnE,CAAC,CAAA;AACH,oEAAoE;AACpE,gDAAgD;AAChD,6DAA6D;AAE7D,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;IACrD,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;AAC/B,CAAC;KAAM,IAAI,CAAC,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC;IACxF,MAAM,CAAC,cAAc,EAAE;QACtB,OAAO,MAAM,CAAA;IACd,CAAC,CAAC,CAAA;AACH,CAAC"}