gwchq-textjam 0.1.12 → 0.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.js +962 -982
  2. package/dist/style.css +17 -19
  3. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -56865,6 +56865,62 @@ F();
56865
56865
 
56866
56866
  /***/ }),
56867
56867
 
56868
+ /***/ 41625:
56869
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
56870
+
56871
+ __webpack_require__.r(__webpack_exports__);
56872
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
56873
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
56874
+ /* harmony export */ });
56875
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
56876
+ var _path;
56877
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
56878
+
56879
+ function SvgAddFile(props) {
56880
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
56881
+ width: 18,
56882
+ height: 18,
56883
+ fill: "none",
56884
+ xmlns: "http://www.w3.org/2000/svg"
56885
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
56886
+ d: "M10.35 2.25h-5.4A1.35 1.35 0 003.6 3.6v10.8a1.35 1.35 0 001.35 1.35h8.1a1.35 1.35 0 001.35-1.35V6.3m-4.05-4.05L14.4 6.3m-4.05-4.05V6.3h4.05M9 13.05V9m-2.025 2.025h4.05",
56887
+ stroke: "#33625E",
56888
+ strokeLinecap: "round",
56889
+ strokeLinejoin: "round"
56890
+ })));
56891
+ }
56892
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgAddFile);
56893
+
56894
+ /***/ }),
56895
+
56896
+ /***/ 3503:
56897
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
56898
+
56899
+ __webpack_require__.r(__webpack_exports__);
56900
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
56901
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
56902
+ /* harmony export */ });
56903
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
56904
+ var _path;
56905
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
56906
+
56907
+ function SvgAddFolder(props) {
56908
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
56909
+ width: 18,
56910
+ height: 18,
56911
+ fill: "none",
56912
+ xmlns: "http://www.w3.org/2000/svg"
56913
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
56914
+ d: "M9 8.325v4.05M6.975 10.35h4.05m4.725 3.375a1.35 1.35 0 01-1.35 1.35H3.6a1.35 1.35 0 01-1.35-1.35v-9.45a1.35 1.35 0 011.35-1.35h3.375l1.35 2.025H14.4a1.35 1.35 0 011.35 1.35v7.425z",
56915
+ stroke: "#33625E",
56916
+ strokeLinecap: "round",
56917
+ strokeLinejoin: "round"
56918
+ })));
56919
+ }
56920
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgAddFolder);
56921
+
56922
+ /***/ }),
56923
+
56868
56924
  /***/ 95489:
56869
56925
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
56870
56926
 
@@ -56929,19 +56985,55 @@ __webpack_require__.r(__webpack_exports__);
56929
56985
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
56930
56986
  /* harmony export */ });
56931
56987
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
56932
- var _path;
56988
+ var _path, _path2, _mask, _path3, _path4, _path5, _path6, _path7;
56933
56989
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
56934
56990
 
56935
56991
  function SvgCssFile(props) {
56936
56992
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
56937
- "data-testid": "cssIcon",
56938
- width: 18,
56939
- height: 18,
56940
- viewBox: "0 0 20 18",
56993
+ viewBox: "0 0 32 32",
56941
56994
  fill: "none",
56942
56995
  xmlns: "http://www.w3.org/2000/svg"
56943
56996
  }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
56944
- d: "M2.053 17.638l.967-4.833H0v-2.537h3.624l.604-3.02h-3.14V4.711h3.744L5.798 0h3.383l-.966 4.711h3.382L12.564 0h3.382l-.966 4.711H18v2.537h-3.504l-.724 3.02h3.14v2.537h-3.624l-.966 4.833H8.939l.967-4.833H6.523l-.966 4.833H2.053zm8.336-7.37l.604-3.02H7.611l-.604 3.02h3.382z"
56997
+ fillRule: "evenodd",
56998
+ clipRule: "evenodd",
56999
+ d: "M25 8.5H7l1.5 17.25L16 28l7.5-2.25L25 8.5z",
57000
+ fill: "#1572B6"
57001
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57002
+ fillRule: "evenodd",
57003
+ clipRule: "evenodd",
57004
+ d: "M22.522 19.75l.13-1.5.196-2.25.195-2.25.196-2.25.13-1.5H16v16.5l4.554-1.366 1.54-.462.2-2.31.202-2.31.026-.302z",
57005
+ fill: "#33A9DC"
57006
+ })), _mask || (_mask = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("mask", {
57007
+ id: "css_file_svg__a",
57008
+ fill: "#fff"
57009
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57010
+ fillRule: "evenodd",
57011
+ clipRule: "evenodd",
57012
+ d: "M13.6 4h-2.7v3.3h2.7v-.9h-1.8V4.9h1.8V4zm3.9 0v.9H16l1.5 1.5v.9h-3v-.9H16l-1.5-1.5V4h3zm3.9 0v.9h-1.5l1.5 1.5v.9h-3v-.9h1.5l-1.5-1.5V4h3z"
57013
+ }))), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57014
+ fillRule: "evenodd",
57015
+ clipRule: "evenodd",
57016
+ d: "M13.6 4h-2.7v3.3h2.7v-.9h-1.8V4.9h1.8V4zm3.9 0v.9H16l1.5 1.5v.9h-3v-.9H16l-1.5-1.5V4h3zm3.9 0v.9h-1.5l1.5 1.5v.9h-3v-.9h1.5l-1.5-1.5V4h3z",
57017
+ fill: "#000"
57018
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57019
+ d: "M13.6 4h2V2h-2v2zm-2.7 0V2h-2v2h2zm0 3.3h-2v2h2v-2zm2.7 0v2h2v-2h-2zm0-.9h2v-2h-2v2zm-1.8 0h-2v2h2v-2zm0-1.5v-2h-2v2h2zm1.8 0v2h2v-2h-2zm3.9-.9h2V2h-2v2zm0 .9v2h2v-2h-2zm-1.5 0v-2h-4.828l3.414 3.414L16 4.9zm1.5 1.5h2v-.828l-.585-.586L17.5 6.4zm0 .9v2h2v-2h-2zm-3 0h-2v2h2v-2zm0-.9v-2h-2v2h2zm1.5 0v2h4.829l-3.414-3.414L16 6.4zm-1.5-1.5h-2v.828l.586.586L14.5 4.9zm0-.9V2h-2v2h2zm6.9 0h2V2h-2v2zm0 .9v2h2v-2h-2zm-1.5 0v-2h-4.828l3.414 3.414L19.9 4.9zm1.5 1.5h2v-.828l-.585-.586L21.4 6.4zm0 .9v2h2v-2h-2zm-3 0h-2v2h2v-2zm0-.9v-2h-2v2h2zm1.5 0v2h4.829l-3.414-3.414L19.9 6.4zm-1.5-1.5h-2v.828l.586.586L18.4 4.9zm0-.9V2h-2v2h2zm-4.8 0V2h-2.7v4h2.7V4zm-2.7 0h-2v3.3h4V4h-2zm0 3.3v2h2.7v-4h-2.7v2zm2.7 0h2v-.9h-4v.9h2zm0-.9v-2h-1.8v4h1.8v-2zm-1.8 0h2V4.9h-4v1.5h2zm0-1.5v2h1.8v-4h-1.8v2zm1.8 0h2V4h-4v.9h2zm3.9-.9h-2v.9h4V4h-2zm0 .9v-2H16v4h1.5v-2zm-1.5 0l-1.414 1.414 1.5 1.5L17.5 6.4l1.415-1.414-1.5-1.5L16 4.9zm1.5 1.5h-2v.9h4v-.9h-2zm0 .9v-2h-3v4h3v-2zm-3 0h2v-.9h-4v.9h2zm0-.9v2H16v-4h-1.5v2zm1.5 0l1.415-1.414-1.5-1.5L14.5 4.9l-1.414 1.414 1.5 1.5L16 6.4zm-1.5-1.5h2V4h-4v.9h2zm0-.9v2h3V2h-3v2zm6.9 0h-2v.9h4V4h-2zm0 .9v-2h-1.5v4h1.5v-2zm-1.5 0l-1.414 1.414 1.5 1.5L21.4 6.4l1.415-1.414-1.5-1.5L19.9 4.9zm1.5 1.5h-2v.9h4v-.9h-2zm0 .9v-2h-3v4h3v-2zm-3 0h2v-.9h-4v.9h2zm0-.9v2h1.5v-4h-1.5v2zm1.5 0l1.415-1.414-1.5-1.5L18.4 4.9l-1.414 1.414 1.5 1.5L19.9 6.4zm-1.5-1.5h2V4h-4v.9h2zm0-.9v2h3V2h-3v2z",
57020
+ fill: "#003046",
57021
+ mask: "url(#css_file_svg__a)"
57022
+ })), _path5 || (_path5 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57023
+ fillRule: "evenodd",
57024
+ clipRule: "evenodd",
57025
+ d: "M14.48 23.794l-.77-.231-2.464-.74-.201-2.31-.066-.763h2.4l.13 1.503.77.23L16 22v2.25l-1.52-.456zM10.457 13.75H16V11.5h-5.739l.196 2.25z",
57026
+ fill: "#EBEBEB"
57027
+ })), _path6 || (_path6 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57028
+ fillRule: "evenodd",
57029
+ clipRule: "evenodd",
57030
+ d: "M16 22l2.491-.747.13-1.503.131-1.5H16V16h2.948l.195-2.25H16V11.5h5.739l-.196 2.25-.195 2.25-.196 2.25-.13 1.5-.067.764-.2 2.31-2.465.739-2.29.687V22z",
57031
+ fill: "#fff"
57032
+ })), _path7 || (_path7 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57033
+ fillRule: "evenodd",
57034
+ clipRule: "evenodd",
57035
+ d: "M16 18.25h-2.003L13.802 16H16v2.25z",
57036
+ fill: "#EBEBEB"
56945
57037
  })));
56946
57038
  }
56947
57039
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgCssFile);
@@ -56956,17 +57048,26 @@ __webpack_require__.r(__webpack_exports__);
56956
57048
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
56957
57049
  /* harmony export */ });
56958
57050
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
56959
- var _path;
57051
+ var _path, _path2, _path3, _path4;
56960
57052
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
56961
57053
 
56962
57054
  function SvgCsvFile(props) {
56963
57055
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
56964
- width: 24,
56965
- height: 24,
57056
+ viewBox: "0 0 18 18",
56966
57057
  fill: "none",
56967
57058
  xmlns: "http://www.w3.org/2000/svg"
56968
57059
  }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
56969
- d: "M3 3v17.8h18V3H3zm2.9 3.7H11V8H5.9V6.7zm7 0H18V8h-5.1V6.7zm-7 3H11V11H5.9V9.7zm7 0H18V11h-5.1V9.7zm-7 3H11V14H5.9v-1.3zm7 0H18V14h-5.1v-1.3zm-7 3H11V17H5.9v-1.3zm7 0H18V17h-5.1v-1.3z"
57060
+ d: "M3.375 1.98v13.477c0 .161.134.293.297.293h10.094a.296.296 0 00.296-.293V5.789h-3.265a.296.296 0 01-.297-.293V1.687H3.672a.296.296 0 00-.297.293z",
57061
+ fill: "#009688"
57062
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57063
+ d: "M14.048 5.203a.436.436 0 00-.06-.146l-2.894-3.194v3.34h2.954z",
57064
+ fill: "#009688"
57065
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57066
+ d: "M4.266 7.693h8.906v7.178H4.266V7.693z",
57067
+ fill: "#fff"
57068
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57069
+ d: "M6.715 12.835v.44H5.453v-.44h1.262zm1.751 0v.44H7.205v-.44h1.261zm1.767 0v.44H8.97v-.44h1.262zm1.751 0v.44h-1.261v-.44h1.261zm-5.27-.864v.44h-1.26v-.44h1.26zm1.752 0v.44H7.205v-.44h1.261zm1.767 0v.44H8.97v-.44h1.262zm1.751 0v.44h-1.261v-.44h1.261zm-5.27-.865v.44h-1.26v-.44h1.26zm1.752 0v.44H7.205v-.44h1.261zm1.767 0v.44H8.97v-.44h1.262zm1.751 0v.44h-1.261v-.44h1.261zm-5.27-.864v.44h-1.26v-.44h1.26zm1.752 0v.44H7.205v-.44h1.261zm1.767 0v.44H8.97v-.44h1.262zm1.751 0v.44h-1.261v-.44h1.261zm-5.27-.864v.44h-1.26v-.44h1.26zm1.752 0v.44H7.205v-.44h1.261zm1.767 0v.44H8.97v-.44h1.262zm1.751 0v.44h-1.261v-.44h1.261z",
57070
+ fill: "#009688"
56970
57071
  })));
56971
57072
  }
56972
57073
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgCsvFile);
@@ -57029,6 +57130,42 @@ function SvgFolder(props) {
57029
57130
 
57030
57131
  /***/ }),
57031
57132
 
57133
+ /***/ 32432:
57134
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57135
+
57136
+ __webpack_require__.r(__webpack_exports__);
57137
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57138
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57139
+ /* harmony export */ });
57140
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57141
+ var _path, _path2, _path3, _path4;
57142
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57143
+
57144
+ function SvgGifFile(props) {
57145
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57146
+ viewBox: "0 0 18 18",
57147
+ fill: "none",
57148
+ xmlns: "http://www.w3.org/2000/svg"
57149
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57150
+ d: "M15.75 10.688c0-.622-.504-1.126-1.125-1.126H3.375c-.621 0-1.125.504-1.125 1.126v1.687c0 .621.504 1.125 1.125 1.125h11.25c.621 0 1.125-.504 1.125-1.125v-1.688zm1.125 1.687a2.25 2.25 0 01-2.25 2.25H3.375a2.25 2.25 0 01-2.25-2.25v-1.688a2.25 2.25 0 012.25-2.25h11.25a2.25 2.25 0 012.25 2.25v1.688z",
57151
+ fill: "#33625E"
57152
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57153
+ d: "M14.963 14.4a1.913 1.913 0 01-1.913 1.912h-8.1A1.913 1.913 0 013.037 14.4v-.9h1.126v.9a.788.788 0 00.787.787h8.1a.789.789 0 00.788-.787v-.9h1.125v.9z",
57154
+ fill: "#33625E"
57155
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57156
+ fillRule: "evenodd",
57157
+ clipRule: "evenodd",
57158
+ d: "M9.73 1.69c.13.013.25.07.343.162l4.725 4.726a.563.563 0 01.165.397v2.588h-1.125V7.537H9.675a.563.563 0 01-.562-.563V2.813H4.95a.788.788 0 00-.787.787v5.963H3.037V3.6A1.913 1.913 0 014.95 1.687h4.725l.056.003zm.508 4.723h2.804l-2.804-2.805v2.805z",
57159
+ fill: "#33625E"
57160
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57161
+ d: "M10.852 12.898c-.213 0-.337-.13-.337-.353V10.55c0-.242.134-.374.38-.374h1.219c.151 0 .261.11.261.265a.25.25 0 01-.261.26h-.94v.649h.838c.158 0 .261.103.261.255 0 .153-.105.256-.26.256h-.838v.685c0 .226-.116.353-.323.353zM9.66 12.898c-.211 0-.333-.129-.333-.353v-2.038c0-.226.118-.352.329-.352.211 0 .33.129.33.352v2.038c0 .226-.117.353-.326.353zM6.584 11.704v-.36c0-.75.45-1.219 1.184-1.219.309 0 .582.083.781.232.18.129.298.299.298.455 0 .157-.11.264-.268.264a.259.259 0 01-.195-.084c-.161-.16-.311-.314-.568-.314-.377 0-.574.24-.574.697v.327c0 .451.201.699.568.699.285 0 .476-.167.476-.414v-.115h-.245c-.173 0-.269-.083-.269-.234 0-.148.094-.23.27-.23h.488c.263 0 .378.113.378.365v.164c0 .597-.452 1-1.124 1-.756 0-1.2-.463-1.2-1.233zM5.625 12.567a.359.359 0 01.718 0 .359.359 0 01-.718 0z",
57162
+ fill: "#33625E"
57163
+ })));
57164
+ }
57165
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgGifFile);
57166
+
57167
+ /***/ }),
57168
+
57032
57169
  /***/ 59917:
57033
57170
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57034
57171
 
@@ -57037,24 +57174,234 @@ __webpack_require__.r(__webpack_exports__);
57037
57174
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57038
57175
  /* harmony export */ });
57039
57176
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57040
- var _path;
57177
+ var _path, _mask, _path2, _path3, _path4, _path5, _mask2, _path6, _path7, _path8;
57041
57178
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57042
57179
 
57043
57180
  function SvgHtmlFile(props) {
57044
57181
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57045
- "data-testid": "htmlIcon",
57046
- width: 24,
57047
- height: 24,
57182
+ viewBox: "0 0 32 32",
57048
57183
  fill: "none",
57049
57184
  xmlns: "http://www.w3.org/2000/svg"
57050
57185
  }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57051
- d: "M2 11.125l7.5-7v3.25l-5.625 5 5.625 5v3.25l-7.5-7v-2.5zm20 2.625l-7.5 7v-3.375l5.75-5-5.75-5V4l7.5 7v2.75z"
57186
+ fillRule: "evenodd",
57187
+ clipRule: "evenodd",
57188
+ d: "M25.143 8.5H6.857L8.38 25.75 16 28l7.619-2.25L25.143 8.5z",
57189
+ fill: "#E44D26"
57190
+ })), _mask || (_mask = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("mask", {
57191
+ id: "html_file_svg__a",
57192
+ fill: "#fff"
57193
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57194
+ fillRule: "evenodd",
57195
+ clipRule: "evenodd",
57196
+ d: "M8.99 4v3.3h.915V6.1h1.219v1.2h.914V4h-.914v1.2h-1.22V4H8.99zm7.315 0v3.3h.914V5.5l.762 1.2.762-1.2v1.8h.914V4h-.914l-.762 1.05L17.219 4h-.915zm3.961 0v3.3h2.743v-.9h-1.828V4h-.915z"
57197
+ }))), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57198
+ fillRule: "evenodd",
57199
+ clipRule: "evenodd",
57200
+ d: "M8.99 4v3.3h.915V6.1h1.219v1.2h.914V4h-.914v1.2h-1.22V4H8.99zm7.315 0v3.3h.914V5.5l.762 1.2.762-1.2v1.8h.914V4h-.914l-.762 1.05L17.219 4h-.915zm3.961 0v3.3h2.743v-.9h-1.828V4h-.915z",
57201
+ fill: "#000"
57202
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57203
+ d: "M8.99 4V2h-2v2h2zm0 3.3h-2v2h2v-2zm.915 0v2h2v-2h-2zm0-1.2v-2h-2v2h2zm1.219 0h2v-2h-2v2zm0 1.2h-2v2h2v-2zm.914 0v2h2v-2h-2zm0-3.3h2V2h-2v2zm-.914 0V2h-2v2h2zm0 1.2v2h2v-2h-2zm-1.22 0h-2v2h2v-2zm0-1.2h2V2h-2v2zm6.4 0V2h-2v2h2zm0 3.3h-2v2h2v-2zm.915 0v2h2v-2h-2zm0-1.8l1.688-1.072-3.688-5.81V5.5h2zm.762 1.2l-1.689 1.072 1.689 2.66 1.688-2.66L17.981 6.7zm.762-1.2h2v-6.881l-3.689 5.809L18.743 5.5zm0 1.8h-2v2h2v-2zm.914 0v2h2v-2h-2zm0-3.3h2V2h-2v2zm-.914 0V2h-1.02l-.6.825L18.744 4zm-.762 1.05l-1.619 1.175 1.619 2.23 1.618-2.23-1.618-1.175zM17.219 4l1.618-1.175L18.24 2h-1.02v2zm3.047 0V2h-2v2h2zm0 3.3h-2v2h2v-2zm2.743 0v2h2v-2h-2zm0-.9h2v-2h-2v2zm-1.828 0h-2v2h2v-2zm0-2.4h2V2h-2v2zM8.99 4h-2v3.3h4V4h-2zm0 3.3v2h.914v-4H8.99v2zm.914 0h2V6.1h-4v1.2h2zm0-1.2v2h1.219v-4h-1.22v2zm1.219 0h-2v1.2h4V6.1h-2zm0 1.2v2h.914v-4h-.914v2zm.914 0h2V4h-4v3.3h2zm0-3.3V2h-.914v4h.914V4zm-.914 0h-2v1.2h4V4h-2zm0 1.2v-2h-1.22v4h1.22v-2zm-1.22 0h2V4h-4v1.2h2zm0-1.2V2H8.99v4h.915V4zm6.4 0h-2v3.3h4V4h-2zm0 3.3v2h.915v-4h-.915v2zm.915 0h2V5.5h-4v1.8h2zm0-1.8L15.53 6.572l.762 1.2L17.981 6.7l1.688-1.072-.762-1.2L17.22 5.5zm.762 1.2l1.688 1.072.762-1.2L18.743 5.5l-1.689-1.072-.762 1.2L17.981 6.7zm.762-1.2h-2v1.8h4V5.5h-2zm0 1.8v2h.914v-4h-.914v2zm.914 0h2V4h-4v3.3h2zm0-3.3V2h-.914v4h.914V4zm-.914 0l-1.62-1.175-.761 1.05 1.619 1.175 1.618 1.175.762-1.05L18.743 4zm-.762 1.05l1.618-1.175-.762-1.05L17.22 4 15.6 5.175l.762 1.05 1.619-1.175zM17.219 4V2h-.915v4h.915V4zm3.047 0h-2v3.3h4V4h-2zm0 3.3v2h2.743v-4h-2.743v2zm2.743 0h2v-.9h-4v.9h2zm0-.9v-2h-1.828v4h1.828v-2zm-1.828 0h2V4h-4v2.4h2zm0-2.4V2h-.915v4h.915V4z",
57204
+ fill: "#003046",
57205
+ mask: "url(#html_file_svg__a)"
57206
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57207
+ fillRule: "evenodd",
57208
+ clipRule: "evenodd",
57209
+ d: "M13.674 23.563l-2.504-.74-.204-2.31-.067-.763h2.438l.133 1.503L16 22v2.25l-2.326-.687zM16 13.75h-3.193l.198 2.25H16v2.25h-5.234L10.567 16l-.198-2.25-.2-2.25H16v2.25z",
57210
+ fill: "#EBEBEB"
57211
+ })), _path5 || (_path5 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57212
+ fillRule: "evenodd",
57213
+ clipRule: "evenodd",
57214
+ d: "M22.625 19.75l.133-1.5.198-2.25.2-2.25.198-2.25.133-1.5H16v16.5l4.626-1.366 1.565-.462.204-2.31.204-2.31.026-.302z",
57215
+ fill: "#F16529"
57216
+ })), _mask2 || (_mask2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("mask", {
57217
+ id: "html_file_svg__b",
57218
+ fill: "#fff"
57219
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57220
+ fillRule: "evenodd",
57221
+ clipRule: "evenodd",
57222
+ d: "M12.648 4v.9h1.066v2.4h.914V4.9h1.067V4h-3.047z"
57223
+ }))), _path6 || (_path6 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57224
+ fillRule: "evenodd",
57225
+ clipRule: "evenodd",
57226
+ d: "M12.648 4v.9h1.066v2.4h.914V4.9h1.067V4h-3.047z",
57227
+ fill: "#000"
57228
+ })), _path7 || (_path7 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57229
+ d: "M12.648 4V2h-2v2h2zm0 .9h-2v2h2v-2zm1.066 0h2v-2h-2v2zm0 2.4h-2v2h2v-2zm.914 0v2h2v-2h-2zm0-2.4v-2h-2v2h2zm1.067 0v2h2v-2h-2zm0-.9h2V2h-2v2zm-3.047 0h-2v.9h4V4h-2zm0 .9v2h1.066v-4h-1.066v2zm1.066 0h-2v2.4h4V4.9h-2zm0 2.4v2h.914v-4h-.914v2zm.914 0h2V4.9h-4v2.4h2zm0-2.4v2h1.067v-4h-1.067v2zm1.067 0h2V4h-4v.9h2zm0-.9V2h-3.047v4h3.047V4z",
57230
+ fill: "#003046",
57231
+ mask: "url(#html_file_svg__b)"
57232
+ })), _path8 || (_path8 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57233
+ fillRule: "evenodd",
57234
+ clipRule: "evenodd",
57235
+ d: "M16 13.75h5.631l.2-2.25H16v2.25zm2.796 4.5H16V16h5.433l-.199 2.25-.133 1.5-.067.764-.204 2.31-2.503.739L16 24.25V22l2.53-.747.133-1.503.133-1.5z",
57236
+ fill: "#fff"
57052
57237
  })));
57053
57238
  }
57054
57239
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgHtmlFile);
57055
57240
 
57056
57241
  /***/ }),
57057
57242
 
57243
+ /***/ 19797:
57244
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57245
+
57246
+ __webpack_require__.r(__webpack_exports__);
57247
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57248
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57249
+ /* harmony export */ });
57250
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57251
+ var _path, _path2, _path3, _path4;
57252
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57253
+
57254
+ function SvgJpgFile(props) {
57255
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57256
+ viewBox: "0 0 18 18",
57257
+ fill: "none",
57258
+ xmlns: "http://www.w3.org/2000/svg"
57259
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57260
+ d: "M15.75 10.688c0-.622-.504-1.126-1.125-1.126H3.375c-.621 0-1.125.504-1.125 1.126v1.687c0 .621.504 1.125 1.125 1.125h11.25c.621 0 1.125-.504 1.125-1.125v-1.688zm1.125 1.687a2.25 2.25 0 01-2.25 2.25H3.375a2.25 2.25 0 01-2.25-2.25v-1.688a2.25 2.25 0 012.25-2.25h11.25a2.25 2.25 0 012.25 2.25v1.688z",
57261
+ fill: "#33625E"
57262
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57263
+ d: "M14.963 14.4a1.913 1.913 0 01-1.913 1.912h-8.1A1.913 1.913 0 013.037 14.4v-.9h1.126v.9a.788.788 0 00.787.787h8.1a.789.789 0 00.788-.787v-.9h1.125v.9z",
57264
+ fill: "#33625E"
57265
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57266
+ fillRule: "evenodd",
57267
+ clipRule: "evenodd",
57268
+ d: "M9.73 1.69c.13.013.25.07.343.162l4.725 4.726a.563.563 0 01.165.397v2.588h-1.125V7.537H9.675a.563.563 0 01-.562-.563V2.813H4.95a.788.788 0 00-.787.787v5.963H3.037V3.6A1.913 1.913 0 014.95 1.687h4.725l.056.003zm.508 4.723h2.804l-2.804-2.805v2.805z",
57269
+ fill: "#33625E"
57270
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57271
+ d: "M10.517 11.704v-.36c0-.75.47-1.219 1.233-1.219.322 0 .606.083.814.232.187.129.31.299.31.455 0 .157-.115.264-.279.264a.275.275 0 01-.203-.084c-.168-.16-.324-.314-.592-.314-.392 0-.598.24-.598.697v.327c0 .451.21.699.592.699.297 0 .496-.167.496-.414v-.115h-.255c-.181 0-.28-.083-.28-.234 0-.148.097-.23.28-.23h.508c.274 0 .395.113.395.365v.164c0 .597-.472 1-1.171 1-.787 0-1.25-.463-1.25-1.233zM8.417 12.898c-.218 0-.34-.127-.34-.353v-1.923c0-.323.124-.447.448-.447h.728c.62 0 1.013.36 1.013.916 0 .593-.398.924-1.048.924H8.76v.53c0 .224-.124.353-.344.353zm.346-1.37h.312c.355 0 .512-.112.512-.425 0-.269-.155-.423-.435-.423h-.389v.847zM6.841 10.517c0-.233.119-.362.339-.362.222 0 .346.13.346.362v1.428c0 .636-.375.992-1.044.992-.342 0-.616-.09-.776-.255a.475.475 0 01-.15-.339c0-.172.117-.283.285-.283.118 0 .19.05.266.129.095.109.207.192.386.192.23 0 .348-.129.348-.432v-1.432zM4.5 12.567c0-.196.17-.356.374-.356.205 0 .373.16.373.356a.366.366 0 01-.373.357.368.368 0 01-.374-.357z",
57272
+ fill: "#33625E"
57273
+ })));
57274
+ }
57275
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgJpgFile);
57276
+
57277
+ /***/ }),
57278
+
57279
+ /***/ 73895:
57280
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57281
+
57282
+ __webpack_require__.r(__webpack_exports__);
57283
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57284
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57285
+ /* harmony export */ });
57286
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57287
+ var _path, _path2;
57288
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57289
+
57290
+ function SvgJsFile(props) {
57291
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57292
+ viewBox: "0 0 32 32",
57293
+ fill: "none",
57294
+ xmlns: "http://www.w3.org/2000/svg"
57295
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57296
+ d: "M28 4H4v24h24V4z",
57297
+ fill: "#F7DF1E"
57298
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57299
+ d: "M21.545 15.971a1.92 1.92 0 00-1.357 1.854c0 .6.21 1.113.657 1.52.366.333.863.564 1.332.767h.004l.563.243c.933.4 1.52.749 1.88 1.136.317.34.512.767.512 1.487 0 .726-.271 1.218-.689 1.552-.444.354-1.138.591-2.048.592-1.233 0-2.096-.408-2.667-.99l.127-.074c.17.18.359.35.576.498.533.364 1.167.564 1.912.564.623 0 1.232-.155 1.712-.511.5-.37.819-.938.819-1.602a2.05 2.05 0 00-.225-.958 2.151 2.151 0 00-.592-.698c-.405-.318-.953-.55-1.424-.757l-.006-.003-.565-.242h-.002l-.276-.123c-.616-.285-1.046-.57-1.332-.892-.296-.334-.492-.767-.492-1.463 0-.582.217-1.057.577-1.392a2.176 2.176 0 011.004-.508zm-5.475.049v6.7c0 .97-.279 1.525-.62 1.846-.351.331-.916.55-1.748.55-.919 0-1.544-.3-1.973-.743l.127-.078a2.208 2.208 0 001.75.81c.472.001 1.107-.087 1.596-.585.48-.489.613-1.165.613-1.832V16.02h.255zm6.94-.063c.248.05.46.125.642.225.125.068.247.154.367.26l-.072.046a2.26 2.26 0 00-.938-.53z",
57300
+ fill: "#000",
57301
+ stroke: "#003046",
57302
+ strokeWidth: 2
57303
+ })));
57304
+ }
57305
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgJsFile);
57306
+
57307
+ /***/ }),
57308
+
57309
+ /***/ 37505:
57310
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57311
+
57312
+ __webpack_require__.r(__webpack_exports__);
57313
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57314
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57315
+ /* harmony export */ });
57316
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57317
+ var _path, _path2, _path3, _path4;
57318
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57319
+
57320
+ function SvgMdFile(props) {
57321
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57322
+ viewBox: "0 0 32 32",
57323
+ fill: "none",
57324
+ xmlns: "http://www.w3.org/2000/svg"
57325
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57326
+ d: "M7 3.52v23.96c0 .286.237.52.528.52h17.944c.29 0 .528-.234.528-.52V10.291h-5.806a.526.526 0 01-.527-.521V3H7.527A.526.526 0 007 3.52z",
57327
+ fill: "#E91E63"
57328
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57329
+ d: "M25.974 9.25a.776.776 0 00-.106-.26l-5.146-5.677V9.25h5.252z",
57330
+ fill: "#E91E63"
57331
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57332
+ d: "M8.583 13.677h15.834v12.76H8.583v-12.76z",
57333
+ fill: "#fff"
57334
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57335
+ d: "M10.563 22.896v-5.677h1.688l1.69 2.083 1.688-2.083h1.69v5.677h-1.69V19.64l-1.689 2.083-1.689-2.083v3.255h-1.688zm10.133 0l-2.534-2.76h1.69v-2.917h1.688v2.916h1.69l-2.534 2.76z",
57336
+ fill: "#E91E63"
57337
+ })));
57338
+ }
57339
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgMdFile);
57340
+
57341
+ /***/ }),
57342
+
57343
+ /***/ 71720:
57344
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57345
+
57346
+ __webpack_require__.r(__webpack_exports__);
57347
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57348
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57349
+ /* harmony export */ });
57350
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57351
+ var _path;
57352
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57353
+
57354
+ function SvgMinusCircle(props) {
57355
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57356
+ width: 18,
57357
+ height: 18,
57358
+ fill: "none",
57359
+ xmlns: "http://www.w3.org/2000/svg"
57360
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57361
+ d: "M14.523 9A5.523 5.523 0 103.477 9a5.523 5.523 0 0011.046 0zm-3.069-.614a.614.614 0 110 1.228H6.545a.614.614 0 010-1.228h4.91zM15.75 9a6.75 6.75 0 11-13.5 0 6.75 6.75 0 0113.5 0z",
57362
+ fill: "#69746D"
57363
+ })));
57364
+ }
57365
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgMinusCircle);
57366
+
57367
+ /***/ }),
57368
+
57369
+ /***/ 97512:
57370
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57371
+
57372
+ __webpack_require__.r(__webpack_exports__);
57373
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57374
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57375
+ /* harmony export */ });
57376
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57377
+ var _path, _path2, _path3, _path4;
57378
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57379
+
57380
+ function SvgMp3File(props) {
57381
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57382
+ viewBox: "0 0 18 18",
57383
+ fill: "none",
57384
+ xmlns: "http://www.w3.org/2000/svg"
57385
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57386
+ d: "M15.75 10.688c0-.622-.504-1.126-1.125-1.126H3.375c-.621 0-1.125.504-1.125 1.126v1.687c0 .621.504 1.125 1.125 1.125h11.25c.621 0 1.125-.504 1.125-1.125v-1.688zm1.125 1.687a2.25 2.25 0 01-2.25 2.25H3.375a2.25 2.25 0 01-2.25-2.25v-1.688a2.25 2.25 0 012.25-2.25h11.25a2.25 2.25 0 012.25 2.25v1.688z",
57387
+ fill: "#33625E"
57388
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57389
+ d: "M14.963 14.4a1.913 1.913 0 01-1.913 1.912h-8.1A1.913 1.913 0 013.037 14.4v-.9h1.126v.9a.788.788 0 00.787.787h8.1a.789.789 0 00.788-.787v-.9h1.125v.9z",
57390
+ fill: "#33625E"
57391
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57392
+ fillRule: "evenodd",
57393
+ clipRule: "evenodd",
57394
+ d: "M9.73 1.69c.13.013.25.07.343.162l4.725 4.726a.563.563 0 01.165.397v2.588h-1.125V7.537H9.675a.563.563 0 01-.562-.563V2.813H4.95a.788.788 0 00-.787.787v5.963H3.037V3.6A1.913 1.913 0 014.95 1.687h4.725l.056.003zm.508 4.723h2.804l-2.804-2.805v2.805z",
57395
+ fill: "#33625E"
57396
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57397
+ d: "M11.425 12.3c0-.15.106-.258.253-.258.096 0 .176.046.267.157a.571.571 0 00.475.245c.265 0 .438-.136.438-.348 0-.21-.175-.353-.436-.353h-.162c-.139 0-.24-.105-.24-.25 0-.138.1-.245.24-.245h.156c.217 0 .378-.135.378-.319s-.157-.31-.382-.31c-.172 0-.309.074-.431.235a.313.313 0 01-.26.135c-.155 0-.266-.103-.266-.25 0-.327.428-.614.97-.614.585 0 .995.3.995.725 0 .291-.219.55-.496.584v.044c.33.024.576.299.576.643 0 .478-.447.816-1.08.816-.557 0-.995-.299-.995-.637zM9.358 12.898c-.21 0-.329-.127-.329-.353v-1.923c0-.323.12-.447.434-.447h.704c.6 0 .98.36.98.916 0 .593-.386.924-1.014.924H9.69v.53c0 .224-.12.353-.333.353zm.335-1.37h.301c.344 0 .496-.112.496-.425 0-.269-.15-.423-.421-.423h-.376v.847zM5.997 12.898c-.19 0-.291-.119-.291-.34v-1.981c0-.264.153-.424.397-.424.213 0 .352.105.458.388l.532 1.35h.022l.53-1.352c.108-.287.238-.386.461-.386.249 0 .391.154.391.424v1.98c0 .216-.11.34-.303.34-.188 0-.289-.118-.289-.34v-1.36h-.018L7.41 12.4c-.079.202-.17.265-.305.265-.137 0-.231-.067-.31-.265l-.479-1.204H6.3v1.36c0 .216-.11.34-.303.34zM4.5 12.567a.361.361 0 01.722 0 .361.361 0 01-.722 0z",
57398
+ fill: "#33625E"
57399
+ })));
57400
+ }
57401
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgMp3File);
57402
+
57403
+ /***/ }),
57404
+
57058
57405
  /***/ 86936:
57059
57406
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57060
57407
 
@@ -57080,6 +57427,68 @@ function SvgOpenInNewTab(props) {
57080
57427
 
57081
57428
  /***/ }),
57082
57429
 
57430
+ /***/ 45494:
57431
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57432
+
57433
+ __webpack_require__.r(__webpack_exports__);
57434
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57435
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57436
+ /* harmony export */ });
57437
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57438
+ var _path;
57439
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57440
+
57441
+ function SvgPlusCircle(props) {
57442
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57443
+ width: 18,
57444
+ height: 18,
57445
+ fill: "none",
57446
+ xmlns: "http://www.w3.org/2000/svg"
57447
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57448
+ d: "M14.523 9A5.523 5.523 0 103.477 9a5.523 5.523 0 0011.046 0zm-6.137 2.454v-1.84h-1.84a.614.614 0 010-1.228h1.84v-1.84a.614.614 0 011.228 0v1.84h1.84a.614.614 0 110 1.228h-1.84v1.84a.614.614 0 11-1.228 0zM15.75 9a6.75 6.75 0 11-13.5 0 6.75 6.75 0 0113.5 0z",
57449
+ fill: "#828282"
57450
+ })));
57451
+ }
57452
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgPlusCircle);
57453
+
57454
+ /***/ }),
57455
+
57456
+ /***/ 3745:
57457
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57458
+
57459
+ __webpack_require__.r(__webpack_exports__);
57460
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57461
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57462
+ /* harmony export */ });
57463
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57464
+ var _path, _path2, _path3, _path4;
57465
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57466
+
57467
+ function SvgPngFile(props) {
57468
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57469
+ viewBox: "0 0 18 18",
57470
+ fill: "none",
57471
+ xmlns: "http://www.w3.org/2000/svg"
57472
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57473
+ d: "M15.75 10.688c0-.622-.504-1.126-1.125-1.126H3.375c-.621 0-1.125.504-1.125 1.126v1.687c0 .621.504 1.125 1.125 1.125h11.25c.621 0 1.125-.504 1.125-1.125v-1.688zm1.125 1.687a2.25 2.25 0 01-2.25 2.25H3.375a2.25 2.25 0 01-2.25-2.25v-1.688a2.25 2.25 0 012.25-2.25h11.25a2.25 2.25 0 012.25 2.25v1.688z",
57474
+ fill: "#33625E"
57475
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57476
+ d: "M14.963 14.4a1.913 1.913 0 01-1.913 1.912h-8.1A1.913 1.913 0 013.037 14.4v-.9h1.126v.9a.788.788 0 00.787.787h8.1a.789.789 0 00.788-.787v-.9h1.125v.9z",
57477
+ fill: "#33625E"
57478
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57479
+ fillRule: "evenodd",
57480
+ clipRule: "evenodd",
57481
+ d: "M9.73 1.69c.13.013.25.07.343.162l4.725 4.726a.563.563 0 01.165.397v2.588h-1.125V7.537H9.675a.563.563 0 01-.562-.563V2.813H4.95a.788.788 0 00-.787.787v5.963H3.037V3.6A1.913 1.913 0 014.95 1.687h4.725l.056.003zm.508 4.723h2.804l-2.804-2.805v2.805z",
57482
+ fill: "#33625E"
57483
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57484
+ d: "M11.078 11.704v-.36c0-.75.47-1.219 1.234-1.219.322 0 .606.083.814.232.187.129.31.299.31.455 0 .157-.115.264-.279.264a.276.276 0 01-.203-.084c-.168-.16-.324-.314-.592-.314-.393 0-.598.24-.598.697v.327c0 .451.21.699.591.699.297 0 .497-.167.497-.414v-.115h-.255c-.181 0-.28-.083-.28-.234 0-.148.097-.23.28-.23h.508c.274 0 .395.113.395.365v.164c0 .597-.472 1-1.171 1-.788 0-1.25-.463-1.25-1.233zM8.928 12.557c0 .214-.114.34-.315.34-.202 0-.32-.128-.32-.34V10.54c0-.254.114-.384.34-.384.152 0 .24.071.376.261l.956 1.359h.027v-1.28c0-.213.116-.34.315-.34.202 0 .322.127.322.34v2.039c0 .237-.112.364-.322.364-.153 0-.247-.062-.388-.26l-.964-1.376h-.027v1.295zM6.08 12.898c-.217 0-.34-.127-.34-.353v-1.923c0-.323.125-.447.449-.447h.729c.62 0 1.013.36 1.013.916 0 .593-.398.924-1.049.924h-.457v.53c0 .224-.124.353-.344.353zm.348-1.37h.311c.355 0 .513-.112.513-.425 0-.269-.156-.423-.436-.423h-.388v.847zM4.5 12.567c0-.196.17-.356.374-.356.206 0 .374.16.374.356a.367.367 0 01-.374.357.368.368 0 01-.374-.357z",
57485
+ fill: "#33625E"
57486
+ })));
57487
+ }
57488
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgPngFile);
57489
+
57490
+ /***/ }),
57491
+
57083
57492
  /***/ 90830:
57084
57493
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57085
57494
 
@@ -57093,8 +57502,7 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
57093
57502
 
57094
57503
  function SvgPythonFile(props) {
57095
57504
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57096
- width: 18,
57097
- height: 18,
57505
+ viewBox: "0 0 18 18",
57098
57506
  fill: "none",
57099
57507
  xmlns: "http://www.w3.org/2000/svg"
57100
57508
  }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
@@ -57136,6 +57544,70 @@ function SvgPythonFile(props) {
57136
57544
 
57137
57545
  /***/ }),
57138
57546
 
57547
+ /***/ 98201:
57548
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57549
+
57550
+ __webpack_require__.r(__webpack_exports__);
57551
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57552
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57553
+ /* harmony export */ });
57554
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57555
+ var _path, _path2;
57556
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57557
+
57558
+ function SvgUploadFile(props) {
57559
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57560
+ viewBox: "0 0 16 16",
57561
+ fill: "none",
57562
+ xmlns: "http://www.w3.org/2000/svg"
57563
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57564
+ d: "M3.09 12.364V3.636A1.636 1.636 0 014.728 2h3.818l.054.003a.545.545 0 01.332.157l3.818 3.818c.103.102.16.241.16.386v6a.545.545 0 11-1.09 0V6.909H8.544A.545.545 0 018 6.364V3.09H4.727a.545.545 0 00-.545.545v8.728a.545.545 0 11-1.091 0zm6-6.546h1.957L9.09 3.862v1.956z",
57565
+ fill: "#33625E"
57566
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57567
+ d: "M7.454 13.454V9.862l-1.25 1.25a.545.545 0 11-.772-.77L7.614 8.16l.042-.038a.545.545 0 01.73.038l2.181 2.182a.545.545 0 11-.77.77l-1.252-1.25v3.592a.545.545 0 11-1.09 0z",
57568
+ fill: "#33625E"
57569
+ })));
57570
+ }
57571
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgUploadFile);
57572
+
57573
+ /***/ }),
57574
+
57575
+ /***/ 7384:
57576
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
57577
+
57578
+ __webpack_require__.r(__webpack_exports__);
57579
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
57580
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
57581
+ /* harmony export */ });
57582
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(51649);
57583
+ var _path, _path2, _path3, _path4;
57584
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
57585
+
57586
+ function SvgWavFile(props) {
57587
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
57588
+ viewBox: "0 0 18 18",
57589
+ fill: "none",
57590
+ xmlns: "http://www.w3.org/2000/svg"
57591
+ }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57592
+ d: "M15.75 10.688c0-.622-.504-1.126-1.125-1.126H3.375c-.621 0-1.125.504-1.125 1.126v1.687c0 .621.504 1.125 1.125 1.125h11.25c.621 0 1.125-.504 1.125-1.125v-1.688zm1.125 1.687a2.25 2.25 0 01-2.25 2.25H3.375a2.25 2.25 0 01-2.25-2.25v-1.688a2.25 2.25 0 012.25-2.25h11.25a2.25 2.25 0 012.25 2.25v1.688z",
57593
+ fill: "#33625E"
57594
+ })), _path2 || (_path2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57595
+ d: "M14.963 14.4a1.913 1.913 0 01-1.913 1.912h-8.1A1.913 1.913 0 013.037 14.4v-.9h1.126v.9a.788.788 0 00.787.787h8.1a.789.789 0 00.788-.787v-.9h1.125v.9z",
57596
+ fill: "#33625E"
57597
+ })), _path3 || (_path3 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57598
+ fillRule: "evenodd",
57599
+ clipRule: "evenodd",
57600
+ d: "M9.73 1.69c.13.013.25.07.343.162l4.725 4.726a.563.563 0 01.165.397v2.588h-1.125V7.537H9.675a.563.563 0 01-.562-.563V2.813H4.95a.788.788 0 00-.787.787v5.963H3.037V3.6A1.913 1.913 0 014.95 1.687h4.725l.056.003zm.508 4.723h2.804l-2.804-2.805v2.805z",
57601
+ fill: "#33625E"
57602
+ })), _path4 || (_path4 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
57603
+ d: "M11.83 12.18l.482-1.727c.06-.234.153-.328.32-.328.179 0 .306.118.306.293 0 .067-.021.17-.05.264l-.557 1.761c-.1.33-.252.468-.522.468-.274 0-.431-.14-.53-.468l-.557-1.761a.912.912 0 01-.05-.258c0-.176.13-.299.309-.299.16 0 .264.107.327.328l.493 1.727h.029zM8.718 12.913c-.17 0-.288-.112-.288-.273 0-.066.017-.143.06-.277l.572-1.778c.102-.325.25-.456.522-.456s.416.129.52.456l.569 1.778a.93.93 0 01.05.263c0 .175-.117.287-.296.287-.166 0-.263-.096-.325-.323l-.099-.328h-.867l-.1.328c-.063.233-.152.323-.318.323zm.546-1.13h.613l-.29-1.04h-.03l-.293 1.04zM5.685 12.572l-.504-1.907a1.03 1.03 0 01-.033-.225c0-.186.125-.315.307-.315.166 0 .264.114.317.364l.322 1.518h.03l.348-1.528c.057-.25.151-.354.327-.354.176 0 .274.108.33.354l.347 1.528h.032l.308-1.518c.047-.246.153-.364.321-.364.178 0 .303.129.303.31 0 .056-.01.142-.023.19l-.505 1.947c-.06.23-.173.335-.363.335-.198 0-.325-.104-.385-.353l-.352-1.415h-.024l-.356 1.433c-.055.219-.183.335-.369.335-.187 0-.31-.082-.378-.335zM4.5 12.576c0-.199.155-.362.34-.362.187 0 .34.163.34.362 0 .199-.153.361-.34.361-.185 0-.34-.162-.34-.361z",
57604
+ fill: "#33625E"
57605
+ })));
57606
+ }
57607
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgWavFile);
57608
+
57609
+ /***/ }),
57610
+
57139
57611
  /***/ 30416:
57140
57612
  /***/ ((module) => {
57141
57613
 
@@ -59770,7 +60242,9 @@ var PyodideRunner = _ref => {
59770
60242
  extension,
59771
60243
  content
59772
60244
  } of projectCode) {
59773
- writeFile([name, extension].join("."), content);
60245
+ if (name && extension) {
60246
+ writeFile([name, extension].join("."), content);
60247
+ }
59774
60248
  }
59775
60249
 
59776
60250
  // program is the content of the component with name main and extension py
@@ -59993,265 +60467,6 @@ var PythonRunner = _ref => {
59993
60467
 
59994
60468
  /***/ }),
59995
60469
 
59996
- /***/ 91148:
59997
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
59998
-
59999
- // ESM COMPAT FLAG
60000
- __webpack_require__.r(__webpack_exports__);
60001
-
60002
- // EXPORTS
60003
- __webpack_require__.d(__webpack_exports__, {
60004
- FileTreeActions: () => (/* binding */ FileTreeActions)
60005
- });
60006
-
60007
- // EXTERNAL MODULE: external "react"
60008
- var external_react_ = __webpack_require__(51649);
60009
- ;// ./src/assets/icons/plus_circle.svg
60010
- var _path;
60011
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
60012
-
60013
- function SvgPlusCircle(props) {
60014
- return /*#__PURE__*/external_react_.createElement("svg", _extends({
60015
- width: 18,
60016
- height: 18,
60017
- fill: "none",
60018
- xmlns: "http://www.w3.org/2000/svg"
60019
- }, props), _path || (_path = /*#__PURE__*/external_react_.createElement("path", {
60020
- d: "M14.523 9A5.523 5.523 0 103.477 9a5.523 5.523 0 0011.046 0zm-6.137 2.454v-1.84h-1.84a.614.614 0 010-1.228h1.84v-1.84a.614.614 0 011.228 0v1.84h1.84a.614.614 0 110 1.228h-1.84v1.84a.614.614 0 11-1.228 0zM15.75 9a6.75 6.75 0 11-13.5 0 6.75 6.75 0 0113.5 0z",
60021
- fill: "#828282"
60022
- })));
60023
- }
60024
- /* harmony default export */ const plus_circle = (SvgPlusCircle);
60025
- ;// ./src/assets/icons/minus_circle.svg
60026
- var minus_circle_path;
60027
- function minus_circle_extends() { return minus_circle_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, minus_circle_extends.apply(null, arguments); }
60028
-
60029
- function SvgMinusCircle(props) {
60030
- return /*#__PURE__*/external_react_.createElement("svg", minus_circle_extends({
60031
- width: 18,
60032
- height: 18,
60033
- fill: "none",
60034
- xmlns: "http://www.w3.org/2000/svg"
60035
- }, props), minus_circle_path || (minus_circle_path = /*#__PURE__*/external_react_.createElement("path", {
60036
- d: "M14.523 9A5.523 5.523 0 103.477 9a5.523 5.523 0 0011.046 0zm-3.069-.614a.614.614 0 110 1.228H6.545a.614.614 0 010-1.228h4.91zM15.75 9a6.75 6.75 0 11-13.5 0 6.75 6.75 0 0113.5 0z",
60037
- fill: "#69746D"
60038
- })));
60039
- }
60040
- /* harmony default export */ const minus_circle = (SvgMinusCircle);
60041
- ;// ./src/assets/icons/add_folder.svg
60042
- var add_folder_path;
60043
- function add_folder_extends() { return add_folder_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, add_folder_extends.apply(null, arguments); }
60044
-
60045
- function SvgAddFolder(props) {
60046
- return /*#__PURE__*/external_react_.createElement("svg", add_folder_extends({
60047
- width: 18,
60048
- height: 18,
60049
- fill: "none",
60050
- xmlns: "http://www.w3.org/2000/svg"
60051
- }, props), add_folder_path || (add_folder_path = /*#__PURE__*/external_react_.createElement("path", {
60052
- d: "M9 8.325v4.05M6.975 10.35h4.05m4.725 3.375a1.35 1.35 0 01-1.35 1.35H3.6a1.35 1.35 0 01-1.35-1.35v-9.45a1.35 1.35 0 011.35-1.35h3.375l1.35 2.025H14.4a1.35 1.35 0 011.35 1.35v7.425z",
60053
- stroke: "#33625E",
60054
- strokeLinecap: "round",
60055
- strokeLinejoin: "round"
60056
- })));
60057
- }
60058
- /* harmony default export */ const add_folder = (SvgAddFolder);
60059
- ;// ./src/assets/icons/add_file.svg
60060
- var add_file_path;
60061
- function add_file_extends() { return add_file_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, add_file_extends.apply(null, arguments); }
60062
-
60063
- function SvgAddFile(props) {
60064
- return /*#__PURE__*/external_react_.createElement("svg", add_file_extends({
60065
- width: 18,
60066
- height: 18,
60067
- fill: "none",
60068
- xmlns: "http://www.w3.org/2000/svg"
60069
- }, props), add_file_path || (add_file_path = /*#__PURE__*/external_react_.createElement("path", {
60070
- d: "M10.35 2.25h-5.4A1.35 1.35 0 003.6 3.6v10.8a1.35 1.35 0 001.35 1.35h8.1a1.35 1.35 0 001.35-1.35V6.3m-4.05-4.05L14.4 6.3m-4.05-4.05V6.3h4.05M9 13.05V9m-2.025 2.025h4.05",
60071
- stroke: "#33625E",
60072
- strokeLinecap: "round",
60073
- strokeLinejoin: "round"
60074
- })));
60075
- }
60076
- /* harmony default export */ const add_file = (SvgAddFile);
60077
- // EXTERNAL MODULE: ./node_modules/classnames/index.js
60078
- var classnames = __webpack_require__(46942);
60079
- var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
60080
- // EXTERNAL MODULE: ./src/components/Menus/Sidebar/FilePanel/FileTree/styles.module.scss
60081
- var styles_module = __webpack_require__(79473);
60082
- // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
60083
- var jsx_runtime = __webpack_require__(74848);
60084
- ;// ./src/components/Menus/Sidebar/FilePanel/FileTree/FileTreeActions.jsx
60085
-
60086
-
60087
-
60088
-
60089
-
60090
-
60091
-
60092
- var FileTreeActions = _ref => {
60093
- var {
60094
- onFileCreate,
60095
- onDirCreate,
60096
- onExpandAll,
60097
- onCollapseAll,
60098
- hasExpandedNodes
60099
- } = _ref;
60100
- return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
60101
- className: styles_module["default"].fileTreeActions,
60102
- children: [hasExpandedNodes ? /*#__PURE__*/(0,jsx_runtime.jsx)("button", {
60103
- type: "button",
60104
- "aria-label": "Collapse all folders",
60105
- onClick: onCollapseAll,
60106
- className: styles_module["default"].iconButton,
60107
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(minus_circle, {
60108
- "aria-hidden": "true",
60109
- focusable: "false"
60110
- })
60111
- }) : /*#__PURE__*/(0,jsx_runtime.jsx)("button", {
60112
- type: "button",
60113
- "aria-label": "Expand all folders",
60114
- onClick: onExpandAll,
60115
- className: styles_module["default"].iconButton,
60116
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(plus_circle, {
60117
- "aria-hidden": "true",
60118
- focusable: "false"
60119
- })
60120
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
60121
- className: styles_module["default"].label,
60122
- children: "Project files"
60123
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("button", {
60124
- type: "button",
60125
- "aria-label": "Add folder",
60126
- onClick: onDirCreate,
60127
- className: classnames_default()([styles_module["default"].iconButtonFilled, styles_module["default"].iconButton]),
60128
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(add_folder, {
60129
- "aria-hidden": "true",
60130
- focusable: "false"
60131
- })
60132
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("button", {
60133
- type: "button",
60134
- "aria-label": "Add file",
60135
- onClick: onFileCreate,
60136
- className: classnames_default()([styles_module["default"].iconButtonFilled, styles_module["default"].iconButton]),
60137
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(add_file, {
60138
- "aria-hidden": "true",
60139
- focusable: "false"
60140
- })
60141
- })]
60142
- });
60143
- };
60144
-
60145
- /***/ }),
60146
-
60147
- /***/ 92185:
60148
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
60149
-
60150
- // ESM COMPAT FLAG
60151
- __webpack_require__.r(__webpack_exports__);
60152
-
60153
- // EXPORTS
60154
- __webpack_require__.d(__webpack_exports__, {
60155
- FileTreeItem: () => (/* binding */ FileTreeItem)
60156
- });
60157
-
60158
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js
60159
- var objectSpread2 = __webpack_require__(89379);
60160
- // EXTERNAL MODULE: ./node_modules/classnames/index.js
60161
- var classnames = __webpack_require__(46942);
60162
- var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
60163
- ;// ./src/components/Menus/Sidebar/FilePanel/FileTree/FileTreeItem/styles.module.scss
60164
- // extracted by mini-css-extract-plugin
60165
- /* harmony default export */ const styles_module = ({"grey-rpi-grey-15":"#d5d7dc","grey-rpi-grey-40":"#9497a4","grey-rpi-grey-5":"#f1f2f3","grey-rpi-grey-70":"#4a4d59","grey-rpf-white":"#fff","treeItem":"styles-module__treeItem--kbyYk","itemFocused":"styles-module__itemFocused--SmUbE","fileTreeActions":"styles-module__fileTreeActions--d42jt","level-0":"styles-module__level-0--5PVOR","level-1":"styles-module__level-1--vTMYv","level-2":"styles-module__level-2--Xx8Ie","level-3":"styles-module__level-3--ySuP4","level-4":"styles-module__level-4--7uciy","level-5":"styles-module__level-5--AEspR","level-6":"styles-module__level-6--c28W9","level-7":"styles-module__level-7--gU++Q","level-8":"styles-module__level-8--dmg5P","level-9":"styles-module__level-9--X73V0","level-10":"styles-module__level-10--VAKPI","level-11":"styles-module__level-11--5rqim","level-12":"styles-module__level-12--8cLBy","level-13":"styles-module__level-13--qlzYN","level-14":"styles-module__level-14--Q7bCT","level-15":"styles-module__level-15---1KaW","level-16":"styles-module__level-16--BCkZb","level-17":"styles-module__level-17--tM3Ht","level-18":"styles-module__level-18--GkyjF","level-19":"styles-module__level-19--kxLhM","level-20":"styles-module__level-20--sIjDn"});
60166
- // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
60167
- var jsx_runtime = __webpack_require__(74848);
60168
- ;// ./src/components/Menus/Sidebar/FilePanel/FileTree/FileTreeItem/ItemEdit.jsx
60169
-
60170
-
60171
- var ItemEdit = _ref => {
60172
- var {
60173
- item
60174
- } = _ref;
60175
- var handleKeyDown = e => {
60176
- if (e.key === "Enter") {
60177
- e.preventDefault();
60178
- var tree = item.getTree();
60179
- tree.completeRenaming();
60180
- }
60181
- };
60182
- return /*#__PURE__*/(0,jsx_runtime.jsx)("input", (0,objectSpread2/* default */.A)({
60183
- onKeyDown: handleKeyDown,
60184
- "aria-label": "Rename file or folder"
60185
- }, item.getRenameInputProps()));
60186
- };
60187
- // EXTERNAL MODULE: ./src/components/Menus/Sidebar/FilePanel/FileTree/FileTreeItem/ItemIcon.tsx
60188
- var ItemIcon = __webpack_require__(3427);
60189
- // EXTERNAL MODULE: external "react"
60190
- var external_react_ = __webpack_require__(51649);
60191
- ;// ./src/components/Menus/Sidebar/FilePanel/FileTree/FileTreeItem/index.jsx
60192
-
60193
-
60194
-
60195
-
60196
-
60197
-
60198
-
60199
- var FileTreeItem = _ref => {
60200
- var {
60201
- item
60202
- } = _ref;
60203
- var itemData = item.getItemData();
60204
- return /*#__PURE__*/(0,external_react_.createElement)("div", (0,objectSpread2/* default */.A)((0,objectSpread2/* default */.A)({}, item.getProps()), {}, {
60205
- key: item.getId(),
60206
- className: classnames_default()(styles_module["level-".concat(item.getItemMeta().level)])
60207
- }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
60208
- className: classnames_default()(styles_module.treeItem, {
60209
- [styles_module.itemFocused]: item.isFocused(),
60210
- [styles_module.itemExpanded]: item.isExpanded(),
60211
- [styles_module.itemSelected]: item.isSelected(),
60212
- [styles_module.itemFolder]: item.isFolder()
60213
- }),
60214
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ItemIcon.ItemIcon, {
60215
- type: itemData.type,
60216
- isExpanded: item.isExpanded(),
60217
- extension: itemData.extension
60218
- }), item.isRenaming() ? /*#__PURE__*/(0,jsx_runtime.jsx)(ItemEdit, {
60219
- item: item
60220
- }) : item.getItemName()]
60221
- }));
60222
- };
60223
-
60224
- /***/ }),
60225
-
60226
- /***/ 70658:
60227
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
60228
-
60229
- __webpack_require__.r(__webpack_exports__);
60230
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
60231
- /* harmony export */ parseFileName: () => (/* binding */ parseFileName)
60232
- /* harmony export */ });
60233
- var parseFileName = fileName => {
60234
- // Find the last dot in the filename, ignoring a leading dot (for hidden files)
60235
- var lastDotIndex = fileName.lastIndexOf(".");
60236
- if (lastDotIndex > 0) {
60237
- // There is an extension (and it's not a hidden file like .gitignore)
60238
- var name = fileName.slice(0, lastDotIndex);
60239
- var extension = fileName.slice(lastDotIndex + 1);
60240
- return {
60241
- name,
60242
- extension
60243
- };
60244
- } else {
60245
- // No extension
60246
- return {
60247
- name: fileName,
60248
- extension: ""
60249
- };
60250
- }
60251
- };
60252
-
60253
- /***/ }),
60254
-
60255
60470
  /***/ 15590:
60256
60471
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
60257
60472
 
@@ -60307,6 +60522,11 @@ var RunButton = _ref => {
60307
60522
  /* harmony default export */ const RunButton_RunButton = (RunButton);
60308
60523
  // EXTERNAL MODULE: ./node_modules/react-i18next/dist/es/index.js + 17 modules
60309
60524
  var es = __webpack_require__(34195);
60525
+ // EXTERNAL MODULE: ./node_modules/classnames/index.js
60526
+ var classnames = __webpack_require__(46942);
60527
+ var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
60528
+ // EXTERNAL MODULE: ./src/components/RunButton/styles.module.scss
60529
+ var styles_module = __webpack_require__(26413);
60310
60530
  ;// ./src/components/RunButton/StopButton.jsx
60311
60531
 
60312
60532
 
@@ -60317,6 +60537,8 @@ var StopButton_excluded = ["embedded", "className"];
60317
60537
 
60318
60538
 
60319
60539
 
60540
+
60541
+
60320
60542
  var StopButton = _ref => {
60321
60543
  var {
60322
60544
  embedded = false,
@@ -60336,7 +60558,10 @@ var StopButton = _ref => {
60336
60558
  dispatch((0,EditorSlice.stopDraw)());
60337
60559
  };
60338
60560
  var stop = /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, (0,objectSpread2/* default */.A)({
60339
- onClickHandler: onClickStop
60561
+ onClickHandler: onClickStop,
60562
+ className: classnames_default()({
60563
+ [styles_module/* default */.A.pressed]: !!codeRunTriggered
60564
+ })
60340
60565
  }, props));
60341
60566
  var [button, setButton] = (0,external_react_.useState)(stop);
60342
60567
  (0,external_react_.useEffect)(() => {
@@ -60384,7 +60609,7 @@ function SvgStop(props) {
60384
60609
  fill: "none",
60385
60610
  xmlns: "http://www.w3.org/2000/svg"
60386
60611
  }, props), stop_path || (stop_path = /*#__PURE__*/external_react_.createElement("path", {
60387
- d: "M9.75 3h-4.5v18h4.5V3zM18.75 3h-4.5v18h4.5V3z",
60612
+ d: "M19 3H5a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V5a2 2 0 00-2-2z",
60388
60613
  stroke: "#003046",
60389
60614
  strokeWidth: 2,
60390
60615
  strokeLinecap: "round",
@@ -64421,215 +64646,6 @@ function matchQueries(rules) {
64421
64646
  exports["default"] = matchQueries;
64422
64647
  //# sourceMappingURL=matchQueries.js.map
64423
64648
 
64424
- /***/ }),
64425
-
64426
- /***/ 57427:
64427
- /***/ ((__unused_webpack_module, exports) => {
64428
-
64429
- /*!
64430
- * cookie
64431
- * Copyright(c) 2012-2014 Roman Shtylman
64432
- * Copyright(c) 2015 Douglas Christopher Wilson
64433
- * MIT Licensed
64434
- */
64435
-
64436
-
64437
-
64438
- /**
64439
- * Module exports.
64440
- * @public
64441
- */
64442
-
64443
- exports.q = parse;
64444
- exports.l = serialize;
64445
-
64446
- /**
64447
- * Module variables.
64448
- * @private
64449
- */
64450
-
64451
- var decode = decodeURIComponent;
64452
- var encode = encodeURIComponent;
64453
-
64454
- /**
64455
- * RegExp to match field-content in RFC 7230 sec 3.2
64456
- *
64457
- * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]
64458
- * field-vchar = VCHAR / obs-text
64459
- * obs-text = %x80-FF
64460
- */
64461
-
64462
- var fieldContentRegExp = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;
64463
-
64464
- /**
64465
- * Parse a cookie header.
64466
- *
64467
- * Parse the given cookie header string into an object
64468
- * The object has the various cookies as keys(names) => values
64469
- *
64470
- * @param {string} str
64471
- * @param {object} [options]
64472
- * @return {object}
64473
- * @public
64474
- */
64475
-
64476
- function parse(str, options) {
64477
- if (typeof str !== 'string') {
64478
- throw new TypeError('argument str must be a string');
64479
- }
64480
-
64481
- var obj = {}
64482
- var opt = options || {};
64483
- var pairs = str.split(';')
64484
- var dec = opt.decode || decode;
64485
-
64486
- for (var i = 0; i < pairs.length; i++) {
64487
- var pair = pairs[i];
64488
- var index = pair.indexOf('=')
64489
-
64490
- // skip things that don't look like key=value
64491
- if (index < 0) {
64492
- continue;
64493
- }
64494
-
64495
- var key = pair.substring(0, index).trim()
64496
-
64497
- // only assign once
64498
- if (undefined == obj[key]) {
64499
- var val = pair.substring(index + 1, pair.length).trim()
64500
-
64501
- // quoted values
64502
- if (val[0] === '"') {
64503
- val = val.slice(1, -1)
64504
- }
64505
-
64506
- obj[key] = tryDecode(val, dec);
64507
- }
64508
- }
64509
-
64510
- return obj;
64511
- }
64512
-
64513
- /**
64514
- * Serialize data into a cookie header.
64515
- *
64516
- * Serialize the a name value pair into a cookie string suitable for
64517
- * http headers. An optional options object specified cookie parameters.
64518
- *
64519
- * serialize('foo', 'bar', { httpOnly: true })
64520
- * => "foo=bar; httpOnly"
64521
- *
64522
- * @param {string} name
64523
- * @param {string} val
64524
- * @param {object} [options]
64525
- * @return {string}
64526
- * @public
64527
- */
64528
-
64529
- function serialize(name, val, options) {
64530
- var opt = options || {};
64531
- var enc = opt.encode || encode;
64532
-
64533
- if (typeof enc !== 'function') {
64534
- throw new TypeError('option encode is invalid');
64535
- }
64536
-
64537
- if (!fieldContentRegExp.test(name)) {
64538
- throw new TypeError('argument name is invalid');
64539
- }
64540
-
64541
- var value = enc(val);
64542
-
64543
- if (value && !fieldContentRegExp.test(value)) {
64544
- throw new TypeError('argument val is invalid');
64545
- }
64546
-
64547
- var str = name + '=' + value;
64548
-
64549
- if (null != opt.maxAge) {
64550
- var maxAge = opt.maxAge - 0;
64551
-
64552
- if (isNaN(maxAge) || !isFinite(maxAge)) {
64553
- throw new TypeError('option maxAge is invalid')
64554
- }
64555
-
64556
- str += '; Max-Age=' + Math.floor(maxAge);
64557
- }
64558
-
64559
- if (opt.domain) {
64560
- if (!fieldContentRegExp.test(opt.domain)) {
64561
- throw new TypeError('option domain is invalid');
64562
- }
64563
-
64564
- str += '; Domain=' + opt.domain;
64565
- }
64566
-
64567
- if (opt.path) {
64568
- if (!fieldContentRegExp.test(opt.path)) {
64569
- throw new TypeError('option path is invalid');
64570
- }
64571
-
64572
- str += '; Path=' + opt.path;
64573
- }
64574
-
64575
- if (opt.expires) {
64576
- if (typeof opt.expires.toUTCString !== 'function') {
64577
- throw new TypeError('option expires is invalid');
64578
- }
64579
-
64580
- str += '; Expires=' + opt.expires.toUTCString();
64581
- }
64582
-
64583
- if (opt.httpOnly) {
64584
- str += '; HttpOnly';
64585
- }
64586
-
64587
- if (opt.secure) {
64588
- str += '; Secure';
64589
- }
64590
-
64591
- if (opt.sameSite) {
64592
- var sameSite = typeof opt.sameSite === 'string'
64593
- ? opt.sameSite.toLowerCase() : opt.sameSite;
64594
-
64595
- switch (sameSite) {
64596
- case true:
64597
- str += '; SameSite=Strict';
64598
- break;
64599
- case 'lax':
64600
- str += '; SameSite=Lax';
64601
- break;
64602
- case 'strict':
64603
- str += '; SameSite=Strict';
64604
- break;
64605
- case 'none':
64606
- str += '; SameSite=None';
64607
- break;
64608
- default:
64609
- throw new TypeError('option sameSite is invalid');
64610
- }
64611
- }
64612
-
64613
- return str;
64614
- }
64615
-
64616
- /**
64617
- * Try decoding a string using a decoding function.
64618
- *
64619
- * @param {string} str
64620
- * @param {function} decode
64621
- * @private
64622
- */
64623
-
64624
- function tryDecode(str, decode) {
64625
- try {
64626
- return decode(str);
64627
- } catch (e) {
64628
- return str;
64629
- }
64630
- }
64631
-
64632
-
64633
64649
  /***/ }),
64634
64650
 
64635
64651
  /***/ 22015:
@@ -96384,6 +96400,18 @@ __webpack_require__.r(__webpack_exports__);
96384
96400
  // extracted by mini-css-extract-plugin
96385
96401
 
96386
96402
 
96403
+ /***/ }),
96404
+
96405
+ /***/ 68233:
96406
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
96407
+
96408
+ __webpack_require__.r(__webpack_exports__);
96409
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
96410
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
96411
+ /* harmony export */ });
96412
+ // extracted by mini-css-extract-plugin
96413
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"grey-rpi-grey-15":"#d5d7dc","grey-rpi-grey-40":"#9497a4","grey-rpi-grey-5":"#f1f2f3","grey-rpi-grey-70":"#4a4d59","grey-rpf-white":"#fff","row":"styles-module__row--XtAJr","treeItem":"styles-module__treeItem--kbyYk","itemContent":"styles-module__itemContent--663gn","itemFocused":"styles-module__itemFocused--SmUbE","level-0":"styles-module__level-0--5PVOR","level-1":"styles-module__level-1--vTMYv","level-2":"styles-module__level-2--Xx8Ie","level-3":"styles-module__level-3--ySuP4","level-4":"styles-module__level-4--7uciy","level-5":"styles-module__level-5--AEspR","level-6":"styles-module__level-6--c28W9","level-7":"styles-module__level-7--gU++Q","level-8":"styles-module__level-8--dmg5P","level-9":"styles-module__level-9--X73V0","level-10":"styles-module__level-10--VAKPI","level-11":"styles-module__level-11--5rqim","level-12":"styles-module__level-12--8cLBy","level-13":"styles-module__level-13--qlzYN","level-14":"styles-module__level-14--Q7bCT","level-15":"styles-module__level-15---1KaW","level-16":"styles-module__level-16--BCkZb","level-17":"styles-module__level-17--tM3Ht","level-18":"styles-module__level-18--GkyjF","level-19":"styles-module__level-19--kxLhM","level-20":"styles-module__level-20--sIjDn","itemContentRenaming":"styles-module__itemContentRenaming--vlZsc"});
96414
+
96387
96415
  /***/ }),
96388
96416
 
96389
96417
  /***/ 79473:
@@ -96398,6 +96426,29 @@ __webpack_require__.r(__webpack_exports__);
96398
96426
 
96399
96427
  /***/ }),
96400
96428
 
96429
+ /***/ 26413:
96430
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
96431
+
96432
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
96433
+ /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
96434
+ /* harmony export */ });
96435
+ // extracted by mini-css-extract-plugin
96436
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"grey-rpi-grey-15":"#d5d7dc","grey-rpi-grey-40":"#9497a4","grey-rpi-grey-5":"#f1f2f3","grey-rpi-grey-70":"#4a4d59","grey-rpf-white":"#fff","runBar":"styles-module__runBar--JA+8h","pressed":"styles-module__pressed--iQjvR"});
96437
+
96438
+ /***/ }),
96439
+
96440
+ /***/ 50879:
96441
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
96442
+
96443
+ __webpack_require__.r(__webpack_exports__);
96444
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
96445
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
96446
+ /* harmony export */ });
96447
+ // extracted by mini-css-extract-plugin
96448
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"svgIcon":"styles-module__svgIcon--eiAsQ","svgIcon-12":"styles-module__svgIcon-12--ca5dh","svgIcon-13":"styles-module__svgIcon-13--H5H9q","svgIcon-14":"styles-module__svgIcon-14--02QBx","svgIcon-15":"styles-module__svgIcon-15---h9Pf","svgIcon-16":"styles-module__svgIcon-16--xSxA4","svgIcon-17":"styles-module__svgIcon-17--Puaug","svgIcon-18":"styles-module__svgIcon-18--QewDX","svgIcon-19":"styles-module__svgIcon-19--iC7Jc","svgIcon-20":"styles-module__svgIcon-20--PrJEw","svgIcon-21":"styles-module__svgIcon-21---Hd09","svgIcon-22":"styles-module__svgIcon-22--d8Xg1","svgIcon-23":"styles-module__svgIcon-23--pGQQQ","svgIcon-24":"styles-module__svgIcon-24--IqT3u","svgIcon-25":"styles-module__svgIcon-25--PfjHm","svgIcon-26":"styles-module__svgIcon-26--cFTjX","svgIcon-27":"styles-module__svgIcon-27--MPei3","svgIcon-28":"styles-module__svgIcon-28--W7Xyd","svgIcon-29":"styles-module__svgIcon-29--EUfun","svgIcon-30":"styles-module__svgIcon-30--lQhTn","svgIcon-31":"styles-module__svgIcon-31--Lf753","svgIcon-32":"styles-module__svgIcon-32--+xBfi"});
96449
+
96450
+ /***/ }),
96451
+
96401
96452
  /***/ 27058:
96402
96453
  /***/ (() => {
96403
96454
 
@@ -320540,8 +320591,8 @@ function HtmlRunner() {
320540
320591
  };
320541
320592
  (0, react_1.useEffect)(() => {
320542
320593
  eventListener();
320543
- dispatch((0, EditorSlice_1.loadingRunner)(ProjectTypes_1.ProjectTypes.WEB));
320544
- dispatch((0, EditorSlice_1.setLoadedRunner)(ProjectTypes_1.ProjectTypes.WEB));
320594
+ dispatch((0, EditorSlice_1.loadingRunner)(ProjectTypes_1.ProjectType.WEB));
320595
+ dispatch((0, EditorSlice_1.setLoadedRunner)(ProjectTypes_1.ProjectType.WEB));
320545
320596
  }, []);
320546
320597
  let timeout;
320547
320598
  (0, react_1.useEffect)(() => {
@@ -320724,7 +320775,7 @@ const PythonRunner_1 = __importDefault(__webpack_require__(74929));
320724
320775
  const HtmlRunner_1 = __importDefault(__webpack_require__(86224));
320725
320776
  const ProjectTypes_1 = __webpack_require__(27130);
320726
320777
  const RunnerFactory = ({ projectType, outputPanels = ["text", "visual"], packageApiUrl, }) => {
320727
- if (projectType === ProjectTypes_1.ProjectTypes.WEB) {
320778
+ if (projectType === ProjectTypes_1.ProjectType.WEB) {
320728
320779
  return (0, jsx_runtime_1.jsx)(HtmlRunner_1.default, {});
320729
320780
  }
320730
320781
  else {
@@ -320734,6 +320785,69 @@ const RunnerFactory = ({ projectType, outputPanels = ["text", "visual"], package
320734
320785
  exports["default"] = RunnerFactory;
320735
320786
 
320736
320787
 
320788
+ /***/ }),
320789
+
320790
+ /***/ 42884:
320791
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
320792
+
320793
+
320794
+ var __importDefault = (this && this.__importDefault) || function (mod) {
320795
+ return (mod && mod.__esModule) ? mod : { "default": mod };
320796
+ };
320797
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
320798
+ exports.FileTreeActions = void 0;
320799
+ const jsx_runtime_1 = __webpack_require__(74848);
320800
+ const plus_circle_svg_1 = __importDefault(__webpack_require__(45494));
320801
+ const minus_circle_svg_1 = __importDefault(__webpack_require__(71720));
320802
+ const add_folder_svg_1 = __importDefault(__webpack_require__(3503));
320803
+ const add_file_svg_1 = __importDefault(__webpack_require__(41625));
320804
+ const upload_file_svg_1 = __importDefault(__webpack_require__(98201));
320805
+ const classnames_1 = __importDefault(__webpack_require__(46942));
320806
+ const styles_module_scss_1 = __importDefault(__webpack_require__(79473));
320807
+ const SvgIcon_1 = __webpack_require__(82917);
320808
+ const react_1 = __webpack_require__(51649);
320809
+ const FileTreeContext_1 = __webpack_require__(5323);
320810
+ const ProjectTypes_1 = __webpack_require__(27130);
320811
+ const FileTreeActions = ({ hasExpandedNodes, }) => {
320812
+ const { expandAll, collapseAll, createComponent } = (0, react_1.useContext)(FileTreeContext_1.TreeContext);
320813
+ return ((0, jsx_runtime_1.jsxs)("div", { className: styles_module_scss_1.default.fileTreeActions, children: [hasExpandedNodes ? ((0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Collapse all folders", onClick: collapseAll, className: styles_module_scss_1.default.iconButton, children: (0, jsx_runtime_1.jsx)(minus_circle_svg_1.default, { "aria-hidden": "true", focusable: "false" }) })) : ((0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Expand all folders", onClick: expandAll, className: styles_module_scss_1.default.iconButton, children: (0, jsx_runtime_1.jsx)(plus_circle_svg_1.default, { "aria-hidden": "true", focusable: "false" }) })), (0, jsx_runtime_1.jsx)("p", { className: styles_module_scss_1.default.label, children: "Project files" }), (0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Add folder", onClick: () => createComponent(ProjectTypes_1.ProjectComponentType.DIR), className: (0, classnames_1.default)([styles_module_scss_1.default.iconButtonFilled, styles_module_scss_1.default.iconButton]), children: (0, jsx_runtime_1.jsx)(add_folder_svg_1.default, { "aria-hidden": "true", focusable: "false" }) }), (0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Add file", onClick: () => createComponent(ProjectTypes_1.ProjectComponentType.FILE), className: (0, classnames_1.default)([styles_module_scss_1.default.iconButtonFilled, styles_module_scss_1.default.iconButton]), children: (0, jsx_runtime_1.jsx)(add_file_svg_1.default, { "aria-hidden": "true", focusable: "false" }) }), (0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Upload file", onClick: () => {
320814
+ console.log("Upload file clicked");
320815
+ }, className: (0, classnames_1.default)([styles_module_scss_1.default.iconButtonFilled, styles_module_scss_1.default.iconButton]), children: (0, jsx_runtime_1.jsx)(SvgIcon_1.SvgIcon, { SvgElement: upload_file_svg_1.default, size: 16, "aria-hidden": "true", focusable: "false" }) })] }));
320816
+ };
320817
+ exports.FileTreeActions = FileTreeActions;
320818
+
320819
+
320820
+ /***/ }),
320821
+
320822
+ /***/ 61576:
320823
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
320824
+
320825
+
320826
+ var __importDefault = (this && this.__importDefault) || function (mod) {
320827
+ return (mod && mod.__esModule) ? mod : { "default": mod };
320828
+ };
320829
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
320830
+ exports.ItemEdit = void 0;
320831
+ const jsx_runtime_1 = __webpack_require__(74848);
320832
+ const react_1 = __webpack_require__(51649);
320833
+ const styles_module_scss_1 = __importDefault(__webpack_require__(68233));
320834
+ const FileTreeContext_1 = __webpack_require__(5323);
320835
+ const ItemEdit = ({ item }) => {
320836
+ const { cancelRenaming, completeRenaming } = (0, react_1.useContext)(FileTreeContext_1.TreeContext);
320837
+ const handleKeyDown = (e) => {
320838
+ if (e.key === "Enter") {
320839
+ completeRenaming();
320840
+ return;
320841
+ }
320842
+ if (e.key === "Escape" || e.key === "Esc") {
320843
+ cancelRenaming(item);
320844
+ }
320845
+ };
320846
+ return ((0, jsx_runtime_1.jsx)("input", { name: "Item name", className: styles_module_scss_1.default.itemRenameInput, onKeyDown: handleKeyDown, onBlurCapture: () => cancelRenaming(item), "aria-label": "Rename file or folder", ...item.getRenameInputProps() }));
320847
+ };
320848
+ exports.ItemEdit = ItemEdit;
320849
+
320850
+
320737
320851
  /***/ }),
320738
320852
 
320739
320853
  /***/ 3427:
@@ -320746,20 +320860,153 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
320746
320860
  Object.defineProperty(exports, "__esModule", ({ value: true }));
320747
320861
  exports.ItemIcon = void 0;
320748
320862
  const jsx_runtime_1 = __webpack_require__(74848);
320749
- const arrow_right_svg_1 = __importDefault(__webpack_require__(17297));
320750
- const arrow_down_svg_1 = __importDefault(__webpack_require__(95489));
320751
- const FileIcon_1 = __importDefault(__webpack_require__(24329));
320863
+ const FileIcon_1 = __importDefault(__webpack_require__(94028));
320752
320864
  const folder_svg_1 = __importDefault(__webpack_require__(97091));
320753
320865
  const ProjectTypes_1 = __webpack_require__(27130);
320754
- const ItemIcon = ({ type, isExpanded, extension, }) => {
320866
+ const ItemIcon = ({ type, extension }) => {
320755
320867
  if (type === ProjectTypes_1.ProjectComponentType.DIR) {
320756
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isExpanded ? (0, jsx_runtime_1.jsx)(arrow_down_svg_1.default, {}) : (0, jsx_runtime_1.jsx)(arrow_right_svg_1.default, {}), (0, jsx_runtime_1.jsx)(folder_svg_1.default, {})] }));
320868
+ return (0, jsx_runtime_1.jsx)(folder_svg_1.default, {});
320757
320869
  }
320758
320870
  return (0, jsx_runtime_1.jsx)(FileIcon_1.default, { ext: extension });
320759
320871
  };
320760
320872
  exports.ItemIcon = ItemIcon;
320761
320873
 
320762
320874
 
320875
+ /***/ }),
320876
+
320877
+ /***/ 8153:
320878
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
320879
+
320880
+
320881
+ var __importDefault = (this && this.__importDefault) || function (mod) {
320882
+ return (mod && mod.__esModule) ? mod : { "default": mod };
320883
+ };
320884
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
320885
+ exports.FileTreeItem = void 0;
320886
+ const jsx_runtime_1 = __webpack_require__(74848);
320887
+ const classnames_1 = __importDefault(__webpack_require__(46942));
320888
+ const arrow_right_svg_1 = __importDefault(__webpack_require__(17297));
320889
+ const arrow_down_svg_1 = __importDefault(__webpack_require__(95489));
320890
+ const styles_module_scss_1 = __importDefault(__webpack_require__(68233));
320891
+ const ItemEdit_1 = __webpack_require__(61576);
320892
+ const ItemIcon_1 = __webpack_require__(3427);
320893
+ const ProjectTypes_1 = __webpack_require__(27130);
320894
+ const treeGuides_1 = __webpack_require__(35258);
320895
+ const FileTreeItem = ({ item, guides, activeLevel, }) => {
320896
+ const itemData = item.getItemData();
320897
+ const level = item.getItemMeta().level;
320898
+ const { layers, positions, sizes } = (0, treeGuides_1.getItemGuidesStyles)(guides, activeLevel);
320899
+ return ((0, jsx_runtime_1.jsx)("div", { ...item.getProps(), className: (0, classnames_1.default)(styles_module_scss_1.default.row, styles_module_scss_1.default[`level-${level}`]), style: {
320900
+ ["--guides-bg"]: layers.join(","),
320901
+ ["--guides-pos"]: positions.join(","),
320902
+ ["--guides-size"]: sizes.join(","),
320903
+ }, children: (0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)(styles_module_scss_1.default.treeItem, {
320904
+ [styles_module_scss_1.default.itemFocused]: item.isFocused(),
320905
+ [styles_module_scss_1.default.itemExpanded]: item.isExpanded(),
320906
+ [styles_module_scss_1.default.itemSelected]: item.isSelected(),
320907
+ [styles_module_scss_1.default.itemFolder]: item.isFolder(),
320908
+ }), children: [itemData.type === ProjectTypes_1.ProjectComponentType.DIR ? (item.isExpanded() ? ((0, jsx_runtime_1.jsx)(arrow_down_svg_1.default, {})) : ((0, jsx_runtime_1.jsx)(arrow_right_svg_1.default, {}))) : null, (0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)(item.isRenaming()
320909
+ ? styles_module_scss_1.default.itemContentRenaming
320910
+ : styles_module_scss_1.default.itemContent), children: [(0, jsx_runtime_1.jsx)(ItemIcon_1.ItemIcon, { type: itemData.type, extension: itemData.extension }), item.isRenaming() ? (0, jsx_runtime_1.jsx)(ItemEdit_1.ItemEdit, { item: item }) : item.getItemName()] })] }) }));
320911
+ };
320912
+ exports.FileTreeItem = FileTreeItem;
320913
+
320914
+
320915
+ /***/ }),
320916
+
320917
+ /***/ 5323:
320918
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
320919
+
320920
+
320921
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
320922
+ exports.TreeContext = void 0;
320923
+ const react_1 = __webpack_require__(51649);
320924
+ exports.TreeContext = (0, react_1.createContext)({});
320925
+
320926
+
320927
+ /***/ }),
320928
+
320929
+ /***/ 89163:
320930
+ /***/ ((__unused_webpack_module, exports) => {
320931
+
320932
+
320933
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
320934
+ exports.parseFileName = void 0;
320935
+ const parseFileName = (fileName) => {
320936
+ // Find the last dot in the filename, ignoring a leading dot (for hidden files)
320937
+ const lastDotIndex = fileName.lastIndexOf(".");
320938
+ if (lastDotIndex > 0) {
320939
+ // There is an extension (and it's not a hidden file like .gitignore)
320940
+ const name = fileName.slice(0, lastDotIndex);
320941
+ const extension = fileName.slice(lastDotIndex + 1);
320942
+ return { name, extension };
320943
+ }
320944
+ else {
320945
+ // No extension
320946
+ return { name: fileName, extension: "" };
320947
+ }
320948
+ };
320949
+ exports.parseFileName = parseFileName;
320950
+
320951
+
320952
+ /***/ }),
320953
+
320954
+ /***/ 35258:
320955
+ /***/ ((__unused_webpack_module, exports) => {
320956
+
320957
+
320958
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
320959
+ exports.getGuidesByIndex = getGuidesByIndex;
320960
+ exports.getActiveLevel = getActiveLevel;
320961
+ exports.getItemGuidesStyles = getItemGuidesStyles;
320962
+ exports.computeTreeGuides = computeTreeGuides;
320963
+ const GUIDES_INDENT = 20;
320964
+ const guidesNormalColor = "var(--normal-guide-color)";
320965
+ const guidesStrongColor = "var(--strong-guide-color)";
320966
+ function getGuidesByIndex(items) {
320967
+ const levels = items.map((it) => it.getItemMeta().level);
320968
+ return computeTreeGuides(levels);
320969
+ }
320970
+ function getActiveLevel(focusedItem) {
320971
+ return focusedItem?.isExpanded()
320972
+ ? focusedItem.getItemMeta().level + 1
320973
+ : focusedItem?.getItemMeta().level ?? 0;
320974
+ }
320975
+ function getItemGuidesStyles(guides, activeLevel) {
320976
+ const activeColumn = activeLevel != null ? activeLevel - 1 : null;
320977
+ const layers = guides.reduce((acc, on, d) => {
320978
+ if (!on)
320979
+ return acc;
320980
+ const color = activeColumn === d ? guidesStrongColor : guidesNormalColor;
320981
+ return [...acc, `linear-gradient(${color}, ${color})`];
320982
+ }, []);
320983
+ const positions = guides.reduce((acc, on, d) => on ? [...acc, `${d * GUIDES_INDENT + GUIDES_INDENT / 2}px 0`] : acc, []);
320984
+ const sizes = layers.map(() => "1px 100%");
320985
+ return { layers, positions, sizes };
320986
+ }
320987
+ function computeTreeGuides(levels) {
320988
+ const cont = []; // cont[d] = draw column d for descendants
320989
+ const out = [];
320990
+ for (let i = 0; i < levels.length; i++) {
320991
+ const level = levels[i];
320992
+ // trim continuation stack when we go up
320993
+ cont.length = level;
320994
+ // this row draws all ancestor columns that are "continuing"
320995
+ out.push(cont.slice(0, level));
320996
+ // decide if THIS node has a next sibling at the same level (look ahead)
320997
+ let j = i + 1;
320998
+ while (j < levels.length && levels[j] > level)
320999
+ j++;
321000
+ const hasNextSibling = j < levels.length && levels[j] === level;
321001
+ // if next item is deeper, this node has visible children (expanded)
321002
+ const hasVisibleChildren = i + 1 < levels.length && levels[i + 1] > level;
321003
+ // descendants should draw a column at this level only if there are more siblings later
321004
+ cont[level] = hasNextSibling || hasVisibleChildren;
321005
+ }
321006
+ return out;
321007
+ }
321008
+
321009
+
320763
321010
  /***/ }),
320764
321011
 
320765
321012
  /***/ 75383:
@@ -320791,7 +321038,7 @@ const useFileTree = ({ projectFiles, onRename, updateItemData, onOpenFile, }) =>
320791
321038
  onClick: (e) => {
320792
321039
  item.primaryAction();
320793
321040
  item.setFocused();
320794
- if (!item.isFolder()) {
321041
+ if (!item.isFolder() && !item.isRenaming()) {
320795
321042
  onOpenFile(item.getItemName());
320796
321043
  return;
320797
321044
  }
@@ -320820,7 +321067,7 @@ const useFileTree = ({ projectFiles, onRename, updateItemData, onOpenFile, }) =>
320820
321067
  getItem: (itemId) => {
320821
321068
  const item = projectFiles.find((item) => item.id === itemId);
320822
321069
  if (!item) {
320823
- throw Error("No item found in project files");
321070
+ throw Error(`No item found in project files with id: ${itemId}`);
320824
321071
  }
320825
321072
  return item;
320826
321073
  },
@@ -320865,7 +321112,7 @@ const react_redux_1 = __webpack_require__(14062);
320865
321112
  const react_1 = __webpack_require__(51649);
320866
321113
  const useFileTree_1 = __webpack_require__(75383);
320867
321114
  const EditorSlice_1 = __webpack_require__(68512);
320868
- const helpers_1 = __webpack_require__(70658);
321115
+ const helpers_1 = __webpack_require__(89163);
320869
321116
  const ProjectTypes_1 = __webpack_require__(27130);
320870
321117
  const stores_1 = __webpack_require__(32132);
320871
321118
  /** Custom hook for action handlers on top headless-tree functionality */
@@ -320874,11 +321121,12 @@ const useFileTreeActions = () => {
320874
321121
  const openedFiles = (0, stores_1.useAppSelector)((state) => state.editor.openFiles);
320875
321122
  const dispatch = (0, react_redux_1.useDispatch)();
320876
321123
  const renameItem = (0, react_1.useCallback)((item, value) => {
320877
- const { type, id } = item.getItemData();
320878
- const updateKey = projectFiles.findIndex((f) => f.id === id);
321124
+ const { type } = item.getItemData();
320879
321125
  const newComponent = {
320880
321126
  ...item.getItemData(),
321127
+ isCreating: false,
320881
321128
  };
321129
+ // TODO add validation logic
320882
321130
  if (type === ProjectTypes_1.ProjectComponentType.FILE) {
320883
321131
  const { name, extension } = (0, helpers_1.parseFileName)(value);
320884
321132
  newComponent.name = name;
@@ -320888,10 +321136,12 @@ const useFileTreeActions = () => {
320888
321136
  newComponent.name = value;
320889
321137
  }
320890
321138
  dispatch((0, EditorSlice_1.updateComponentName)({
320891
- key: updateKey,
320892
- ...newComponent,
321139
+ id: newComponent.id,
321140
+ name: newComponent.name,
321141
+ extension: newComponent.extension,
320893
321142
  }));
320894
- }, [dispatch, projectFiles]);
321143
+ dispatch((0, EditorSlice_1.updateProjectComponent)(newComponent));
321144
+ }, [dispatch]);
320895
321145
  const openTreeFile = (0, react_1.useCallback)((fileName) => {
320896
321146
  if (openedFiles.flat().includes(fileName)) {
320897
321147
  const panelIndex = openedFiles
@@ -320922,6 +321172,7 @@ const useFileTreeActions = () => {
320922
321172
  return;
320923
321173
  nearestFolder = parent;
320924
321174
  }
321175
+ nearestFolder.expand();
320925
321176
  const selectedFolderData = nearestFolder.getItemData();
320926
321177
  const newComponent = {
320927
321178
  id: crypto.randomUUID(),
@@ -320929,19 +321180,34 @@ const useFileTreeActions = () => {
320929
321180
  extension: "",
320930
321181
  content: "",
320931
321182
  type,
321183
+ isCreating: true,
320932
321184
  };
320933
321185
  if (type === ProjectTypes_1.ProjectComponentType.DIR) {
320934
321186
  newComponent.children = [];
320935
321187
  }
321188
+ dispatch((0, EditorSlice_1.addProjectComponent)(newComponent));
320936
321189
  dispatch((0, EditorSlice_1.updateProjectComponent)({
320937
321190
  ...selectedFolderData,
320938
321191
  children: [...(selectedFolderData.children ?? []), newComponent.id],
320939
321192
  }));
320940
- dispatch((0, EditorSlice_1.addProjectComponent)(newComponent));
320941
- }, [dispatch, projectFiles, tree]);
321193
+ // Start renaming the new node after it is added to the tree
321194
+ setTimeout(() => {
321195
+ tree.getItemInstance(newComponent.id)?.startRenaming();
321196
+ }, 0);
321197
+ }, [dispatch, tree]);
321198
+ const cancelRenaming = (0, react_1.useCallback)((item) => {
321199
+ tree.abortRenaming();
321200
+ const itemData = item.getItemData();
321201
+ if (itemData.isCreating) {
321202
+ dispatch((0, EditorSlice_1.removeProjectComponent)(itemData.id));
321203
+ tree.rebuildTree();
321204
+ }
321205
+ }, [dispatch, tree]);
320942
321206
  return {
320943
321207
  createComponent,
321208
+ cancelRenaming,
320944
321209
  tree,
321210
+ completeRenaming: tree.completeRenaming,
320945
321211
  ...restTreeProps,
320946
321212
  };
320947
321213
  };
@@ -320960,36 +321226,116 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
320960
321226
  Object.defineProperty(exports, "__esModule", ({ value: true }));
320961
321227
  exports.FileTree = void 0;
320962
321228
  const jsx_runtime_1 = __webpack_require__(74848);
320963
- const FileTreeItem_1 = __webpack_require__(92185);
321229
+ const FileTreeItem_1 = __webpack_require__(8153);
320964
321230
  const react_1 = __webpack_require__(51649);
320965
- const FileTreeActions_1 = __webpack_require__(91148);
321231
+ const FileTreeActions_1 = __webpack_require__(42884);
320966
321232
  const styles_module_scss_1 = __importDefault(__webpack_require__(79473));
320967
321233
  const useFileTreeActions_1 = __webpack_require__(98028);
320968
- const ProjectTypes_1 = __webpack_require__(27130);
320969
321234
  const stores_1 = __webpack_require__(32132);
321235
+ const FileTreeContext_1 = __webpack_require__(5323);
321236
+ const treeGuides_1 = __webpack_require__(35258);
320970
321237
  const FileTree = () => {
320971
321238
  const projectFiles = (0, stores_1.useAppSelector)((state) => state.editor.project.components);
320972
321239
  const focussedFileIndex = (0, stores_1.useAppSelector)((state) => state.editor.focussedFileIndices)[0];
320973
321240
  const openFiles = (0, stores_1.useAppSelector)((state) => state.editor.openFiles)[0];
320974
- const { createComponent, focusedItem, setFocusedItem, tree } = (0, useFileTreeActions_1.useFileTreeActions)();
321241
+ const { createComponent, cancelRenaming, focusedItem, setFocusedItem, tree, completeRenaming, } = (0, useFileTreeActions_1.useFileTreeActions)();
321242
+ const treeItems = tree
321243
+ .getItems()
321244
+ .filter((item) => projectFiles.some((f) => f.id === item.getId()));
321245
+ const guidesByIndex = (0, treeGuides_1.getGuidesByIndex)(treeItems);
321246
+ const activeLevel = (0, treeGuides_1.getActiveLevel)(treeItems.find((it) => it.getId() === focusedItem) ?? null);
321247
+ // Sync focused file in editor with focused item in tree
320975
321248
  (0, react_1.useEffect)(() => {
320976
- if (!openFiles || !focussedFileIndex)
321249
+ if (!openFiles || focussedFileIndex === undefined)
320977
321250
  return;
320978
321251
  const focusedFileName = openFiles[focussedFileIndex];
320979
321252
  const projectFile = projectFiles.find((f) => `${f.name}.${f.extension}` === focusedFileName);
320980
321253
  if (projectFile && projectFile.id !== focusedItem) {
320981
321254
  setFocusedItem(projectFile.id);
320982
321255
  }
320983
- }, [focussedFileIndex, openFiles, projectFiles, focusedItem, setFocusedItem]);
321256
+ // exclude focusedItem to react only to editor changes
321257
+ // eslint-disable-next-line react-hooks/exhaustive-deps
321258
+ }, [focussedFileIndex, openFiles, projectFiles, setFocusedItem]);
320984
321259
  (0, react_1.useEffect)(() => {
320985
321260
  // project files changed
320986
321261
  tree.rebuildTree();
320987
321262
  }, [projectFiles, tree]);
320988
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(FileTreeActions_1.FileTreeActions, { hasExpandedNodes: Boolean(tree.getState().expandedItems.length), onExpandAll: tree.expandAll, onCollapseAll: tree.collapseAll, onFileCreate: () => createComponent(ProjectTypes_1.ProjectComponentType.FILE), onDirCreate: () => createComponent(ProjectTypes_1.ProjectComponentType.DIR) }), (0, jsx_runtime_1.jsxs)("div", { ...tree.getContainerProps(), className: styles_module_scss_1.default.tree, children: [tree.getItems().map((item, i) => ((0, jsx_runtime_1.jsx)(FileTreeItem_1.FileTreeItem, { item: item }, item.getId()))), (0, jsx_runtime_1.jsx)("div", { style: tree.getDragLineStyle(), className: styles_module_scss_1.default.dragline })] })] }));
321263
+ const treeCtx = (0, react_1.useMemo)(() => ({
321264
+ createComponent,
321265
+ cancelRenaming,
321266
+ completeRenaming,
321267
+ collapseAll: tree.collapseAll,
321268
+ expandAll: tree.expandAll,
321269
+ }), [createComponent, cancelRenaming, completeRenaming, tree]);
321270
+ return ((0, jsx_runtime_1.jsxs)(FileTreeContext_1.TreeContext.Provider, { value: treeCtx, children: [(0, jsx_runtime_1.jsx)(FileTreeActions_1.FileTreeActions, { hasExpandedNodes: Boolean(tree.getState().expandedItems.length) }), (0, jsx_runtime_1.jsxs)("div", { ...tree.getContainerProps(), className: styles_module_scss_1.default.tree, children: [treeItems.map((item, i) => ((0, jsx_runtime_1.jsx)(FileTreeItem_1.FileTreeItem, { item: item, guides: guidesByIndex[i], activeLevel: activeLevel }, item.getId()))), (0, jsx_runtime_1.jsx)("div", { style: tree.getDragLineStyle(), className: styles_module_scss_1.default.dragline })] })] }));
320989
321271
  };
320990
321272
  exports.FileTree = FileTree;
320991
321273
 
320992
321274
 
321275
+ /***/ }),
321276
+
321277
+ /***/ 94028:
321278
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
321279
+
321280
+
321281
+ var __importDefault = (this && this.__importDefault) || function (mod) {
321282
+ return (mod && mod.__esModule) ? mod : { "default": mod };
321283
+ };
321284
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
321285
+ const jsx_runtime_1 = __webpack_require__(74848);
321286
+ const file_svg_1 = __importDefault(__webpack_require__(70429));
321287
+ const python_file_svg_1 = __importDefault(__webpack_require__(90830));
321288
+ const html_file_svg_1 = __importDefault(__webpack_require__(59917));
321289
+ const css_file_svg_1 = __importDefault(__webpack_require__(66781));
321290
+ const csv_file_svg_1 = __importDefault(__webpack_require__(14222));
321291
+ const js_file_svg_1 = __importDefault(__webpack_require__(73895));
321292
+ const md_file_svg_1 = __importDefault(__webpack_require__(37505));
321293
+ const png_file_svg_1 = __importDefault(__webpack_require__(3745));
321294
+ const gif_file_svg_1 = __importDefault(__webpack_require__(32432));
321295
+ const jpg_file_svg_1 = __importDefault(__webpack_require__(19797));
321296
+ const mp3_file_svg_1 = __importDefault(__webpack_require__(97512));
321297
+ const wav_file_svg_1 = __importDefault(__webpack_require__(7384));
321298
+ const ProjectTypes_1 = __webpack_require__(27130);
321299
+ const SvgIcon_1 = __webpack_require__(82917);
321300
+ const extToIconMap = {
321301
+ [ProjectTypes_1.ProjectFileExtension.HTML]: html_file_svg_1.default,
321302
+ [ProjectTypes_1.ProjectFileExtension.CSS]: css_file_svg_1.default,
321303
+ [ProjectTypes_1.ProjectFileExtension.PY]: python_file_svg_1.default,
321304
+ [ProjectTypes_1.ProjectFileExtension.JS]: js_file_svg_1.default,
321305
+ [ProjectTypes_1.ProjectFileExtension.CSV]: csv_file_svg_1.default,
321306
+ [ProjectTypes_1.ProjectFileExtension.PNG]: png_file_svg_1.default,
321307
+ [ProjectTypes_1.ProjectFileExtension.JPG]: jpg_file_svg_1.default,
321308
+ [ProjectTypes_1.ProjectFileExtension.GIF]: gif_file_svg_1.default,
321309
+ [ProjectTypes_1.ProjectFileExtension.MD]: md_file_svg_1.default,
321310
+ [ProjectTypes_1.ProjectFileExtension.MP3]: mp3_file_svg_1.default,
321311
+ [ProjectTypes_1.ProjectFileExtension.WAV]: wav_file_svg_1.default,
321312
+ };
321313
+ const FileIcon = ({ ext = "" }) => {
321314
+ const Icon = extToIconMap[ext] ?? file_svg_1.default;
321315
+ return (0, jsx_runtime_1.jsx)(SvgIcon_1.SvgIcon, { size: 18, SvgElement: Icon });
321316
+ };
321317
+ exports["default"] = FileIcon;
321318
+
321319
+
321320
+ /***/ }),
321321
+
321322
+ /***/ 82917:
321323
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
321324
+
321325
+
321326
+ var __importDefault = (this && this.__importDefault) || function (mod) {
321327
+ return (mod && mod.__esModule) ? mod : { "default": mod };
321328
+ };
321329
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
321330
+ exports.SvgIcon = void 0;
321331
+ const jsx_runtime_1 = __webpack_require__(74848);
321332
+ const styles_module_scss_1 = __importDefault(__webpack_require__(50879));
321333
+ const SvgIcon = ({ size, SvgElement, ...rest }) => {
321334
+ return (0, jsx_runtime_1.jsx)(SvgElement, { className: styles_module_scss_1.default[`svgIcon-${size}`], ...rest });
321335
+ };
321336
+ exports.SvgIcon = SvgIcon;
321337
+
321338
+
320993
321339
  /***/ }),
320994
321340
 
320995
321341
  /***/ 54095:
@@ -321038,7 +321384,7 @@ const useProject = ({ code = null, loadCache = true, identifier = null, projectD
321038
321384
  loadCachedProject();
321039
321385
  return;
321040
321386
  }
321041
- const defaultProject = projectData?.project_type === ProjectTypes_1.ProjectTypes.WEB
321387
+ const defaultProject = projectData?.project_type === ProjectTypes_1.ProjectType.WEB
321042
321388
  ? (0, defaultProjects_1.createDefaultWebProject)()
321043
321389
  : (0, defaultProjects_1.createDefaultPythonProject)();
321044
321390
  if (!identifier) {
@@ -321056,11 +321402,11 @@ const useProject = ({ code = null, loadCache = true, identifier = null, projectD
321056
321402
  }, [code, project?.identifier, cachedProject, i18n.language]);
321057
321403
  (0, react_1.useEffect)(() => {
321058
321404
  if (code && loading === "success") {
321059
- const isWebProject = project.project_type === ProjectTypes_1.ProjectTypes.WEB;
321405
+ const isWebProject = project.project_type === ProjectTypes_1.ProjectType.WEB;
321060
321406
  const defaultName = isWebProject ? "index" : "main";
321061
321407
  const defaultExtension = isWebProject
321062
- ? ProjectTypes_1.ProjectFileExtensions.HTML
321063
- : ProjectTypes_1.ProjectFileExtensions.PY;
321408
+ ? ProjectTypes_1.ProjectFileExtension.HTML
321409
+ : ProjectTypes_1.ProjectFileExtension.PY;
321064
321410
  const mainComponent = project.components?.find((component) => component.name === defaultName &&
321065
321411
  component.extension === defaultExtension) || {
321066
321412
  name: defaultName,
@@ -321071,7 +321417,7 @@ const useProject = ({ code = null, loadCache = true, identifier = null, projectD
321071
321417
  component.extension === defaultExtension)) || [];
321072
321418
  const updatedProject = {
321073
321419
  ...project,
321074
- project_type: project.project_type || ProjectTypes_1.ProjectTypes.PYTHON,
321420
+ project_type: project.project_type || ProjectTypes_1.ProjectType.PYTHON,
321075
321421
  components: [
321076
321422
  ...otherComponents,
321077
321423
  {
@@ -321095,7 +321441,7 @@ exports.U = useProject;
321095
321441
 
321096
321442
  var _a;
321097
321443
  Object.defineProperty(exports, "__esModule", ({ value: true }));
321098
- exports.setErrorDetails = exports.disableTheming = exports.hideSidebar = exports.showSidebar = exports.closeRenameFileModal = exports.showRenameFileModal = exports.closeNewFileModal = exports.showNewFileModal = exports.closeErrorModal = exports.showErrorModal = exports.closeBetaModal = exports.showBetaModal = exports.updateProjectName = exports.updateProjectComponent = exports.updateComponentName = exports.triggerSave = exports.triggerDraw = exports.triggerCodeRun = exports.stopDraw = exports.stopCodeRun = exports.setReadOnly = exports.setProject = exports.setHasShownSavePrompt = exports.setNameError = exports.setIsSplitView = exports.setError = exports.setCascadeUpdate = exports.setBrowserPreview = exports.setIsOutputOnly = exports.setEmbedded = exports.setPage = exports.setFocussedFileIndex = exports.addFilePanel = exports.setOpenFiles = exports.openFile = exports.closeFile = exports.expireJustLoaded = exports.codeRunHandled = exports.resetRunner = exports.setLoadedRunner = exports.loadingRunner = exports.addProjectComponent = exports.resetState = exports.EditorSlice = exports.editorInitialState = void 0;
321444
+ exports.setErrorDetails = exports.disableTheming = exports.hideSidebar = exports.showSidebar = exports.closeNewFileModal = exports.showNewFileModal = exports.closeErrorModal = exports.showErrorModal = exports.closeBetaModal = exports.showBetaModal = exports.updateProjectName = exports.updateProjectComponent = exports.updateComponentName = exports.triggerSave = exports.triggerDraw = exports.triggerCodeRun = exports.stopDraw = exports.stopCodeRun = exports.setReadOnly = exports.setProject = exports.setHasShownSavePrompt = exports.setNameError = exports.setIsSplitView = exports.setError = exports.setCascadeUpdate = exports.setBrowserPreview = exports.setIsOutputOnly = exports.setEmbedded = exports.setPage = exports.setFocussedFileIndex = exports.addFilePanel = exports.setOpenFiles = exports.openFile = exports.closeFile = exports.expireJustLoaded = exports.codeRunHandled = exports.resetRunner = exports.setLoadedRunner = exports.loadingRunner = exports.removeProjectComponent = exports.addProjectComponent = exports.resetState = exports.EditorSlice = exports.editorInitialState = void 0;
321099
321445
  const toolkit_1 = __webpack_require__(12069);
321100
321446
  const ProjectTypes_1 = __webpack_require__(27130);
321101
321447
  exports.editorInitialState = {
@@ -321133,7 +321479,6 @@ exports.editorInitialState = {
321133
321479
  betaModalShowing: false,
321134
321480
  errorModalShowing: false,
321135
321481
  newFileModalShowing: false,
321136
- renameFileModalShowing: false,
321137
321482
  sidebarShowing: true,
321138
321483
  modals: {},
321139
321484
  errorDetails: {},
@@ -321182,10 +321527,15 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321182
321527
  content: action.payload.content || "",
321183
321528
  id: action.payload.id,
321184
321529
  type: action.payload.type,
321530
+ isCreating: action.payload.isCreating || false,
321185
321531
  };
321186
321532
  state.project.components.push(newComponent);
321187
321533
  state.saving = "idle";
321188
321534
  },
321535
+ removeProjectComponent: (state, action) => {
321536
+ state.project.components = state.project.components.filter((component) => component.id !== action.payload);
321537
+ state.saving = "idle";
321538
+ },
321189
321539
  setPage: (state, action) => {
321190
321540
  state.page = action.payload;
321191
321541
  },
@@ -321212,7 +321562,7 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321212
321562
  state.loading = "success";
321213
321563
  state.openFiles = [[]];
321214
321564
  const firstPanelIndex = 0;
321215
- if (state.project.project_type === ProjectTypes_1.ProjectTypes.WEB) {
321565
+ if (state.project.project_type === ProjectTypes_1.ProjectType.WEB) {
321216
321566
  state.openFiles[firstPanelIndex].push("index.html");
321217
321567
  }
321218
321568
  else {
@@ -321233,7 +321583,7 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321233
321583
  state.saveTriggered = true;
321234
321584
  },
321235
321585
  updateProjectComponent: (state, action) => {
321236
- const { id, extension, name: fileName, content, cascadeUpdate, children, } = action.payload;
321586
+ const { id, extension, name: fileName, content, cascadeUpdate, children, isCreating, } = action.payload;
321237
321587
  const mapped = state.project.components.map((item) => {
321238
321588
  if ((id && item.id !== id) ||
321239
321589
  item.extension !== extension ||
@@ -321242,10 +321592,10 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321242
321592
  }
321243
321593
  // Only include children if the item is a directory
321244
321594
  if (item.type === ProjectTypes_1.ProjectComponentType.DIR) {
321245
- return { ...item, content, children };
321595
+ return { ...item, children, isCreating };
321246
321596
  }
321247
321597
  else {
321248
- return { ...item, content };
321598
+ return { ...item, content, isCreating };
321249
321599
  }
321250
321600
  });
321251
321601
  state.project.components = mapped;
@@ -321256,20 +321606,24 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321256
321606
  state.saving = "idle";
321257
321607
  },
321258
321608
  updateComponentName: (state, action) => {
321259
- const key = action.payload.key;
321609
+ const id = action.payload.id;
321260
321610
  const name = action.payload.name;
321261
321611
  const extension = action.payload.extension;
321262
- const oldComponent = state.project.components[key];
321263
- const oldName = oldComponent.extension
321612
+ const oldComponent = state.project.components.find((component) => component.id === id);
321613
+ if (!oldComponent) {
321614
+ console.error(`No component found with id: ${id}`);
321615
+ return;
321616
+ }
321617
+ const oldFullName = oldComponent.extension
321264
321618
  ? `${oldComponent.name}.${oldComponent.extension}`
321265
321619
  : oldComponent.name;
321266
321620
  oldComponent.name = name;
321267
321621
  oldComponent.extension = extension;
321268
- if (state.openFiles.flat().includes(oldName)) {
321622
+ if (state.openFiles.flat().includes(oldFullName)) {
321269
321623
  const panelIndex = state.openFiles
321270
- .map((fileNames) => fileNames.includes(oldName))
321624
+ .map((fileNames) => fileNames.includes(oldFullName))
321271
321625
  .indexOf(true);
321272
- const fileIndex = state.openFiles[panelIndex].indexOf(oldName);
321626
+ const fileIndex = state.openFiles[panelIndex].indexOf(oldFullName);
321273
321627
  if (state.openFiles[panelIndex]) {
321274
321628
  state.openFiles[panelIndex][fileIndex] = `${name}.${extension}`;
321275
321629
  }
@@ -321333,14 +321687,6 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321333
321687
  state.newFileModalShowing = false;
321334
321688
  state.nameError = "";
321335
321689
  },
321336
- showRenameFileModal: (state, action) => {
321337
- state.modals.renameFile = action.payload;
321338
- state.renameFileModalShowing = true;
321339
- },
321340
- closeRenameFileModal: (state) => {
321341
- state.renameFileModalShowing = false;
321342
- state.nameError = "";
321343
- },
321344
321690
  showSidebar: (state) => {
321345
321691
  state.sidebarShowing = true;
321346
321692
  },
@@ -321356,7 +321702,7 @@ exports.EditorSlice = (0, toolkit_1.createSlice)({
321356
321702
  },
321357
321703
  });
321358
321704
  // Action creators are generated for each case reducer function
321359
- _a = exports.EditorSlice.actions, exports.resetState = _a.resetState, exports.addProjectComponent = _a.addProjectComponent, exports.loadingRunner = _a.loadingRunner, exports.setLoadedRunner = _a.setLoadedRunner, exports.resetRunner = _a.resetRunner, exports.codeRunHandled = _a.codeRunHandled, exports.expireJustLoaded = _a.expireJustLoaded, exports.closeFile = _a.closeFile, exports.openFile = _a.openFile, exports.setOpenFiles = _a.setOpenFiles, exports.addFilePanel = _a.addFilePanel, exports.setFocussedFileIndex = _a.setFocussedFileIndex, exports.setPage = _a.setPage, exports.setEmbedded = _a.setEmbedded, exports.setIsOutputOnly = _a.setIsOutputOnly, exports.setBrowserPreview = _a.setBrowserPreview, exports.setCascadeUpdate = _a.setCascadeUpdate, exports.setError = _a.setError, exports.setIsSplitView = _a.setIsSplitView, exports.setNameError = _a.setNameError, exports.setHasShownSavePrompt = _a.setHasShownSavePrompt, exports.setProject = _a.setProject, exports.setReadOnly = _a.setReadOnly, exports.stopCodeRun = _a.stopCodeRun, exports.stopDraw = _a.stopDraw, exports.triggerCodeRun = _a.triggerCodeRun, exports.triggerDraw = _a.triggerDraw, exports.triggerSave = _a.triggerSave, exports.updateComponentName = _a.updateComponentName, exports.updateProjectComponent = _a.updateProjectComponent, exports.updateProjectName = _a.updateProjectName, exports.showBetaModal = _a.showBetaModal, exports.closeBetaModal = _a.closeBetaModal, exports.showErrorModal = _a.showErrorModal, exports.closeErrorModal = _a.closeErrorModal, exports.showNewFileModal = _a.showNewFileModal, exports.closeNewFileModal = _a.closeNewFileModal, exports.showRenameFileModal = _a.showRenameFileModal, exports.closeRenameFileModal = _a.closeRenameFileModal, exports.showSidebar = _a.showSidebar, exports.hideSidebar = _a.hideSidebar, exports.disableTheming = _a.disableTheming, exports.setErrorDetails = _a.setErrorDetails;
321705
+ _a = exports.EditorSlice.actions, exports.resetState = _a.resetState, exports.addProjectComponent = _a.addProjectComponent, exports.removeProjectComponent = _a.removeProjectComponent, exports.loadingRunner = _a.loadingRunner, exports.setLoadedRunner = _a.setLoadedRunner, exports.resetRunner = _a.resetRunner, exports.codeRunHandled = _a.codeRunHandled, exports.expireJustLoaded = _a.expireJustLoaded, exports.closeFile = _a.closeFile, exports.openFile = _a.openFile, exports.setOpenFiles = _a.setOpenFiles, exports.addFilePanel = _a.addFilePanel, exports.setFocussedFileIndex = _a.setFocussedFileIndex, exports.setPage = _a.setPage, exports.setEmbedded = _a.setEmbedded, exports.setIsOutputOnly = _a.setIsOutputOnly, exports.setBrowserPreview = _a.setBrowserPreview, exports.setCascadeUpdate = _a.setCascadeUpdate, exports.setError = _a.setError, exports.setIsSplitView = _a.setIsSplitView, exports.setNameError = _a.setNameError, exports.setHasShownSavePrompt = _a.setHasShownSavePrompt, exports.setProject = _a.setProject, exports.setReadOnly = _a.setReadOnly, exports.stopCodeRun = _a.stopCodeRun, exports.stopDraw = _a.stopDraw, exports.triggerCodeRun = _a.triggerCodeRun, exports.triggerDraw = _a.triggerDraw, exports.triggerSave = _a.triggerSave, exports.updateComponentName = _a.updateComponentName, exports.updateProjectComponent = _a.updateProjectComponent, exports.updateProjectName = _a.updateProjectName, exports.showBetaModal = _a.showBetaModal, exports.closeBetaModal = _a.closeBetaModal, exports.showErrorModal = _a.showErrorModal, exports.closeErrorModal = _a.closeErrorModal, exports.showNewFileModal = _a.showNewFileModal, exports.closeNewFileModal = _a.closeNewFileModal, exports.showSidebar = _a.showSidebar, exports.hideSidebar = _a.hideSidebar, exports.disableTheming = _a.disableTheming, exports.setErrorDetails = _a.setErrorDetails;
321360
321706
  exports["default"] = exports.EditorSlice.reducer;
321361
321707
 
321362
321708
 
@@ -321452,63 +321798,31 @@ exports["default"] = store;
321452
321798
 
321453
321799
 
321454
321800
  Object.defineProperty(exports, "__esModule", ({ value: true }));
321455
- exports.ProjectFileExtensions = exports.ProjectTypes = exports.ProjectComponentType = void 0;
321801
+ exports.ProjectFileExtension = exports.ProjectType = exports.ProjectComponentType = void 0;
321456
321802
  var ProjectComponentType;
321457
321803
  (function (ProjectComponentType) {
321458
321804
  ProjectComponentType["FILE"] = "file";
321459
321805
  ProjectComponentType["DIR"] = "dir";
321460
321806
  })(ProjectComponentType || (exports.ProjectComponentType = ProjectComponentType = {}));
321461
- var ProjectTypes;
321462
- (function (ProjectTypes) {
321463
- ProjectTypes["WEB"] = "web";
321464
- ProjectTypes["PYTHON"] = "python";
321465
- })(ProjectTypes || (exports.ProjectTypes = ProjectTypes = {}));
321466
- var ProjectFileExtensions;
321467
- (function (ProjectFileExtensions) {
321468
- ProjectFileExtensions["HTML"] = "html";
321469
- ProjectFileExtensions["CSS"] = "css";
321470
- ProjectFileExtensions["PY"] = "py";
321471
- ProjectFileExtensions["JS"] = "js";
321472
- ProjectFileExtensions["CSV"] = "csv";
321473
- ProjectFileExtensions["PNG"] = "png";
321474
- ProjectFileExtensions["JPG"] = "jpg";
321475
- ProjectFileExtensions["GIF"] = "gif";
321476
- ProjectFileExtensions["MD"] = "md";
321477
- })(ProjectFileExtensions || (exports.ProjectFileExtensions = ProjectFileExtensions = {}));
321478
-
321479
-
321480
- /***/ }),
321481
-
321482
- /***/ 24329:
321483
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
321484
-
321485
-
321486
- var __importDefault = (this && this.__importDefault) || function (mod) {
321487
- return (mod && mod.__esModule) ? mod : { "default": mod };
321488
- };
321489
- Object.defineProperty(exports, "__esModule", ({ value: true }));
321490
- const jsx_runtime_1 = __webpack_require__(74848);
321491
- const file_svg_1 = __importDefault(__webpack_require__(70429));
321492
- const python_file_svg_1 = __importDefault(__webpack_require__(90830));
321493
- const html_file_svg_1 = __importDefault(__webpack_require__(59917));
321494
- const css_file_svg_1 = __importDefault(__webpack_require__(66781));
321495
- const csv_file_svg_1 = __importDefault(__webpack_require__(14222));
321496
- const ProjectTypes_1 = __webpack_require__(27130);
321497
- const FileIcon = ({ ext }) => {
321498
- switch (ext) {
321499
- case ProjectTypes_1.ProjectFileExtensions.PY:
321500
- return (0, jsx_runtime_1.jsx)(python_file_svg_1.default, { "data-testid": "pythonIcon" });
321501
- case ProjectTypes_1.ProjectFileExtensions.HTML:
321502
- return (0, jsx_runtime_1.jsx)(html_file_svg_1.default, { "data-testid": "htmlIcon" });
321503
- case ProjectTypes_1.ProjectFileExtensions.CSS:
321504
- return (0, jsx_runtime_1.jsx)(css_file_svg_1.default, { "data-testid": "cssIcon" });
321505
- case ProjectTypes_1.ProjectFileExtensions.CSV:
321506
- return (0, jsx_runtime_1.jsx)(csv_file_svg_1.default, { "data-testid": "csvIcon" });
321507
- default:
321508
- return (0, jsx_runtime_1.jsx)(file_svg_1.default, { "data-testid": "defaultFileIcon" });
321509
- }
321510
- };
321511
- exports["default"] = FileIcon;
321807
+ var ProjectType;
321808
+ (function (ProjectType) {
321809
+ ProjectType["WEB"] = "web";
321810
+ ProjectType["PYTHON"] = "python";
321811
+ })(ProjectType || (exports.ProjectType = ProjectType = {}));
321812
+ var ProjectFileExtension;
321813
+ (function (ProjectFileExtension) {
321814
+ ProjectFileExtension["HTML"] = "html";
321815
+ ProjectFileExtension["CSS"] = "css";
321816
+ ProjectFileExtension["PY"] = "py";
321817
+ ProjectFileExtension["JS"] = "js";
321818
+ ProjectFileExtension["CSV"] = "csv";
321819
+ ProjectFileExtension["PNG"] = "png";
321820
+ ProjectFileExtension["JPG"] = "jpg";
321821
+ ProjectFileExtension["GIF"] = "gif";
321822
+ ProjectFileExtension["MD"] = "md";
321823
+ ProjectFileExtension["MP3"] = "mp3";
321824
+ ProjectFileExtension["WAV"] = "wav";
321825
+ })(ProjectFileExtension || (exports.ProjectFileExtension = ProjectFileExtension = {}));
321512
321826
 
321513
321827
 
321514
321828
  /***/ }),
@@ -321523,21 +321837,21 @@ exports.U = void 0;
321523
321837
  const EditorSlice_1 = __webpack_require__(68512);
321524
321838
  const ProjectTypes_1 = __webpack_require__(27130);
321525
321839
  const allowedExtensionsString_1 = __webpack_require__(79608);
321526
- const allowedCommonExtensions = [ProjectTypes_1.ProjectFileExtensions.MD];
321840
+ const allowedCommonExtensions = [ProjectTypes_1.ProjectFileExtension.MD];
321527
321841
  const allowedExtensions = {
321528
- [ProjectTypes_1.ProjectTypes.PYTHON]: [
321842
+ [ProjectTypes_1.ProjectType.PYTHON]: [
321529
321843
  ...allowedCommonExtensions,
321530
- ProjectTypes_1.ProjectFileExtensions.PY,
321531
- ProjectTypes_1.ProjectFileExtensions.CSV,
321844
+ ProjectTypes_1.ProjectFileExtension.PY,
321845
+ ProjectTypes_1.ProjectFileExtension.CSV,
321532
321846
  ],
321533
- [ProjectTypes_1.ProjectTypes.WEB]: [
321847
+ [ProjectTypes_1.ProjectType.WEB]: [
321534
321848
  ...allowedCommonExtensions,
321535
- ProjectTypes_1.ProjectFileExtensions.HTML,
321536
- ProjectTypes_1.ProjectFileExtensions.CSS,
321537
- ProjectTypes_1.ProjectFileExtensions.JS,
321538
- ProjectTypes_1.ProjectFileExtensions.PNG,
321539
- ProjectTypes_1.ProjectFileExtensions.JPG,
321540
- ProjectTypes_1.ProjectFileExtensions.GIF,
321849
+ ProjectTypes_1.ProjectFileExtension.HTML,
321850
+ ProjectTypes_1.ProjectFileExtension.CSS,
321851
+ ProjectTypes_1.ProjectFileExtension.JS,
321852
+ ProjectTypes_1.ProjectFileExtension.PNG,
321853
+ ProjectTypes_1.ProjectFileExtension.JPG,
321854
+ ProjectTypes_1.ProjectFileExtension.GIF,
321541
321855
  ],
321542
321856
  };
321543
321857
  const reservedFileNames = ["INSTRUCTIONS.md"];
@@ -321553,7 +321867,7 @@ const isValidFileName = (fileName, projectType, componentNames) => {
321553
321867
  return false;
321554
321868
  }
321555
321869
  };
321556
- const validateFileName = (fileName, projectType = ProjectTypes_1.ProjectTypes.PYTHON, componentNames, dispatch, t, callback, currentFileName = null) => {
321870
+ const validateFileName = (fileName, projectType = ProjectTypes_1.ProjectType.PYTHON, componentNames, dispatch, t, callback, currentFileName = null) => {
321557
321871
  const extension = fileName.split(".").slice(1).join(".");
321558
321872
  if (isValidFileName(fileName, projectType, componentNames) ||
321559
321873
  (currentFileName && fileName === currentFileName)) {
@@ -321592,14 +321906,14 @@ const ProjectTypes_1 = __webpack_require__(27130);
321592
321906
  const createDefaultPythonProject = () => {
321593
321907
  const mainComponent = {
321594
321908
  id: crypto.randomUUID(),
321595
- extension: ProjectTypes_1.ProjectFileExtensions.PY,
321909
+ extension: ProjectTypes_1.ProjectFileExtension.PY,
321596
321910
  name: "main",
321597
321911
  content: "",
321598
321912
  default: true,
321599
321913
  type: "file",
321600
321914
  };
321601
321915
  return {
321602
- project_type: ProjectTypes_1.ProjectTypes.PYTHON,
321916
+ project_type: ProjectTypes_1.ProjectType.PYTHON,
321603
321917
  name: "untitled",
321604
321918
  locale: null,
321605
321919
  components: [
@@ -321616,20 +321930,20 @@ exports.createDefaultPythonProject = createDefaultPythonProject;
321616
321930
  const createDefaultWebProject = () => {
321617
321931
  const indexComponent = {
321618
321932
  id: crypto.randomUUID(),
321619
- extension: ProjectTypes_1.ProjectFileExtensions.HTML,
321933
+ extension: ProjectTypes_1.ProjectFileExtension.HTML,
321620
321934
  name: "index",
321621
321935
  content: "",
321622
321936
  type: "file",
321623
321937
  };
321624
321938
  const styleComponent = {
321625
321939
  id: crypto.randomUUID(),
321626
- extension: ProjectTypes_1.ProjectFileExtensions.CSS,
321940
+ extension: ProjectTypes_1.ProjectFileExtension.CSS,
321627
321941
  name: "style",
321628
321942
  content: "",
321629
321943
  type: "file",
321630
321944
  };
321631
321945
  return {
321632
- project_type: ProjectTypes_1.ProjectTypes.WEB,
321946
+ project_type: ProjectTypes_1.ProjectType.WEB,
321633
321947
  name: "untitled",
321634
321948
  components: [
321635
321949
  indexComponent,
@@ -337055,9 +337369,8 @@ var RunnerFactory = __webpack_require__(78329);
337055
337369
  var RunnerFactory_default = /*#__PURE__*/__webpack_require__.n(RunnerFactory);
337056
337370
  // EXTERNAL MODULE: ./src/components/RunButton/RunnerControls.jsx + 4 modules
337057
337371
  var RunnerControls = __webpack_require__(15590);
337058
- ;// ./src/components/RunButton/styles.module.scss
337059
- // extracted by mini-css-extract-plugin
337060
- /* harmony default export */ const styles_module = ({"grey-rpi-grey-15":"#d5d7dc","grey-rpi-grey-40":"#9497a4","grey-rpi-grey-5":"#f1f2f3","grey-rpi-grey-70":"#4a4d59","grey-rpf-white":"#fff","runBar":"styles-module__runBar--JA+8h"});
337372
+ // EXTERNAL MODULE: ./src/components/RunButton/styles.module.scss
337373
+ var styles_module = __webpack_require__(26413);
337061
337374
  ;// ./src/components/RunButton/RunBar.jsx
337062
337375
 
337063
337376
 
@@ -337068,7 +337381,7 @@ var RunBar = _ref => {
337068
337381
  embedded = false
337069
337382
  } = _ref;
337070
337383
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
337071
- className: styles_module.runBar,
337384
+ className: styles_module/* default */.A.runBar,
337072
337385
  children: /*#__PURE__*/(0,jsx_runtime.jsx)(RunnerControls["default"], {
337073
337386
  embedded: embedded
337074
337387
  })
@@ -341748,9 +342061,9 @@ var ProjectBar = _ref => {
341748
342061
  }), loading === "success" && !readOnly && /*#__PURE__*/(0,jsx_runtime.jsx)(SaveButton_SaveButton, {
341749
342062
  className: ProjectBar_styles_module.headerBtn
341750
342063
  })]
341751
- }), /*#__PURE__*/(0,jsx_runtime.jsx)(RunButton_RunBar, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
342064
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
341752
342065
  className: ProjectBar_styles_module.wrapper,
341753
- children: [loading === "success" && /*#__PURE__*/(0,jsx_runtime.jsx)(DownloadButton_DownloadButton, {
342066
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(RunButton_RunBar, {}), loading === "success" && /*#__PURE__*/(0,jsx_runtime.jsx)(DownloadButton_DownloadButton, {
341754
342067
  className: ProjectBar_styles_module.btnSvg
341755
342068
  }), /*#__PURE__*/(0,jsx_runtime.jsx)(ShareButton_ShareButton, {
341756
342069
  className: ProjectBar_styles_module.btnSvg
@@ -342709,7 +343022,7 @@ var SidebarPanel = props => {
342709
343022
  Footer,
342710
343023
  className,
342711
343024
  buttons = [],
342712
- defaultWidth = "250px"
343025
+ defaultWidth = "270px"
342713
343026
  } = props;
342714
343027
  var isMobile = (0,react_responsive.useMediaQuery)({
342715
343028
  query: mediaQueryBreakpoints.MOBILE_MEDIA_QUERY
@@ -342757,11 +343070,12 @@ var FileTree = __webpack_require__(88675);
342757
343070
 
342758
343071
  var FilePanel = () => {
342759
343072
  var project = (0,external_react_redux_.useSelector)(state => state.editor.project);
343073
+ var projectComponents = (0,external_react_redux_.useSelector)(state => state.editor.project.components);
342760
343074
  if (!project || !project.components) {
342761
343075
  return null;
342762
343076
  }
342763
343077
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Sidebar_SidebarPanel, {
342764
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(FileTree.FileTree, {})
343078
+ children: (projectComponents === null || projectComponents === void 0 ? void 0 : projectComponents.length) > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(FileTree.FileTree, {})
342765
343079
  });
342766
343080
  };
342767
343081
  /* harmony default export */ const FilePanel_FilePanel = (FilePanel);
@@ -350661,211 +350975,6 @@ var esm = __webpack_require__(39243);
350661
350975
  ;// ./src/assets/stylesheets/EditorPanel.scss
350662
350976
  // extracted by mini-css-extract-plugin
350663
350977
 
350664
- // EXTERNAL MODULE: ./node_modules/cookie/index.js
350665
- var cookie = __webpack_require__(57427);
350666
- ;// ./node_modules/universal-cookie/es6/utils.js
350667
-
350668
- function hasDocumentCookie() {
350669
- // Can we get/set cookies on document.cookie?
350670
- return typeof document === 'object' && typeof document.cookie === 'string';
350671
- }
350672
- function cleanCookies() {
350673
- document.cookie.split(';').forEach(function (c) {
350674
- document.cookie = c
350675
- .replace(/^ +/, '')
350676
- .replace(/=.*/, '=;expires=' + new Date().toUTCString() + ';path=/');
350677
- });
350678
- }
350679
- function parseCookies(cookies, options) {
350680
- if (typeof cookies === 'string') {
350681
- return cookie/* parse */.q(cookies, options);
350682
- }
350683
- else if (typeof cookies === 'object' && cookies !== null) {
350684
- return cookies;
350685
- }
350686
- else {
350687
- return {};
350688
- }
350689
- }
350690
- function isParsingCookie(value, doNotParse) {
350691
- if (typeof doNotParse === 'undefined') {
350692
- // We guess if the cookie start with { or [, it has been serialized
350693
- doNotParse =
350694
- !value || (value[0] !== '{' && value[0] !== '[' && value[0] !== '"');
350695
- }
350696
- return !doNotParse;
350697
- }
350698
- function readCookie(value, options) {
350699
- if (options === void 0) { options = {}; }
350700
- var cleanValue = cleanupCookieValue(value);
350701
- if (isParsingCookie(cleanValue, options.doNotParse)) {
350702
- try {
350703
- return JSON.parse(cleanValue);
350704
- }
350705
- catch (e) {
350706
- // At least we tried
350707
- }
350708
- }
350709
- // Ignore clean value if we failed the deserialization
350710
- // It is not relevant anymore to trim those values
350711
- return value;
350712
- }
350713
- function cleanupCookieValue(value) {
350714
- // express prepend j: before serializing a cookie
350715
- if (value && value[0] === 'j' && value[1] === ':') {
350716
- return value.substr(2);
350717
- }
350718
- return value;
350719
- }
350720
-
350721
- ;// ./node_modules/universal-cookie/es6/Cookies.js
350722
- var Cookies_assign = (undefined && undefined.__assign) || function () {
350723
- Cookies_assign = Object.assign || function(t) {
350724
- for (var s, i = 1, n = arguments.length; i < n; i++) {
350725
- s = arguments[i];
350726
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
350727
- t[p] = s[p];
350728
- }
350729
- return t;
350730
- };
350731
- return Cookies_assign.apply(this, arguments);
350732
- };
350733
-
350734
-
350735
- var Cookies = /** @class */ (function () {
350736
- function Cookies(cookies, options) {
350737
- var _this = this;
350738
- this.changeListeners = [];
350739
- this.HAS_DOCUMENT_COOKIE = false;
350740
- this.cookies = parseCookies(cookies, options);
350741
- new Promise(function () {
350742
- _this.HAS_DOCUMENT_COOKIE = hasDocumentCookie();
350743
- }).catch(function () { });
350744
- }
350745
- Cookies.prototype._updateBrowserValues = function (parseOptions) {
350746
- if (!this.HAS_DOCUMENT_COOKIE) {
350747
- return;
350748
- }
350749
- this.cookies = cookie/* parse */.q(document.cookie, parseOptions);
350750
- };
350751
- Cookies.prototype._emitChange = function (params) {
350752
- for (var i = 0; i < this.changeListeners.length; ++i) {
350753
- this.changeListeners[i](params);
350754
- }
350755
- };
350756
- Cookies.prototype.get = function (name, options, parseOptions) {
350757
- if (options === void 0) { options = {}; }
350758
- this._updateBrowserValues(parseOptions);
350759
- return readCookie(this.cookies[name], options);
350760
- };
350761
- Cookies.prototype.getAll = function (options, parseOptions) {
350762
- if (options === void 0) { options = {}; }
350763
- this._updateBrowserValues(parseOptions);
350764
- var result = {};
350765
- for (var name_1 in this.cookies) {
350766
- result[name_1] = readCookie(this.cookies[name_1], options);
350767
- }
350768
- return result;
350769
- };
350770
- Cookies.prototype.set = function (name, value, options) {
350771
- var _a;
350772
- if (typeof value === 'object') {
350773
- value = JSON.stringify(value);
350774
- }
350775
- this.cookies = Cookies_assign(Cookies_assign({}, this.cookies), (_a = {}, _a[name] = value, _a));
350776
- if (this.HAS_DOCUMENT_COOKIE) {
350777
- document.cookie = cookie/* serialize */.l(name, value, options);
350778
- }
350779
- this._emitChange({ name: name, value: value, options: options });
350780
- };
350781
- Cookies.prototype.remove = function (name, options) {
350782
- var finalOptions = (options = Cookies_assign(Cookies_assign({}, options), { expires: new Date(1970, 1, 1, 0, 0, 1), maxAge: 0 }));
350783
- this.cookies = Cookies_assign({}, this.cookies);
350784
- delete this.cookies[name];
350785
- if (this.HAS_DOCUMENT_COOKIE) {
350786
- document.cookie = cookie/* serialize */.l(name, '', finalOptions);
350787
- }
350788
- this._emitChange({ name: name, value: undefined, options: options });
350789
- };
350790
- Cookies.prototype.addChangeListener = function (callback) {
350791
- this.changeListeners.push(callback);
350792
- };
350793
- Cookies.prototype.removeChangeListener = function (callback) {
350794
- var idx = this.changeListeners.indexOf(callback);
350795
- if (idx >= 0) {
350796
- this.changeListeners.splice(idx, 1);
350797
- }
350798
- };
350799
- return Cookies;
350800
- }());
350801
- /* harmony default export */ const es6_Cookies = (Cookies);
350802
-
350803
- ;// ./node_modules/universal-cookie/es6/index.js
350804
-
350805
- /* harmony default export */ const es6 = (es6_Cookies);
350806
-
350807
- ;// ./node_modules/react-cookie/es6/Cookies.js
350808
-
350809
- /* harmony default export */ const react_cookie_es6_Cookies = (es6);
350810
-
350811
- ;// ./node_modules/react-cookie/es6/CookiesContext.js
350812
-
350813
-
350814
- var CookiesContext = external_react_.createContext(new react_cookie_es6_Cookies());
350815
- var Provider = CookiesContext.Provider, Consumer = CookiesContext.Consumer;
350816
- /* harmony default export */ const es6_CookiesContext = (CookiesContext);
350817
-
350818
- ;// ./node_modules/react-cookie/es6/utils.js
350819
- function isInBrowser() {
350820
- return (typeof window !== 'undefined' &&
350821
- typeof window.document !== 'undefined' &&
350822
- typeof window.document.createElement !== 'undefined');
350823
- }
350824
-
350825
- ;// ./node_modules/react-cookie/es6/useCookies.js
350826
-
350827
-
350828
-
350829
- function useCookies(dependencies) {
350830
- var cookies = (0,external_react_.useContext)(es6_CookiesContext);
350831
- if (!cookies) {
350832
- throw new Error('Missing <CookiesProvider>');
350833
- }
350834
- var initialCookies = cookies.getAll();
350835
- var _a = (0,external_react_.useState)(initialCookies), allCookies = _a[0], setCookies = _a[1];
350836
- var previousCookiesRef = (0,external_react_.useRef)(allCookies);
350837
- if (isInBrowser()) {
350838
- (0,external_react_.useLayoutEffect)(function () {
350839
- function onChange() {
350840
- var newCookies = cookies.getAll();
350841
- if (shouldUpdate(dependencies || null, newCookies, previousCookiesRef.current)) {
350842
- setCookies(newCookies);
350843
- }
350844
- previousCookiesRef.current = newCookies;
350845
- }
350846
- cookies.addChangeListener(onChange);
350847
- return function () {
350848
- cookies.removeChangeListener(onChange);
350849
- };
350850
- }, [cookies]);
350851
- }
350852
- var setCookie = (0,external_react_.useMemo)(function () { return cookies.set.bind(cookies); }, [cookies]);
350853
- var removeCookie = (0,external_react_.useMemo)(function () { return cookies.remove.bind(cookies); }, [cookies]);
350854
- return [allCookies, setCookie, removeCookie];
350855
- }
350856
- function shouldUpdate(dependencies, newCookies, oldCookies) {
350857
- if (!dependencies) {
350858
- return true;
350859
- }
350860
- for (var _i = 0, dependencies_1 = dependencies; _i < dependencies_1.length; _i++) {
350861
- var dependency = dependencies_1[_i];
350862
- if (newCookies[dependency] !== oldCookies[dependency]) {
350863
- return true;
350864
- }
350865
- }
350866
- return false;
350867
- }
350868
-
350869
350978
  ;// ./node_modules/@codemirror/state/dist/index.js
350870
350979
  /**
350871
350980
  The data structure for documents. @nonabstract
@@ -384161,83 +384270,6 @@ var editorLightTheme = EditorView.theme({
384161
384270
  }, {
384162
384271
  dark: false
384163
384272
  });
384164
- ;// ./src/assets/stylesheets/rpf_design_system/font-weight.scss
384165
- // extracted by mini-css-extract-plugin
384166
-
384167
- ;// ./src/assets/stylesheets/rpf_design_system/font-size.scss
384168
- // extracted by mini-css-extract-plugin
384169
-
384170
- ;// ./src/assets/stylesheets/rpf_design_system/line-height.scss
384171
- // extracted by mini-css-extract-plugin
384172
-
384173
- ;// ./src/assets/themes/editorDarkTheme.js
384174
-
384175
-
384176
-
384177
-
384178
- var editorDarkTheme = EditorView.theme({
384179
- ".cm-gutters": {
384180
- "background-color": "#2A2B32",
384181
- color: "white",
384182
- border: "none"
384183
- },
384184
- ".cm-activeLine": {
384185
- "background-color": "inherit"
384186
- },
384187
- ".cm-activeLineGutter": {
384188
- "background-color": "inherit",
384189
- color: "inherit"
384190
- },
384191
- "&.cm-focused.ͼ3 .cm-selectionLayer .cm-selectionBackground": {
384192
- backgroundColor: "#144866"
384193
- },
384194
- ".cm-selectionMatch": {
384195
- backgroundColor: "transparent"
384196
- },
384197
- "&.cm-focused .cm-cursor": {
384198
- borderLeftColor: "white"
384199
- },
384200
- ".cm-line .cm-indentation-marker": {
384201
- background: "none",
384202
- "border-inline-start": "solid grey",
384203
- "&.active": {
384204
- background: "none",
384205
- "border-inline-start": "solid lightgrey"
384206
- }
384207
- },
384208
- ".ͼ5": {
384209
- color: "#FFCA99"
384210
- },
384211
- ".ͼb": {
384212
- color: "#EECCFF"
384213
- },
384214
- ".ͼc": {
384215
- color: "#9EE8FF"
384216
- },
384217
- ".ͼd": {
384218
- color: "#9EE8FF"
384219
- },
384220
- ".ͼe": {
384221
- color: "#94F9AF"
384222
- },
384223
- ".ͼf": {
384224
- color: "#94F9AF"
384225
- },
384226
- ".ͼg": {
384227
- color: "#9EE8FF"
384228
- },
384229
- ".ͼi": {
384230
- color: "#EECCFF"
384231
- },
384232
- ".ͼj": {
384233
- color: "#9EE8FF"
384234
- },
384235
- ".ͼm": {
384236
- color: "#FFCA99"
384237
- }
384238
- }, {
384239
- dark: true
384240
- });
384241
384273
  // EXTERNAL MODULE: ./src/utils/settings.js
384242
384274
  var utils_settings = __webpack_require__(3798);
384243
384275
  ;// ./src/components/Editor/EditorPanel/EditorPanel.jsx
@@ -384260,8 +384292,6 @@ var utils_settings = __webpack_require__(3798);
384260
384292
 
384261
384293
 
384262
384294
 
384263
-
384264
-
384265
384295
 
384266
384296
  var MAX_CHARACTERS = 8500000;
384267
384297
  var EditorPanel = _ref => {
@@ -384274,7 +384304,6 @@ var EditorPanel = _ref => {
384274
384304
  var project = (0,external_react_redux_.useSelector)(state => state.editor.project);
384275
384305
  var readOnly = (0,external_react_redux_.useSelector)(state => state.editor.readOnly);
384276
384306
  var cascadeUpdate = (0,external_react_redux_.useSelector)(state => state.editor.cascadeUpdate);
384277
- var [cookies] = useCookies(["theme", "fontSize"]);
384278
384307
  var dispatch = (0,external_react_redux_.useDispatch)();
384279
384308
  var {
384280
384309
  t
@@ -384311,8 +384340,14 @@ var EditorPanel = _ref => {
384311
384340
  return dist_html();
384312
384341
  }
384313
384342
  };
384314
- var isDarkMode = cookies.theme === "dark" || !cookies.theme && window.matchMedia("(prefers-color-scheme:dark)").matches;
384315
- var editorTheme = isDarkMode ? editorDarkTheme : editorLightTheme;
384343
+ // const isDarkMode =
384344
+ // cookies.theme === "dark" ||
384345
+ // (!cookies.theme &&
384346
+ // window.matchMedia("(prefers-color-scheme:dark)").matches);
384347
+ // const editorTheme = isDarkMode ? editorDarkTheme : editorLightTheme;
384348
+
384349
+ // setting hardcode light theme for TextJam phase 1
384350
+ var editorTheme = editorLightTheme;
384316
384351
  var file = project.components.find(item => item.extension === extension && item.name === fileName);
384317
384352
  (0,external_react_.useEffect)(() => {
384318
384353
  if (!file) {
@@ -384355,7 +384390,7 @@ var EditorPanel = _ref => {
384355
384390
  return () => {
384356
384391
  view.destroy();
384357
384392
  };
384358
- }, [cookies]);
384393
+ }, []);
384359
384394
  (0,external_react_.useEffect)(() => {
384360
384395
  if (cascadeUpdate && editorViewRef.current && file.content !== editorViewRef.current.state.doc.toString()) {
384361
384396
  editorViewRef.current.dispatch({
@@ -385240,68 +385275,6 @@ var ErrorModal = _ref => {
385240
385275
  });
385241
385276
  };
385242
385277
  /* harmony default export */ const Modals_ErrorModal = (ErrorModal);
385243
- ;// ./src/components/Modals/RenameFileModal.jsx
385244
-
385245
-
385246
-
385247
-
385248
-
385249
-
385250
-
385251
-
385252
-
385253
- var RenameFileModal = () => {
385254
- var dispatch = (0,external_react_redux_.useDispatch)();
385255
- var {
385256
- t
385257
- } = (0,es.useTranslation)();
385258
- var projectType = (0,external_react_redux_.useSelector)(state => state.editor.project.project_type);
385259
- var projectComponents = (0,external_react_redux_.useSelector)(state => state.editor.project.components);
385260
- var isModalOpen = (0,external_react_redux_.useSelector)(state => state.editor.renameFileModalShowing);
385261
- var {
385262
- name: currentName,
385263
- ext: currentExtension,
385264
- fileKey
385265
- } = (0,external_react_redux_.useSelector)(state => state.editor.modals.renameFile);
385266
- var componentNames = projectComponents.map(component => "".concat(component.name, ".").concat(component.extension));
385267
- var closeModal = () => dispatch((0,EditorSlice.closeRenameFileModal)());
385268
- var [fileName, setFileName] = (0,external_react_.useState)("".concat(currentName, ".").concat(currentExtension));
385269
- var renameComponent = () => {
385270
- var name = fileName.split(".")[0];
385271
- var extension = fileName.split(".").slice(1).join(".");
385272
- (0,componentNameValidation/* validateFileName */.U)(fileName, projectType, componentNames, dispatch, t, () => {
385273
- dispatch((0,EditorSlice.updateComponentName)({
385274
- key: fileKey,
385275
- extension: extension,
385276
- name: name
385277
- }));
385278
- closeModal();
385279
- }, "".concat(currentName, ".").concat(currentExtension));
385280
- };
385281
- return /*#__PURE__*/(0,jsx_runtime.jsx)(Modals_InputModal, {
385282
- isOpen: isModalOpen,
385283
- closeModal: closeModal,
385284
- withCloseButton: true,
385285
- heading: t("filePanel.renameFileModal.heading"),
385286
- inputs: [{
385287
- label: t("filePanel.renameFileModal.inputLabel"),
385288
- value: fileName,
385289
- setValue: setFileName,
385290
- validateName: true
385291
- }],
385292
- defaultCallback: renameComponent,
385293
- buttons: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
385294
- className: "btn--primary",
385295
- buttonText: t("filePanel.renameFileModal.save"),
385296
- onClickHandler: renameComponent
385297
- }, "rename"), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
385298
- className: "btn--secondary",
385299
- buttonText: t("filePanel.renameFileModal.cancel"),
385300
- onClickHandler: closeModal
385301
- }, "close")]
385302
- });
385303
- };
385304
- /* harmony default export */ const Modals_RenameFileModal = (RenameFileModal);
385305
385278
  ;// ./src/utils/ToastCloseButton.jsx
385306
385279
 
385307
385280
 
@@ -385352,7 +385325,6 @@ var ToastCloseButton = _ref => {
385352
385325
 
385353
385326
 
385354
385327
 
385355
-
385356
385328
 
385357
385329
  var WebComponentLoader = props => {
385358
385330
  var {
@@ -385384,21 +385356,29 @@ var WebComponentLoader = props => {
385384
385356
  var modals = (0,external_react_redux_.useSelector)(state => state.editor.modals);
385385
385357
  var errorModalShowing = (0,external_react_redux_.useSelector)(state => state.editor.errorModalShowing);
385386
385358
  var newFileModalShowing = (0,external_react_redux_.useSelector)(state => state.editor.newFileModalShowing);
385387
- var renameFileModalShowing = (0,external_react_redux_.useSelector)(state => state.editor.renameFileModalShowing);
385388
385359
  var {
385389
385360
  i18n
385390
385361
  } = (0,es.useTranslation)();
385391
- var [cookies, setCookie] = useCookies(["theme", "fontSize"]);
385392
- var themeDefault = typeof window !== "undefined" && window.matchMedia && window.matchMedia("(prefers-color-scheme:dark)").matches ? "dark" : "light";
385362
+
385363
+ // const [cookies, setCookie] = useCookies(["theme", "fontSize"]);
385364
+ // const themeDefault =
385365
+ // typeof window !== "undefined" &&
385366
+ // window.matchMedia &&
385367
+ // window.matchMedia("(prefers-color-scheme:dark)").matches
385368
+ // ? "dark"
385369
+ // : "light";
385370
+
385371
+ // setting hardcode light theme for TextJam phase 1
385372
+ var themeDefault = "light";
385393
385373
  useEmbeddedMode(embedded);
385394
- (0,external_react_.useEffect)(() => {
385395
- if (theme) {
385396
- dispatch((0,EditorSlice.disableTheming)());
385397
- setCookie("theme", theme, {
385398
- path: "/"
385399
- });
385400
- }
385401
- }, [theme, setCookie, dispatch]);
385374
+
385375
+ // useEffect(() => {
385376
+ // if (theme) {
385377
+ // dispatch(disableTheming());
385378
+ // setCookie("theme", theme, { path: "/" });
385379
+ // }
385380
+ // }, [theme, setCookie, dispatch]);
385381
+
385402
385382
  (0,external_react_.useEffect)(() => {
385403
385383
  if (justLoaded) {
385404
385384
  document.dispatchEvent(projectOwnerLoadedEvent(projectOwner));
@@ -385440,12 +385420,12 @@ var WebComponentLoader = props => {
385440
385420
  var renderSuccessState = () => /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
385441
385421
  children: /*#__PURE__*/(0,jsx_runtime.jsx)(utils_settings/* SettingsContext */.l.Provider, {
385442
385422
  value: {
385443
- theme: cookies.theme || themeDefault,
385444
- fontSize: cookies.fontSize || "small"
385423
+ theme: themeDefault,
385424
+ fontSize: "small"
385445
385425
  },
385446
385426
  children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
385447
385427
  id: "textjam-root",
385448
- className: "editor-shell --".concat(cookies.theme || themeDefault),
385428
+ className: "editor-shell --".concat(themeDefault),
385449
385429
  children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ToastContainer, {
385450
385430
  enableMultiContainer: true,
385451
385431
  containerId: "top-center",
@@ -385459,7 +385439,7 @@ var WebComponentLoader = props => {
385459
385439
  outputPanels: outputPanels,
385460
385440
  outputSplitView: outputSplitView,
385461
385441
  packageApiUrl: packageApiUrl
385462
- }), errorModalShowing && /*#__PURE__*/(0,jsx_runtime.jsx)(Modals_ErrorModal, {}), newFileModalShowing && /*#__PURE__*/(0,jsx_runtime.jsx)(Modals_NewFileModal, {}), renameFileModalShowing && modals.renameFile && /*#__PURE__*/(0,jsx_runtime.jsx)(Modals_RenameFileModal, {})]
385442
+ }), errorModalShowing && /*#__PURE__*/(0,jsx_runtime.jsx)(Modals_ErrorModal, {}), newFileModalShowing && /*#__PURE__*/(0,jsx_runtime.jsx)(Modals_NewFileModal, {})]
385463
385443
  })
385464
385444
  })
385465
385445
  });