roamjs-components 0.53.6 → 0.54.2

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.
@@ -2,10 +2,11 @@ import React from "react";
2
2
  declare type Props = {
3
3
  content: string;
4
4
  onConfirm?: () => void;
5
+ confirmText?: string;
5
6
  onCancel?: () => void;
6
7
  externalLink?: boolean;
7
8
  };
8
- declare const SimpleAlert: ({ onClose, content, onConfirm, onCancel, externalLink, }: Props & {
9
+ declare const SimpleAlert: ({ onClose, content, onConfirm, onCancel, externalLink, confirmText, }: Props & {
9
10
  onClose: () => void;
10
11
  }) => React.ReactElement;
11
12
  export declare const render: (props: Props) => () => void;
@@ -6,7 +6,7 @@ const react_1 = (0, tslib_1.__importStar)(require("react"));
6
6
  const core_1 = require("@blueprintjs/core");
7
7
  const createOverlayRender_1 = (0, tslib_1.__importDefault)(require("../util/createOverlayRender"));
8
8
  const markdown_to_jsx_1 = (0, tslib_1.__importDefault)(require("markdown-to-jsx"));
9
- const SimpleAlert = ({ onClose, content, onConfirm, onCancel, externalLink, }) => {
9
+ const SimpleAlert = ({ onClose, content, onConfirm, onCancel, externalLink, confirmText = "Ok", }) => {
10
10
  const alertOnClose = (0, react_1.useCallback)((confirmed) => {
11
11
  onClose();
12
12
  if (!confirmed)
@@ -19,7 +19,7 @@ const SimpleAlert = ({ onClose, content, onConfirm, onCancel, externalLink, }) =
19
19
  canEscapeKeyCancel: true,
20
20
  }
21
21
  : {};
22
- return (react_1.default.createElement(core_1.Alert, Object.assign({ isOpen: true, onClose: alertOnClose, onConfirm: onConfirm }, cancelProps),
22
+ return (react_1.default.createElement(core_1.Alert, Object.assign({ isOpen: true, onClose: alertOnClose, onConfirm: onConfirm, confirmButtonText: confirmText }, cancelProps),
23
23
  react_1.default.createElement("div", { className: core_1.Classes.ALERT_CONTENTS, style: { whiteSpace: "pre-wrap" } },
24
24
  react_1.default.createElement(markdown_to_jsx_1.default, { options: {
25
25
  overrides: {
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleAlert.js","sourceRoot":"","sources":["../src/components/SimpleAlert.tsx"],"names":[],"mappings":";;;;AAAA,4DAA2C;AAC3C,4CAAmD;AACnD,mGAA8D;AAC9D,mFAAuC;AASvC,MAAM,WAAW,GAAG,CAAC,EACnB,OAAO,EACP,OAAO,EACP,SAAS,EACT,QAAQ,EACR,YAAY,GACoB,EAAsB,EAAE;IACxD,MAAM,YAAY,GAAG,IAAA,mBAAW,EAC9B,CAAC,SAAkB,EAAE,EAAE;QACrB,OAAO,EAAE,CAAC;QACV,IAAI,CAAC,SAAS;YAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,EAAI,CAAC;IAC/B,CAAC,EACD,CAAC,QAAQ,EAAE,OAAO,CAAC,CACpB,CAAC;IACF,MAAM,WAAW,GAAG,QAAQ;QAC1B,CAAC,CAAC;YACE,gBAAgB,EAAE,QAAQ;YAC1B,qBAAqB,EAAE,IAAI;YAC3B,kBAAkB,EAAE,IAAI;SACzB;QACH,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,CACL,8BAAC,YAAK,kBACJ,MAAM,EAAE,IAAI,EACZ,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,SAAS,IAChB,WAAW;QAEf,uCACE,SAAS,EAAE,cAAO,CAAC,cAAc,EACjC,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;YAEjC,8BAAC,yBAAQ,IACP,OAAO,EAAE;oBACP,SAAS,EAAE;wBACT,CAAC,EAAE;4BACD,KAAK,EAAE,YAAY;gCACjB,CAAC,CAAC;oCACE,MAAM,EAAE,QAAQ;oCAChB,GAAG,EAAE,WAAW;iCACjB;gCACH,CAAC,CAAC,EAAE;yBACP;qBACF;iBACF,IAEA,OAAO,CACC,CACP,CACA,CACT,CAAC;AACJ,CAAC,CAAC;AAEW,QAAA,MAAM,GAAG,IAAA,6BAAmB,EAAQ,cAAc,EAAE,WAAW,CAAC,CAAC;AAE9E,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"SimpleAlert.js","sourceRoot":"","sources":["../src/components/SimpleAlert.tsx"],"names":[],"mappings":";;;;AAAA,4DAA2C;AAC3C,4CAAmD;AACnD,mGAA8D;AAC9D,mFAAuC;AAUvC,MAAM,WAAW,GAAG,CAAC,EACnB,OAAO,EACP,OAAO,EACP,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,WAAW,GAAG,IAAI,GACc,EAAsB,EAAE;IACxD,MAAM,YAAY,GAAG,IAAA,mBAAW,EAC9B,CAAC,SAAkB,EAAE,EAAE;QACrB,OAAO,EAAE,CAAC;QACV,IAAI,CAAC,SAAS;YAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,EAAI,CAAC;IAC/B,CAAC,EACD,CAAC,QAAQ,EAAE,OAAO,CAAC,CACpB,CAAC;IACF,MAAM,WAAW,GAAG,QAAQ;QAC1B,CAAC,CAAC;YACE,gBAAgB,EAAE,QAAQ;YAC1B,qBAAqB,EAAE,IAAI;YAC3B,kBAAkB,EAAE,IAAI;SACzB;QACH,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,CACL,8BAAC,YAAK,kBACJ,MAAM,EAAE,IAAI,EACZ,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,WAAW,IAC1B,WAAW;QAEf,uCACE,SAAS,EAAE,cAAO,CAAC,cAAc,EACjC,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;YAEjC,8BAAC,yBAAQ,IACP,OAAO,EAAE;oBACP,SAAS,EAAE;wBACT,CAAC,EAAE;4BACD,KAAK,EAAE,YAAY;gCACjB,CAAC,CAAC;oCACE,MAAM,EAAE,QAAQ;oCAChB,GAAG,EAAE,WAAW;iCACjB;gCACH,CAAC,CAAC,EAAE;yBACP;qBACF;iBACF,IAEA,OAAO,CACC,CACP,CACA,CACT,CAAC;AACJ,CAAC,CAAC;AAEW,QAAA,MAAM,GAAG,IAAA,6BAAmB,EAAQ,cAAc,EAAE,WAAW,CAAC,CAAC;AAE9E,kBAAe,WAAW,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "roamjs-components",
3
3
  "description": "Description for roamjs-components",
4
- "version": "0.53.6",
4
+ "version": "0.54.2",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
7
7
  "scripts": {
@@ -0,0 +1,5 @@
1
+ declare const extensionDeprecatedWarning: ({ extensionId, reason, }: {
2
+ extensionId: string;
3
+ reason: string;
4
+ }) => Promise<void>;
5
+ export default extensionDeprecatedWarning;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const idToTitle_1 = (0, tslib_1.__importDefault)(require("./idToTitle"));
5
+ const SimpleAlert_1 = require("../components/SimpleAlert");
6
+ const getRoamUrl_1 = (0, tslib_1.__importDefault)(require("../dom/getRoamUrl"));
7
+ const deleteBlock_1 = (0, tslib_1.__importDefault)(require("../writes/deleteBlock"));
8
+ const Toast_1 = require("../components/Toast");
9
+ const extensionDeprecatedWarning = ({ extensionId, reason, }) => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
10
+ const blocks = window.roamAlphaAPI
11
+ .q(`[:find (pull ?roamjs [:block/uid]) :where [?block :block/string ?contents] [(clojure.string/includes? ?contents "https://roamjs.com/${extensionId}")] [?roamjs :block/children ?block]]`)
12
+ .map(([{ uid }]) => uid);
13
+ (0, SimpleAlert_1.render)({
14
+ content: `RoamJS will soon be deprecating and then removing the ${(0, idToTitle_1.default)(extensionId)} extension.
15
+
16
+ ${reason}
17
+
18
+ If you no longer use this extension, feel free to uninstall it${blocks.length
19
+ ? ` by removing the block from [here](${(0, getRoamUrl_1.default)(blocks[0])}) or by clicking confirm`
20
+ : ""}. If this will be an issue for any reason, please reach out to support@roamjs.com.`,
21
+ onConfirm: () => blocks.map((b) => (0, deleteBlock_1.default)(b)),
22
+ onCancel: () => (0, Toast_1.render)({
23
+ content: "Reach out to supprt@roamjs.com if you would like to keep the extension.",
24
+ id: `deprecated-${extensionId}`,
25
+ }),
26
+ confirmText: "Confirm",
27
+ });
28
+ });
29
+ exports.default = extensionDeprecatedWarning;
30
+ //# sourceMappingURL=extensionDeprecatedWarning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensionDeprecatedWarning.js","sourceRoot":"","sources":["../src/util/extensionDeprecatedWarning.ts"],"names":[],"mappings":";;;AAAA,yEAAoC;AACpC,2DAAwE;AACxE,gFAA2C;AAC3C,qFAAgD;AAChD,+CAA4D;AAE5D,MAAM,0BAA0B,GAAG,CAAO,EACxC,WAAW,EACX,MAAM,GAIP,EAAiB,EAAE;IAClB,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY;SAC/B,CAAC,CACA,wIAAwI,WAAW,uCAAuC,CAC3L;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAa,CAAC,CAAC;IACrC,IAAA,oBAAiB,EAAC;QAChB,OAAO,EAAE,yDAAyD,IAAA,mBAAS,EACzE,WAAW,CACZ;;EAEH,MAAM;;gEAGF,MAAM,CAAC,MAAM;YACX,CAAC,CAAC,sCAAsC,IAAA,oBAAU,EAC9C,MAAM,CAAC,CAAC,CAAC,CACV,0BAA0B;YAC7B,CAAC,CAAC,EACN,oFAAoF;QACpF,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,qBAAW,EAAC,CAAC,CAAC,CAAC;QAClD,QAAQ,EAAE,GAAG,EAAE,CACb,IAAA,cAAW,EAAC;YACV,OAAO,EACL,yEAAyE;YAC3E,EAAE,EAAE,cAAc,WAAW,EAAE;SAChC,CAAC;QACJ,WAAW,EAAE,SAAS;KACvB,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,kBAAe,0BAA0B,CAAC"}
package/util/index.d.ts CHANGED
@@ -7,6 +7,7 @@ export { default as createOverlayRender } from "./createOverlayRender";
7
7
  export { default as createTagRegex } from "./createTagRegex";
8
8
  export { default as extractRef } from "./extractRef";
9
9
  export { default as extractTag } from "./extractTag";
10
+ export { default as extensionDeprecatedWarning } from "./extensionDeprecatedWarning";
10
11
  export { default as getGraph } from "./getGraph";
11
12
  export { default as getOauth } from "./getOauth";
12
13
  export { default as getOauthAccounts } from "./getOauthAccounts";
package/util/index.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.toFlexRegex = exports.setInputSettings = exports.setInputSetting = exports.runExtension = exports.isControl = exports.idToTitle = exports.getSubTree = exports.getSettingValuesFromTree = exports.getSettingValueFromTree = exports.getSettingIntFromTree = exports.getRenderRoot = exports.getOauthAccounts = exports.getOauth = exports.getGraph = exports.extractTag = exports.extractRef = exports.createTagRegex = exports.createOverlayRender = exports.apiPut = exports.apiPost = exports.apiGet = exports.apiDelete = exports.addInputSetting = void 0;
6
+ exports.toFlexRegex = exports.setInputSettings = exports.setInputSetting = exports.runExtension = exports.isControl = exports.idToTitle = exports.getSubTree = exports.getSettingValuesFromTree = exports.getSettingValueFromTree = exports.getSettingIntFromTree = exports.getRenderRoot = exports.getOauthAccounts = exports.getOauth = exports.getGraph = exports.extensionDeprecatedWarning = exports.extractTag = exports.extractRef = exports.createTagRegex = exports.createOverlayRender = exports.apiPut = exports.apiPost = exports.apiGet = exports.apiDelete = exports.addInputSetting = void 0;
7
7
  var addInputSetting_1 = require("./addInputSetting");
8
8
  Object.defineProperty(exports, "addInputSetting", { enumerable: true, get: function () { return __importDefault(addInputSetting_1).default; } });
9
9
  var apiDelete_1 = require("./apiDelete");
@@ -22,6 +22,8 @@ var extractRef_1 = require("./extractRef");
22
22
  Object.defineProperty(exports, "extractRef", { enumerable: true, get: function () { return __importDefault(extractRef_1).default; } });
23
23
  var extractTag_1 = require("./extractTag");
24
24
  Object.defineProperty(exports, "extractTag", { enumerable: true, get: function () { return __importDefault(extractTag_1).default; } });
25
+ var extensionDeprecatedWarning_1 = require("./extensionDeprecatedWarning");
26
+ Object.defineProperty(exports, "extensionDeprecatedWarning", { enumerable: true, get: function () { return __importDefault(extensionDeprecatedWarning_1).default; } });
25
27
  var getGraph_1 = require("./getGraph");
26
28
  Object.defineProperty(exports, "getGraph", { enumerable: true, get: function () { return __importDefault(getGraph_1).default; } });
27
29
  var getOauth_1 = require("./getOauth");
package/util/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/util/index.ts"],"names":[],"mappings":";;;;;;AAAA,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,yCAAkD;AAAzC,uHAAA,OAAO,OAAa;AAC7B,mCAA4C;AAAnC,iHAAA,OAAO,OAAU;AAC1B,qCAA8C;AAArC,mHAAA,OAAO,OAAW;AAC3B,mCAA4C;AAAnC,iHAAA,OAAO,OAAU;AAC1B,6DAAuE;AAA9D,2IAAA,OAAO,OAAuB;AACvC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,qEAA+E;AAAtE,mJAAA,OAAO,OAA2B;AAC3C,uEAAiF;AAAxE,qJAAA,OAAO,OAA4B;AAC5C,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,6CAAuD;AAA9C,2HAAA,OAAO,OAAe"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/util/index.ts"],"names":[],"mappings":";;;;;;AAAA,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,yCAAkD;AAAzC,uHAAA,OAAO,OAAa;AAC7B,mCAA4C;AAAnC,iHAAA,OAAO,OAAU;AAC1B,qCAA8C;AAArC,mHAAA,OAAO,OAAW;AAC3B,mCAA4C;AAAnC,iHAAA,OAAO,OAAU;AAC1B,6DAAuE;AAA9D,2IAAA,OAAO,OAAuB;AACvC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B;AAC9C,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,qEAA+E;AAAtE,mJAAA,OAAO,OAA2B;AAC3C,uEAAiF;AAAxE,qJAAA,OAAO,OAA4B;AAC5C,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,6CAAuD;AAA9C,2HAAA,OAAO,OAAe"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const axios_1 = (0, tslib_1.__importDefault)(require("axios"));
5
- const dom_1 = require("../dom");
5
+ const addStyle_1 = (0, tslib_1.__importDefault)(require("../dom/addStyle"));
6
6
  const runExtension = (extensionId, run, options = {}) => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
7
7
  var _a, _b, _c, _d, _e, _f, _g;
8
8
  if ((_c = (_b = (_a = window.roamjs) === null || _a === void 0 ? void 0 : _a.loaded) === null || _b === void 0 ? void 0 : _b.has) === null || _c === void 0 ? void 0 : _c.call(_b, extensionId)) {
@@ -23,7 +23,7 @@ const runExtension = (extensionId, run, options = {}) => (0, tslib_1.__awaiter)(
23
23
  properties: { extensionId },
24
24
  });
25
25
  }
26
- (0, dom_1.addStyle)(`.bp3-button:focus {
26
+ (0, addStyle_1.default)(`.bp3-button:focus {
27
27
  outline-width: 2px;
28
28
  }`, "roamjs-default");
29
29
  const result = run();
@@ -1 +1 @@
1
- {"version":3,"file":"runExtension.js","sourceRoot":"","sources":["../src/util/runExtension.ts"],"names":[],"mappings":";;;AAAA,+DAA0B;AAC1B,gCAAkC;AAElC,MAAM,YAAY,GAAG,CACnB,WAAmB,EACnB,GAA+B,EAC/B,UAAuC,EAAE,EAC1B,EAAE;;IACjB,IAAI,MAAA,MAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,MAAM,0CAAE,GAAG,mDAAG,WAAW,CAAC,EAAE;QAC7C,OAAO;KACR;IACD,MAAM,CAAC,MAAM,GAAG;QACd,MAAM,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,MAAM,KAAI,IAAI,GAAG,EAAE;QAC1C,SAAS,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,SAAS,KAAI,EAAE;QACzC,OAAO,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,OAAO,KAAI,EAAE;QACrC,eAAe,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,eAAe,KAAI,IAAI,GAAG,EAAE;KAC7D,CAAC;IACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;IAE3D,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QAC1B,eAAK,CAAC,IAAI,CAAC,iCAAiC,EAAE;YAC5C,SAAS,EAAE,gBAAgB;YAC3B,UAAU,EAAE,EAAE,WAAW,EAAE;SAC5B,CAAC,CAAC;KACJ;IACD,IAAA,cAAQ,EACN;;IAEA,EACA,gBAAgB,CACjB,CAAC;IAEF,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,UAAU,WAAW,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACvB;SAAM;QACL,QAAQ,EAAE,CAAC;KACZ;AACH,CAAC,CAAA,CAAC;AAEF,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"runExtension.js","sourceRoot":"","sources":["../src/util/runExtension.ts"],"names":[],"mappings":";;;AAAA,+DAA0B;AAC1B,4EAAuC;AAEvC,MAAM,YAAY,GAAG,CACnB,WAAmB,EACnB,GAA+B,EAC/B,UAAuC,EAAE,EAC1B,EAAE;;IACjB,IAAI,MAAA,MAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,MAAM,0CAAE,GAAG,mDAAG,WAAW,CAAC,EAAE;QAC7C,OAAO;KACR;IACD,MAAM,CAAC,MAAM,GAAG;QACd,MAAM,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,MAAM,KAAI,IAAI,GAAG,EAAE;QAC1C,SAAS,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,SAAS,KAAI,EAAE;QACzC,OAAO,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,OAAO,KAAI,EAAE;QACrC,eAAe,EAAE,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,eAAe,KAAI,IAAI,GAAG,EAAE;KAC7D,CAAC;IACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;IAE3D,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QAC1B,eAAK,CAAC,IAAI,CAAC,iCAAiC,EAAE;YAC5C,SAAS,EAAE,gBAAgB;YAC3B,UAAU,EAAE,EAAE,WAAW,EAAE;SAC5B,CAAC,CAAC;KACJ;IACD,IAAA,kBAAQ,EACN;;IAEA,EACA,gBAAgB,CACjB,CAAC;IAEF,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,UAAU,WAAW,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACvB;SAAM;QACL,QAAQ,EAAE,CAAC;KACZ;AACH,CAAC,CAAA,CAAC;AAEF,kBAAe,YAAY,CAAC"}