sanity 3.94.1 → 3.94.2-next.1.a8381d7633

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 (113) hide show
  1. package/lib/_chunks-cjs/version.js +1 -1
  2. package/lib/_chunks-es/version.mjs +1 -1
  3. package/package.json +25 -25
  4. package/dist/BehaviorSubject-CU-WJrzA.mjs +0 -30
  5. package/dist/BehaviorSubject-CU-WJrzA.mjs.map +0 -1
  6. package/dist/BroadcastDisplayedDocument-BSV9T3BU.mjs +0 -20
  7. package/dist/BroadcastDisplayedDocument-BSV9T3BU.mjs.map +0 -1
  8. package/dist/DisplayedDocumentBroadcaster-DZ65n35Q.mjs +0 -62
  9. package/dist/DisplayedDocumentBroadcaster-DZ65n35Q.mjs.map +0 -1
  10. package/dist/LiveQueries-Crz53eU5.mjs +0 -407
  11. package/dist/LiveQueries-Crz53eU5.mjs.map +0 -1
  12. package/dist/Observable-CCQtH8Gg.mjs +0 -546
  13. package/dist/Observable-CCQtH8Gg.mjs.map +0 -1
  14. package/dist/PostMessageDocuments-BjgsJxz4.mjs +0 -72
  15. package/dist/PostMessageDocuments-BjgsJxz4.mjs.map +0 -1
  16. package/dist/PostMessagePerspective-pucY-E6a.mjs +0 -22
  17. package/dist/PostMessagePerspective-pucY-E6a.mjs.map +0 -1
  18. package/dist/PostMessagePreviewSnapshots-CRQgRg4_.mjs +0 -71
  19. package/dist/PostMessagePreviewSnapshots-CRQgRg4_.mjs.map +0 -1
  20. package/dist/PostMessageRefreshMutations-D944RbO3.mjs +0 -66
  21. package/dist/PostMessageRefreshMutations-D944RbO3.mjs.map +0 -1
  22. package/dist/PostMessageSchema-3eOtr1bs.mjs +0 -516
  23. package/dist/PostMessageSchema-3eOtr1bs.mjs.map +0 -1
  24. package/dist/PostMessageTelemetry-DMTQDJeN.mjs +0 -20
  25. package/dist/PostMessageTelemetry-DMTQDJeN.mjs.map +0 -1
  26. package/dist/PresentationToolGrantsCheck-B0q4AQ3b.mjs +0 -3999
  27. package/dist/PresentationToolGrantsCheck-B0q4AQ3b.mjs.map +0 -1
  28. package/dist/QRCodeSVG-hyTW2xeN.mjs +0 -648
  29. package/dist/QRCodeSVG-hyTW2xeN.mjs.map +0 -1
  30. package/dist/Refractor-Zss2QEe8.mjs +0 -2568
  31. package/dist/Refractor-Zss2QEe8.mjs.map +0 -1
  32. package/dist/SourceContext-QxJD1Wrm.mjs +0 -111
  33. package/dist/SourceContext-QxJD1Wrm.mjs.map +0 -1
  34. package/dist/StructureToolProvider-B-7cwz7l.mjs +0 -2287
  35. package/dist/StructureToolProvider-B-7cwz7l.mjs.map +0 -1
  36. package/dist/ViteDevServerStopped-CgIEqy9p.mjs +0 -57
  37. package/dist/ViteDevServerStopped-CgIEqy9p.mjs.map +0 -1
  38. package/dist/_createContext.mjs +0 -38
  39. package/dist/_createContext.mjs.map +0 -1
  40. package/dist/_singletons.mjs +0 -216
  41. package/dist/_singletons.mjs.map +0 -1
  42. package/dist/browser-B0Q9qZJS.mjs +0 -478
  43. package/dist/browser-B0Q9qZJS.mjs.map +0 -1
  44. package/dist/browser-DmX5VEcE.mjs +0 -324
  45. package/dist/browser-DmX5VEcE.mjs.map +0 -1
  46. package/dist/desk.mjs +0 -53
  47. package/dist/desk.mjs.map +0 -1
  48. package/dist/first-Cz545eV-.mjs +0 -42
  49. package/dist/first-Cz545eV-.mjs.map +0 -1
  50. package/dist/index-B2GCDfau.mjs +0 -96
  51. package/dist/index-B2GCDfau.mjs.map +0 -1
  52. package/dist/index-BRIelBPK.mjs +0 -6946
  53. package/dist/index-BRIelBPK.mjs.map +0 -1
  54. package/dist/index-BUB137yJ.mjs +0 -144
  55. package/dist/index-BUB137yJ.mjs.map +0 -1
  56. package/dist/index-C3PGPrdL.mjs +0 -1192
  57. package/dist/index-C3PGPrdL.mjs.map +0 -1
  58. package/dist/index-C9NvTy6s.mjs +0 -319
  59. package/dist/index-C9NvTy6s.mjs.map +0 -1
  60. package/dist/index-DCkQlgdi.mjs +0 -4001
  61. package/dist/index-DCkQlgdi.mjs.map +0 -1
  62. package/dist/index-DG-3plB0.mjs +0 -71
  63. package/dist/index-DG-3plB0.mjs.map +0 -1
  64. package/dist/index-RoxwhtVB.mjs +0 -5600
  65. package/dist/index-RoxwhtVB.mjs.map +0 -1
  66. package/dist/index-iMZR29eF.mjs +0 -756
  67. package/dist/index-iMZR29eF.mjs.map +0 -1
  68. package/dist/index-wVXq9rWS.mjs +0 -244
  69. package/dist/index-wVXq9rWS.mjs.map +0 -1
  70. package/dist/index.mjs +0 -137385
  71. package/dist/index.mjs.map +0 -1
  72. package/dist/lodash-Vz5dH_Dm.mjs +0 -3679
  73. package/dist/lodash-Vz5dH_Dm.mjs.map +0 -1
  74. package/dist/pane-Bm_57XKB.mjs +0 -5
  75. package/dist/pane-Bm_57XKB.mjs.map +0 -1
  76. package/dist/pane-Dopl4BjD.mjs +0 -5
  77. package/dist/pane-Dopl4BjD.mjs.map +0 -1
  78. package/dist/presentation-DsIky7Cj.mjs +0 -556
  79. package/dist/presentation-DsIky7Cj.mjs.map +0 -1
  80. package/dist/presentation.mjs +0 -10
  81. package/dist/presentation.mjs.map +0 -1
  82. package/dist/publishReplay-PuJoYJpp.mjs +0 -92
  83. package/dist/publishReplay-PuJoYJpp.mjs.map +0 -1
  84. package/dist/refractor-Bg1S3YDK.mjs +0 -26
  85. package/dist/refractor-Bg1S3YDK.mjs.map +0 -1
  86. package/dist/resources-BQsCEzu1.mjs +0 -60
  87. package/dist/resources-BQsCEzu1.mjs.map +0 -1
  88. package/dist/resources-BahMtJuO.mjs +0 -177
  89. package/dist/resources-BahMtJuO.mjs.map +0 -1
  90. package/dist/resources-CjkBN4z6.mjs +0 -126
  91. package/dist/resources-CjkBN4z6.mjs.map +0 -1
  92. package/dist/resources-Dc-6ZcPg.mjs +0 -157
  93. package/dist/resources-Dc-6ZcPg.mjs.map +0 -1
  94. package/dist/resources-DqxSuDsr.mjs +0 -37
  95. package/dist/resources-DqxSuDsr.mjs.map +0 -1
  96. package/dist/resources-_gTjFWLH.mjs +0 -517
  97. package/dist/resources-_gTjFWLH.mjs.map +0 -1
  98. package/dist/resources-kA1bao30.mjs +0 -358
  99. package/dist/resources-kA1bao30.mjs.map +0 -1
  100. package/dist/router.mjs +0 -721
  101. package/dist/router.mjs.map +0 -1
  102. package/dist/stegaEncodeSourceMap-DCG9Ba1H.mjs +0 -358
  103. package/dist/stegaEncodeSourceMap-DCG9Ba1H.mjs.map +0 -1
  104. package/dist/structure.mjs +0 -57
  105. package/dist/structure.mjs.map +0 -1
  106. package/dist/structureTool-Bth1vd8r.mjs +0 -13150
  107. package/dist/structureTool-Bth1vd8r.mjs.map +0 -1
  108. package/dist/switchMap-DHVUskpL.mjs +0 -54
  109. package/dist/switchMap-DHVUskpL.mjs.map +0 -1
  110. package/dist/v4-zH-CAum7.mjs +0 -24798
  111. package/dist/v4-zH-CAum7.mjs.map +0 -1
  112. package/dist/version-DoE_JnhG.mjs +0 -5
  113. package/dist/version-DoE_JnhG.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-RoxwhtVB.mjs","sources":["../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/scheduler/dateTimestampProvider.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/ReplaySubject.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/scheduler/Action.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/scheduler/intervalProvider.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/Scheduler.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/scheduler/async.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/empty.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/throwError.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/EmptyError.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/lastValueFrom.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/firstValueFrom.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/isDate.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/mapOneOrManyArgs.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/argsArgArrayOrObject.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/createObject.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/combineLatest.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/mergeInternals.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/mergeMap.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/mergeAll.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/concatAll.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/concat.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/defer.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/fromEvent.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/timer.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/observable/merge.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/argsOrArgArray.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/filter.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/catchError.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/combineLatest.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/combineLatestWith.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/concatMap.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/take.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/finalize.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/share.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/shareReplay.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/takeUntil.js","../../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/tap.js","../src/ui-components/conditionalWrapper/ConditionalWrapper.tsx","../src/ui-components/button/Button.tsx","../src/ui-components/errorBoundary/ErrorBoundary.tsx","../src/ui-components/menuButton/MenuButton.tsx","../src/core/components/Hotkeys.tsx","../src/ui-components/tooltip/constants.ts","../src/ui-components/tooltip/Tooltip.tsx","../src/ui-components/menuItem/MenuItem.tsx","../src/ui-components/tooltipDelayGroupProvider/TooltipDelayGroupProvider.tsx","../../../node_modules/.pnpm/get-it@8.6.9_debug@4.4.1/node_modules/get-it/dist/_chunks-es/_commonjsHelpers.js","../../../node_modules/.pnpm/get-it@8.6.9_debug@4.4.1/node_modules/get-it/dist/index.browser.js","../../../node_modules/.pnpm/get-it@8.6.9_debug@4.4.1/node_modules/get-it/dist/middleware.browser.js","../../../node_modules/.pnpm/@sanity+client@7.6.0_debug@4.4.1/node_modules/@sanity/client/dist/_chunks-es/stegaClean.js","../../../node_modules/.pnpm/@sanity+client@7.6.0_debug@4.4.1/node_modules/@sanity/client/dist/_chunks-es/isRecord.js","../../../node_modules/.pnpm/@sanity+client@7.6.0_debug@4.4.1/node_modules/@sanity/client/dist/_chunks-es/resolveEditInfo.js","../../../node_modules/.pnpm/nanoid@3.3.11/node_modules/nanoid/index.browser.js","../../../node_modules/.pnpm/@sanity+client@7.6.0_debug@4.4.1/node_modules/@sanity/client/dist/index.browser.js","../../../node_modules/.pnpm/@sanity+generate-help-url@3.0.0/node_modules/@sanity/generate-help-url/dist/generate-help-url.esm.js","../../../node_modules/.pnpm/speakingurl@14.0.1/node_modules/speakingurl/lib/speakingurl.js","../../../node_modules/.pnpm/speakingurl@14.0.1/node_modules/speakingurl/index.js"],"sourcesContent":["export var dateTimestampProvider = {\n now: function () {\n return (dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n//# sourceMappingURL=dateTimestampProvider.js.map","import { __extends } from \"tslib\";\nimport { Subject } from './Subject';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\nvar ReplaySubject = (function (_super) {\n __extends(ReplaySubject, _super);\n function ReplaySubject(_bufferSize, _windowTime, _timestampProvider) {\n if (_bufferSize === void 0) { _bufferSize = Infinity; }\n if (_windowTime === void 0) { _windowTime = Infinity; }\n if (_timestampProvider === void 0) { _timestampProvider = dateTimestampProvider; }\n var _this = _super.call(this) || this;\n _this._bufferSize = _bufferSize;\n _this._windowTime = _windowTime;\n _this._timestampProvider = _timestampProvider;\n _this._buffer = [];\n _this._infiniteTimeWindow = true;\n _this._infiniteTimeWindow = _windowTime === Infinity;\n _this._bufferSize = Math.max(1, _bufferSize);\n _this._windowTime = Math.max(1, _windowTime);\n return _this;\n }\n ReplaySubject.prototype.next = function (value) {\n var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime;\n if (!isStopped) {\n _buffer.push(value);\n !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);\n }\n this._trimBuffer();\n _super.prototype.next.call(this, value);\n };\n ReplaySubject.prototype._subscribe = function (subscriber) {\n this._throwIfClosed();\n this._trimBuffer();\n var subscription = this._innerSubscribe(subscriber);\n var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer;\n var copy = _buffer.slice();\n for (var i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i]);\n }\n this._checkFinalizedStatuses(subscriber);\n return subscription;\n };\n ReplaySubject.prototype._trimBuffer = function () {\n var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow;\n var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;\n _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);\n if (!_infiniteTimeWindow) {\n var now = _timestampProvider.now();\n var last = 0;\n for (var i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) {\n last = i;\n }\n last && _buffer.splice(0, last + 1);\n }\n };\n return ReplaySubject;\n}(Subject));\nexport { ReplaySubject };\n//# sourceMappingURL=ReplaySubject.js.map","import { __extends } from \"tslib\";\nimport { Subscription } from '../Subscription';\nvar Action = (function (_super) {\n __extends(Action, _super);\n function Action(scheduler, work) {\n return _super.call(this) || this;\n }\n Action.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n return this;\n };\n return Action;\n}(Subscription));\nexport { Action };\n//# sourceMappingURL=Action.js.map","import { __read, __spreadArray } from \"tslib\";\nexport var intervalProvider = {\n setInterval: function (handler, timeout) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var delegate = intervalProvider.delegate;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) {\n return delegate.setInterval.apply(delegate, __spreadArray([handler, timeout], __read(args)));\n }\n return setInterval.apply(void 0, __spreadArray([handler, timeout], __read(args)));\n },\n clearInterval: function (handle) {\n var delegate = intervalProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=intervalProvider.js.map","import { __extends } from \"tslib\";\nimport { Action } from './Action';\nimport { intervalProvider } from './intervalProvider';\nimport { arrRemove } from '../util/arrRemove';\nvar AsyncAction = (function (_super) {\n __extends(AsyncAction, _super);\n function AsyncAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n _this.pending = false;\n return _this;\n }\n AsyncAction.prototype.schedule = function (state, delay) {\n var _a;\n if (delay === void 0) { delay = 0; }\n if (this.closed) {\n return this;\n }\n this.state = state;\n var id = this.id;\n var scheduler = this.scheduler;\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n this.pending = true;\n this.delay = delay;\n this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay);\n return this;\n };\n AsyncAction.prototype.requestAsyncId = function (scheduler, _id, delay) {\n if (delay === void 0) { delay = 0; }\n return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n };\n AsyncAction.prototype.recycleAsyncId = function (_scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n if (id != null) {\n intervalProvider.clearInterval(id);\n }\n return undefined;\n };\n AsyncAction.prototype.execute = function (state, delay) {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n this.pending = false;\n var error = this._execute(state, delay);\n if (error) {\n return error;\n }\n else if (this.pending === false && this.id != null) {\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n };\n AsyncAction.prototype._execute = function (state, _delay) {\n var errored = false;\n var errorValue;\n try {\n this.work(state);\n }\n catch (e) {\n errored = true;\n errorValue = e ? e : new Error('Scheduled action threw falsy error');\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n };\n AsyncAction.prototype.unsubscribe = function () {\n if (!this.closed) {\n var _a = this, id = _a.id, scheduler = _a.scheduler;\n var actions = scheduler.actions;\n this.work = this.state = this.scheduler = null;\n this.pending = false;\n arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n this.delay = null;\n _super.prototype.unsubscribe.call(this);\n }\n };\n return AsyncAction;\n}(Action));\nexport { AsyncAction };\n//# sourceMappingURL=AsyncAction.js.map","import { dateTimestampProvider } from './scheduler/dateTimestampProvider';\nvar Scheduler = (function () {\n function Scheduler(schedulerActionCtor, now) {\n if (now === void 0) { now = Scheduler.now; }\n this.schedulerActionCtor = schedulerActionCtor;\n this.now = now;\n }\n Scheduler.prototype.schedule = function (work, delay, state) {\n if (delay === void 0) { delay = 0; }\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n };\n Scheduler.now = dateTimestampProvider.now;\n return Scheduler;\n}());\nexport { Scheduler };\n//# sourceMappingURL=Scheduler.js.map","import { __extends } from \"tslib\";\nimport { Scheduler } from '../Scheduler';\nvar AsyncScheduler = (function (_super) {\n __extends(AsyncScheduler, _super);\n function AsyncScheduler(SchedulerAction, now) {\n if (now === void 0) { now = Scheduler.now; }\n var _this = _super.call(this, SchedulerAction, now) || this;\n _this.actions = [];\n _this._active = false;\n return _this;\n }\n AsyncScheduler.prototype.flush = function (action) {\n var actions = this.actions;\n if (this._active) {\n actions.push(action);\n return;\n }\n var error;\n this._active = true;\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions.shift()));\n this._active = false;\n if (error) {\n while ((action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AsyncScheduler;\n}(Scheduler));\nexport { AsyncScheduler };\n//# sourceMappingURL=AsyncScheduler.js.map","import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\nexport var asyncScheduler = new AsyncScheduler(AsyncAction);\nexport var async = asyncScheduler;\n//# sourceMappingURL=async.js.map","import { Observable } from '../Observable';\nexport var EMPTY = new Observable(function (subscriber) { return subscriber.complete(); });\nexport function empty(scheduler) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\nfunction emptyScheduled(scheduler) {\n return new Observable(function (subscriber) { return scheduler.schedule(function () { return subscriber.complete(); }); });\n}\n//# sourceMappingURL=empty.js.map","import { Observable } from '../Observable';\nimport { isFunction } from '../util/isFunction';\nexport function throwError(errorOrErrorFactory, scheduler) {\n var errorFactory = isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function () { return errorOrErrorFactory; };\n var init = function (subscriber) { return subscriber.error(errorFactory()); };\n return new Observable(scheduler ? function (subscriber) { return scheduler.schedule(init, 0, subscriber); } : init);\n}\n//# sourceMappingURL=throwError.js.map","import { createErrorClass } from './createErrorClass';\nexport var EmptyError = createErrorClass(function (_super) {\n return function EmptyErrorImpl() {\n _super(this);\n this.name = 'EmptyError';\n this.message = 'no elements in sequence';\n };\n});\n//# sourceMappingURL=EmptyError.js.map","import { EmptyError } from './util/EmptyError';\nexport function lastValueFrom(source, config) {\n var hasConfig = typeof config === 'object';\n return new Promise(function (resolve, reject) {\n var _hasValue = false;\n var _value;\n source.subscribe({\n next: function (value) {\n _value = value;\n _hasValue = true;\n },\n error: reject,\n complete: function () {\n if (_hasValue) {\n resolve(_value);\n }\n else if (hasConfig) {\n resolve(config.defaultValue);\n }\n else {\n reject(new EmptyError());\n }\n },\n });\n });\n}\n//# sourceMappingURL=lastValueFrom.js.map","import { EmptyError } from './util/EmptyError';\nimport { SafeSubscriber } from './Subscriber';\nexport function firstValueFrom(source, config) {\n var hasConfig = typeof config === 'object';\n return new Promise(function (resolve, reject) {\n var subscriber = new SafeSubscriber({\n next: function (value) {\n resolve(value);\n subscriber.unsubscribe();\n },\n error: reject,\n complete: function () {\n if (hasConfig) {\n resolve(config.defaultValue);\n }\n else {\n reject(new EmptyError());\n }\n },\n });\n source.subscribe(subscriber);\n });\n}\n//# sourceMappingURL=firstValueFrom.js.map","export function isValidDate(value) {\n return value instanceof Date && !isNaN(value);\n}\n//# sourceMappingURL=isDate.js.map","import { __read, __spreadArray } from \"tslib\";\nimport { map } from \"../operators/map\";\nvar isArray = Array.isArray;\nfunction callOrApply(fn, args) {\n return isArray(args) ? fn.apply(void 0, __spreadArray([], __read(args))) : fn(args);\n}\nexport function mapOneOrManyArgs(fn) {\n return map(function (args) { return callOrApply(fn, args); });\n}\n//# sourceMappingURL=mapOneOrManyArgs.js.map","var isArray = Array.isArray;\nvar getPrototypeOf = Object.getPrototypeOf, objectProto = Object.prototype, getKeys = Object.keys;\nexport function argsArgArrayOrObject(args) {\n if (args.length === 1) {\n var first_1 = args[0];\n if (isArray(first_1)) {\n return { args: first_1, keys: null };\n }\n if (isPOJO(first_1)) {\n var keys = getKeys(first_1);\n return {\n args: keys.map(function (key) { return first_1[key]; }),\n keys: keys,\n };\n }\n }\n return { args: args, keys: null };\n}\nfunction isPOJO(obj) {\n return obj && typeof obj === 'object' && getPrototypeOf(obj) === objectProto;\n}\n//# sourceMappingURL=argsArgArrayOrObject.js.map","export function createObject(keys, values) {\n return keys.reduce(function (result, key, i) { return ((result[key] = values[i]), result); }, {});\n}\n//# sourceMappingURL=createObject.js.map","import { Observable } from '../Observable';\nimport { argsArgArrayOrObject } from '../util/argsArgArrayOrObject';\nimport { from } from './from';\nimport { identity } from '../util/identity';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { popResultSelector, popScheduler } from '../util/args';\nimport { createObject } from '../util/createObject';\nimport { createOperatorSubscriber } from '../operators/OperatorSubscriber';\nimport { executeSchedule } from '../util/executeSchedule';\nexport function combineLatest() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n var resultSelector = popResultSelector(args);\n var _a = argsArgArrayOrObject(args), observables = _a.args, keys = _a.keys;\n if (observables.length === 0) {\n return from([], scheduler);\n }\n var result = new Observable(combineLatestInit(observables, scheduler, keys\n ?\n function (values) { return createObject(keys, values); }\n :\n identity));\n return resultSelector ? result.pipe(mapOneOrManyArgs(resultSelector)) : result;\n}\nexport function combineLatestInit(observables, scheduler, valueTransform) {\n if (valueTransform === void 0) { valueTransform = identity; }\n return function (subscriber) {\n maybeSchedule(scheduler, function () {\n var length = observables.length;\n var values = new Array(length);\n var active = length;\n var remainingFirstValues = length;\n var _loop_1 = function (i) {\n maybeSchedule(scheduler, function () {\n var source = from(observables[i], scheduler);\n var hasFirstValue = false;\n source.subscribe(createOperatorSubscriber(subscriber, function (value) {\n values[i] = value;\n if (!hasFirstValue) {\n hasFirstValue = true;\n remainingFirstValues--;\n }\n if (!remainingFirstValues) {\n subscriber.next(valueTransform(values.slice()));\n }\n }, function () {\n if (!--active) {\n subscriber.complete();\n }\n }));\n }, subscriber);\n };\n for (var i = 0; i < length; i++) {\n _loop_1(i);\n }\n }, subscriber);\n };\n}\nfunction maybeSchedule(scheduler, execute, subscription) {\n if (scheduler) {\n executeSchedule(subscription, scheduler, execute);\n }\n else {\n execute();\n }\n}\n//# sourceMappingURL=combineLatest.js.map","import { innerFrom } from '../observable/innerFrom';\nimport { executeSchedule } from '../util/executeSchedule';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) {\n var buffer = [];\n var active = 0;\n var index = 0;\n var isComplete = false;\n var checkComplete = function () {\n if (isComplete && !buffer.length && !active) {\n subscriber.complete();\n }\n };\n var outerNext = function (value) { return (active < concurrent ? doInnerSub(value) : buffer.push(value)); };\n var doInnerSub = function (value) {\n expand && subscriber.next(value);\n active++;\n var innerComplete = false;\n innerFrom(project(value, index++)).subscribe(createOperatorSubscriber(subscriber, function (innerValue) {\n onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);\n if (expand) {\n outerNext(innerValue);\n }\n else {\n subscriber.next(innerValue);\n }\n }, function () {\n innerComplete = true;\n }, undefined, function () {\n if (innerComplete) {\n try {\n active--;\n var _loop_1 = function () {\n var bufferedValue = buffer.shift();\n if (innerSubScheduler) {\n executeSchedule(subscriber, innerSubScheduler, function () { return doInnerSub(bufferedValue); });\n }\n else {\n doInnerSub(bufferedValue);\n }\n };\n while (buffer.length && active < concurrent) {\n _loop_1();\n }\n checkComplete();\n }\n catch (err) {\n subscriber.error(err);\n }\n }\n }));\n };\n source.subscribe(createOperatorSubscriber(subscriber, outerNext, function () {\n isComplete = true;\n checkComplete();\n }));\n return function () {\n additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();\n };\n}\n//# sourceMappingURL=mergeInternals.js.map","import { map } from './map';\nimport { innerFrom } from '../observable/innerFrom';\nimport { operate } from '../util/lift';\nimport { mergeInternals } from './mergeInternals';\nimport { isFunction } from '../util/isFunction';\nexport function mergeMap(project, resultSelector, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n if (isFunction(resultSelector)) {\n return mergeMap(function (a, i) { return map(function (b, ii) { return resultSelector(a, b, i, ii); })(innerFrom(project(a, i))); }, concurrent);\n }\n else if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return operate(function (source, subscriber) { return mergeInternals(source, subscriber, project, concurrent); });\n}\n//# sourceMappingURL=mergeMap.js.map","import { mergeMap } from './mergeMap';\nimport { identity } from '../util/identity';\nexport function mergeAll(concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n return mergeMap(identity, concurrent);\n}\n//# sourceMappingURL=mergeAll.js.map","import { mergeAll } from './mergeAll';\nexport function concatAll() {\n return mergeAll(1);\n}\n//# sourceMappingURL=concatAll.js.map","import { concatAll } from '../operators/concatAll';\nimport { popScheduler } from '../util/args';\nimport { from } from './from';\nexport function concat() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return concatAll()(from(args, popScheduler(args)));\n}\n//# sourceMappingURL=concat.js.map","import { Observable } from '../Observable';\nimport { innerFrom } from './innerFrom';\nexport function defer(observableFactory) {\n return new Observable(function (subscriber) {\n innerFrom(observableFactory()).subscribe(subscriber);\n });\n}\n//# sourceMappingURL=defer.js.map","import { __read } from \"tslib\";\nimport { innerFrom } from '../observable/innerFrom';\nimport { Observable } from '../Observable';\nimport { mergeMap } from '../operators/mergeMap';\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isFunction } from '../util/isFunction';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nvar nodeEventEmitterMethods = ['addListener', 'removeListener'];\nvar eventTargetMethods = ['addEventListener', 'removeEventListener'];\nvar jqueryMethods = ['on', 'off'];\nexport function fromEvent(target, eventName, options, resultSelector) {\n if (isFunction(options)) {\n resultSelector = options;\n options = undefined;\n }\n if (resultSelector) {\n return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs(resultSelector));\n }\n var _a = __read(isEventTarget(target)\n ? eventTargetMethods.map(function (methodName) { return function (handler) { return target[methodName](eventName, handler, options); }; })\n :\n isNodeStyleEventEmitter(target)\n ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName))\n : isJQueryStyleEventEmitter(target)\n ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName))\n : [], 2), add = _a[0], remove = _a[1];\n if (!add) {\n if (isArrayLike(target)) {\n return mergeMap(function (subTarget) { return fromEvent(subTarget, eventName, options); })(innerFrom(target));\n }\n }\n if (!add) {\n throw new TypeError('Invalid event target');\n }\n return new Observable(function (subscriber) {\n var handler = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return subscriber.next(1 < args.length ? args : args[0]);\n };\n add(handler);\n return function () { return remove(handler); };\n });\n}\nfunction toCommonHandlerRegistry(target, eventName) {\n return function (methodName) { return function (handler) { return target[methodName](eventName, handler); }; };\n}\nfunction isNodeStyleEventEmitter(target) {\n return isFunction(target.addListener) && isFunction(target.removeListener);\n}\nfunction isJQueryStyleEventEmitter(target) {\n return isFunction(target.on) && isFunction(target.off);\n}\nfunction isEventTarget(target) {\n return isFunction(target.addEventListener) && isFunction(target.removeEventListener);\n}\n//# sourceMappingURL=fromEvent.js.map","import { Observable } from '../Observable';\nimport { async as asyncScheduler } from '../scheduler/async';\nimport { isScheduler } from '../util/isScheduler';\nimport { isValidDate } from '../util/isDate';\nexport function timer(dueTime, intervalOrScheduler, scheduler) {\n if (dueTime === void 0) { dueTime = 0; }\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n var intervalDuration = -1;\n if (intervalOrScheduler != null) {\n if (isScheduler(intervalOrScheduler)) {\n scheduler = intervalOrScheduler;\n }\n else {\n intervalDuration = intervalOrScheduler;\n }\n }\n return new Observable(function (subscriber) {\n var due = isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime;\n if (due < 0) {\n due = 0;\n }\n var n = 0;\n return scheduler.schedule(function () {\n if (!subscriber.closed) {\n subscriber.next(n++);\n if (0 <= intervalDuration) {\n this.schedule(undefined, intervalDuration);\n }\n else {\n subscriber.complete();\n }\n }\n }, due);\n });\n}\n//# sourceMappingURL=timer.js.map","import { mergeAll } from '../operators/mergeAll';\nimport { innerFrom } from './innerFrom';\nimport { EMPTY } from './empty';\nimport { popNumber, popScheduler } from '../util/args';\nimport { from } from './from';\nexport function merge() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n var concurrent = popNumber(args, Infinity);\n var sources = args;\n return !sources.length\n ?\n EMPTY\n : sources.length === 1\n ?\n innerFrom(sources[0])\n :\n mergeAll(concurrent)(from(sources, scheduler));\n}\n//# sourceMappingURL=merge.js.map","var isArray = Array.isArray;\nexport function argsOrArgArray(args) {\n return args.length === 1 && isArray(args[0]) ? args[0] : args;\n}\n//# sourceMappingURL=argsOrArgArray.js.map","import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function filter(predicate, thisArg) {\n return operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(createOperatorSubscriber(subscriber, function (value) { return predicate.call(thisArg, value, index++) && subscriber.next(value); }));\n });\n}\n//# sourceMappingURL=filter.js.map","import { innerFrom } from '../observable/innerFrom';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { operate } from '../util/lift';\nexport function catchError(selector) {\n return operate(function (source, subscriber) {\n var innerSub = null;\n var syncUnsub = false;\n var handledResult;\n innerSub = source.subscribe(createOperatorSubscriber(subscriber, undefined, undefined, function (err) {\n handledResult = innerFrom(selector(err, catchError(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n else {\n syncUnsub = true;\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n });\n}\n//# sourceMappingURL=catchError.js.map","import { __read, __spreadArray } from \"tslib\";\nimport { combineLatestInit } from '../observable/combineLatest';\nimport { operate } from '../util/lift';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { pipe } from '../util/pipe';\nimport { popResultSelector } from '../util/args';\nexport function combineLatest() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = popResultSelector(args);\n return resultSelector\n ? pipe(combineLatest.apply(void 0, __spreadArray([], __read(args))), mapOneOrManyArgs(resultSelector))\n : operate(function (source, subscriber) {\n combineLatestInit(__spreadArray([source], __read(argsOrArgArray(args))))(subscriber);\n });\n}\n//# sourceMappingURL=combineLatest.js.map","import { __read, __spreadArray } from \"tslib\";\nimport { combineLatest } from './combineLatest';\nexport function combineLatestWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return combineLatest.apply(void 0, __spreadArray([], __read(otherSources)));\n}\n//# sourceMappingURL=combineLatestWith.js.map","import { mergeMap } from './mergeMap';\nimport { isFunction } from '../util/isFunction';\nexport function concatMap(project, resultSelector) {\n return isFunction(resultSelector) ? mergeMap(project, resultSelector, 1) : mergeMap(project, 1);\n}\n//# sourceMappingURL=concatMap.js.map","import { EMPTY } from '../observable/empty';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function take(count) {\n return count <= 0\n ?\n function () { return EMPTY; }\n : operate(function (source, subscriber) {\n var seen = 0;\n source.subscribe(createOperatorSubscriber(subscriber, function (value) {\n if (++seen <= count) {\n subscriber.next(value);\n if (count <= seen) {\n subscriber.complete();\n }\n }\n }));\n });\n}\n//# sourceMappingURL=take.js.map","import { operate } from '../util/lift';\nexport function finalize(callback) {\n return operate(function (source, subscriber) {\n try {\n source.subscribe(subscriber);\n }\n finally {\n subscriber.add(callback);\n }\n });\n}\n//# sourceMappingURL=finalize.js.map","import { __read, __spreadArray } from \"tslib\";\nimport { innerFrom } from '../observable/innerFrom';\nimport { Subject } from '../Subject';\nimport { SafeSubscriber } from '../Subscriber';\nimport { operate } from '../util/lift';\nexport function share(options) {\n if (options === void 0) { options = {}; }\n var _a = options.connector, connector = _a === void 0 ? function () { return new Subject(); } : _a, _b = options.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d;\n return function (wrapperSource) {\n var connection;\n var resetConnection;\n var subject;\n var refCount = 0;\n var hasCompleted = false;\n var hasErrored = false;\n var cancelReset = function () {\n resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe();\n resetConnection = undefined;\n };\n var reset = function () {\n cancelReset();\n connection = subject = undefined;\n hasCompleted = hasErrored = false;\n };\n var resetAndUnsubscribe = function () {\n var conn = connection;\n reset();\n conn === null || conn === void 0 ? void 0 : conn.unsubscribe();\n };\n return operate(function (source, subscriber) {\n refCount++;\n if (!hasErrored && !hasCompleted) {\n cancelReset();\n }\n var dest = (subject = subject !== null && subject !== void 0 ? subject : connector());\n subscriber.add(function () {\n refCount--;\n if (refCount === 0 && !hasErrored && !hasCompleted) {\n resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero);\n }\n });\n dest.subscribe(subscriber);\n if (!connection &&\n refCount > 0) {\n connection = new SafeSubscriber({\n next: function (value) { return dest.next(value); },\n error: function (err) {\n hasErrored = true;\n cancelReset();\n resetConnection = handleReset(reset, resetOnError, err);\n dest.error(err);\n },\n complete: function () {\n hasCompleted = true;\n cancelReset();\n resetConnection = handleReset(reset, resetOnComplete);\n dest.complete();\n },\n });\n innerFrom(source).subscribe(connection);\n }\n })(wrapperSource);\n };\n}\nfunction handleReset(reset, on) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n if (on === true) {\n reset();\n return;\n }\n if (on === false) {\n return;\n }\n var onSubscriber = new SafeSubscriber({\n next: function () {\n onSubscriber.unsubscribe();\n reset();\n },\n });\n return innerFrom(on.apply(void 0, __spreadArray([], __read(args)))).subscribe(onSubscriber);\n}\n//# sourceMappingURL=share.js.map","import { ReplaySubject } from '../ReplaySubject';\nimport { share } from './share';\nexport function shareReplay(configOrBufferSize, windowTime, scheduler) {\n var _a, _b, _c;\n var bufferSize;\n var refCount = false;\n if (configOrBufferSize && typeof configOrBufferSize === 'object') {\n (_a = configOrBufferSize.bufferSize, bufferSize = _a === void 0 ? Infinity : _a, _b = configOrBufferSize.windowTime, windowTime = _b === void 0 ? Infinity : _b, _c = configOrBufferSize.refCount, refCount = _c === void 0 ? false : _c, scheduler = configOrBufferSize.scheduler);\n }\n else {\n bufferSize = (configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity);\n }\n return share({\n connector: function () { return new ReplaySubject(bufferSize, windowTime, scheduler); },\n resetOnError: true,\n resetOnComplete: false,\n resetOnRefCountZero: refCount,\n });\n}\n//# sourceMappingURL=shareReplay.js.map","import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/innerFrom';\nimport { noop } from '../util/noop';\nexport function takeUntil(notifier) {\n return operate(function (source, subscriber) {\n innerFrom(notifier).subscribe(createOperatorSubscriber(subscriber, function () { return subscriber.complete(); }, noop));\n !subscriber.closed && source.subscribe(subscriber);\n });\n}\n//# sourceMappingURL=takeUntil.js.map","import { isFunction } from '../util/isFunction';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { identity } from '../util/identity';\nexport function tap(observerOrNext, error, complete) {\n var tapObserver = isFunction(observerOrNext) || error || complete\n ?\n { next: observerOrNext, error: error, complete: complete }\n : observerOrNext;\n return tapObserver\n ? operate(function (source, subscriber) {\n var _a;\n (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n var isUnsub = true;\n source.subscribe(createOperatorSubscriber(subscriber, function (value) {\n var _a;\n (_a = tapObserver.next) === null || _a === void 0 ? void 0 : _a.call(tapObserver, value);\n subscriber.next(value);\n }, function () {\n var _a;\n isUnsub = false;\n (_a = tapObserver.complete) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n subscriber.complete();\n }, function (err) {\n var _a;\n isUnsub = false;\n (_a = tapObserver.error) === null || _a === void 0 ? void 0 : _a.call(tapObserver, err);\n subscriber.error(err);\n }, function () {\n var _a, _b;\n if (isUnsub) {\n (_a = tapObserver.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n }\n (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver);\n }));\n })\n :\n identity;\n}\n//# sourceMappingURL=tap.js.map","export type ConditionalWrapperRenderWrapperCallback = (children: React.ReactNode) => React.ReactNode\n\n/**\n * A helper component that conditionally wraps its children in a wrapper component.\n *\n * @internal\n */\nexport function ConditionalWrapper({\n children,\n condition,\n wrapper,\n}: {\n children: React.ReactNode\n condition: boolean\n wrapper: ConditionalWrapperRenderWrapperCallback\n}): React.ReactNode {\n if (!condition) {\n return children\n }\n\n return wrapper(children)\n}\n","/* eslint-disable no-restricted-imports */\n\nimport {Button as UIButton, type ButtonProps as UIButtonProps} from '@sanity/ui'\nimport {type ForwardedRef, forwardRef, type HTMLProps, useCallback} from 'react'\nimport {styled} from 'styled-components'\n\nimport {Tooltip, type TooltipProps} from '..'\nimport {\n ConditionalWrapper,\n type ConditionalWrapperRenderWrapperCallback,\n} from '../conditionalWrapper'\n\ntype BaseButtonProps = Pick<\n UIButtonProps,\n | 'as'\n | 'icon'\n | 'iconRight'\n | 'justify'\n | 'loading'\n | 'mode'\n | 'paddingY'\n | 'selected'\n | 'tone'\n | 'type'\n | 'width'\n> & {\n size?: 'default' | 'large'\n radius?: 'full'\n}\n\ntype ButtonWithText = {\n text: string\n tooltipProps?: TooltipProps | null\n icon?: UIButtonProps['icon']\n}\n\ntype IconButton = {\n text?: undefined\n icon?: UIButtonProps['icon']\n /**\n * When using a button with an icon, tooltipProps are required to enforce consistency in UI.\n */\n tooltipProps: TooltipProps | null\n}\n\n/** @internal */\nexport type ButtonProps = BaseButtonProps & (ButtonWithText | IconButton)\n\nconst LARGE_BUTTON_PROPS = {\n space: 3,\n padding: 3,\n}\nconst DEFAULT_BUTTON_PROPS = {\n space: 2,\n padding: 2,\n}\n\nconst TooltipButtonWrapper = styled.span`\n display: inline-flex;\n`\n/**\n * Customized Sanity UI <Button> with pre-defined layout options.\n *\n * @internal\n */\nexport const Button = forwardRef(function Button(\n {\n size = 'default',\n mode = 'default',\n paddingY,\n tone = 'default',\n tooltipProps,\n ...rest\n }: ButtonProps & Omit<HTMLProps<HTMLButtonElement>, 'as' | 'size' | 'title'>,\n ref: ForwardedRef<HTMLButtonElement>,\n) {\n const renderWrapper = useCallback<ConditionalWrapperRenderWrapperCallback>(\n (children) => {\n return (\n <Tooltip content={tooltipProps?.content} portal {...tooltipProps}>\n {/* This span is needed to make the tooltip work in disabled buttons */}\n <TooltipButtonWrapper>{children}</TooltipButtonWrapper>\n </Tooltip>\n )\n },\n [tooltipProps],\n )\n\n const sizeProps = size === 'default' ? DEFAULT_BUTTON_PROPS : LARGE_BUTTON_PROPS\n\n return (\n <ConditionalWrapper condition={!!tooltipProps} wrapper={renderWrapper}>\n <UIButton {...rest} {...sizeProps} paddingY={paddingY} ref={ref} mode={mode} tone={tone} />\n </ConditionalWrapper>\n )\n})\n","import {\n // eslint-disable-next-line no-restricted-imports\n ErrorBoundary as UIErrorBoundary,\n type ErrorBoundaryProps as UIErrorBoundaryProps,\n} from '@sanity/ui'\nimport {useCallback, useContext} from 'react'\n\nimport {SourceContext} from '../../_singletons'\n\nexport type ErrorBoundaryProps = UIErrorBoundaryProps\n\n/**\n * ErrorBoundary component that catches errors and uses onUncaughtError config property\n * It also calls the onCatch prop if it exists.\n */\nexport function ErrorBoundary({onCatch, ...rest}: ErrorBoundaryProps): React.JSX.Element {\n // Use context, because source could be undefined and we don't want to throw in that case\n const source = useContext(SourceContext)\n\n const handleCatch = useCallback(\n ({error: caughtError, info: caughtInfo}: {error: Error; info: React.ErrorInfo}) => {\n // Send the error to the source if it has an onUncaughtError method\n try {\n source?.onUncaughtError?.(caughtError, caughtInfo)\n } catch (e) {\n e.message = `Encountered an additional error when calling custom \"onUncaughtError()\": ${e.message}`\n console.error(e)\n }\n\n // Call the onCatch prop if it exists\n onCatch?.({error: caughtError, info: caughtInfo})\n },\n [source, onCatch],\n )\n\n return <UIErrorBoundary {...rest} onCatch={handleCatch} />\n}\n","/* eslint-disable no-restricted-imports */\nimport {\n MenuButton as UIMenuButton,\n type MenuButtonProps as UIMenuButtonProps,\n type PopoverProps,\n} from '@sanity/ui'\nimport {type ForwardedRef, forwardRef} from 'react'\n\n/** @internal */\nexport type MenuButtonProps = Omit<UIMenuButtonProps, 'popover'> & {\n popover?: Omit<PopoverProps, 'animate' | 'content' | 'open'>\n}\n\n/**\n * Customized Sanity UI <MenuButton> that enforces popover animation.\n *\n * @internal\n */\nexport const MenuButton = forwardRef(function MenuButton(\n props: MenuButtonProps,\n ref: ForwardedRef<HTMLButtonElement>,\n) {\n return (\n <UIMenuButton\n {...props}\n ref={ref}\n popover={{\n ...props.popover,\n animate: true,\n }}\n />\n )\n})\n","import {Hotkeys as UIHotkeys, type HotkeysProps as UIHotkeysProps} from '@sanity/ui'\nimport {type HTMLProps, type RefAttributes} from 'react'\n\n/**\n * Properties for the `Hotkeys` component.\n *\n * @public\n */\nexport type HotkeysProps = UIHotkeysProps & {\n /**\n * Whether to make the keys platform-aware (eg `alt` to `option` on Apple devices).\n *\n * @defaultValue true\n */\n makePlatformAware?: boolean\n} & Omit<HTMLProps<HTMLElement>, 'ref' | 'size' | 'as'> &\n RefAttributes<HTMLElement>\n\n/**\n * Renders given `keys` as \"keycaps\" visually.\n *\n * This is a wrapper around `@sanity/ui`'s `Hotkeys` component, which allows for altering keys\n * (eg `alt` to `option`) on Apple devices unless `makePlatformAware` is set to `false`.\n *\n * @param props - Properties to render with\n * @returns React element\n * @public\n */\nexport function Hotkeys({makePlatformAware = true, keys: hotKeys = [], ...props}: HotkeysProps) {\n const keys = makePlatformAware ? hotKeys.map(platformifyKey) : hotKeys\n return <UIHotkeys {...props} keys={keys} />\n}\n\n/**\n * @internal\n */\nconst IS_APPLE_DEVICE =\n typeof navigator === 'undefined' || typeof navigator.platform !== 'string'\n ? false\n : /Mac|iPod|iPhone|iPad/.test(navigator.platform || '')\n\n/**\n * Given key 'Alt', or 'Option' (case-insensitive), return the platform-appropriate key name\n * (eg 'Alt' on non-Apple devices, 'Option' on Apple devices).\n *\n * @param key - Key to platformify\n * @returns Platform-appropriate key name\n * @internal\n */\nfunction platformifyKey(key: string): string {\n const lowerKey = key.toLowerCase()\n\n if (lowerKey === 'alt' && IS_APPLE_DEVICE) {\n return matchCase(key, 'option')\n }\n\n if (lowerKey === 'option' && !IS_APPLE_DEVICE) {\n return matchCase(key, 'alt')\n }\n\n return key\n}\n\n/**\n * Apply the case (lowercase/uppercase) of `original` to `target`, character by character,\n * eg matching ALL CAPS, all lowercase or Mixed Case.\n *\n * @param original - The original string to match case of\n * @param target - The target string to apply case to\n * @returns Target string with case applied from original\n * @internal\n */\nfunction matchCase(original: string, target: string): string {\n const orgLength = original.length\n\n return target.replace(/./g, (char, i) => {\n // Replace character by character matching case of original\n // If running out of original, just return the target case as-is\n return i < orgLength && original[i] === original[i].toUpperCase() ? char.toUpperCase() : char\n })\n}\n","export const TOOLTIP_DELAY_PROPS = {\n open: 400,\n}\n","import {\n Box,\n Flex,\n type HotkeysProps,\n Text,\n // eslint-disable-next-line no-restricted-imports\n Tooltip as UITooltip,\n // eslint-disable-next-line no-restricted-imports\n type TooltipProps as UITooltipProps,\n} from '@sanity/ui'\nimport {type ForwardedRef, forwardRef} from 'react'\n\nimport {Hotkeys} from '../../core/components/Hotkeys'\nimport {TOOLTIP_DELAY_PROPS} from './constants'\n\n/** @internal */\n\nexport type TooltipProps = Omit<UITooltipProps, 'arrow' | 'padding' | 'shadow'> & {\n hotkeys?: HotkeysProps['keys']\n}\n\nconst TOOLTIP_SHARED_PROPS: UITooltipProps = {\n animate: true,\n arrow: false,\n boundaryElement: null,\n delay: TOOLTIP_DELAY_PROPS,\n fallbackPlacements: ['bottom-start', 'bottom-end', 'top-start', 'top-end'],\n placement: 'bottom',\n portal: true,\n}\n\n/**\n * Customized Sanity UI <Tooltip> with limited layout options and support for showing hotkeys.\n *\n * In just about all cases, its strongly recommended that you pass a string to the `content` prop.\n * This helps simplify i18n and encourages short and concise.\n *\n * Passing ReactNode values to `content` is supported, but discouraged.\n *\n * @internal\n */\nexport const Tooltip = forwardRef(function Tooltip(\n props: TooltipProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {content, hotkeys, ...rest} = props\n\n if (typeof content === 'string') {\n return (\n <UITooltip\n {...TOOLTIP_SHARED_PROPS}\n content={\n <Flex align=\"center\">\n {content && (\n <Box flex={1} padding={1}>\n <Text size={1}>{content}</Text>\n </Box>\n )}\n {hotkeys && (\n <Box flex=\"none\">\n <Hotkeys keys={hotkeys} />\n </Box>\n )}\n </Flex>\n }\n padding={1}\n ref={ref}\n {...rest}\n />\n )\n }\n\n return <UITooltip {...TOOLTIP_SHARED_PROPS} content={content} ref={ref} {...rest} />\n})\n","/* eslint-disable no-restricted-imports */\nimport {\n Badge,\n Box,\n Flex,\n MenuItem as UIMenuItem,\n type MenuItemProps as UIMenuItemProps,\n Stack,\n Text,\n} from '@sanity/ui'\nimport {\n forwardRef,\n type HTMLProps,\n isValidElement,\n type ReactNode,\n type Ref,\n useCallback,\n useMemo,\n} from 'react'\nimport {isValidElementType} from 'react-is'\nimport {styled} from 'styled-components'\n\nimport {Hotkeys} from '../../core/components/Hotkeys'\nimport {Tooltip, type TooltipProps} from '..'\nimport {\n ConditionalWrapper,\n type ConditionalWrapperRenderWrapperCallback,\n} from '../conditionalWrapper'\n\nconst FONT_SIZE = 1\nconst SUBTITLE_FONT_SIZE = 0\n\n/* Using px value here to make title/subtitles align with icon */\nconst SubtitleText = styled(Text)`\n margin-top: 2px;\n`\n\n/** @internal */\nexport type MenuItemProps = Pick<\n UIMenuItemProps,\n 'as' | 'icon' | 'iconRight' | 'pressed' | 'selected' | 'tone' | 'hotkeys'\n> & {\n badgeText?: string\n /**\n * Usage of `children` is not supported, import `MenuItem` from `@sanity/ui` instead.\n */\n children?: undefined\n /**\n * Previews should be 25x25.\n */\n preview?: ReactNode\n /**\n * Optional render callback which receives menu item content.\n */\n renderMenuItem?: (menuItemContent: React.JSX.Element) => ReactNode\n text?: string\n tooltipProps?: TooltipProps | null\n /**\n * Optional subtitle prop for the menu item.\n * While not recommended, it is utilized for the workspace menu button.\n */\n __unstable_subtitle?: string\n /**\n * An optional property to adjust spacing in the preview between the icon and the text.\n * Not recommended, but is applied to the workspace menu button..\n */\n __unstable_space?: number\n}\n\nconst PreviewWrapper = styled(Box)`\n height: 25px;\n width: 25px;\n overflow: hidden;\n`\n\n/**\n * Customized Sanity UI <MenuItem> that restricts usage of `children` to encourage simple,\n * single line menu items.\n *\n * The workspace menu button needed a subtitle - hence, the StudioUI MenuIten now takes a subtitle prop.\n * This is only an escape hatch for the workspace menu button and is not recommended for general use.\n *\n * It also accepts a prop to attach tooltips as well as custom badges too.\n *\n * @internal\n */\nexport const MenuItem = forwardRef(function MenuItem(\n {\n badgeText,\n children: childrenProp,\n disabled,\n hotkeys,\n icon: Icon,\n iconRight: IconRight,\n preview = null,\n renderMenuItem,\n text,\n tooltipProps,\n __unstable_subtitle,\n __unstable_space,\n ...rest\n }: MenuItemProps &\n Omit<HTMLProps<HTMLDivElement>, 'as' | 'height' | 'ref' | 'selected' | 'tabIndex' | 'size'>,\n ref: Ref<HTMLDivElement>,\n) {\n const menuItemContent = useMemo(() => {\n return (\n <Flex align=\"center\" gap={2}>\n {preview && (\n <PreviewWrapper\n style={{opacity: disabled ? 0.25 : undefined}}\n paddingRight={__unstable_space ? 1 : 0}\n >\n <Flex align=\"center\" height=\"fill\" justify=\"center\">\n {preview}\n </Flex>\n </PreviewWrapper>\n )}\n {Icon && (\n <Box paddingRight={1}>\n <Text size={FONT_SIZE}>\n {isValidElement(Icon) && Icon}\n {isValidElementType(Icon) && <Icon />}\n </Text>\n </Box>\n )}\n {text && (\n <Stack\n flex={1}\n space={__unstable_subtitle ? 1 : 2}\n paddingLeft={__unstable_subtitle ? 1 : 0}\n >\n <Text size={FONT_SIZE} textOverflow=\"ellipsis\" weight=\"medium\">\n {text}\n </Text>\n {__unstable_subtitle && (\n <SubtitleText size={SUBTITLE_FONT_SIZE} textOverflow=\"ellipsis\" weight=\"medium\" muted>\n {__unstable_subtitle}\n </SubtitleText>\n )}\n </Stack>\n )}\n {(badgeText || hotkeys || IconRight) && (\n <Flex align=\"center\" gap={3} marginLeft={3}>\n {hotkeys && <Hotkeys keys={hotkeys} style={{marginTop: -4, marginBottom: -4}} />}\n\n {badgeText && (\n <Badge fontSize={0} style={{marginTop: -4, marginBottom: -4}}>\n {badgeText}\n </Badge>\n )}\n\n {IconRight && (\n <Text size={FONT_SIZE}>\n {isValidElement(IconRight) && IconRight}\n {isValidElementType(IconRight) && <IconRight />}\n </Text>\n )}\n </Flex>\n )}\n </Flex>\n )\n }, [\n preview,\n disabled,\n __unstable_space,\n Icon,\n text,\n __unstable_subtitle,\n badgeText,\n hotkeys,\n IconRight,\n ])\n\n const renderWrapper = useCallback<ConditionalWrapperRenderWrapperCallback>(\n (children) => {\n return (\n <Tooltip content={tooltipProps?.content} portal {...tooltipProps}>\n {/* This div is needed to make the tooltip work in disabled menu items */}\n <div>{children}</div>\n </Tooltip>\n )\n },\n [tooltipProps],\n )\n\n return (\n <ConditionalWrapper condition={!!tooltipProps} wrapper={renderWrapper}>\n <UIMenuItem\n disabled={disabled}\n paddingLeft={preview ? 1 : 3}\n paddingRight={3}\n paddingY={preview ? 1 : 3}\n ref={ref}\n {...rest}\n >\n {typeof childrenProp === 'undefined' && typeof renderMenuItem === 'function'\n ? renderMenuItem(menuItemContent)\n : menuItemContent}\n </UIMenuItem>\n </ConditionalWrapper>\n )\n})\n","/* eslint-disable no-restricted-imports */\nimport {\n TooltipDelayGroupProvider as UITooltipDelayGroupProvider,\n type TooltipDelayGroupProviderProps as UITooltipDelayGroupProviderProps,\n} from '@sanity/ui'\n\nimport {TOOLTIP_DELAY_PROPS} from '../tooltip/constants'\n\n/** @internal */\nexport type TooltipDelayGroupProviderProps = Omit<UITooltipDelayGroupProviderProps, 'delay'>\n\n/**\n * Opinionated Sanity UI <TooltipDelayGroupProvider> which forces the same delay to all tooltips.\n *\n * @internal\n */\nexport const TooltipDelayGroupProvider = (props: TooltipDelayGroupProviderProps) => {\n return (\n <UITooltipDelayGroupProvider delay={TOOLTIP_DELAY_PROPS}>\n {props.children}\n </UITooltipDelayGroupProvider>\n )\n}\n","const e=!(typeof navigator>\"u\")&&\"ReactNative\"===navigator.product,t={timeout:e?6e4:12e4},r=function(r){const a={...t,...\"string\"==typeof r?{url:r}:r};if(a.timeout=n(a.timeout),a.query){const{url:t,searchParams:r}=function(t){const r=t.indexOf(\"?\");if(-1===r)return{url:t,searchParams:new URLSearchParams};const n=t.slice(0,r),a=t.slice(r+1);if(!e)return{url:n,searchParams:new URLSearchParams(a)};if(\"function\"!=typeof decodeURIComponent)throw new Error(\"Broken `URLSearchParams` implementation, and `decodeURIComponent` is not defined\");const s=new URLSearchParams;for(const e of a.split(\"&\")){const[t,r]=e.split(\"=\");t&&s.append(o(t),o(r||\"\"))}return{url:n,searchParams:s}}(a.url);for(const[e,o]of Object.entries(a.query)){if(void 0!==o)if(Array.isArray(o))for(const t of o)r.append(e,t);else r.append(e,o);const n=r.toString();n&&(a.url=`${t}?${n}`)}}return a.method=a.body&&!a.method?\"POST\":(a.method||\"GET\").toUpperCase(),a};function o(e){return decodeURIComponent(e.replace(/\\+/g,\" \"))}function n(e){if(!1===e||0===e)return!1;if(e.connect||e.socket)return e;const r=Number(e);return isNaN(r)?n(t.timeout):{connect:r,socket:r}}const a=/^https?:\\/\\//i,s=function(e){if(!a.test(e.url))throw new Error(`\"${e.url}\" is not a valid URL`)};function c(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}export{c as g,r as p,s as v};//# sourceMappingURL=_commonjsHelpers.js.map\n","import{v as e,p as t,g as r}from\"./_chunks-es/_commonjsHelpers.js\";const o=[\"request\",\"response\",\"progress\",\"error\",\"abort\"],n=[\"processOptions\",\"validateOptions\",\"interceptRequest\",\"finalizeOptions\",\"onRequest\",\"onResponse\",\"onError\",\"onReturn\",\"onHeaders\"];function s(r,a){const i=[],u=n.reduce(((e,t)=>(e[t]=e[t]||[],e)),{processOptions:[t],validateOptions:[e]});function l(e){const t=o.reduce(((e,t)=>(e[t]=function(){const e=/* @__PURE__ */Object.create(null);let t=0;return{publish:function(t){for(const r in e)e[r](t)},subscribe:function(r){const o=t++;return e[o]=r,function(){delete e[o]}}}}(),e)),{}),r=(e=>function(t,r,...o){const n=\"onError\"===t;let s=r;for(let r=0;r<e[t].length&&(s=(0,e[t][r])(s,...o),!n||s);r++);return s})(u),n=r(\"processOptions\",e);r(\"validateOptions\",n);const s={options:n,channels:t,applyMiddleware:r};let i;const l=t.request.subscribe((e=>{i=a(e,((o,n)=>((e,o,n)=>{let s=e,a=o;if(!s)try{a=r(\"onResponse\",o,n)}catch(e){a=null,s=e}s=s&&r(\"onError\",s,n),s?t.error.publish(s):a&&t.response.publish(a)})(o,n,e)))}));t.abort.subscribe((()=>{l(),i&&i.abort()}));const c=r(\"onReturn\",t,s);return c===t&&t.request.publish(s),c}return l.use=function(e){if(!e)throw new Error(\"Tried to add middleware that resolved to falsey value\");if(\"function\"==typeof e)throw new Error(\"Tried to add middleware that was a function. It probably expects you to pass options to it.\");if(e.onReturn&&u.onReturn.length>0)throw new Error(\"Tried to add new middleware with `onReturn` handler, but another handler has already been registered for this event\");return n.forEach((t=>{e[t]&&u[t].push(e[t])})),i.push(e),l},l.clone=()=>s(i,a),r.forEach(l.use),l}var a,i,u=/* @__PURE__ */r(function(){if(i)return a;i=1;var e=function(e){return e.replace(/^\\s+|\\s+$/g,\"\")};return a=function(t){if(!t)return{};for(var r={},o=e(t).split(\"\\n\"),n=0;n<o.length;n++){var s=o[n],a=s.indexOf(\":\"),i=e(s.slice(0,a)).toLowerCase(),u=e(s.slice(a+1));typeof r[i]>\"u\"?r[i]=u:(l=r[i],\"[object Array]\"===Object.prototype.toString.call(l)?r[i].push(u):r[i]=[r[i],u])}var l;return r}}());class l{onabort;onerror;onreadystatechange;ontimeout;readyState=0;response;responseText=\"\";responseType=\"\";status;statusText;withCredentials;#e;#t;#r;#o={};#n;#s={};#a;open(e,t,r){this.#e=e,this.#t=t,this.#r=\"\",this.readyState=1,this.onreadystatechange?.(),this.#n=void 0}abort(){this.#n&&this.#n.abort()}getAllResponseHeaders(){return this.#r}setRequestHeader(e,t){this.#o[e]=t}setInit(e,t=!0){this.#s=e,this.#a=t}send(e){const t=\"arraybuffer\"!==this.responseType,r={...this.#s,method:this.#e,headers:this.#o,body:e};\"function\"==typeof AbortController&&this.#a&&(this.#n=new AbortController,typeof EventTarget<\"u\"&&this.#n.signal instanceof EventTarget&&(r.signal=this.#n.signal)),typeof document<\"u\"&&(r.credentials=this.withCredentials?\"include\":\"omit\"),fetch(this.#t,r).then((e=>(e.headers.forEach(((e,t)=>{this.#r+=`${t}: ${e}\\r\\n`})),this.status=e.status,this.statusText=e.statusText,this.readyState=3,this.onreadystatechange?.(),t?e.text():e.arrayBuffer()))).then((e=>{\"string\"==typeof e?this.responseText=e:this.response=e,this.readyState=4,this.onreadystatechange?.()})).catch((e=>{\"AbortError\"!==e.name?this.onerror?.(e):this.onabort?.()}))}}const c=\"function\"==typeof XMLHttpRequest?\"xhr\":\"fetch\",h=\"xhr\"===c?XMLHttpRequest:l,d=(e,t)=>{const r=e.options,o=e.applyMiddleware(\"finalizeOptions\",r),n={},s=e.applyMiddleware(\"interceptRequest\",void 0,{adapter:c,context:e});if(s){const e=setTimeout(t,0,null,s);return{abort:()=>clearTimeout(e)}}let a=new h;a instanceof l&&\"object\"==typeof o.fetch&&a.setInit(o.fetch,o.useAbortSignal??!0);const i=o.headers,d=o.timeout;let p=!1,f=!1,b=!1;if(a.onerror=e=>{m(a instanceof l?e instanceof Error?e:new Error(`Request error while attempting to reach is ${o.url}`,{cause:e}):new Error(`Request error while attempting to reach is ${o.url}${e.lengthComputable?`(${e.loaded} of ${e.total} bytes transferred)`:\"\"}`))},a.ontimeout=e=>{m(new Error(`Request timeout while attempting to reach ${o.url}${e.lengthComputable?`(${e.loaded} of ${e.total} bytes transferred)`:\"\"}`))},a.onabort=()=>{w(!0),p=!0},a.onreadystatechange=function(){d&&(w(),n.socket=setTimeout((()=>y(\"ESOCKETTIMEDOUT\")),d.socket)),!p&&a&&4===a.readyState&&0!==a.status&&function(){if(!(p||f||b)){if(0===a.status)return void m(new Error(\"Unknown XHR error\"));w(),f=!0,t(null,{body:a.response||(\"\"===a.responseType||\"text\"===a.responseType?a.responseText:\"\"),url:o.url,method:o.method,headers:u(a.getAllResponseHeaders()),statusCode:a.status,statusMessage:a.statusText})}}()},a.open(o.method,o.url,!0),a.withCredentials=!!o.withCredentials,i&&a.setRequestHeader)for(const e in i)i.hasOwnProperty(e)&&a.setRequestHeader(e,i[e]);return o.rawBody&&(a.responseType=\"arraybuffer\"),e.applyMiddleware(\"onRequest\",{options:o,adapter:c,request:a,context:e}),a.send(o.body||null),d&&(n.connect=setTimeout((()=>y(\"ETIMEDOUT\")),d.connect)),{abort:function(){p=!0,a&&a.abort()}};function y(t){b=!0,a.abort();const r=new Error(\"ESOCKETTIMEDOUT\"===t?`Socket timed out on request to ${o.url}`:`Connection timed out on request to ${o.url}`);r.code=t,e.channels.error.publish(r)}function w(e){(e||p||a&&a.readyState>=2&&n.connect)&&clearTimeout(n.connect),n.socket&&clearTimeout(n.socket)}function m(e){if(f)return;w(!0),f=!0,a=null;const r=e||new Error(`Network error while attempting to reach ${o.url}`);r.isNetworkError=!0,r.request=o,t(r)}},p=(e=[],t=d)=>s(e,t),f=\"browser\";export{c as adapter,f as environment,p as getIt};//# sourceMappingURL=index.browser.js.map\n","import{g as e}from\"./_chunks-es/_commonjsHelpers.js\";import{p as t,v as s}from\"./_chunks-es/_commonjsHelpers.js\";function n(e){return{}}const r=/^\\//,o=/\\/$/;function i(e){const t=e.replace(o,\"\");return{processOptions:e=>{if(/^https?:\\/\\//i.test(e.url))return e;const s=[t,e.url.replace(r,\"\")].join(\"/\");return Object.assign({},e,{url:s})}}}var a,c,u,l,p,d={exports:{}},f=/* @__PURE__ */e((p||(p=1,function(e,t){t.formatArgs=function(t){if(t[0]=(this.useColors?\"%c\":\"\")+this.namespace+(this.useColors?\" %c\":\" \")+t[0]+(this.useColors?\"%c \":\" \")+\"+\"+e.exports.humanize(this.diff),!this.useColors)return;const s=\"color: \"+this.color;t.splice(1,0,s,\"color: inherit\");let n=0,r=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{\"%%\"!==e&&(n++,\"%c\"===e&&(r=n))})),t.splice(r,0,s)},t.save=function(e){try{e?t.storage.setItem(\"debug\",e):t.storage.removeItem(\"debug\")}catch{}},t.load=function(){let e;try{e=t.storage.getItem(\"debug\")}catch{}return!e&&typeof process<\"u\"&&\"env\"in process&&(e=process.env.DEBUG),e},t.useColors=function(){if(typeof window<\"u\"&&window.process&&(\"renderer\"===window.process.type||window.process.__nwjs))return!0;if(typeof navigator<\"u\"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/))return!1;let e;return typeof document<\"u\"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<\"u\"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<\"u\"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<\"u\"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/)},t.storage=function(){try{return localStorage}catch{}}(),t.destroy=/* @__PURE__ */(()=>{let e=!1;return()=>{e||(e=!0,console.warn(\"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.\"))}})(),t.colors=[\"#0000CC\",\"#0000FF\",\"#0033CC\",\"#0033FF\",\"#0066CC\",\"#0066FF\",\"#0099CC\",\"#0099FF\",\"#00CC00\",\"#00CC33\",\"#00CC66\",\"#00CC99\",\"#00CCCC\",\"#00CCFF\",\"#3300CC\",\"#3300FF\",\"#3333CC\",\"#3333FF\",\"#3366CC\",\"#3366FF\",\"#3399CC\",\"#3399FF\",\"#33CC00\",\"#33CC33\",\"#33CC66\",\"#33CC99\",\"#33CCCC\",\"#33CCFF\",\"#6600CC\",\"#6600FF\",\"#6633CC\",\"#6633FF\",\"#66CC00\",\"#66CC33\",\"#9900CC\",\"#9900FF\",\"#9933CC\",\"#9933FF\",\"#99CC00\",\"#99CC33\",\"#CC0000\",\"#CC0033\",\"#CC0066\",\"#CC0099\",\"#CC00CC\",\"#CC00FF\",\"#CC3300\",\"#CC3333\",\"#CC3366\",\"#CC3399\",\"#CC33CC\",\"#CC33FF\",\"#CC6600\",\"#CC6633\",\"#CC9900\",\"#CC9933\",\"#CCCC00\",\"#CCCC33\",\"#FF0000\",\"#FF0033\",\"#FF0066\",\"#FF0099\",\"#FF00CC\",\"#FF00FF\",\"#FF3300\",\"#FF3333\",\"#FF3366\",\"#FF3399\",\"#FF33CC\",\"#FF33FF\",\"#FF6600\",\"#FF6633\",\"#FF9900\",\"#FF9933\",\"#FFCC00\",\"#FFCC33\"],t.log=console.debug||console.log||(()=>{}),e.exports=(l?u:(l=1,u=function(e){function t(e){let n,r,o,i=null;function a(...e){if(!a.enabled)return;const s=a,r=Number(/* @__PURE__ */new Date),o=r-(n||r);s.diff=o,s.prev=n,s.curr=r,n=r,e[0]=t.coerce(e[0]),\"string\"!=typeof e[0]&&e.unshift(\"%O\");let i=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((n,r)=>{if(\"%%\"===n)return\"%\";i++;const o=t.formatters[r];if(\"function\"==typeof o){const t=e[i];n=o.call(s,t),e.splice(i,1),i--}return n})),t.formatArgs.call(s,e),(s.log||t.log).apply(s,e)}return a.namespace=e,a.useColors=t.useColors(),a.color=t.selectColor(e),a.extend=s,a.destroy=t.destroy,Object.defineProperty(a,\"enabled\",{enumerable:!0,configurable:!1,get:()=>null!==i?i:(r!==t.namespaces&&(r=t.namespaces,o=t.enabled(e)),o),set:e=>{i=e}}),\"function\"==typeof t.init&&t.init(a),a}function s(e,s){const n=t(this.namespace+(typeof s>\"u\"?\":\":s)+e);return n.log=this.log,n}function n(e,t){let s=0,n=0,r=-1,o=0;for(;s<e.length;)if(n<t.length&&(t[n]===e[s]||\"*\"===t[n]))\"*\"===t[n]?(r=n,o=s,n++):(s++,n++);else{if(-1===r)return!1;n=r+1,o++,s=o}for(;n<t.length&&\"*\"===t[n];)n++;return n===t.length}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names,...t.skips.map((e=>\"-\"+e))].join(\",\");return t.enable(\"\"),e},t.enable=function(e){t.save(e),t.namespaces=e,t.names=[],t.skips=[];const s=(\"string\"==typeof e?e:\"\").trim().replace(\" \",\",\").split(\",\").filter(Boolean);for(const e of s)\"-\"===e[0]?t.skips.push(e.slice(1)):t.names.push(e)},t.enabled=function(e){for(const s of t.skips)if(n(e,s))return!1;for(const s of t.names)if(n(e,s))return!0;return!1},t.humanize=function(){if(c)return a;c=1;var e=1e3,t=60*e,s=60*t,n=24*s,r=7*n;function o(e,t,s,n){var r=t>=1.5*s;return Math.round(e/s)+\" \"+n+(r?\"s\":\"\")}return a=function(i,a){a=a||{};var c,u,l=typeof i;if(\"string\"===l&&i.length>0)return function(o){if(!((o=String(o)).length>100)){var i=/^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(o);if(i){var a=parseFloat(i[1]);switch((i[2]||\"ms\").toLowerCase()){case\"years\":case\"year\":case\"yrs\":case\"yr\":case\"y\":return 315576e5*a;case\"weeks\":case\"week\":case\"w\":return a*r;case\"days\":case\"day\":case\"d\":return a*n;case\"hours\":case\"hour\":case\"hrs\":case\"hr\":case\"h\":return a*s;case\"minutes\":case\"minute\":case\"mins\":case\"min\":case\"m\":return a*t;case\"seconds\":case\"second\":case\"secs\":case\"sec\":case\"s\":return a*e;case\"milliseconds\":case\"millisecond\":case\"msecs\":case\"msec\":case\"ms\":return a;default:return}}}}(i);if(\"number\"===l&&isFinite(i))return a.long?(c=i,(u=Math.abs(c))>=n?o(c,u,n,\"day\"):u>=s?o(c,u,s,\"hour\"):u>=t?o(c,u,t,\"minute\"):u>=e?o(c,u,e,\"second\"):c+\" ms\"):function(r){var o=Math.abs(r);return o>=n?Math.round(r/n)+\"d\":o>=s?Math.round(r/s)+\"h\":o>=t?Math.round(r/t)+\"m\":o>=e?Math.round(r/e)+\"s\":r+\"ms\"}(i);throw new Error(\"val is not a non-empty string or a valid number. val=\"+JSON.stringify(i))}}(),t.destroy=function(){console.warn(\"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.\")},Object.keys(e).forEach((s=>{t[s]=e[s]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let s=0;for(let t=0;t<e.length;t++)s=(s<<5)-s+e.charCodeAt(t),s|=0;return t.colors[Math.abs(s)%t.colors.length]},t.enable(t.load()),t}))(t);const{formatters:s}=e.exports;s.j=function(e){try{return JSON.stringify(e)}catch(e){return\"[UnexpectedJSONParseError]: \"+e.message}}}(d,d.exports)),d.exports));const m=[\"cookie\",\"authorization\"],C=Object.prototype.hasOwnProperty;function h(e={}){const t=e.verbose,s=e.namespace||\"get-it\",n=f(s),r=e.log||n,o=r===n&&!f.enabled(s);let i=0;return{processOptions:e=>(e.debug=r,e.requestId=e.requestId||++i,e),onRequest:s=>{if(o||!s)return s;const n=s.options;if(r(\"[%s] HTTP %s %s\",n.requestId,n.method,n.url),t&&n.body&&\"string\"==typeof n.body&&r(\"[%s] Request body: %s\",n.requestId,n.body),t&&n.headers){const t=!1===e.redactSensitiveHeaders?n.headers:((e,t)=>{const s={};for(const n in e)C.call(e,n)&&(s[n]=t.indexOf(n.toLowerCase())>-1?\"<redacted>\":e[n]);return s})(n.headers,m);r(\"[%s] Request headers: %s\",n.requestId,JSON.stringify(t,null,2))}return s},onResponse:(e,s)=>{if(o||!e)return e;const n=s.options.requestId;return r(\"[%s] Response code: %s %s\",n,e.statusCode,e.statusMessage),t&&e.body&&r(\"[%s] Response body: %s\",n,function(e){return-1!==(e.headers[\"content-type\"]||\"\").toLowerCase().indexOf(\"application/json\")?function(e){try{const t=\"string\"==typeof e?JSON.parse(e):e;return JSON.stringify(t,null,2)}catch{return e}}(e.body):e.body}(e)),e},onError:(e,t)=>{const s=t.options.requestId;return e?(r(\"[%s] ERROR: %s\",s,e.message),e):(r(\"[%s] Error encountered, but handled by an earlier middleware\",s),e)}}}function g(e,t={}){return{processOptions:s=>{const n=s.headers||{};return s.headers=t.override?Object.assign({},n,e):Object.assign({},e,n),s}}}class b extends Error{response;request;constructor(e,t){super();const s=e.url.length>400?`${e.url.slice(0,399)}…`:e.url;let n=`${e.method}-request to ${s} resulted in `;n+=`HTTP ${e.statusCode} ${e.statusMessage}`,this.message=n.trim(),this.response=e,this.request=t.options}}function y(){return{onResponse:(e,t)=>{if(!(e.statusCode>=400))return e;throw new b(e,t)}}}function w(e={}){if(\"function\"!=typeof e.inject)throw new Error(\"`injectResponse` middleware requires a `inject` function\");return{interceptRequest:function(t,s){const n=e.inject(s,t);if(!n)return t;const r=s.context.options;return{body:\"\",url:r.url,method:r.method,headers:{},statusCode:200,statusMessage:\"OK\",...n}}}}const F=typeof Buffer>\"u\"?()=>!1:e=>Buffer.isBuffer(e);function O(e){return\"[object Object]\"===Object.prototype.toString.call(e)}function j(e){if(!1===O(e))return!1;const t=e.constructor;if(void 0===t)return!0;const s=t.prototype;return!(!1===O(s)||!1===s.hasOwnProperty(\"isPrototypeOf\"))}const v=[\"boolean\",\"string\",\"number\"];function x(){return{processOptions:e=>{const t=e.body;return!t||\"function\"==typeof t.pipe||F(t)||-1===v.indexOf(typeof t)&&!Array.isArray(t)&&!j(t)?e:Object.assign({},e,{body:JSON.stringify(e.body),headers:Object.assign({},e.headers,{\"Content-Type\":\"application/json\"})})}}}function E(e){return{onResponse:s=>{const n=s.headers[\"content-type\"]||\"\",r=e&&e.force||-1!==n.indexOf(\"application/json\");return s.body&&n&&r?Object.assign({},s,{body:t(s.body)}):s},processOptions:e=>Object.assign({},e,{headers:Object.assign({Accept:\"application/json\"},e.headers)})};function t(e){try{return JSON.parse(e)}catch(e){throw e.message=`Failed to parsed response body as JSON: ${e.message}`,e}}}function k(e={}){if(!e.ca)throw new Error('Required mtls option \"ca\" is missing');if(!e.cert)throw new Error('Required mtls option \"cert\" is missing');if(!e.key)throw new Error('Required mtls option \"key\" is missing');return{finalizeOptions:t=>{if(function(e){return\"object\"==typeof e&&null!==e&&!(\"protocol\"in e)}(t))return t;const s={cert:e.cert,key:e.key,ca:e.ca};return Object.assign({},t,s)}}}let R={};typeof globalThis<\"u\"?R=globalThis:typeof window<\"u\"?R=window:typeof global<\"u\"?R=global:typeof self<\"u\"&&(R=self);var q=R;function A(e={}){const t=e.implementation||q.Observable;if(!t)throw new Error(\"`Observable` is not available in global scope, and no implementation was passed\");return{onReturn:(e,s)=>new t((t=>(e.error.subscribe((e=>t.error(e))),e.progress.subscribe((e=>t.next(Object.assign({type:\"progress\"},e)))),e.response.subscribe((e=>{t.next(Object.assign({type:\"response\"},e)),t.complete()})),e.request.publish(s),()=>e.abort.publish())))}}function S(){return{onRequest:e=>{if(\"xhr\"!==e.adapter)return;const t=e.request,s=e.context;function n(e){return t=>{const n=t.lengthComputable?t.loaded/t.total*100:-1;s.channels.progress.publish({stage:e,percent:n,total:t.total,loaded:t.loaded,lengthComputable:t.lengthComputable})}}\"upload\"in t&&\"onprogress\"in t.upload&&(t.upload.onprogress=n(\"upload\")),\"onprogress\"in t&&(t.onprogress=n(\"download\"))}}}const N=(e={})=>{const t=e.implementation||Promise;if(!t)throw new Error(\"`Promise` is not available in global scope, and no implementation was passed\");return{onReturn:(s,n)=>new t(((t,r)=>{const o=n.options.cancelToken;o&&o.promise.then((e=>{s.abort.publish(e),r(e)})),s.error.subscribe(r),s.response.subscribe((s=>{t(e.onlyBody?s.body:s)})),setTimeout((()=>{try{s.request.publish(n)}catch(e){r(e)}}),0)}))}};class T{__CANCEL__=!0;message;constructor(e){this.message=e}toString(){return\"Cancel\"+(this.message?`: ${this.message}`:\"\")}}class I{promise;reason;constructor(e){if(\"function\"!=typeof e)throw new TypeError(\"executor must be a function.\");let t=null;this.promise=new Promise((e=>{t=e})),e((e=>{this.reason||(this.reason=new T(e),t(this.reason))}))}static source=()=>{let e;return{token:new I((t=>{e=t})),cancel:e}}}function M(e){if(!(!1===e||e&&e.host))throw new Error(\"Proxy middleware takes an object of host, port and auth properties\");return{processOptions:t=>Object.assign({proxy:e},t)}}N.Cancel=T,N.CancelToken=I,N.isCancel=e=>!(!e||!e?.__CANCEL__);var $=(e,t,s)=>(\"GET\"===s.method||\"HEAD\"===s.method)&&(e.isNetworkError||!1);function _(e){return 100*Math.pow(2,e)+100*Math.random()}const P=(e={})=>(e=>{const t=e.maxRetries||5,s=e.retryDelay||_,n=e.shouldRetry;return{onError:(e,r)=>{const o=r.options,i=o.maxRetries||t,a=o.retryDelay||s,c=o.shouldRetry||n,u=o.attemptNumber||0;if(null!==(l=o.body)&&\"object\"==typeof l&&\"function\"==typeof l.pipe||!c(e,u,o)||u>=i)return e;var l;const p=Object.assign({},r,{options:Object.assign({},o,{attemptNumber:u+1})});return setTimeout((()=>r.channels.request.publish(p)),a(u)),null}}})({shouldRetry:$,...e});function J(e){const t=new URLSearchParams,s=(e,n)=>{const r=n instanceof Set?Array.from(n):n;if(Array.isArray(r))if(r.length)for(const t in r)s(`${e}[${t}]`,r[t]);else t.append(`${e}[]`,\"\");else if(\"object\"==typeof r&&null!==r)for(const[t,n]of Object.entries(r))s(`${e}[${t}]`,n);else t.append(e,r)};for(const[t,n]of Object.entries(e))s(t,n);return t.toString()}function L(){return{processOptions:e=>{const t=e.body;return t&&\"function\"!=typeof t.pipe&&!F(t)&&j(t)?{...e,body:J(e.body),headers:{...e.headers,\"Content-Type\":\"application/x-www-form-urlencoded\"}}:e}}}P.shouldRetry=$;class z extends Error{request;code;constructor(e,t){super(e.message),this.request=t,this.code=e.code}}const B=(H=n,function(e={}){const{maxRetries:t=3,ms:s=1e3,maxFree:n=256}=e,{finalizeOptions:r}=H({keepAlive:!0,keepAliveMsecs:s,maxFreeSockets:n});return{finalizeOptions:r,onError:(e,s)=>{if((\"GET\"===s.options.method||\"POST\"===s.options.method)&&e instanceof z&&\"ECONNRESET\"===e.code&&e.request.reusedSocket){const e=s.options.attemptNumber||0;if(e<t){const t=Object.assign({},s,{options:Object.assign({},s.options,{attemptNumber:e+1})});return setImmediate((()=>s.channels.request.publish(t))),null}}return e}}});var H;export{T as Cancel,I as CancelToken,n as agent,i as base,h as debug,g as headers,y as httpErrors,w as injectResponse,x as jsonRequest,E as jsonResponse,B as keepAlive,k as mtls,A as observable,t as processOptions,S as progress,N as promise,M as proxy,P as retry,L as urlEncoded,s as validateOptions};//# sourceMappingURL=middleware.browser.js.map\n","function isRecord(value) {\n return typeof value == \"object\" && value !== null && !Array.isArray(value);\n}\nvar s = { 0: 8203, 1: 8204, 2: 8205, 3: 8290, 4: 8291, 5: 8288, 6: 65279, 7: 8289, 8: 119155, 9: 119156, a: 119157, b: 119158, c: 119159, d: 119160, e: 119161, f: 119162 }, c = { 0: 8203, 1: 8204, 2: 8205, 3: 65279 }, u = new Array(4).fill(String.fromCodePoint(c[0])).join(\"\");\nfunction E(t) {\n let e = JSON.stringify(t);\n return `${u}${Array.from(e).map((r) => {\n let n = r.charCodeAt(0);\n if (n > 255) throw new Error(`Only ASCII edit info can be encoded. Error attempting to encode ${e} on character ${r} (${n})`);\n return Array.from(n.toString(4).padStart(4, \"0\")).map((o) => String.fromCodePoint(c[o])).join(\"\");\n }).join(\"\")}`;\n}\nfunction I(t) {\n return !Number.isNaN(Number(t)) || /[a-z]/i.test(t) && !/\\d+(?:[-:\\/]\\d+){2}(?:T\\d+(?:[-:\\/]\\d+){1,2}(\\.\\d+)?Z?)?/.test(t) ? !1 : !!Date.parse(t);\n}\nfunction T(t) {\n try {\n new URL(t, t.startsWith(\"/\") ? \"https://acme.com\" : void 0);\n } catch {\n return !1;\n }\n return !0;\n}\nfunction C(t, e, r = \"auto\") {\n return r === !0 || r === \"auto\" && (I(t) || T(t)) ? t : `${t}${E(e)}`;\n}\nObject.fromEntries(Object.entries(c).map((t) => t.reverse()));\nObject.fromEntries(Object.entries(s).map((t) => t.reverse()));\nvar S = `${Object.values(s).map((t) => `\\\\u{${t.toString(16)}}`).join(\"\")}`, f = new RegExp(`[${S}]{4,}`, \"gu\");\nfunction _(t) {\n var e;\n return { cleaned: t.replace(f, \"\"), encoded: ((e = t.match(f)) == null ? void 0 : e[0]) || \"\" };\n}\nfunction O(t) {\n return t && JSON.parse(_(JSON.stringify(t)).cleaned);\n}\nfunction stegaClean(result) {\n return O(result);\n}\nconst vercelStegaCleanAll = stegaClean;\nexport {\n C,\n isRecord,\n stegaClean,\n vercelStegaCleanAll\n};\n//# sourceMappingURL=stegaClean.js.map\n","function isRecord(value) {\n return typeof value == \"object\" && value !== null && !Array.isArray(value);\n}\nexport {\n isRecord\n};\n//# sourceMappingURL=isRecord.js.map\n","import { isRecord } from \"./isRecord.js\";\nconst rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g, reKeySegment = /_key\\s*==\\s*['\"](.*)['\"]/, reIndexTuple = /^\\d*:\\d*$/;\nfunction isIndexSegment(segment) {\n return typeof segment == \"number\" || typeof segment == \"string\" && /^\\[\\d+\\]$/.test(segment);\n}\nfunction isKeySegment(segment) {\n return typeof segment == \"string\" ? reKeySegment.test(segment.trim()) : typeof segment == \"object\" && \"_key\" in segment;\n}\nfunction isIndexTuple(segment) {\n if (typeof segment == \"string\" && reIndexTuple.test(segment))\n return !0;\n if (!Array.isArray(segment) || segment.length !== 2)\n return !1;\n const [from, to] = segment;\n return (typeof from == \"number\" || from === \"\") && (typeof to == \"number\" || to === \"\");\n}\nfunction get(obj, path, defaultVal) {\n const select = typeof path == \"string\" ? fromString(path) : path;\n if (!Array.isArray(select))\n throw new Error(\"Path must be an array or a string\");\n let acc = obj;\n for (let i = 0; i < select.length; i++) {\n const segment = select[i];\n if (isIndexSegment(segment)) {\n if (!Array.isArray(acc))\n return defaultVal;\n acc = acc[segment];\n }\n if (isKeySegment(segment)) {\n if (!Array.isArray(acc))\n return defaultVal;\n acc = acc.find((item) => item._key === segment._key);\n }\n if (typeof segment == \"string\" && (acc = typeof acc == \"object\" && acc !== null ? acc[segment] : void 0), typeof acc > \"u\")\n return defaultVal;\n }\n return acc;\n}\nfunction toString(path) {\n if (!Array.isArray(path))\n throw new Error(\"Path is not an array\");\n return path.reduce((target, segment, i) => {\n const segmentType = typeof segment;\n if (segmentType === \"number\")\n return `${target}[${segment}]`;\n if (segmentType === \"string\")\n return `${target}${i === 0 ? \"\" : \".\"}${segment}`;\n if (isKeySegment(segment) && segment._key)\n return `${target}[_key==\"${segment._key}\"]`;\n if (Array.isArray(segment)) {\n const [from, to] = segment;\n return `${target}[${from}:${to}]`;\n }\n throw new Error(`Unsupported path segment \\`${JSON.stringify(segment)}\\``);\n }, \"\");\n}\nfunction fromString(path) {\n if (typeof path != \"string\")\n throw new Error(\"Path is not a string\");\n const segments = path.match(rePropName);\n if (!segments)\n throw new Error(\"Invalid path string\");\n return segments.map(parsePathSegment);\n}\nfunction parsePathSegment(segment) {\n return isIndexSegment(segment) ? parseIndexSegment(segment) : isKeySegment(segment) ? parseKeySegment(segment) : isIndexTuple(segment) ? parseIndexTupleSegment(segment) : segment;\n}\nfunction parseIndexSegment(segment) {\n return Number(segment.replace(/[^\\d]/g, \"\"));\n}\nfunction parseKeySegment(segment) {\n return { _key: segment.match(reKeySegment)[1] };\n}\nfunction parseIndexTupleSegment(segment) {\n const [from, to] = segment.split(\":\").map((seg) => seg === \"\" ? seg : Number(seg));\n return [from, to];\n}\nvar studioPath = /* @__PURE__ */ Object.freeze({\n __proto__: null,\n fromString,\n get,\n isIndexSegment,\n isIndexTuple,\n isKeySegment,\n reKeySegment,\n toString\n});\nconst DRAFTS_FOLDER = \"drafts\", VERSION_FOLDER = \"versions\", PATH_SEPARATOR = \".\", DRAFTS_PREFIX = `${DRAFTS_FOLDER}${PATH_SEPARATOR}`, VERSION_PREFIX = `${VERSION_FOLDER}${PATH_SEPARATOR}`;\nfunction isDraftId(id) {\n return id.startsWith(DRAFTS_PREFIX);\n}\nfunction isVersionId(id) {\n return id.startsWith(VERSION_PREFIX);\n}\nfunction isPublishedId(id) {\n return !isDraftId(id) && !isVersionId(id);\n}\nfunction getDraftId(id) {\n if (isVersionId(id)) {\n const publishedId = getPublishedId(id);\n return DRAFTS_PREFIX + publishedId;\n }\n return isDraftId(id) ? id : DRAFTS_PREFIX + id;\n}\nfunction getVersionId(id, version) {\n if (version === \"drafts\" || version === \"published\")\n throw new Error('Version can not be \"published\" or \"drafts\"');\n return `${VERSION_PREFIX}${version}${PATH_SEPARATOR}${getPublishedId(id)}`;\n}\nfunction getVersionFromId(id) {\n if (!isVersionId(id)) return;\n const [_versionPrefix, versionId, ..._publishedId] = id.split(PATH_SEPARATOR);\n return versionId;\n}\nfunction getPublishedId(id) {\n return isVersionId(id) ? id.split(PATH_SEPARATOR).slice(2).join(PATH_SEPARATOR) : isDraftId(id) ? id.slice(DRAFTS_PREFIX.length) : id;\n}\nconst ESCAPE = {\n \"\\f\": \"\\\\f\",\n \"\\n\": \"\\\\n\",\n \"\\r\": \"\\\\r\",\n \"\t\": \"\\\\t\",\n \"'\": \"\\\\'\",\n \"\\\\\": \"\\\\\\\\\"\n}, UNESCAPE = {\n \"\\\\f\": \"\\f\",\n \"\\\\n\": `\n`,\n \"\\\\r\": \"\\r\",\n \"\\\\t\": \"\t\",\n \"\\\\'\": \"'\",\n \"\\\\\\\\\": \"\\\\\"\n};\nfunction jsonPath(path) {\n return `$${path.map((segment) => typeof segment == \"string\" ? `['${segment.replace(/[\\f\\n\\r\\t'\\\\]/g, (match) => ESCAPE[match])}']` : typeof segment == \"number\" ? `[${segment}]` : segment._key !== \"\" ? `[?(@._key=='${segment._key.replace(/['\\\\]/g, (match) => ESCAPE[match])}')]` : `[${segment._index}]`).join(\"\")}`;\n}\nfunction parseJsonPath(path) {\n const parsed = [], parseRe = /\\['(.*?)'\\]|\\[(\\d+)\\]|\\[\\?\\(@\\._key=='(.*?)'\\)\\]/g;\n let match;\n for (; (match = parseRe.exec(path)) !== null; ) {\n if (match[1] !== void 0) {\n const key = match[1].replace(/\\\\(\\\\|f|n|r|t|')/g, (m) => UNESCAPE[m]);\n parsed.push(key);\n continue;\n }\n if (match[2] !== void 0) {\n parsed.push(parseInt(match[2], 10));\n continue;\n }\n if (match[3] !== void 0) {\n const _key = match[3].replace(/\\\\(\\\\')/g, (m) => UNESCAPE[m]);\n parsed.push({\n _key,\n _index: -1\n });\n continue;\n }\n }\n return parsed;\n}\nfunction jsonPathToStudioPath(path) {\n return path.map((segment) => {\n if (typeof segment == \"string\" || typeof segment == \"number\")\n return segment;\n if (segment._key !== \"\")\n return { _key: segment._key };\n if (segment._index !== -1)\n return segment._index;\n throw new Error(`invalid segment:${JSON.stringify(segment)}`);\n });\n}\nfunction studioPathToJsonPath(path) {\n return (typeof path == \"string\" ? fromString(path) : path).map((segment) => {\n if (typeof segment == \"string\" || typeof segment == \"number\")\n return segment;\n if (Array.isArray(segment))\n throw new Error(`IndexTuple segments aren't supported:${JSON.stringify(segment)}`);\n if (isContentSourceMapParsedPathKeyedSegment(segment))\n return segment;\n if (segment._key)\n return { _key: segment._key, _index: -1 };\n throw new Error(`invalid segment:${JSON.stringify(segment)}`);\n });\n}\nfunction isContentSourceMapParsedPathKeyedSegment(segment) {\n return typeof segment == \"object\" && \"_key\" in segment && \"_index\" in segment;\n}\nfunction jsonPathToMappingPath(path) {\n return path.map((segment) => {\n if (typeof segment == \"string\" || typeof segment == \"number\")\n return segment;\n if (segment._index !== -1)\n return segment._index;\n throw new Error(`invalid segment:${JSON.stringify(segment)}`);\n });\n}\nfunction resolveMapping(resultPath, csm) {\n if (!csm?.mappings)\n return;\n const resultMappingPath = jsonPath(jsonPathToMappingPath(resultPath));\n if (csm.mappings[resultMappingPath] !== void 0)\n return {\n mapping: csm.mappings[resultMappingPath],\n matchedPath: resultMappingPath,\n pathSuffix: \"\"\n };\n const mappings = Object.entries(csm.mappings).filter(([key]) => resultMappingPath.startsWith(key)).sort(([key1], [key2]) => key2.length - key1.length);\n if (mappings.length == 0)\n return;\n const [matchedPath, mapping] = mappings[0], pathSuffix = resultMappingPath.substring(matchedPath.length);\n return { mapping, matchedPath, pathSuffix };\n}\nfunction isArray(value) {\n return value !== null && Array.isArray(value);\n}\nfunction walkMap(value, mappingFn, path = []) {\n if (isArray(value))\n return value.map((v, idx) => {\n if (isRecord(v)) {\n const _key = v._key;\n if (typeof _key == \"string\")\n return walkMap(v, mappingFn, path.concat({ _key, _index: idx }));\n }\n return walkMap(v, mappingFn, path.concat(idx));\n });\n if (isRecord(value)) {\n if (value._type === \"block\" || value._type === \"span\") {\n const result = { ...value };\n return value._type === \"block\" ? result.children = walkMap(value.children, mappingFn, path.concat(\"children\")) : value._type === \"span\" && (result.text = walkMap(value.text, mappingFn, path.concat(\"text\"))), result;\n }\n return Object.fromEntries(\n Object.entries(value).map(([k, v]) => [k, walkMap(v, mappingFn, path.concat(k))])\n );\n }\n return mappingFn(value, path);\n}\nfunction createEditUrl(options) {\n const {\n baseUrl,\n workspace: _workspace = \"default\",\n tool: _tool = \"default\",\n id: _id,\n type,\n path,\n projectId,\n dataset\n } = options;\n if (!baseUrl)\n throw new Error(\"baseUrl is required\");\n if (!path)\n throw new Error(\"path is required\");\n if (!_id)\n throw new Error(\"id is required\");\n if (baseUrl !== \"/\" && baseUrl.endsWith(\"/\"))\n throw new Error(\"baseUrl must not end with a slash\");\n const workspace = _workspace === \"default\" ? void 0 : _workspace, tool = _tool === \"default\" ? void 0 : _tool, id = getPublishedId(_id), stringifiedPath = Array.isArray(path) ? toString(jsonPathToStudioPath(path)) : path, searchParams = new URLSearchParams({\n baseUrl,\n id,\n type,\n path: stringifiedPath\n });\n if (workspace && searchParams.set(\"workspace\", workspace), tool && searchParams.set(\"tool\", tool), projectId && searchParams.set(\"projectId\", projectId), dataset && searchParams.set(\"dataset\", dataset), isPublishedId(_id))\n searchParams.set(\"perspective\", \"published\");\n else if (isVersionId(_id)) {\n const versionId = getVersionFromId(_id);\n searchParams.set(\"perspective\", versionId);\n }\n const segments = [baseUrl === \"/\" ? \"\" : baseUrl];\n workspace && segments.push(workspace);\n const routerParams = [\n \"mode=presentation\",\n `id=${id}`,\n `type=${type}`,\n `path=${encodeURIComponent(stringifiedPath)}`\n ];\n return tool && routerParams.push(`tool=${tool}`), segments.push(\"intent\", \"edit\", `${routerParams.join(\";\")}?${searchParams}`), segments.join(\"/\");\n}\nfunction resolveEditInfo(options) {\n const { resultSourceMap: csm, resultPath } = options, { mapping, pathSuffix } = resolveMapping(resultPath, csm) || {};\n if (!mapping || mapping.source.type === \"literal\" || mapping.source.type === \"unknown\")\n return;\n const sourceDoc = csm.documents[mapping.source.document], sourcePath = csm.paths[mapping.source.path];\n if (sourceDoc && sourcePath) {\n const { baseUrl, workspace, tool } = resolveStudioBaseRoute(\n typeof options.studioUrl == \"function\" ? options.studioUrl(sourceDoc) : options.studioUrl\n );\n if (!baseUrl) return;\n const { _id, _type, _projectId, _dataset } = sourceDoc;\n return {\n baseUrl,\n workspace,\n tool,\n id: _id,\n type: _type,\n path: parseJsonPath(sourcePath + pathSuffix),\n projectId: _projectId,\n dataset: _dataset\n };\n }\n}\nfunction resolveStudioBaseRoute(studioUrl) {\n let baseUrl = typeof studioUrl == \"string\" ? studioUrl : studioUrl.baseUrl;\n return baseUrl !== \"/\" && (baseUrl = baseUrl.replace(/\\/$/, \"\")), typeof studioUrl == \"string\" ? { baseUrl } : { ...studioUrl, baseUrl };\n}\nexport {\n DRAFTS_FOLDER,\n VERSION_FOLDER,\n createEditUrl,\n get,\n getDraftId,\n getPublishedId,\n getVersionFromId,\n getVersionId,\n isDraftId,\n isPublishedId,\n isVersionId,\n jsonPath,\n jsonPathToStudioPath,\n parseJsonPath,\n reKeySegment,\n resolveEditInfo,\n resolveMapping,\n resolveStudioBaseRoute,\n studioPath,\n studioPathToJsonPath,\n toString,\n walkMap\n};\n//# sourceMappingURL=resolveEditInfo.js.map\n","import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step | 0\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) =>\n crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => {\n byte &= 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte > 62) {\n id += '-'\n } else {\n id += '_'\n }\n return id\n }, '')\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","import { getIt } from \"get-it\";\nimport { adapter, environment } from \"get-it\";\nimport { retry, jsonRequest, jsonResponse, progress, observable } from \"get-it/middleware\";\nimport { Observable, defer, of, isObservable, mergeMap, from, lastValueFrom, shareReplay, catchError, concat, throwError, timer, tap, finalize, share, merge, EMPTY, map as map$1, firstValueFrom } from \"rxjs\";\nimport { isRecord, stegaClean } from \"./_chunks-es/stegaClean.js\";\nimport { combineLatestWith, map, filter, finalize as finalize$1 } from \"rxjs/operators\";\nimport { getVersionFromId, isDraftId, getVersionId, getDraftId, isVersionId, getPublishedId } from \"@sanity/client/csm\";\nimport { customAlphabet } from \"nanoid\";\nconst NEWLINE = /\\r\\n|[\\n\\r\\u2028\\u2029]/;\nfunction codeFrame(query, location2, message) {\n const lines = query.split(NEWLINE), loc = {\n start: columnToLine(location2.start, lines),\n end: location2.end ? columnToLine(location2.end, lines) : void 0\n }, { start, end, markerLines } = getMarkerLines(loc, lines), numberMaxWidth = `${end}`.length;\n return query.split(NEWLINE, end).slice(start, end).map((line, index) => {\n const number = start + 1 + index, gutter = ` ${` ${number}`.slice(-numberMaxWidth)} |`, hasMarker = markerLines[number], lastMarkerLine = !markerLines[number + 1];\n if (!hasMarker)\n return ` ${gutter}${line.length > 0 ? ` ${line}` : \"\"}`;\n let markerLine = \"\";\n if (Array.isArray(hasMarker)) {\n const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\\t]/g, \" \"), numberOfMarkers = hasMarker[1] || 1;\n markerLine = [\n `\n `,\n gutter.replace(/\\d/g, \" \"),\n \" \",\n markerSpacing,\n \"^\".repeat(numberOfMarkers)\n ].join(\"\"), lastMarkerLine && message && (markerLine += \" \" + message);\n }\n return [\">\", gutter, line.length > 0 ? ` ${line}` : \"\", markerLine].join(\"\");\n }).join(`\n`);\n}\nfunction getMarkerLines(loc, source) {\n const startLoc = { ...loc.start }, endLoc = { ...startLoc, ...loc.end }, linesAbove = 2, linesBelow = 3, startLine = startLoc.line ?? -1, startColumn = startLoc.column ?? 0, endLine = endLoc.line, endColumn = endLoc.column;\n let start = Math.max(startLine - (linesAbove + 1), 0), end = Math.min(source.length, endLine + linesBelow);\n startLine === -1 && (start = 0), endLine === -1 && (end = source.length);\n const lineDiff = endLine - startLine, markerLines = {};\n if (lineDiff)\n for (let i = 0; i <= lineDiff; i++) {\n const lineNumber = i + startLine;\n if (!startColumn)\n markerLines[lineNumber] = !0;\n else if (i === 0) {\n const sourceLength = source[lineNumber - 1].length;\n markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1];\n } else if (i === lineDiff)\n markerLines[lineNumber] = [0, endColumn];\n else {\n const sourceLength = source[lineNumber - i].length;\n markerLines[lineNumber] = [0, sourceLength];\n }\n }\n else\n startColumn === endColumn ? startColumn ? markerLines[startLine] = [startColumn, 0] : markerLines[startLine] = !0 : markerLines[startLine] = [startColumn, endColumn - startColumn];\n return { start, end, markerLines };\n}\nfunction columnToLine(column, lines) {\n let offset = 0;\n for (let i = 0; i < lines.length; i++) {\n const lineLength = lines[i].length + 1;\n if (offset + lineLength > column)\n return {\n line: i + 1,\n // 1-based line\n column: column - offset\n // 0-based column\n };\n offset += lineLength;\n }\n return {\n line: lines.length,\n column: lines[lines.length - 1]?.length ?? 0\n };\n}\nconst MAX_ITEMS_IN_ERROR_MESSAGE = 5;\nclass ClientError extends Error {\n response;\n statusCode = 400;\n responseBody;\n details;\n constructor(res, context) {\n const props = extractErrorProps(res, context);\n super(props.message), Object.assign(this, props);\n }\n}\nclass ServerError extends Error {\n response;\n statusCode = 500;\n responseBody;\n details;\n constructor(res) {\n const props = extractErrorProps(res);\n super(props.message), Object.assign(this, props);\n }\n}\nfunction extractErrorProps(res, context) {\n const body = res.body, props = {\n response: res,\n statusCode: res.statusCode,\n responseBody: stringifyBody(body, res),\n message: \"\",\n details: void 0\n };\n if (!isRecord(body))\n return props.message = httpErrorMessage(res, body), props;\n const error = body.error;\n if (typeof error == \"string\" && typeof body.message == \"string\")\n return props.message = `${error} - ${body.message}`, props;\n if (typeof error != \"object\" || error === null)\n return typeof error == \"string\" ? props.message = error : typeof body.message == \"string\" ? props.message = body.message : props.message = httpErrorMessage(res, body), props;\n if (isMutationError(error) || isActionError(error)) {\n const allItems = error.items || [], items = allItems.slice(0, MAX_ITEMS_IN_ERROR_MESSAGE).map((item) => item.error?.description).filter(Boolean);\n let itemsStr = items.length ? `:\n- ${items.join(`\n- `)}` : \"\";\n return allItems.length > MAX_ITEMS_IN_ERROR_MESSAGE && (itemsStr += `\n...and ${allItems.length - MAX_ITEMS_IN_ERROR_MESSAGE} more`), props.message = `${error.description}${itemsStr}`, props.details = body.error, props;\n }\n if (isQueryParseError(error)) {\n const tag = context?.options?.query?.tag;\n return props.message = formatQueryParseError(error, tag), props.details = body.error, props;\n }\n return \"description\" in error && typeof error.description == \"string\" ? (props.message = error.description, props.details = error, props) : (props.message = httpErrorMessage(res, body), props);\n}\nfunction isMutationError(error) {\n return \"type\" in error && error.type === \"mutationError\" && \"description\" in error && typeof error.description == \"string\";\n}\nfunction isActionError(error) {\n return \"type\" in error && error.type === \"actionError\" && \"description\" in error && typeof error.description == \"string\";\n}\nfunction isQueryParseError(error) {\n return isRecord(error) && error.type === \"queryParseError\" && typeof error.query == \"string\" && typeof error.start == \"number\" && typeof error.end == \"number\";\n}\nfunction formatQueryParseError(error, tag) {\n const { query, start, end, description } = error;\n if (!query || typeof start > \"u\")\n return `GROQ query parse error: ${description}`;\n const withTag = tag ? `\n\nTag: ${tag}` : \"\";\n return `GROQ query parse error:\n${codeFrame(query, { start, end }, description)}${withTag}`;\n}\nfunction httpErrorMessage(res, body) {\n const details = typeof body == \"string\" ? ` (${sliceWithEllipsis(body, 100)})` : \"\", statusMessage = res.statusMessage ? ` ${res.statusMessage}` : \"\";\n return `${res.method}-request to ${res.url} resulted in HTTP ${res.statusCode}${statusMessage}${details}`;\n}\nfunction stringifyBody(body, res) {\n return (res.headers[\"content-type\"] || \"\").toLowerCase().indexOf(\"application/json\") !== -1 ? JSON.stringify(body, null, 2) : body;\n}\nfunction sliceWithEllipsis(str, max) {\n return str.length > max ? `${str.slice(0, max)}\\u2026` : str;\n}\nclass CorsOriginError extends Error {\n projectId;\n addOriginUrl;\n constructor({ projectId: projectId2 }) {\n super(\"CorsOriginError\"), this.name = \"CorsOriginError\", this.projectId = projectId2;\n const url = new URL(`https://sanity.io/manage/project/${projectId2}/api`);\n if (typeof location < \"u\") {\n const { origin } = location;\n url.searchParams.set(\"cors\", \"add\"), url.searchParams.set(\"origin\", origin), this.addOriginUrl = url, this.message = `The current origin is not allowed to connect to the Live Content API. Add it here: ${url}`;\n } else\n this.message = `The current origin is not allowed to connect to the Live Content API. Change your configuration here: ${url}`;\n }\n}\nconst httpError = {\n onResponse: (res, context) => {\n if (res.statusCode >= 500)\n throw new ServerError(res);\n if (res.statusCode >= 400)\n throw new ClientError(res, context);\n return res;\n }\n};\nfunction printWarnings() {\n const seen = {};\n return {\n onResponse: (res) => {\n const warn = res.headers[\"x-sanity-warning\"], warnings = Array.isArray(warn) ? warn : [warn];\n for (const msg of warnings)\n !msg || seen[msg] || (seen[msg] = !0, console.warn(msg));\n return res;\n }\n };\n}\nfunction defineHttpRequest(envMiddleware2) {\n return getIt([\n retry({ shouldRetry }),\n ...envMiddleware2,\n printWarnings(),\n jsonRequest(),\n jsonResponse(),\n progress(),\n httpError,\n observable({ implementation: Observable })\n ]);\n}\nfunction shouldRetry(err, attempt, options) {\n if (options.maxRetries === 0) return !1;\n const isSafe = options.method === \"GET\" || options.method === \"HEAD\", isQuery2 = (options.uri || options.url).startsWith(\"/data/query\"), isRetriableResponse = err.response && (err.response.statusCode === 429 || err.response.statusCode === 502 || err.response.statusCode === 503);\n return (isSafe || isQuery2) && isRetriableResponse ? !0 : retry.shouldRetry(err, attempt, options);\n}\nconst BASE_URL = \"https://www.sanity.io/help/\";\nfunction generateHelpUrl(slug) {\n return BASE_URL + slug;\n}\nconst VALID_ASSET_TYPES = [\"image\", \"file\"], VALID_INSERT_LOCATIONS = [\"before\", \"after\", \"replace\"], dataset = (name) => {\n if (!/^(~[a-z0-9]{1}[-\\w]{0,63}|[a-z0-9]{1}[-\\w]{0,63})$/.test(name))\n throw new Error(\n \"Datasets can only contain lowercase characters, numbers, underscores and dashes, and start with tilde, and be maximum 64 characters\"\n );\n}, projectId = (id) => {\n if (!/^[-a-z0-9]+$/i.test(id))\n throw new Error(\"`projectId` can only contain only a-z, 0-9 and dashes\");\n}, validateAssetType = (type) => {\n if (VALID_ASSET_TYPES.indexOf(type) === -1)\n throw new Error(`Invalid asset type: ${type}. Must be one of ${VALID_ASSET_TYPES.join(\", \")}`);\n}, validateObject = (op, val) => {\n if (val === null || typeof val != \"object\" || Array.isArray(val))\n throw new Error(`${op}() takes an object of properties`);\n}, validateDocumentId = (op, id) => {\n if (typeof id != \"string\" || !/^[a-z0-9_][a-z0-9_.-]{0,127}$/i.test(id) || id.includes(\"..\"))\n throw new Error(`${op}(): \"${id}\" is not a valid document ID`);\n}, requireDocumentId = (op, doc) => {\n if (!doc._id)\n throw new Error(`${op}() requires that the document contains an ID (\"_id\" property)`);\n validateDocumentId(op, doc._id);\n}, validateDocumentType = (op, type) => {\n if (typeof type != \"string\")\n throw new Error(`\\`${op}()\\`: \\`${type}\\` is not a valid document type`);\n}, requireDocumentType = (op, doc) => {\n if (!doc._type)\n throw new Error(`\\`${op}()\\` requires that the document contains a type (\\`_type\\` property)`);\n validateDocumentType(op, doc._type);\n}, validateVersionIdMatch = (builtVersionId, document) => {\n if (document._id && document._id !== builtVersionId)\n throw new Error(\n `The provided document ID (\\`${document._id}\\`) does not match the generated version ID (\\`${builtVersionId}\\`)`\n );\n}, validateInsert = (at, selector, items) => {\n const signature = \"insert(at, selector, items)\";\n if (VALID_INSERT_LOCATIONS.indexOf(at) === -1) {\n const valid = VALID_INSERT_LOCATIONS.map((loc) => `\"${loc}\"`).join(\", \");\n throw new Error(`${signature} takes an \"at\"-argument which is one of: ${valid}`);\n }\n if (typeof selector != \"string\")\n throw new Error(`${signature} takes a \"selector\"-argument which must be a string`);\n if (!Array.isArray(items))\n throw new Error(`${signature} takes an \"items\"-argument which must be an array`);\n}, hasDataset = (config) => {\n if (!config.dataset)\n throw new Error(\"`dataset` must be provided to perform queries\");\n return config.dataset || \"\";\n}, requestTag = (tag) => {\n if (typeof tag != \"string\" || !/^[a-z0-9._-]{1,75}$/i.test(tag))\n throw new Error(\n \"Tag can only contain alphanumeric characters, underscores, dashes and dots, and be between one and 75 characters long.\"\n );\n return tag;\n}, resourceConfig = (config) => {\n if (!config[\"~experimental_resource\"])\n throw new Error(\"`resource` must be provided to perform resource queries\");\n const { type, id } = config[\"~experimental_resource\"];\n switch (type) {\n case \"dataset\": {\n if (id.split(\".\").length !== 2)\n throw new Error('Dataset resource ID must be in the format \"project.dataset\"');\n return;\n }\n case \"dashboard\":\n case \"media-library\":\n case \"canvas\":\n return;\n default:\n throw new Error(`Unsupported resource type: ${type.toString()}`);\n }\n}, resourceGuard = (service, config) => {\n if (config[\"~experimental_resource\"])\n throw new Error(`\\`${service}\\` does not support resource-based operations`);\n};\nfunction once(fn) {\n let didCall = !1, returnValue;\n return (...args) => (didCall || (returnValue = fn(...args), didCall = !0), returnValue);\n}\nconst createWarningPrinter = (message) => (\n // eslint-disable-next-line no-console\n once((...args) => console.warn(message.join(\" \"), ...args))\n), printCdnAndWithCredentialsWarning = createWarningPrinter([\n \"Because you set `withCredentials` to true, we will override your `useCdn`\",\n \"setting to be false since (cookie-based) credentials are never set on the CDN\"\n]), printCdnWarning = createWarningPrinter([\n \"Since you haven't set a value for `useCdn`, we will deliver content using our\",\n \"global, edge-cached API-CDN. If you wish to have content delivered faster, set\",\n \"`useCdn: false` to use the Live API. Note: You may incur higher costs using the live API.\"\n]), printCdnPreviewDraftsWarning = createWarningPrinter([\n \"The Sanity client is configured with the `perspective` set to `drafts` or `previewDrafts`, which doesn't support the API-CDN.\",\n \"The Live API will be used instead. Set `useCdn: false` in your configuration to hide this warning.\"\n]), printPreviewDraftsDeprecationWarning = createWarningPrinter([\n \"The `previewDrafts` perspective has been renamed to `drafts` and will be removed in a future API version\"\n]), printBrowserTokenWarning = createWarningPrinter([\n \"You have configured Sanity client to use a token in the browser. This may cause unintentional security issues.\",\n `See ${generateHelpUrl(\n \"js-client-browser-token\"\n )} for more information and how to hide this warning.`\n]), printCredentialedTokenWarning = createWarningPrinter([\n \"You have configured Sanity client to use a token, but also provided `withCredentials: true`.\",\n \"This is no longer supported - only token will be used - remove `withCredentials: true`.\"\n]), printNoApiVersionSpecifiedWarning = createWarningPrinter([\n \"Using the Sanity client without specifying an API version is deprecated.\",\n `See ${generateHelpUrl(\"js-client-api-version\")}`\n]), printNoDefaultExport = createWarningPrinter([\n \"The default export of @sanity/client has been deprecated. Use the named export `createClient` instead.\"\n]), defaultCdnHost = \"apicdn.sanity.io\", defaultConfig = {\n apiHost: \"https://api.sanity.io\",\n apiVersion: \"1\",\n useProjectHostname: !0,\n stega: { enabled: !1 }\n}, LOCALHOSTS = [\"localhost\", \"127.0.0.1\", \"0.0.0.0\"], isLocal = (host) => LOCALHOSTS.indexOf(host) !== -1;\nfunction validateApiVersion(apiVersion) {\n if (apiVersion === \"1\" || apiVersion === \"X\")\n return;\n const apiDate = new Date(apiVersion);\n if (!(/^\\d{4}-\\d{2}-\\d{2}$/.test(apiVersion) && apiDate instanceof Date && apiDate.getTime() > 0))\n throw new Error(\"Invalid API version string, expected `1` or date in format `YYYY-MM-DD`\");\n}\nfunction validateApiPerspective(perspective) {\n if (Array.isArray(perspective) && perspective.length > 1 && perspective.includes(\"raw\"))\n throw new TypeError(\n 'Invalid API perspective value: \"raw\". The raw-perspective can not be combined with other perspectives'\n );\n}\nconst initConfig = (config, prevConfig) => {\n const specifiedConfig = {\n ...prevConfig,\n ...config,\n stega: {\n ...typeof prevConfig.stega == \"boolean\" ? { enabled: prevConfig.stega } : prevConfig.stega || defaultConfig.stega,\n ...typeof config.stega == \"boolean\" ? { enabled: config.stega } : config.stega || {}\n }\n };\n specifiedConfig.apiVersion || printNoApiVersionSpecifiedWarning();\n const newConfig = {\n ...defaultConfig,\n ...specifiedConfig\n }, projectBased = newConfig.useProjectHostname && !newConfig[\"~experimental_resource\"];\n if (typeof Promise > \"u\") {\n const helpUrl = generateHelpUrl(\"js-client-promise-polyfill\");\n throw new Error(`No native Promise-implementation found, polyfill needed - see ${helpUrl}`);\n }\n if (projectBased && !newConfig.projectId)\n throw new Error(\"Configuration must contain `projectId`\");\n if (newConfig[\"~experimental_resource\"] && resourceConfig(newConfig), typeof newConfig.perspective < \"u\" && validateApiPerspective(newConfig.perspective), \"encodeSourceMap\" in newConfig)\n throw new Error(\n \"It looks like you're using options meant for '@sanity/preview-kit/client'. 'encodeSourceMap' is not supported in '@sanity/client'. Did you mean 'stega.enabled'?\"\n );\n if (\"encodeSourceMapAtPath\" in newConfig)\n throw new Error(\n \"It looks like you're using options meant for '@sanity/preview-kit/client'. 'encodeSourceMapAtPath' is not supported in '@sanity/client'. Did you mean 'stega.filter'?\"\n );\n if (typeof newConfig.stega.enabled != \"boolean\")\n throw new Error(`stega.enabled must be a boolean, received ${newConfig.stega.enabled}`);\n if (newConfig.stega.enabled && newConfig.stega.studioUrl === void 0)\n throw new Error(\"stega.studioUrl must be defined when stega.enabled is true\");\n if (newConfig.stega.enabled && typeof newConfig.stega.studioUrl != \"string\" && typeof newConfig.stega.studioUrl != \"function\")\n throw new Error(\n `stega.studioUrl must be a string or a function, received ${newConfig.stega.studioUrl}`\n );\n const isBrowser = typeof window < \"u\" && window.location && window.location.hostname, isLocalhost = isBrowser && isLocal(window.location.hostname), hasToken = !!newConfig.token;\n newConfig.withCredentials && hasToken && (printCredentialedTokenWarning(), newConfig.withCredentials = !1), isBrowser && isLocalhost && hasToken && newConfig.ignoreBrowserTokenWarning !== !0 ? printBrowserTokenWarning() : typeof newConfig.useCdn > \"u\" && printCdnWarning(), projectBased && projectId(newConfig.projectId), newConfig.dataset && dataset(newConfig.dataset), \"requestTagPrefix\" in newConfig && (newConfig.requestTagPrefix = newConfig.requestTagPrefix ? requestTag(newConfig.requestTagPrefix).replace(/\\.+$/, \"\") : void 0), newConfig.apiVersion = `${newConfig.apiVersion}`.replace(/^v/, \"\"), newConfig.isDefaultApi = newConfig.apiHost === defaultConfig.apiHost, newConfig.useCdn === !0 && newConfig.withCredentials && printCdnAndWithCredentialsWarning(), newConfig.useCdn = newConfig.useCdn !== !1 && !newConfig.withCredentials, validateApiVersion(newConfig.apiVersion);\n const hostParts = newConfig.apiHost.split(\"://\", 2), protocol = hostParts[0], host = hostParts[1], cdnHost = newConfig.isDefaultApi ? defaultCdnHost : host;\n return projectBased ? (newConfig.url = `${protocol}://${newConfig.projectId}.${host}/v${newConfig.apiVersion}`, newConfig.cdnUrl = `${protocol}://${newConfig.projectId}.${cdnHost}/v${newConfig.apiVersion}`) : (newConfig.url = `${newConfig.apiHost}/v${newConfig.apiVersion}`, newConfig.cdnUrl = newConfig.url), newConfig;\n};\nclass ConnectionFailedError extends Error {\n name = \"ConnectionFailedError\";\n}\nclass DisconnectError extends Error {\n name = \"DisconnectError\";\n reason;\n constructor(message, reason, options = {}) {\n super(message, options), this.reason = reason;\n }\n}\nclass ChannelError extends Error {\n name = \"ChannelError\";\n data;\n constructor(message, data) {\n super(message), this.data = data;\n }\n}\nclass MessageError extends Error {\n name = \"MessageError\";\n data;\n constructor(message, data, options = {}) {\n super(message, options), this.data = data;\n }\n}\nclass MessageParseError extends Error {\n name = \"MessageParseError\";\n}\nconst REQUIRED_EVENTS = [\"channelError\", \"disconnect\"];\nfunction connectEventSource(initEventSource, events) {\n return defer(() => {\n const es = initEventSource();\n return isObservable(es) ? es : of(es);\n }).pipe(mergeMap((es) => connectWithESInstance(es, events)));\n}\nfunction connectWithESInstance(es, events) {\n return new Observable((observer) => {\n const emitOpen = events.includes(\"open\"), emitReconnect = events.includes(\"reconnect\");\n function onError(evt) {\n if (\"data\" in evt) {\n const [parseError, event] = parseEvent(evt);\n observer.error(\n parseError ? new MessageParseError(\"Unable to parse EventSource error message\", { cause: event }) : new MessageError((event?.data).message, event)\n );\n return;\n }\n es.readyState === es.CLOSED ? observer.error(new ConnectionFailedError(\"EventSource connection failed\")) : emitReconnect && observer.next({ type: \"reconnect\" });\n }\n function onOpen() {\n observer.next({ type: \"open\" });\n }\n function onMessage(message) {\n const [parseError, event] = parseEvent(message);\n if (parseError) {\n observer.error(\n new MessageParseError(\"Unable to parse EventSource message\", { cause: parseError })\n );\n return;\n }\n if (message.type === \"channelError\") {\n const tag = new URL(es.url).searchParams.get(\"tag\");\n observer.error(new ChannelError(extractErrorMessage(event?.data, tag), event.data));\n return;\n }\n if (message.type === \"disconnect\") {\n observer.error(\n new DisconnectError(\n `Server disconnected client: ${event.data?.reason || \"unknown error\"}`\n )\n );\n return;\n }\n observer.next({\n type: message.type,\n id: message.lastEventId,\n ...event.data ? { data: event.data } : {}\n });\n }\n es.addEventListener(\"error\", onError), emitOpen && es.addEventListener(\"open\", onOpen);\n const cleanedEvents = [.../* @__PURE__ */ new Set([...REQUIRED_EVENTS, ...events])].filter((type) => type !== \"error\" && type !== \"open\" && type !== \"reconnect\");\n return cleanedEvents.forEach((type) => es.addEventListener(type, onMessage)), () => {\n es.removeEventListener(\"error\", onError), emitOpen && es.removeEventListener(\"open\", onOpen), cleanedEvents.forEach((type) => es.removeEventListener(type, onMessage)), es.close();\n };\n });\n}\nfunction parseEvent(message) {\n try {\n const data = typeof message.data == \"string\" && JSON.parse(message.data);\n return [\n null,\n {\n type: message.type,\n id: message.lastEventId,\n ...isEmptyObject(data) ? {} : { data }\n }\n ];\n } catch (err) {\n return [err, null];\n }\n}\nfunction extractErrorMessage(err, tag) {\n const error = err.error;\n return error ? isQueryParseError(error) ? formatQueryParseError(error, tag) : error.description ? error.description : typeof error == \"string\" ? error : JSON.stringify(error, null, 2) : err.message || \"Unknown listener error\";\n}\nfunction isEmptyObject(data) {\n for (const _ in data)\n return !1;\n return !0;\n}\nfunction getSelection(sel) {\n if (typeof sel == \"string\")\n return { id: sel };\n if (Array.isArray(sel))\n return { query: \"*[_id in $ids]\", params: { ids: sel } };\n if (typeof sel == \"object\" && sel !== null && \"query\" in sel && typeof sel.query == \"string\")\n return \"params\" in sel && typeof sel.params == \"object\" && sel.params !== null ? { query: sel.query, params: sel.params } : { query: sel.query };\n const selectionOpts = [\n \"* Document ID (<docId>)\",\n \"* Array of document IDs\",\n \"* Object containing `query`\"\n ].join(`\n`);\n throw new Error(`Unknown selection - must be one of:\n\n${selectionOpts}`);\n}\nclass BasePatch {\n selection;\n operations;\n constructor(selection, operations = {}) {\n this.selection = selection, this.operations = operations;\n }\n /**\n * Sets the given attributes to the document. Does NOT merge objects.\n * The operation is added to the current patch, ready to be commited by `commit()`\n *\n * @param attrs - Attributes to set. To set a deep attribute, use JSONMatch, eg: \\{\"nested.prop\": \"value\"\\}\n */\n set(attrs) {\n return this._assign(\"set\", attrs);\n }\n /**\n * Sets the given attributes to the document if they are not currently set. Does NOT merge objects.\n * The operation is added to the current patch, ready to be commited by `commit()`\n *\n * @param attrs - Attributes to set. To set a deep attribute, use JSONMatch, eg: \\{\"nested.prop\": \"value\"\\}\n */\n setIfMissing(attrs) {\n return this._assign(\"setIfMissing\", attrs);\n }\n /**\n * Performs a \"diff-match-patch\" operation on the string attributes provided.\n * The operation is added to the current patch, ready to be commited by `commit()`\n *\n * @param attrs - Attributes to perform operation on. To set a deep attribute, use JSONMatch, eg: \\{\"nested.prop\": \"dmp\"\\}\n */\n diffMatchPatch(attrs) {\n return validateObject(\"diffMatchPatch\", attrs), this._assign(\"diffMatchPatch\", attrs);\n }\n /**\n * Unsets the attribute paths provided.\n * The operation is added to the current patch, ready to be commited by `commit()`\n *\n * @param attrs - Attribute paths to unset.\n */\n unset(attrs) {\n if (!Array.isArray(attrs))\n throw new Error(\"unset(attrs) takes an array of attributes to unset, non-array given\");\n return this.operations = Object.assign({}, this.operations, { unset: attrs }), this;\n }\n /**\n * Increment a numeric value. Each entry in the argument is either an attribute or a JSON path. The value may be a positive or negative integer or floating-point value. The operation will fail if target value is not a numeric value, or doesn't exist.\n *\n * @param attrs - Object of attribute paths to increment, values representing the number to increment by.\n */\n inc(attrs) {\n return this._assign(\"inc\", attrs);\n }\n /**\n * Decrement a numeric value. Each entry in the argument is either an attribute or a JSON path. The value may be a positive or negative integer or floating-point value. The operation will fail if target value is not a numeric value, or doesn't exist.\n *\n * @param attrs - Object of attribute paths to decrement, values representing the number to decrement by.\n */\n dec(attrs) {\n return this._assign(\"dec\", attrs);\n }\n /**\n * Provides methods for modifying arrays, by inserting, appending and replacing elements via a JSONPath expression.\n *\n * @param at - Location to insert at, relative to the given selector, or 'replace' the matched path\n * @param selector - JSONPath expression, eg `comments[-1]` or `blocks[_key==\"abc123\"]`\n * @param items - Array of items to insert/replace\n */\n insert(at, selector, items) {\n return validateInsert(at, selector, items), this._assign(\"insert\", { [at]: selector, items });\n }\n /**\n * Append the given items to the array at the given JSONPath\n *\n * @param selector - Attribute/path to append to, eg `comments` or `person.hobbies`\n * @param items - Array of items to append to the array\n */\n append(selector, items) {\n return this.insert(\"after\", `${selector}[-1]`, items);\n }\n /**\n * Prepend the given items to the array at the given JSONPath\n *\n * @param selector - Attribute/path to prepend to, eg `comments` or `person.hobbies`\n * @param items - Array of items to prepend to the array\n */\n prepend(selector, items) {\n return this.insert(\"before\", `${selector}[0]`, items);\n }\n /**\n * Change the contents of an array by removing existing elements and/or adding new elements.\n *\n * @param selector - Attribute or JSONPath expression for array\n * @param start - Index at which to start changing the array (with origin 0). If greater than the length of the array, actual starting index will be set to the length of the array. If negative, will begin that many elements from the end of the array (with origin -1) and will be set to 0 if absolute value is greater than the length of the array.x\n * @param deleteCount - An integer indicating the number of old array elements to remove.\n * @param items - The elements to add to the array, beginning at the start index. If you don't specify any elements, splice() will only remove elements from the array.\n */\n splice(selector, start, deleteCount, items) {\n const delAll = typeof deleteCount > \"u\" || deleteCount === -1, startIndex = start < 0 ? start - 1 : start, delCount = delAll ? -1 : Math.max(0, start + deleteCount), delRange = startIndex < 0 && delCount >= 0 ? \"\" : delCount, rangeSelector = `${selector}[${startIndex}:${delRange}]`;\n return this.insert(\"replace\", rangeSelector, items || []);\n }\n /**\n * Adds a revision clause, preventing the document from being patched if the `_rev` property does not match the given value\n *\n * @param rev - Revision to lock the patch to\n */\n ifRevisionId(rev) {\n return this.operations.ifRevisionID = rev, this;\n }\n /**\n * Return a plain JSON representation of the patch\n */\n serialize() {\n return { ...getSelection(this.selection), ...this.operations };\n }\n /**\n * Return a plain JSON representation of the patch\n */\n toJSON() {\n return this.serialize();\n }\n /**\n * Clears the patch of all operations\n */\n reset() {\n return this.operations = {}, this;\n }\n _assign(op, props, merge2 = !0) {\n return validateObject(op, props), this.operations = Object.assign({}, this.operations, {\n [op]: Object.assign({}, merge2 && this.operations[op] || {}, props)\n }), this;\n }\n _set(op, props) {\n return this._assign(op, props, !1);\n }\n}\nclass ObservablePatch extends BasePatch {\n #client;\n constructor(selection, operations, client) {\n super(selection, operations), this.#client = client;\n }\n /**\n * Clones the patch\n */\n clone() {\n return new ObservablePatch(this.selection, { ...this.operations }, this.#client);\n }\n commit(options) {\n if (!this.#client)\n throw new Error(\n \"No `client` passed to patch, either provide one or pass the patch to a clients `mutate()` method\"\n );\n const returnFirst = typeof this.selection == \"string\", opts = Object.assign({ returnFirst, returnDocuments: !0 }, options);\n return this.#client.mutate({ patch: this.serialize() }, opts);\n }\n}\nclass Patch extends BasePatch {\n #client;\n constructor(selection, operations, client) {\n super(selection, operations), this.#client = client;\n }\n /**\n * Clones the patch\n */\n clone() {\n return new Patch(this.selection, { ...this.operations }, this.#client);\n }\n commit(options) {\n if (!this.#client)\n throw new Error(\n \"No `client` passed to patch, either provide one or pass the patch to a clients `mutate()` method\"\n );\n const returnFirst = typeof this.selection == \"string\", opts = Object.assign({ returnFirst, returnDocuments: !0 }, options);\n return this.#client.mutate({ patch: this.serialize() }, opts);\n }\n}\nconst defaultMutateOptions = { returnDocuments: !1 };\nclass BaseTransaction {\n operations;\n trxId;\n constructor(operations = [], transactionId) {\n this.operations = operations, this.trxId = transactionId;\n }\n /**\n * Creates a new Sanity document. If `_id` is provided and already exists, the mutation will fail. If no `_id` is given, one will automatically be generated by the database.\n * The operation is added to the current transaction, ready to be commited by `commit()`\n *\n * @param doc - Document to create. Requires a `_type` property.\n */\n create(doc) {\n return validateObject(\"create\", doc), this._add({ create: doc });\n }\n /**\n * Creates a new Sanity document. If a document with the same `_id` already exists, the create operation will be ignored.\n * The operation is added to the current transaction, ready to be commited by `commit()`\n *\n * @param doc - Document to create if it does not already exist. Requires `_id` and `_type` properties.\n */\n createIfNotExists(doc) {\n const op = \"createIfNotExists\";\n return validateObject(op, doc), requireDocumentId(op, doc), this._add({ [op]: doc });\n }\n /**\n * Creates a new Sanity document, or replaces an existing one if the same `_id` is already used.\n * The operation is added to the current transaction, ready to be commited by `commit()`\n *\n * @param doc - Document to create or replace. Requires `_id` and `_type` properties.\n */\n createOrReplace(doc) {\n const op = \"createOrReplace\";\n return validateObject(op, doc), requireDocumentId(op, doc), this._add({ [op]: doc });\n }\n /**\n * Deletes the document with the given document ID\n * The operation is added to the current transaction, ready to be commited by `commit()`\n *\n * @param documentId - Document ID to delete\n */\n delete(documentId) {\n return validateDocumentId(\"delete\", documentId), this._add({ delete: { id: documentId } });\n }\n transactionId(id) {\n return id ? (this.trxId = id, this) : this.trxId;\n }\n /**\n * Return a plain JSON representation of the transaction\n */\n serialize() {\n return [...this.operations];\n }\n /**\n * Return a plain JSON representation of the transaction\n */\n toJSON() {\n return this.serialize();\n }\n /**\n * Clears the transaction of all operations\n */\n reset() {\n return this.operations = [], this;\n }\n _add(mut) {\n return this.operations.push(mut), this;\n }\n}\nclass Transaction extends BaseTransaction {\n #client;\n constructor(operations, client, transactionId) {\n super(operations, transactionId), this.#client = client;\n }\n /**\n * Clones the transaction\n */\n clone() {\n return new Transaction([...this.operations], this.#client, this.trxId);\n }\n commit(options) {\n if (!this.#client)\n throw new Error(\n \"No `client` passed to transaction, either provide one or pass the transaction to a clients `mutate()` method\"\n );\n return this.#client.mutate(\n this.serialize(),\n Object.assign({ transactionId: this.trxId }, defaultMutateOptions, options || {})\n );\n }\n patch(patchOrDocumentId, patchOps) {\n const isBuilder = typeof patchOps == \"function\", isPatch = typeof patchOrDocumentId != \"string\" && patchOrDocumentId instanceof Patch, isMutationSelection = typeof patchOrDocumentId == \"object\" && (\"query\" in patchOrDocumentId || \"id\" in patchOrDocumentId);\n if (isPatch)\n return this._add({ patch: patchOrDocumentId.serialize() });\n if (isBuilder) {\n const patch = patchOps(new Patch(patchOrDocumentId, {}, this.#client));\n if (!(patch instanceof Patch))\n throw new Error(\"function passed to `patch()` must return the patch\");\n return this._add({ patch: patch.serialize() });\n }\n if (isMutationSelection) {\n const patch = new Patch(patchOrDocumentId, patchOps || {}, this.#client);\n return this._add({ patch: patch.serialize() });\n }\n return this._add({ patch: { id: patchOrDocumentId, ...patchOps } });\n }\n}\nclass ObservableTransaction extends BaseTransaction {\n #client;\n constructor(operations, client, transactionId) {\n super(operations, transactionId), this.#client = client;\n }\n /**\n * Clones the transaction\n */\n clone() {\n return new ObservableTransaction([...this.operations], this.#client, this.trxId);\n }\n commit(options) {\n if (!this.#client)\n throw new Error(\n \"No `client` passed to transaction, either provide one or pass the transaction to a clients `mutate()` method\"\n );\n return this.#client.mutate(\n this.serialize(),\n Object.assign({ transactionId: this.trxId }, defaultMutateOptions, options || {})\n );\n }\n patch(patchOrDocumentId, patchOps) {\n const isBuilder = typeof patchOps == \"function\";\n if (typeof patchOrDocumentId != \"string\" && patchOrDocumentId instanceof ObservablePatch)\n return this._add({ patch: patchOrDocumentId.serialize() });\n if (isBuilder) {\n const patch = patchOps(new ObservablePatch(patchOrDocumentId, {}, this.#client));\n if (!(patch instanceof ObservablePatch))\n throw new Error(\"function passed to `patch()` must return the patch\");\n return this._add({ patch: patch.serialize() });\n }\n return this._add({ patch: { id: patchOrDocumentId, ...patchOps } });\n }\n}\nconst projectHeader = \"X-Sanity-Project-ID\";\nfunction requestOptions(config, overrides = {}) {\n const headers = {};\n config.headers && Object.assign(headers, config.headers);\n const token = overrides.token || config.token;\n token && (headers.Authorization = `Bearer ${token}`), !overrides.useGlobalApi && !config.useProjectHostname && config.projectId && (headers[projectHeader] = config.projectId);\n const withCredentials = !!(typeof overrides.withCredentials > \"u\" ? config.withCredentials : overrides.withCredentials), timeout = typeof overrides.timeout > \"u\" ? config.timeout : overrides.timeout;\n return Object.assign({}, overrides, {\n headers: Object.assign({}, headers, overrides.headers || {}),\n timeout: typeof timeout > \"u\" ? 5 * 60 * 1e3 : timeout,\n proxy: overrides.proxy || config.proxy,\n json: !0,\n withCredentials,\n fetch: typeof overrides.fetch == \"object\" && typeof config.fetch == \"object\" ? { ...config.fetch, ...overrides.fetch } : overrides.fetch || config.fetch\n });\n}\nconst encodeQueryString = ({\n query,\n params = {},\n options = {}\n}) => {\n const searchParams = new URLSearchParams(), { tag, includeMutations, returnQuery, ...opts } = options;\n tag && searchParams.append(\"tag\", tag), searchParams.append(\"query\", query);\n for (const [key, value] of Object.entries(params))\n value !== void 0 && searchParams.append(`$${key}`, JSON.stringify(value));\n for (const [key, value] of Object.entries(opts))\n value && searchParams.append(key, `${value}`);\n return returnQuery === !1 && searchParams.append(\"returnQuery\", \"false\"), includeMutations === !1 && searchParams.append(\"includeMutations\", \"false\"), `?${searchParams}`;\n}, excludeFalsey = (param, defValue) => param === !1 ? void 0 : typeof param > \"u\" ? defValue : param, getMutationQuery = (options = {}) => ({\n dryRun: options.dryRun,\n returnIds: !0,\n returnDocuments: excludeFalsey(options.returnDocuments, !0),\n visibility: options.visibility || \"sync\",\n autoGenerateArrayKeys: options.autoGenerateArrayKeys,\n skipCrossDatasetReferenceValidation: options.skipCrossDatasetReferenceValidation\n}), isResponse = (event) => event.type === \"response\", getBody = (event) => event.body, indexBy = (docs, attr) => docs.reduce((indexed, doc) => (indexed[attr(doc)] = doc, indexed), /* @__PURE__ */ Object.create(null)), getQuerySizeLimit = 11264;\nfunction _fetch(client, httpRequest, _stega, query, _params = {}, options = {}) {\n const stega = \"stega\" in options ? {\n ..._stega || {},\n ...typeof options.stega == \"boolean\" ? { enabled: options.stega } : options.stega || {}\n } : _stega, params = stega.enabled ? stegaClean(_params) : _params, mapResponse = options.filterResponse === !1 ? (res) => res : (res) => res.result, { cache, next, ...opts } = {\n // Opt out of setting a `signal` on an internal `fetch` if one isn't provided.\n // This is necessary in React Server Components to avoid opting out of Request Memoization.\n useAbortSignal: typeof options.signal < \"u\",\n // Set `resultSourceMap' when stega is enabled, as it's required for encoding.\n resultSourceMap: stega.enabled ? \"withKeyArraySelector\" : options.resultSourceMap,\n ...options,\n // Default to not returning the query, unless `filterResponse` is `false`,\n // or `returnQuery` is explicitly set. `true` is the default in Content Lake, so skip if truthy\n returnQuery: options.filterResponse === !1 && options.returnQuery !== !1\n }, reqOpts = typeof cache < \"u\" || typeof next < \"u\" ? { ...opts, fetch: { cache, next } } : opts, $request = _dataRequest(client, httpRequest, \"query\", { query, params }, reqOpts);\n return stega.enabled ? $request.pipe(\n combineLatestWith(\n from(\n import(\"./_chunks-es/stegaEncodeSourceMap.js\").then(function(n) {\n return n.stegaEncodeSourceMap$1;\n }).then(\n ({ stegaEncodeSourceMap }) => stegaEncodeSourceMap\n )\n )\n ),\n map(\n ([res, stegaEncodeSourceMap]) => {\n const result = stegaEncodeSourceMap(res.result, res.resultSourceMap, stega);\n return mapResponse({ ...res, result });\n }\n )\n ) : $request.pipe(map(mapResponse));\n}\nfunction _getDocument(client, httpRequest, id, opts = {}) {\n const docId = (() => {\n if (!opts.releaseId)\n return id;\n const versionId = getVersionFromId(id);\n if (!versionId) {\n if (isDraftId(id))\n throw new Error(\n `The document ID (\\`${id}\\`) is a draft, but \\`options.releaseId\\` is set as \\`${opts.releaseId}\\``\n );\n return getVersionId(id, opts.releaseId);\n }\n if (versionId !== opts.releaseId)\n throw new Error(\n `The document ID (\\`${id}\\`) is already a version of \\`${versionId}\\` release, but this does not match the provided \\`options.releaseId\\` (\\`${opts.releaseId}\\`)`\n );\n return id;\n })(), options = {\n uri: _getDataUrl(client, \"doc\", docId),\n json: !0,\n tag: opts.tag,\n signal: opts.signal\n };\n return _requestObservable(client, httpRequest, options).pipe(\n filter(isResponse),\n map((event) => event.body.documents && event.body.documents[0])\n );\n}\nfunction _getDocuments(client, httpRequest, ids, opts = {}) {\n const options = {\n uri: _getDataUrl(client, \"doc\", ids.join(\",\")),\n json: !0,\n tag: opts.tag,\n signal: opts.signal\n };\n return _requestObservable(client, httpRequest, options).pipe(\n filter(isResponse),\n map((event) => {\n const indexed = indexBy(event.body.documents || [], (doc) => doc._id);\n return ids.map((id) => indexed[id] || null);\n })\n );\n}\nfunction _getReleaseDocuments(client, httpRequest, releaseId, opts = {}) {\n return _dataRequest(\n client,\n httpRequest,\n \"query\",\n {\n query: \"*[sanity::partOfRelease($releaseId)]\",\n params: {\n releaseId\n }\n },\n opts\n );\n}\nfunction _createIfNotExists(client, httpRequest, doc, options) {\n return requireDocumentId(\"createIfNotExists\", doc), _create(client, httpRequest, doc, \"createIfNotExists\", options);\n}\nfunction _createOrReplace(client, httpRequest, doc, options) {\n return requireDocumentId(\"createOrReplace\", doc), _create(client, httpRequest, doc, \"createOrReplace\", options);\n}\nfunction _createVersion(client, httpRequest, doc, publishedId, options) {\n return requireDocumentId(\"createVersion\", doc), requireDocumentType(\"createVersion\", doc), _action(client, httpRequest, {\n actionType: \"sanity.action.document.version.create\",\n publishedId,\n document: doc\n }, options);\n}\nfunction _delete(client, httpRequest, selection, options) {\n return _dataRequest(\n client,\n httpRequest,\n \"mutate\",\n { mutations: [{ delete: getSelection(selection) }] },\n options\n );\n}\nfunction _discardVersion(client, httpRequest, versionId, purge = !1, options) {\n return _action(client, httpRequest, {\n actionType: \"sanity.action.document.version.discard\",\n versionId,\n purge\n }, options);\n}\nfunction _replaceVersion(client, httpRequest, doc, options) {\n return requireDocumentId(\"replaceVersion\", doc), requireDocumentType(\"replaceVersion\", doc), _action(client, httpRequest, {\n actionType: \"sanity.action.document.version.replace\",\n document: doc\n }, options);\n}\nfunction _unpublishVersion(client, httpRequest, versionId, publishedId, options) {\n return _action(client, httpRequest, {\n actionType: \"sanity.action.document.version.unpublish\",\n versionId,\n publishedId\n }, options);\n}\nfunction _mutate(client, httpRequest, mutations, options) {\n let mut;\n mutations instanceof Patch || mutations instanceof ObservablePatch ? mut = { patch: mutations.serialize() } : mutations instanceof Transaction || mutations instanceof ObservableTransaction ? mut = mutations.serialize() : mut = mutations;\n const muts = Array.isArray(mut) ? mut : [mut], transactionId = options && options.transactionId || void 0;\n return _dataRequest(client, httpRequest, \"mutate\", { mutations: muts, transactionId }, options);\n}\nfunction _action(client, httpRequest, actions, options) {\n const acts = Array.isArray(actions) ? actions : [actions], transactionId = options && options.transactionId || void 0, skipCrossDatasetReferenceValidation = options && options.skipCrossDatasetReferenceValidation || void 0, dryRun = options && options.dryRun || void 0;\n return _dataRequest(\n client,\n httpRequest,\n \"actions\",\n { actions: acts, transactionId, skipCrossDatasetReferenceValidation, dryRun },\n options\n );\n}\nfunction _dataRequest(client, httpRequest, endpoint, body, options = {}) {\n const isMutation = endpoint === \"mutate\", isAction = endpoint === \"actions\", isQuery2 = endpoint === \"query\", strQuery = isMutation || isAction ? \"\" : encodeQueryString(body), useGet = !isMutation && !isAction && strQuery.length < getQuerySizeLimit, stringQuery = useGet ? strQuery : \"\", returnFirst = options.returnFirst, { timeout, token, tag, headers, returnQuery, lastLiveEventId, cacheMode } = options, uri = _getDataUrl(client, endpoint, stringQuery), reqOptions = {\n method: useGet ? \"GET\" : \"POST\",\n uri,\n json: !0,\n body: useGet ? void 0 : body,\n query: isMutation && getMutationQuery(options),\n timeout,\n headers,\n token,\n tag,\n returnQuery,\n perspective: options.perspective,\n resultSourceMap: options.resultSourceMap,\n lastLiveEventId: Array.isArray(lastLiveEventId) ? lastLiveEventId[0] : lastLiveEventId,\n cacheMode,\n canUseCdn: isQuery2,\n signal: options.signal,\n fetch: options.fetch,\n useAbortSignal: options.useAbortSignal,\n useCdn: options.useCdn\n };\n return _requestObservable(client, httpRequest, reqOptions).pipe(\n filter(isResponse),\n map(getBody),\n map((res) => {\n if (!isMutation)\n return res;\n const results = res.results || [];\n if (options.returnDocuments)\n return returnFirst ? results[0] && results[0].document : results.map((mut) => mut.document);\n const key = returnFirst ? \"documentId\" : \"documentIds\", ids = returnFirst ? results[0] && results[0].id : results.map((mut) => mut.id);\n return {\n transactionId: res.transactionId,\n results,\n [key]: ids\n };\n })\n );\n}\nfunction _create(client, httpRequest, doc, op, options = {}) {\n const mutation = { [op]: doc }, opts = Object.assign({ returnFirst: !0, returnDocuments: !0 }, options);\n return _dataRequest(client, httpRequest, \"mutate\", { mutations: [mutation] }, opts);\n}\nconst hasDataConfig = (client) => client.config().dataset !== void 0 && client.config().projectId !== void 0 || client.config()[\"~experimental_resource\"] !== void 0, isQuery = (client, uri) => hasDataConfig(client) && uri.startsWith(_getDataUrl(client, \"query\")), isMutate = (client, uri) => hasDataConfig(client) && uri.startsWith(_getDataUrl(client, \"mutate\")), isDoc = (client, uri) => hasDataConfig(client) && uri.startsWith(_getDataUrl(client, \"doc\", \"\")), isListener = (client, uri) => hasDataConfig(client) && uri.startsWith(_getDataUrl(client, \"listen\")), isHistory = (client, uri) => hasDataConfig(client) && uri.startsWith(_getDataUrl(client, \"history\", \"\")), isData = (client, uri) => uri.startsWith(\"/data/\") || isQuery(client, uri) || isMutate(client, uri) || isDoc(client, uri) || isListener(client, uri) || isHistory(client, uri);\nfunction _requestObservable(client, httpRequest, options) {\n const uri = options.url || options.uri, config = client.config(), canUseCdn = typeof options.canUseCdn > \"u\" ? [\"GET\", \"HEAD\"].indexOf(options.method || \"GET\") >= 0 && isData(client, uri) : options.canUseCdn;\n let useCdn = (options.useCdn ?? config.useCdn) && canUseCdn;\n const tag = options.tag && config.requestTagPrefix ? [config.requestTagPrefix, options.tag].join(\".\") : options.tag || config.requestTagPrefix;\n if (tag && options.tag !== null && (options.query = { tag: requestTag(tag), ...options.query }), [\"GET\", \"HEAD\", \"POST\"].indexOf(options.method || \"GET\") >= 0 && isQuery(client, uri)) {\n const resultSourceMap = options.resultSourceMap ?? config.resultSourceMap;\n resultSourceMap !== void 0 && resultSourceMap !== !1 && (options.query = { resultSourceMap, ...options.query });\n const perspectiveOption = options.perspective || config.perspective;\n typeof perspectiveOption < \"u\" && (perspectiveOption === \"previewDrafts\" && printPreviewDraftsDeprecationWarning(), validateApiPerspective(perspectiveOption), options.query = {\n perspective: Array.isArray(perspectiveOption) ? perspectiveOption.join(\",\") : perspectiveOption,\n ...options.query\n }, (Array.isArray(perspectiveOption) && perspectiveOption.length > 0 || // previewDrafts was renamed to drafts, but keep for backwards compat\n perspectiveOption === \"previewDrafts\" || perspectiveOption === \"drafts\") && useCdn && (useCdn = !1, printCdnPreviewDraftsWarning())), options.lastLiveEventId && (options.query = { ...options.query, lastLiveEventId: options.lastLiveEventId }), options.returnQuery === !1 && (options.query = { returnQuery: \"false\", ...options.query }), useCdn && options.cacheMode == \"noStale\" && (options.query = { cacheMode: \"noStale\", ...options.query });\n }\n const reqOptions = requestOptions(\n config,\n Object.assign({}, options, {\n url: _getUrl(client, uri, useCdn)\n })\n ), request = new Observable(\n (subscriber) => httpRequest(reqOptions, config.requester).subscribe(subscriber)\n );\n return options.signal ? request.pipe(_withAbortSignal(options.signal)) : request;\n}\nfunction _request(client, httpRequest, options) {\n return _requestObservable(client, httpRequest, options).pipe(\n filter((event) => event.type === \"response\"),\n map((event) => event.body)\n );\n}\nfunction _getDataUrl(client, operation, path) {\n const config = client.config();\n if (config[\"~experimental_resource\"]) {\n resourceConfig(config);\n const resourceBase = resourceDataBase(config), uri2 = path !== void 0 ? `${operation}/${path}` : operation;\n return `${resourceBase}/${uri2}`.replace(/\\/($|\\?)/, \"$1\");\n }\n const catalog = hasDataset(config), baseUri = `/${operation}/${catalog}`;\n return `/data${path !== void 0 ? `${baseUri}/${path}` : baseUri}`.replace(/\\/($|\\?)/, \"$1\");\n}\nfunction _getUrl(client, uri, canUseCdn = !1) {\n const { url, cdnUrl } = client.config();\n return `${canUseCdn ? cdnUrl : url}/${uri.replace(/^\\//, \"\")}`;\n}\nfunction _withAbortSignal(signal) {\n return (input) => new Observable((observer) => {\n const abort = () => observer.error(_createAbortError(signal));\n if (signal && signal.aborted) {\n abort();\n return;\n }\n const subscription = input.subscribe(observer);\n return signal.addEventListener(\"abort\", abort), () => {\n signal.removeEventListener(\"abort\", abort), subscription.unsubscribe();\n };\n });\n}\nconst isDomExceptionSupported = !!globalThis.DOMException;\nfunction _createAbortError(signal) {\n if (isDomExceptionSupported)\n return new DOMException(signal?.reason ?? \"The operation was aborted.\", \"AbortError\");\n const error = new Error(signal?.reason ?? \"The operation was aborted.\");\n return error.name = \"AbortError\", error;\n}\nconst resourceDataBase = (config) => {\n if (!config[\"~experimental_resource\"])\n throw new Error(\"`resource` must be provided to perform resource queries\");\n const { type, id } = config[\"~experimental_resource\"];\n switch (type) {\n case \"dataset\": {\n const segments = id.split(\".\");\n if (segments.length !== 2)\n throw new Error('Dataset ID must be in the format \"project.dataset\"');\n return `/projects/${segments[0]}/datasets/${segments[1]}`;\n }\n case \"canvas\":\n return `/canvases/${id}`;\n case \"media-library\":\n return `/media-libraries/${id}`;\n case \"dashboard\":\n return `/dashboards/${id}`;\n default:\n throw new Error(`Unsupported resource type: ${type.toString()}`);\n }\n};\nfunction _generate(client, httpRequest, request) {\n const dataset2 = hasDataset(client.config());\n return _request(client, httpRequest, {\n method: \"POST\",\n uri: `/agent/action/generate/${dataset2}`,\n body: request\n });\n}\nfunction _patch(client, httpRequest, request) {\n const dataset2 = hasDataset(client.config());\n return _request(client, httpRequest, {\n method: \"POST\",\n uri: `/agent/action/patch/${dataset2}`,\n body: request\n });\n}\nfunction _prompt(client, httpRequest, request) {\n const dataset2 = hasDataset(client.config());\n return _request(client, httpRequest, {\n method: \"POST\",\n uri: `/agent/action/prompt/${dataset2}`,\n body: request\n });\n}\nfunction _transform(client, httpRequest, request) {\n const dataset2 = hasDataset(client.config());\n return _request(client, httpRequest, {\n method: \"POST\",\n uri: `/agent/action/transform/${dataset2}`,\n body: request\n });\n}\nfunction _translate(client, httpRequest, request) {\n const dataset2 = hasDataset(client.config());\n return _request(client, httpRequest, {\n method: \"POST\",\n uri: `/agent/action/translate/${dataset2}`,\n body: request\n });\n}\nclass ObservableAgentsActionClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * Run an instruction to generate content in a target document.\n * @param request - instruction request\n */\n generate(request) {\n return _generate(this.#client, this.#httpRequest, request);\n }\n /**\n * Transform a target document based on a source.\n * @param request - translation request\n */\n transform(request) {\n return _transform(this.#client, this.#httpRequest, request);\n }\n /**\n * Translate a target document based on a source.\n * @param request - translation request\n */\n translate(request) {\n return _translate(this.#client, this.#httpRequest, request);\n }\n}\nclass AgentActionsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * Run an instruction to generate content in a target document.\n * @param request - instruction request\n */\n generate(request) {\n return lastValueFrom(_generate(this.#client, this.#httpRequest, request));\n }\n /**\n * Transform a target document based on a source.\n * @param request - translation request\n */\n transform(request) {\n return lastValueFrom(_transform(this.#client, this.#httpRequest, request));\n }\n /**\n * Translate a target document based on a source.\n * @param request - translation request\n */\n translate(request) {\n return lastValueFrom(_translate(this.#client, this.#httpRequest, request));\n }\n /**\n * Run a raw instruction and return the result either as text or json\n * @param request - prompt request\n */\n prompt(request) {\n return lastValueFrom(_prompt(this.#client, this.#httpRequest, request));\n }\n /**\n * Patch a document using a schema aware API.\n * Does not use an LLM, but uses the schema to ensure paths and values matches the schema.\n * @param request - instruction request\n */\n patch(request) {\n return lastValueFrom(_patch(this.#client, this.#httpRequest, request));\n }\n}\nclass ObservableAssetsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n upload(assetType, body, options) {\n return _upload(this.#client, this.#httpRequest, assetType, body, options);\n }\n}\nclass AssetsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n upload(assetType, body, options) {\n const observable2 = _upload(this.#client, this.#httpRequest, assetType, body, options);\n return lastValueFrom(\n observable2.pipe(\n filter((event) => event.type === \"response\"),\n map(\n (event) => event.body.document\n )\n )\n );\n }\n}\nfunction _upload(client, httpRequest, assetType, body, opts = {}) {\n validateAssetType(assetType);\n let meta = opts.extract || void 0;\n meta && !meta.length && (meta = [\"none\"]);\n const config = client.config(), options = optionsFromFile(opts, body), { tag, label, title, description, creditLine, filename, source } = options, query = {\n label,\n title,\n description,\n filename,\n meta,\n creditLine\n };\n return source && (query.sourceId = source.id, query.sourceName = source.name, query.sourceUrl = source.url), _requestObservable(client, httpRequest, {\n tag,\n method: \"POST\",\n timeout: options.timeout || 0,\n uri: buildAssetUploadUrl(config, assetType),\n headers: options.contentType ? { \"Content-Type\": options.contentType } : {},\n query,\n body\n });\n}\nfunction buildAssetUploadUrl(config, assetType) {\n const assetTypeEndpoint = assetType === \"image\" ? \"images\" : \"files\";\n if (config[\"~experimental_resource\"]) {\n const { type, id } = config[\"~experimental_resource\"];\n switch (type) {\n case \"dataset\":\n throw new Error(\n \"Assets are not supported for dataset resources, yet. Configure the client with `{projectId: <projectId>, dataset: <datasetId>}` instead.\"\n );\n case \"canvas\":\n return `/canvases/${id}/assets/${assetTypeEndpoint}`;\n case \"media-library\":\n return `/media-libraries/${id}/upload`;\n case \"dashboard\":\n return `/dashboards/${id}/assets/${assetTypeEndpoint}`;\n default:\n throw new Error(`Unsupported resource type: ${type.toString()}`);\n }\n }\n const dataset2 = hasDataset(config);\n return `assets/${assetTypeEndpoint}/${dataset2}`;\n}\nfunction optionsFromFile(opts, file) {\n return typeof File > \"u\" || !(file instanceof File) ? opts : Object.assign(\n {\n filename: opts.preserveFilename === !1 ? void 0 : file.name,\n contentType: file.type\n },\n opts\n );\n}\nvar defaults = (obj, defaults2) => Object.keys(defaults2).concat(Object.keys(obj)).reduce((target, prop) => (target[prop] = typeof obj[prop] > \"u\" ? defaults2[prop] : obj[prop], target), {});\nconst pick = (obj, props) => props.reduce((selection, prop) => (typeof obj[prop] > \"u\" || (selection[prop] = obj[prop]), selection), {}), eventSourcePolyfill = defer(() => import(\"@sanity/eventsource\")).pipe(\n map(({ default: EventSource2 }) => EventSource2),\n shareReplay(1)\n);\nfunction reconnectOnConnectionFailure() {\n return function(source) {\n return source.pipe(\n catchError((err, caught) => err instanceof ConnectionFailedError ? concat(of({ type: \"reconnect\" }), timer(1e3).pipe(mergeMap(() => caught))) : throwError(() => err))\n );\n };\n}\nconst MAX_URL_LENGTH = 14800, possibleOptions = [\n \"includePreviousRevision\",\n \"includeResult\",\n \"includeMutations\",\n \"includeAllVersions\",\n \"visibility\",\n \"effectFormat\",\n \"tag\"\n], defaultOptions = {\n includeResult: !0\n};\nfunction _listen(query, params, opts = {}) {\n const { url, token, withCredentials, requestTagPrefix, headers: configHeaders } = this.config(), tag = opts.tag && requestTagPrefix ? [requestTagPrefix, opts.tag].join(\".\") : opts.tag, options = { ...defaults(opts, defaultOptions), tag }, listenOpts = pick(options, possibleOptions), qs = encodeQueryString({ query, params, options: { tag, ...listenOpts } }), uri = `${url}${_getDataUrl(this, \"listen\", qs)}`;\n if (uri.length > MAX_URL_LENGTH)\n return throwError(() => new Error(\"Query too large for listener\"));\n const listenFor = options.events ? options.events : [\"mutation\"], esOptions = {};\n return withCredentials && (esOptions.withCredentials = !0), (token || configHeaders) && (esOptions.headers = {}, token && (esOptions.headers.Authorization = `Bearer ${token}`), configHeaders && Object.assign(esOptions.headers, configHeaders)), connectEventSource(() => (\n // use polyfill if there is no global EventSource or if we need to set headers\n (typeof EventSource > \"u\" || esOptions.headers ? eventSourcePolyfill : of(EventSource)).pipe(map((EventSource2) => new EventSource2(uri, esOptions)))\n ), listenFor).pipe(\n reconnectOnConnectionFailure(),\n filter((event) => listenFor.includes(event.type)),\n map(\n (event) => ({\n type: event.type,\n ...\"data\" in event ? event.data : {}\n })\n )\n );\n}\nfunction shareReplayLatest(configOrPredicate, config) {\n return _shareReplayLatest(\n typeof configOrPredicate == \"function\" ? { predicate: configOrPredicate, ...config } : configOrPredicate\n );\n}\nfunction _shareReplayLatest(config) {\n return (source) => {\n let latest, emitted = !1;\n const { predicate, ...shareConfig } = config, wrapped = source.pipe(\n tap((value) => {\n config.predicate(value) && (emitted = !0, latest = value);\n }),\n finalize(() => {\n emitted = !1, latest = void 0;\n }),\n share(shareConfig)\n ), emitLatest = new Observable((subscriber) => {\n emitted && subscriber.next(\n // this cast is safe because of the emitted check which asserts that we got T from the source\n latest\n ), subscriber.complete();\n });\n return merge(wrapped, emitLatest);\n };\n}\nconst requiredApiVersion = \"2021-03-25\";\nclass LiveClient {\n #client;\n constructor(client) {\n this.#client = client;\n }\n /**\n * Requires `apiVersion` to be `2021-03-25` or later.\n */\n events({\n includeDrafts = !1,\n tag: _tag\n } = {}) {\n resourceGuard(\"live\", this.#client.config());\n const {\n projectId: projectId2,\n apiVersion: _apiVersion,\n token,\n withCredentials,\n requestTagPrefix,\n headers: configHeaders\n } = this.#client.config(), apiVersion = _apiVersion.replace(/^v/, \"\");\n if (apiVersion !== \"X\" && apiVersion < requiredApiVersion)\n throw new Error(\n `The live events API requires API version ${requiredApiVersion} or later. The current API version is ${apiVersion}. Please update your API version to use this feature.`\n );\n if (includeDrafts && !token && !withCredentials)\n throw new Error(\n \"The live events API requires a token or withCredentials when 'includeDrafts: true'. Please update your client configuration. The token should have the lowest possible access role.\"\n );\n const path = _getDataUrl(this.#client, \"live/events\"), url = new URL(this.#client.getUrl(path, !1)), tag = _tag && requestTagPrefix ? [requestTagPrefix, _tag].join(\".\") : _tag;\n tag && url.searchParams.set(\"tag\", tag), includeDrafts && url.searchParams.set(\"includeDrafts\", \"true\");\n const esOptions = {};\n includeDrafts && withCredentials && (esOptions.withCredentials = !0), (includeDrafts && token || configHeaders) && (esOptions.headers = {}, includeDrafts && token && (esOptions.headers.Authorization = `Bearer ${token}`), configHeaders && Object.assign(esOptions.headers, configHeaders));\n const key = `${url.href}::${JSON.stringify(esOptions)}`, existing = eventsCache.get(key);\n if (existing)\n return existing;\n const events = connectEventSource(() => (\n // use polyfill if there is no global EventSource or if we need to set headers\n (typeof EventSource > \"u\" || esOptions.headers ? eventSourcePolyfill : of(EventSource)).pipe(map((EventSource2) => new EventSource2(url.href, esOptions)))\n ), [\n \"message\",\n \"restart\",\n \"welcome\",\n \"reconnect\",\n \"goaway\"\n ]).pipe(\n reconnectOnConnectionFailure(),\n map((event) => {\n if (event.type === \"message\") {\n const { data, ...rest } = event;\n return { ...rest, tags: data.tags };\n }\n return event;\n })\n ), checkCors = fetchObservable(url, {\n method: \"OPTIONS\",\n mode: \"cors\",\n credentials: esOptions.withCredentials ? \"include\" : \"omit\",\n headers: esOptions.headers\n }).pipe(\n mergeMap(() => EMPTY),\n catchError(() => {\n throw new CorsOriginError({ projectId: projectId2 });\n })\n ), observable2 = concat(checkCors, events).pipe(\n finalize$1(() => eventsCache.delete(key)),\n shareReplayLatest({\n predicate: (event) => event.type === \"welcome\"\n })\n );\n return eventsCache.set(key, observable2), observable2;\n }\n}\nfunction fetchObservable(url, init) {\n return new Observable((observer) => {\n const controller = new AbortController(), signal = controller.signal;\n return fetch(url, { ...init, signal: controller.signal }).then(\n (response) => {\n observer.next(response), observer.complete();\n },\n (err) => {\n signal.aborted || observer.error(err);\n }\n ), () => controller.abort();\n });\n}\nconst eventsCache = /* @__PURE__ */ new Map();\nclass ObservableDatasetsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * Create a new dataset with the given name\n *\n * @param name - Name of the dataset to create\n * @param options - Options for the dataset\n */\n create(name, options) {\n return _modify(this.#client, this.#httpRequest, \"PUT\", name, options);\n }\n /**\n * Edit a dataset with the given name\n *\n * @param name - Name of the dataset to edit\n * @param options - New options for the dataset\n */\n edit(name, options) {\n return _modify(this.#client, this.#httpRequest, \"PATCH\", name, options);\n }\n /**\n * Delete a dataset with the given name\n *\n * @param name - Name of the dataset to delete\n */\n delete(name) {\n return _modify(this.#client, this.#httpRequest, \"DELETE\", name);\n }\n /**\n * Fetch a list of datasets for the configured project\n */\n list() {\n return _request(this.#client, this.#httpRequest, {\n uri: \"/datasets\",\n tag: null\n });\n }\n}\nclass DatasetsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * Create a new dataset with the given name\n *\n * @param name - Name of the dataset to create\n * @param options - Options for the dataset\n */\n create(name, options) {\n return resourceGuard(\"dataset\", this.#client.config()), lastValueFrom(\n _modify(this.#client, this.#httpRequest, \"PUT\", name, options)\n );\n }\n /**\n * Edit a dataset with the given name\n *\n * @param name - Name of the dataset to edit\n * @param options - New options for the dataset\n */\n edit(name, options) {\n return resourceGuard(\"dataset\", this.#client.config()), lastValueFrom(\n _modify(this.#client, this.#httpRequest, \"PATCH\", name, options)\n );\n }\n /**\n * Delete a dataset with the given name\n *\n * @param name - Name of the dataset to delete\n */\n delete(name) {\n return resourceGuard(\"dataset\", this.#client.config()), lastValueFrom(_modify(this.#client, this.#httpRequest, \"DELETE\", name));\n }\n /**\n * Fetch a list of datasets for the configured project\n */\n list() {\n return resourceGuard(\"dataset\", this.#client.config()), lastValueFrom(\n _request(this.#client, this.#httpRequest, { uri: \"/datasets\", tag: null })\n );\n }\n}\nfunction _modify(client, httpRequest, method, name, options) {\n return resourceGuard(\"dataset\", client.config()), dataset(name), _request(client, httpRequest, {\n method,\n uri: `/datasets/${name}`,\n body: options,\n tag: null\n });\n}\nclass ObservableProjectsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n list(options) {\n resourceGuard(\"projects\", this.#client.config());\n const uri = options?.includeMembers === !1 ? \"/projects?includeMembers=false\" : \"/projects\";\n return _request(this.#client, this.#httpRequest, { uri });\n }\n /**\n * Fetch a project by project ID\n *\n * @param projectId - ID of the project to fetch\n */\n getById(projectId2) {\n return resourceGuard(\"projects\", this.#client.config()), _request(this.#client, this.#httpRequest, { uri: `/projects/${projectId2}` });\n }\n}\nclass ProjectsClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n list(options) {\n resourceGuard(\"projects\", this.#client.config());\n const uri = options?.includeMembers === !1 ? \"/projects?includeMembers=false\" : \"/projects\";\n return lastValueFrom(_request(this.#client, this.#httpRequest, { uri }));\n }\n /**\n * Fetch a project by project ID\n *\n * @param projectId - ID of the project to fetch\n */\n getById(projectId2) {\n return resourceGuard(\"projects\", this.#client.config()), lastValueFrom(\n _request(this.#client, this.#httpRequest, { uri: `/projects/${projectId2}` })\n );\n }\n}\nconst generateReleaseId = customAlphabet(\n \"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\",\n 8\n), getDocumentVersionId = (publishedId, releaseId) => releaseId ? getVersionId(publishedId, releaseId) : getDraftId(publishedId);\nfunction deriveDocumentVersionId(op, {\n releaseId,\n publishedId,\n document\n}) {\n if (publishedId && document._id) {\n const versionId = getDocumentVersionId(publishedId, releaseId);\n return validateVersionIdMatch(versionId, document), versionId;\n }\n if (document._id) {\n const isDraft = isDraftId(document._id), isVersion = isVersionId(document._id);\n if (!isDraft && !isVersion)\n throw new Error(\n `\\`${op}()\\` requires a document with an \\`_id\\` that is a version or draft ID`\n );\n if (releaseId) {\n if (isDraft)\n throw new Error(\n `\\`${op}()\\` was called with a document ID (\\`${document._id}\\`) that is a draft ID, but a release ID (\\`${releaseId}\\`) was also provided.`\n );\n const builtVersionId = getVersionFromId(document._id);\n if (builtVersionId !== releaseId)\n throw new Error(\n `\\`${op}()\\` was called with a document ID (\\`${document._id}\\`) that is a version ID, but the release ID (\\`${releaseId}\\`) does not match the document's version ID (\\`${builtVersionId}\\`).`\n );\n }\n return document._id;\n }\n if (publishedId)\n return getDocumentVersionId(publishedId, releaseId);\n throw new Error(`\\`${op}()\\` requires either a publishedId or a document with an \\`_id\\``);\n}\nconst getArgs = (releaseOrOptions, maybeOptions) => {\n if (typeof releaseOrOptions == \"object\" && releaseOrOptions !== null && (\"releaseId\" in releaseOrOptions || \"metadata\" in releaseOrOptions)) {\n const { releaseId = generateReleaseId(), metadata = {} } = releaseOrOptions;\n return [releaseId, metadata, maybeOptions];\n }\n return [generateReleaseId(), {}, releaseOrOptions];\n}, createRelease = (releaseOrOptions, maybeOptions) => {\n const [releaseId, metadata, options] = getArgs(releaseOrOptions, maybeOptions), finalMetadata = {\n ...metadata,\n releaseType: metadata.releaseType || \"undecided\"\n };\n return { action: {\n actionType: \"sanity.action.release.create\",\n releaseId,\n metadata: finalMetadata\n }, options };\n};\nclass ObservableReleasesClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * @public\n *\n * Retrieve a release by id.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to retrieve.\n * @param options - Additional query options including abort signal and query tag.\n * @returns An observable that resolves to the release document {@link ReleaseDocument}.\n *\n * @example Retrieving a release by id\n * ```ts\n * client.observable.releases.get({releaseId: 'my-release'}).pipe(\n * tap((release) => console.log(release)),\n * // {\n * // _id: '_.releases.my-release',\n * // name: 'my-release'\n * // _type: 'system.release',\n * // metadata: {releaseType: 'asap'},\n * // _createdAt: '2021-01-01T00:00:00.000Z',\n * // ...\n * // }\n * ).subscribe()\n * ```\n */\n get({ releaseId }, options) {\n return _getDocument(\n this.#client,\n this.#httpRequest,\n `_.releases.${releaseId}`,\n options\n );\n }\n create(releaseOrOptions, maybeOptions) {\n const { action, options } = createRelease(releaseOrOptions, maybeOptions), { releaseId, metadata } = action;\n return _action(this.#client, this.#httpRequest, action, options).pipe(\n map$1((actionResult) => ({\n ...actionResult,\n releaseId,\n metadata\n }))\n );\n }\n /**\n * @public\n *\n * Edits an existing release, updating the metadata.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to edit.\n * - `patch` - The patch operation to apply on the release metadata {@link PatchMutationOperation}.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n edit({ releaseId, patch }, options) {\n const editAction = {\n actionType: \"sanity.action.release.edit\",\n releaseId,\n patch\n };\n return _action(this.#client, this.#httpRequest, editAction, options);\n }\n /**\n * @public\n *\n * Publishes all documents in a release at once. For larger releases the effect of the publish\n * will be visible immediately when querying but the removal of the `versions.<releasesId>.*`\n * documents and creation of the corresponding published documents with the new content may\n * take some time.\n *\n * During this period both the source and target documents are locked and cannot be\n * modified through any other means.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to publish.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n publish({ releaseId }, options) {\n const publishAction = {\n actionType: \"sanity.action.release.publish\",\n releaseId\n };\n return _action(this.#client, this.#httpRequest, publishAction, options);\n }\n /**\n * @public\n *\n * An archive action removes an active release. The documents that comprise the release\n * are deleted and therefore no longer queryable.\n *\n * While the documents remain in retention the last version can still be accessed using document history endpoint.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to archive.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n archive({ releaseId }, options) {\n const archiveAction = {\n actionType: \"sanity.action.release.archive\",\n releaseId\n };\n return _action(this.#client, this.#httpRequest, archiveAction, options);\n }\n /**\n * @public\n *\n * An unarchive action restores an archived release and all documents\n * with the content they had just prior to archiving.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to unarchive.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n unarchive({ releaseId }, options) {\n const unarchiveAction = {\n actionType: \"sanity.action.release.unarchive\",\n releaseId\n };\n return _action(this.#client, this.#httpRequest, unarchiveAction, options);\n }\n /**\n * @public\n *\n * A schedule action queues a release for publishing at the given future time.\n * The release is locked such that no documents in the release can be modified and\n * no documents that it references can be deleted as this would make the publish fail.\n * At the given time, the same logic as for the publish action is triggered.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to schedule.\n * - `publishAt` - The serialised date and time to publish the release. If the `publishAt` is in the past, the release will be published immediately.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n schedule({ releaseId, publishAt }, options) {\n const scheduleAction = {\n actionType: \"sanity.action.release.schedule\",\n releaseId,\n publishAt\n };\n return _action(this.#client, this.#httpRequest, scheduleAction, options);\n }\n /**\n * @public\n *\n * An unschedule action stops a release from being published.\n * The documents in the release are considered unlocked and can be edited again.\n * This may fail if another release is scheduled to be published after this one and\n * has a reference to a document created by this one.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to unschedule.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n unschedule({ releaseId }, options) {\n const unscheduleAction = {\n actionType: \"sanity.action.release.unschedule\",\n releaseId\n };\n return _action(this.#client, this.#httpRequest, unscheduleAction, options);\n }\n /**\n * @public\n *\n * A delete action removes a published or archived release.\n * The backing system document will be removed from the dataset.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to delete.\n * @param options - Additional action options.\n * @returns An observable that resolves to the `transactionId`.\n */\n delete({ releaseId }, options) {\n const deleteAction = {\n actionType: \"sanity.action.release.delete\",\n releaseId\n };\n return _action(this.#client, this.#httpRequest, deleteAction, options);\n }\n /**\n * @public\n *\n * Fetch the documents in a release by release id.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to fetch documents for.\n * @param options - Additional mutation options {@link BaseMutationOptions}.\n * @returns An observable that resolves to the documents in the release.\n */\n fetchDocuments({ releaseId }, options) {\n return _getReleaseDocuments(this.#client, this.#httpRequest, releaseId, options);\n }\n}\nclass ReleasesClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * @public\n *\n * Retrieve a release by id.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to retrieve.\n * @param options - Additional query options including abort signal and query tag.\n * @returns A promise that resolves to the release document {@link ReleaseDocument}.\n *\n * @example Retrieving a release by id\n * ```ts\n * const release = await client.releases.get({releaseId: 'my-release'})\n * console.log(release)\n * // {\n * // _id: '_.releases.my-release',\n * // name: 'my-release'\n * // _type: 'system.release',\n * // metadata: {releaseType: 'asap'},\n * // _createdAt: '2021-01-01T00:00:00.000Z',\n * // ...\n * // }\n * ```\n */\n get({ releaseId }, options) {\n return lastValueFrom(\n _getDocument(\n this.#client,\n this.#httpRequest,\n `_.releases.${releaseId}`,\n options\n )\n );\n }\n async create(releaseOrOptions, maybeOptions) {\n const { action, options } = createRelease(releaseOrOptions, maybeOptions), { releaseId, metadata } = action;\n return { ...await lastValueFrom(\n _action(this.#client, this.#httpRequest, action, options)\n ), releaseId, metadata };\n }\n /**\n * @public\n *\n * Edits an existing release, updating the metadata.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to edit.\n * - `patch` - The patch operation to apply on the release metadata {@link PatchMutationOperation}.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n edit({ releaseId, patch }, options) {\n const editAction = {\n actionType: \"sanity.action.release.edit\",\n releaseId,\n patch\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, editAction, options));\n }\n /**\n * @public\n *\n * Publishes all documents in a release at once. For larger releases the effect of the publish\n * will be visible immediately when querying but the removal of the `versions.<releasesId>.*`\n * documents and creation of the corresponding published documents with the new content may\n * take some time.\n *\n * During this period both the source and target documents are locked and cannot be\n * modified through any other means.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to publish.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n publish({ releaseId }, options) {\n const publishAction = {\n actionType: \"sanity.action.release.publish\",\n releaseId\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, publishAction, options));\n }\n /**\n * @public\n *\n * An archive action removes an active release. The documents that comprise the release\n * are deleted and therefore no longer queryable.\n *\n * While the documents remain in retention the last version can still be accessed using document history endpoint.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to archive.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n archive({ releaseId }, options) {\n const archiveAction = {\n actionType: \"sanity.action.release.archive\",\n releaseId\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, archiveAction, options));\n }\n /**\n * @public\n *\n * An unarchive action restores an archived release and all documents\n * with the content they had just prior to archiving.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to unarchive.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n unarchive({ releaseId }, options) {\n const unarchiveAction = {\n actionType: \"sanity.action.release.unarchive\",\n releaseId\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, unarchiveAction, options));\n }\n /**\n * @public\n *\n * A schedule action queues a release for publishing at the given future time.\n * The release is locked such that no documents in the release can be modified and\n * no documents that it references can be deleted as this would make the publish fail.\n * At the given time, the same logic as for the publish action is triggered.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to schedule.\n * - `publishAt` - The serialised date and time to publish the release. If the `publishAt` is in the past, the release will be published immediately.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n schedule({ releaseId, publishAt }, options) {\n const scheduleAction = {\n actionType: \"sanity.action.release.schedule\",\n releaseId,\n publishAt\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, scheduleAction, options));\n }\n /**\n * @public\n *\n * An unschedule action stops a release from being published.\n * The documents in the release are considered unlocked and can be edited again.\n * This may fail if another release is scheduled to be published after this one and\n * has a reference to a document created by this one.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to unschedule.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n unschedule({ releaseId }, options) {\n const unscheduleAction = {\n actionType: \"sanity.action.release.unschedule\",\n releaseId\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, unscheduleAction, options));\n }\n /**\n * @public\n *\n * A delete action removes a published or archived release.\n * The backing system document will be removed from the dataset.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to delete.\n * @param options - Additional action options.\n * @returns A promise that resolves to the `transactionId`.\n */\n delete({ releaseId }, options) {\n const deleteAction = {\n actionType: \"sanity.action.release.delete\",\n releaseId\n };\n return lastValueFrom(_action(this.#client, this.#httpRequest, deleteAction, options));\n }\n /**\n * @public\n *\n * Fetch the documents in a release by release id.\n *\n * @category Releases\n *\n * @param params - Release action parameters:\n * - `releaseId` - The id of the release to fetch documents for.\n * @param options - Additional mutation options {@link BaseMutationOptions}.\n * @returns A promise that resolves to the documents in the release.\n */\n fetchDocuments({ releaseId }, options) {\n return lastValueFrom(_getReleaseDocuments(this.#client, this.#httpRequest, releaseId, options));\n }\n}\nclass ObservableUsersClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * Fetch a user by user ID\n *\n * @param id - User ID of the user to fetch. If `me` is provided, a minimal response including the users role is returned.\n */\n getById(id) {\n return _request(\n this.#client,\n this.#httpRequest,\n { uri: `/users/${id}` }\n );\n }\n}\nclass UsersClient {\n #client;\n #httpRequest;\n constructor(client, httpRequest) {\n this.#client = client, this.#httpRequest = httpRequest;\n }\n /**\n * Fetch a user by user ID\n *\n * @param id - User ID of the user to fetch. If `me` is provided, a minimal response including the users role is returned.\n */\n getById(id) {\n return lastValueFrom(\n _request(this.#client, this.#httpRequest, {\n uri: `/users/${id}`\n })\n );\n }\n}\nclass ObservableSanityClient {\n assets;\n datasets;\n live;\n projects;\n users;\n agent;\n releases;\n /**\n * Private properties\n */\n #clientConfig;\n #httpRequest;\n /**\n * Instance properties\n */\n listen = _listen;\n constructor(httpRequest, config = defaultConfig) {\n this.config(config), this.#httpRequest = httpRequest, this.assets = new ObservableAssetsClient(this, this.#httpRequest), this.datasets = new ObservableDatasetsClient(this, this.#httpRequest), this.live = new LiveClient(this), this.projects = new ObservableProjectsClient(this, this.#httpRequest), this.users = new ObservableUsersClient(this, this.#httpRequest), this.agent = {\n action: new ObservableAgentsActionClient(this, this.#httpRequest)\n }, this.releases = new ObservableReleasesClient(this, this.#httpRequest);\n }\n /**\n * Clone the client - returns a new instance\n */\n clone() {\n return new ObservableSanityClient(this.#httpRequest, this.config());\n }\n config(newConfig) {\n if (newConfig === void 0)\n return { ...this.#clientConfig };\n if (this.#clientConfig && this.#clientConfig.allowReconfigure === !1)\n throw new Error(\n \"Existing client instance cannot be reconfigured - use `withConfig(newConfig)` to return a new client\"\n );\n return this.#clientConfig = initConfig(newConfig, this.#clientConfig || {}), this;\n }\n /**\n * Clone the client with a new (partial) configuration.\n *\n * @param newConfig - New client configuration properties, shallowly merged with existing configuration\n */\n withConfig(newConfig) {\n const thisConfig = this.config();\n return new ObservableSanityClient(this.#httpRequest, {\n ...thisConfig,\n ...newConfig,\n stega: {\n ...thisConfig.stega || {},\n ...typeof newConfig?.stega == \"boolean\" ? { enabled: newConfig.stega } : newConfig?.stega || {}\n }\n });\n }\n fetch(query, params, options) {\n return _fetch(\n this,\n this.#httpRequest,\n this.#clientConfig.stega,\n query,\n params,\n options\n );\n }\n /**\n * Fetch a single document with the given ID.\n *\n * @param id - Document ID to fetch\n * @param options - Request options\n */\n getDocument(id, options) {\n return _getDocument(this, this.#httpRequest, id, options);\n }\n /**\n * Fetch multiple documents in one request.\n * Should be used sparingly - performing a query is usually a better option.\n * The order/position of documents is preserved based on the original array of IDs.\n * If any of the documents are missing, they will be replaced by a `null` entry in the returned array\n *\n * @param ids - Document IDs to fetch\n * @param options - Request options\n */\n getDocuments(ids, options) {\n return _getDocuments(this, this.#httpRequest, ids, options);\n }\n create(document, options) {\n return _create(this, this.#httpRequest, document, \"create\", options);\n }\n createIfNotExists(document, options) {\n return _createIfNotExists(this, this.#httpRequest, document, options);\n }\n createOrReplace(document, options) {\n return _createOrReplace(this, this.#httpRequest, document, options);\n }\n createVersion({\n document,\n publishedId,\n releaseId\n }, options) {\n const documentVersionId = deriveDocumentVersionId(\"createVersion\", {\n document,\n publishedId,\n releaseId\n }), documentVersion = { ...document, _id: documentVersionId }, versionPublishedId = publishedId || getPublishedId(document._id);\n return _createVersion(\n this,\n this.#httpRequest,\n documentVersion,\n versionPublishedId,\n options\n );\n }\n delete(selection, options) {\n return _delete(this, this.#httpRequest, selection, options);\n }\n /**\n * @public\n *\n * Deletes the draft or release version of a document.\n *\n * @remarks\n * * Discarding a version with no `releaseId` will discard the draft version of the published document.\n * * If the draft or release version does not exist, any error will throw.\n *\n * @param params - Version action parameters:\n * - `releaseId` - The ID of the release to discard the document from.\n * - `publishedId` - The published ID of the document to discard.\n * @param purge - if `true` the document history is also discarded.\n * @param options - Additional action options.\n * @returns an observable that resolves to the `transactionId`.\n *\n * @example Discarding a release version of a document\n * ```ts\n * client.observable.discardVersion({publishedId: 'myDocument', releaseId: 'myRelease'})\n * // The document with the ID `versions.myRelease.myDocument` will be discarded.\n * ```\n *\n * @example Discarding a draft version of a document\n * ```ts\n * client.observable.discardVersion({publishedId: 'myDocument'})\n * // The document with the ID `drafts.myDocument` will be discarded.\n * ```\n */\n discardVersion({ releaseId, publishedId }, purge, options) {\n const documentVersionId = getDocumentVersionId(publishedId, releaseId);\n return _discardVersion(this, this.#httpRequest, documentVersionId, purge, options);\n }\n replaceVersion({\n document,\n publishedId,\n releaseId\n }, options) {\n const documentVersionId = deriveDocumentVersionId(\"replaceVersion\", {\n document,\n publishedId,\n releaseId\n }), documentVersion = { ...document, _id: documentVersionId };\n return _replaceVersion(this, this.#httpRequest, documentVersion, options);\n }\n /**\n * @public\n *\n * Used to indicate when a document within a release should be unpublished when\n * the release is run.\n *\n * @remarks\n * * If the published document does not exist, an error will be thrown.\n *\n * @param params - Version action parameters:\n * - `releaseId` - The ID of the release to unpublish the document from.\n * - `publishedId` - The published ID of the document to unpublish.\n * @param options - Additional action options.\n * @returns an observable that resolves to the `transactionId`.\n *\n * @example Unpublishing a release version of a published document\n * ```ts\n * client.observable.unpublishVersion({publishedId: 'myDocument', releaseId: 'myRelease'})\n * // The document with the ID `versions.myRelease.myDocument` will be unpublished. when `myRelease` is run.\n * ```\n */\n unpublishVersion({ releaseId, publishedId }, options) {\n const versionId = getVersionId(publishedId, releaseId);\n return _unpublishVersion(this, this.#httpRequest, versionId, publishedId, options);\n }\n mutate(operations, options) {\n return _mutate(this, this.#httpRequest, operations, options);\n }\n /**\n * Create a new buildable patch of operations to perform\n *\n * @param selection - Document ID, an array of document IDs, or an object with `query` and optional `params`, defining which document(s) to patch\n * @param operations - Optional object of patch operations to initialize the patch instance with\n * @returns Patch instance - call `.commit()` to perform the operations defined\n */\n patch(selection, operations) {\n return new ObservablePatch(selection, operations, this);\n }\n /**\n * Create a new transaction of mutations\n *\n * @param operations - Optional array of mutation operations to initialize the transaction instance with\n */\n transaction(operations) {\n return new ObservableTransaction(operations, this);\n }\n /**\n * Perform action operations against the configured dataset\n *\n * @param operations - Action operation(s) to execute\n * @param options - Action options\n */\n action(operations, options) {\n return _action(this, this.#httpRequest, operations, options);\n }\n /**\n * Perform an HTTP request against the Sanity API\n *\n * @param options - Request options\n */\n request(options) {\n return _request(this, this.#httpRequest, options);\n }\n /**\n * Get a Sanity API URL for the URI provided\n *\n * @param uri - URI/path to build URL for\n * @param canUseCdn - Whether or not to allow using the API CDN for this route\n */\n getUrl(uri, canUseCdn) {\n return _getUrl(this, uri, canUseCdn);\n }\n /**\n * Get a Sanity API URL for the data operation and path provided\n *\n * @param operation - Data operation (eg `query`, `mutate`, `listen` or similar)\n * @param path - Path to append after the operation\n */\n getDataUrl(operation, path) {\n return _getDataUrl(this, operation, path);\n }\n}\nclass SanityClient {\n assets;\n datasets;\n live;\n projects;\n users;\n agent;\n releases;\n /**\n * Observable version of the Sanity client, with the same configuration as the promise-based one\n */\n observable;\n /**\n * Private properties\n */\n #clientConfig;\n #httpRequest;\n /**\n * Instance properties\n */\n listen = _listen;\n constructor(httpRequest, config = defaultConfig) {\n this.config(config), this.#httpRequest = httpRequest, this.assets = new AssetsClient(this, this.#httpRequest), this.datasets = new DatasetsClient(this, this.#httpRequest), this.live = new LiveClient(this), this.projects = new ProjectsClient(this, this.#httpRequest), this.users = new UsersClient(this, this.#httpRequest), this.agent = {\n action: new AgentActionsClient(this, this.#httpRequest)\n }, this.releases = new ReleasesClient(this, this.#httpRequest), this.observable = new ObservableSanityClient(httpRequest, config);\n }\n /**\n * Clone the client - returns a new instance\n */\n clone() {\n return new SanityClient(this.#httpRequest, this.config());\n }\n config(newConfig) {\n if (newConfig === void 0)\n return { ...this.#clientConfig };\n if (this.#clientConfig && this.#clientConfig.allowReconfigure === !1)\n throw new Error(\n \"Existing client instance cannot be reconfigured - use `withConfig(newConfig)` to return a new client\"\n );\n return this.observable && this.observable.config(newConfig), this.#clientConfig = initConfig(newConfig, this.#clientConfig || {}), this;\n }\n /**\n * Clone the client with a new (partial) configuration.\n *\n * @param newConfig - New client configuration properties, shallowly merged with existing configuration\n */\n withConfig(newConfig) {\n const thisConfig = this.config();\n return new SanityClient(this.#httpRequest, {\n ...thisConfig,\n ...newConfig,\n stega: {\n ...thisConfig.stega || {},\n ...typeof newConfig?.stega == \"boolean\" ? { enabled: newConfig.stega } : newConfig?.stega || {}\n }\n });\n }\n fetch(query, params, options) {\n return lastValueFrom(\n _fetch(\n this,\n this.#httpRequest,\n this.#clientConfig.stega,\n query,\n params,\n options\n )\n );\n }\n /**\n * Fetch a single document with the given ID.\n *\n * @param id - Document ID to fetch\n * @param options - Request options\n */\n getDocument(id, options) {\n return lastValueFrom(_getDocument(this, this.#httpRequest, id, options));\n }\n /**\n * Fetch multiple documents in one request.\n * Should be used sparingly - performing a query is usually a better option.\n * The order/position of documents is preserved based on the original array of IDs.\n * If any of the documents are missing, they will be replaced by a `null` entry in the returned array\n *\n * @param ids - Document IDs to fetch\n * @param options - Request options\n */\n getDocuments(ids, options) {\n return lastValueFrom(_getDocuments(this, this.#httpRequest, ids, options));\n }\n create(document, options) {\n return lastValueFrom(\n _create(this, this.#httpRequest, document, \"create\", options)\n );\n }\n createIfNotExists(document, options) {\n return lastValueFrom(\n _createIfNotExists(this, this.#httpRequest, document, options)\n );\n }\n createOrReplace(document, options) {\n return lastValueFrom(\n _createOrReplace(this, this.#httpRequest, document, options)\n );\n }\n createVersion({\n document,\n publishedId,\n releaseId\n }, options) {\n const documentVersionId = deriveDocumentVersionId(\"createVersion\", {\n document,\n publishedId,\n releaseId\n }), documentVersion = { ...document, _id: documentVersionId }, versionPublishedId = publishedId || getPublishedId(document._id);\n return firstValueFrom(\n _createVersion(\n this,\n this.#httpRequest,\n documentVersion,\n versionPublishedId,\n options\n )\n );\n }\n delete(selection, options) {\n return lastValueFrom(_delete(this, this.#httpRequest, selection, options));\n }\n /**\n * @public\n *\n * Deletes the draft or release version of a document.\n *\n * @remarks\n * * Discarding a version with no `releaseId` will discard the draft version of the published document.\n * * If the draft or release version does not exist, any error will throw.\n *\n * @param params - Version action parameters:\n * - `releaseId` - The ID of the release to discard the document from.\n * - `publishedId` - The published ID of the document to discard.\n * @param purge - if `true` the document history is also discarded.\n * @param options - Additional action options.\n * @returns a promise that resolves to the `transactionId`.\n *\n * @example Discarding a release version of a document\n * ```ts\n * client.discardVersion({publishedId: 'myDocument', releaseId: 'myRelease'})\n * // The document with the ID `versions.myRelease.myDocument` will be discarded.\n * ```\n *\n * @example Discarding a draft version of a document\n * ```ts\n * client.discardVersion({publishedId: 'myDocument'})\n * // The document with the ID `drafts.myDocument` will be discarded.\n * ```\n */\n discardVersion({ releaseId, publishedId }, purge, options) {\n const documentVersionId = getDocumentVersionId(publishedId, releaseId);\n return lastValueFrom(\n _discardVersion(this, this.#httpRequest, documentVersionId, purge, options)\n );\n }\n replaceVersion({\n document,\n publishedId,\n releaseId\n }, options) {\n const documentVersionId = deriveDocumentVersionId(\"replaceVersion\", {\n document,\n publishedId,\n releaseId\n }), documentVersion = { ...document, _id: documentVersionId };\n return firstValueFrom(\n _replaceVersion(this, this.#httpRequest, documentVersion, options)\n );\n }\n /**\n * @public\n *\n * Used to indicate when a document within a release should be unpublished when\n * the release is run.\n *\n * @remarks\n * * If the published document does not exist, an error will be thrown.\n *\n * @param params - Version action parameters:\n * - `releaseId` - The ID of the release to unpublish the document from.\n * - `publishedId` - The published ID of the document to unpublish.\n * @param options - Additional action options.\n * @returns a promise that resolves to the `transactionId`.\n *\n * @example Unpublishing a release version of a published document\n * ```ts\n * await client.unpublishVersion({publishedId: 'myDocument', releaseId: 'myRelease'})\n * // The document with the ID `versions.myRelease.myDocument` will be unpublished. when `myRelease` is run.\n * ```\n */\n unpublishVersion({ releaseId, publishedId }, options) {\n const versionId = getVersionId(publishedId, releaseId);\n return lastValueFrom(\n _unpublishVersion(this, this.#httpRequest, versionId, publishedId, options)\n );\n }\n mutate(operations, options) {\n return lastValueFrom(_mutate(this, this.#httpRequest, operations, options));\n }\n /**\n * Create a new buildable patch of operations to perform\n *\n * @param selection - Document ID, an array of document IDs, or an object with `query` and optional `params`, defining which document(s) to patch\n * @param operations - Optional object of patch operations to initialize the patch instance with\n * @returns Patch instance - call `.commit()` to perform the operations defined\n */\n patch(documentId, operations) {\n return new Patch(documentId, operations, this);\n }\n /**\n * Create a new transaction of mutations\n *\n * @param operations - Optional array of mutation operations to initialize the transaction instance with\n */\n transaction(operations) {\n return new Transaction(operations, this);\n }\n /**\n * Perform action operations against the configured dataset\n * Returns a promise that resolves to the transaction result\n *\n * @param operations - Action operation(s) to execute\n * @param options - Action options\n */\n action(operations, options) {\n return lastValueFrom(_action(this, this.#httpRequest, operations, options));\n }\n /**\n * Perform a request against the Sanity API\n * NOTE: Only use this for Sanity API endpoints, not for your own APIs!\n *\n * @param options - Request options\n * @returns Promise resolving to the response body\n */\n request(options) {\n return lastValueFrom(_request(this, this.#httpRequest, options));\n }\n /**\n * Perform an HTTP request a `/data` sub-endpoint\n * NOTE: Considered internal, thus marked as deprecated. Use `request` instead.\n *\n * @deprecated - Use `request()` or your own HTTP library instead\n * @param endpoint - Endpoint to hit (mutate, query etc)\n * @param body - Request body\n * @param options - Request options\n * @internal\n */\n dataRequest(endpoint, body, options) {\n return lastValueFrom(_dataRequest(this, this.#httpRequest, endpoint, body, options));\n }\n /**\n * Get a Sanity API URL for the URI provided\n *\n * @param uri - URI/path to build URL for\n * @param canUseCdn - Whether or not to allow using the API CDN for this route\n */\n getUrl(uri, canUseCdn) {\n return _getUrl(this, uri, canUseCdn);\n }\n /**\n * Get a Sanity API URL for the data operation and path provided\n *\n * @param operation - Data operation (eg `query`, `mutate`, `listen` or similar)\n * @param path - Path to append after the operation\n */\n getDataUrl(operation, path) {\n return _getDataUrl(this, operation, path);\n }\n}\nfunction defineCreateClientExports(envMiddleware2, ClassConstructor) {\n return { requester: defineHttpRequest(envMiddleware2), createClient: (config) => {\n const clientRequester = defineHttpRequest(envMiddleware2);\n return new ClassConstructor(\n (options, requester2) => (requester2 || clientRequester)({\n maxRedirects: 0,\n maxRetries: config.maxRetries,\n retryDelay: config.retryDelay,\n ...options\n }),\n config\n );\n } };\n}\nfunction defineDeprecatedCreateClient(createClient2) {\n return function(config) {\n return printNoDefaultExport(), createClient2(config);\n };\n}\nvar envMiddleware = [];\nconst exp = defineCreateClientExports(envMiddleware, SanityClient), requester = exp.requester, createClient = exp.createClient, deprecatedCreateClient = defineDeprecatedCreateClient(createClient);\nexport {\n BasePatch,\n BaseTransaction,\n ChannelError,\n ClientError,\n ConnectionFailedError,\n CorsOriginError,\n DisconnectError,\n MessageError,\n MessageParseError,\n ObservablePatch,\n ObservableSanityClient,\n ObservableTransaction,\n Patch,\n SanityClient,\n ServerError,\n Transaction,\n connectEventSource,\n createClient,\n deprecatedCreateClient as default,\n formatQueryParseError,\n isQueryParseError,\n requester,\n adapter as unstable__adapter,\n environment as unstable__environment,\n validateApiPerspective\n};\n//# sourceMappingURL=index.browser.js.map\n","const BASE_URL = \"https://docs.sanity.io/help/\";\nfunction generateHelpUrl(slug) {\n return BASE_URL + slug;\n}\nexport { generateHelpUrl };\n//# sourceMappingURL=generate-help-url.esm.js.map\n","(function (root) {\n 'use strict';\n\n /**\n * charMap\n * @type {Object}\n */\n var charMap = {\n\n // latin\n 'À': 'A',\n 'Á': 'A',\n 'Â': 'A',\n 'Ã': 'A',\n 'Ä': 'Ae',\n 'Å': 'A',\n 'Æ': 'AE',\n 'Ç': 'C',\n 'È': 'E',\n 'É': 'E',\n 'Ê': 'E',\n 'Ë': 'E',\n 'Ì': 'I',\n 'Í': 'I',\n 'Î': 'I',\n 'Ï': 'I',\n 'Ð': 'D',\n 'Ñ': 'N',\n 'Ò': 'O',\n 'Ó': 'O',\n 'Ô': 'O',\n 'Õ': 'O',\n 'Ö': 'Oe',\n 'Ő': 'O',\n 'Ø': 'O',\n 'Ù': 'U',\n 'Ú': 'U',\n 'Û': 'U',\n 'Ü': 'Ue',\n 'Ű': 'U',\n 'Ý': 'Y',\n 'Þ': 'TH',\n 'ß': 'ss',\n 'à': 'a',\n 'á': 'a',\n 'â': 'a',\n 'ã': 'a',\n 'ä': 'ae',\n 'å': 'a',\n 'æ': 'ae',\n 'ç': 'c',\n 'è': 'e',\n 'é': 'e',\n 'ê': 'e',\n 'ë': 'e',\n 'ì': 'i',\n 'í': 'i',\n 'î': 'i',\n 'ï': 'i',\n 'ð': 'd',\n 'ñ': 'n',\n 'ò': 'o',\n 'ó': 'o',\n 'ô': 'o',\n 'õ': 'o',\n 'ö': 'oe',\n 'ő': 'o',\n 'ø': 'o',\n 'ù': 'u',\n 'ú': 'u',\n 'û': 'u',\n 'ü': 'ue',\n 'ű': 'u',\n 'ý': 'y',\n 'þ': 'th',\n 'ÿ': 'y',\n 'ẞ': 'SS',\n\n // language specific\n\n // Arabic\n 'ا': 'a',\n 'أ': 'a',\n 'إ': 'i',\n 'آ': 'aa',\n 'ؤ': 'u',\n 'ئ': 'e',\n 'ء': 'a',\n 'ب': 'b',\n 'ت': 't',\n 'ث': 'th',\n 'ج': 'j',\n 'ح': 'h',\n 'خ': 'kh',\n 'د': 'd',\n 'ذ': 'th',\n 'ر': 'r',\n 'ز': 'z',\n 'س': 's',\n 'ش': 'sh',\n 'ص': 's',\n 'ض': 'dh',\n 'ط': 't',\n 'ظ': 'z',\n 'ع': 'a',\n 'غ': 'gh',\n 'ف': 'f',\n 'ق': 'q',\n 'ك': 'k',\n 'ل': 'l',\n 'م': 'm',\n 'ن': 'n',\n 'ه': 'h',\n 'و': 'w',\n 'ي': 'y',\n 'ى': 'a',\n 'ة': 'h',\n 'ﻻ': 'la',\n 'ﻷ': 'laa',\n 'ﻹ': 'lai',\n 'ﻵ': 'laa',\n\n // Persian additional characters than Arabic\n 'گ': 'g',\n 'چ': 'ch',\n 'پ': 'p',\n 'ژ': 'zh',\n 'ک': 'k',\n 'ی': 'y',\n\n // Arabic diactrics\n 'َ': 'a',\n 'ً': 'an',\n 'ِ': 'e',\n 'ٍ': 'en',\n 'ُ': 'u',\n 'ٌ': 'on',\n 'ْ': '',\n\n // Arabic numbers\n '٠': '0',\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n\n // Persian numbers\n '۰': '0',\n '۱': '1',\n '۲': '2',\n '۳': '3',\n '۴': '4',\n '۵': '5',\n '۶': '6',\n '۷': '7',\n '۸': '8',\n '۹': '9',\n\n // Burmese consonants\n 'က': 'k',\n 'ခ': 'kh',\n 'ဂ': 'g',\n 'ဃ': 'ga',\n 'င': 'ng',\n 'စ': 's',\n 'ဆ': 'sa',\n 'ဇ': 'z',\n 'စျ': 'za',\n 'ည': 'ny',\n 'ဋ': 't',\n 'ဌ': 'ta',\n 'ဍ': 'd',\n 'ဎ': 'da',\n 'ဏ': 'na',\n 'တ': 't',\n 'ထ': 'ta',\n 'ဒ': 'd',\n 'ဓ': 'da',\n 'န': 'n',\n 'ပ': 'p',\n 'ဖ': 'pa',\n 'ဗ': 'b',\n 'ဘ': 'ba',\n 'မ': 'm',\n 'ယ': 'y',\n 'ရ': 'ya',\n 'လ': 'l',\n 'ဝ': 'w',\n 'သ': 'th',\n 'ဟ': 'h',\n 'ဠ': 'la',\n 'အ': 'a',\n // consonant character combos\n 'ြ': 'y',\n 'ျ': 'ya',\n 'ွ': 'w',\n 'ြွ': 'yw',\n 'ျွ': 'ywa',\n 'ှ': 'h',\n // independent vowels\n 'ဧ': 'e',\n '၏': '-e',\n 'ဣ': 'i',\n 'ဤ': '-i',\n 'ဉ': 'u',\n 'ဦ': '-u',\n 'ဩ': 'aw',\n 'သြော': 'aw',\n 'ဪ': 'aw',\n // numbers\n '၀': '0',\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n // virama and tone marks which are silent in transliteration\n '္': '',\n '့': '',\n 'း': '',\n\n // Czech\n 'č': 'c',\n 'ď': 'd',\n 'ě': 'e',\n 'ň': 'n',\n 'ř': 'r',\n 'š': 's',\n 'ť': 't',\n 'ů': 'u',\n 'ž': 'z',\n 'Č': 'C',\n 'Ď': 'D',\n 'Ě': 'E',\n 'Ň': 'N',\n 'Ř': 'R',\n 'Š': 'S',\n 'Ť': 'T',\n 'Ů': 'U',\n 'Ž': 'Z',\n\n // Dhivehi\n 'ހ': 'h',\n 'ށ': 'sh',\n 'ނ': 'n',\n 'ރ': 'r',\n 'ބ': 'b',\n 'ޅ': 'lh',\n 'ކ': 'k',\n 'އ': 'a',\n 'ވ': 'v',\n 'މ': 'm',\n 'ފ': 'f',\n 'ދ': 'dh',\n 'ތ': 'th',\n 'ލ': 'l',\n 'ގ': 'g',\n 'ޏ': 'gn',\n 'ސ': 's',\n 'ޑ': 'd',\n 'ޒ': 'z',\n 'ޓ': 't',\n 'ޔ': 'y',\n 'ޕ': 'p',\n 'ޖ': 'j',\n 'ޗ': 'ch',\n 'ޘ': 'tt',\n 'ޙ': 'hh',\n 'ޚ': 'kh',\n 'ޛ': 'th',\n 'ޜ': 'z',\n 'ޝ': 'sh',\n 'ޞ': 's',\n 'ޟ': 'd',\n 'ޠ': 't',\n 'ޡ': 'z',\n 'ޢ': 'a',\n 'ޣ': 'gh',\n 'ޤ': 'q',\n 'ޥ': 'w',\n 'ަ': 'a',\n 'ާ': 'aa',\n 'ި': 'i',\n 'ީ': 'ee',\n 'ު': 'u',\n 'ޫ': 'oo',\n 'ެ': 'e',\n 'ޭ': 'ey',\n 'ޮ': 'o',\n 'ޯ': 'oa',\n 'ް': '',\n\n // Georgian https://en.wikipedia.org/wiki/Romanization_of_Georgian\n // National system (2002)\n 'ა': 'a',\n 'ბ': 'b',\n 'გ': 'g',\n 'დ': 'd',\n 'ე': 'e',\n 'ვ': 'v',\n 'ზ': 'z',\n 'თ': 't',\n 'ი': 'i',\n 'კ': 'k',\n 'ლ': 'l',\n 'მ': 'm',\n 'ნ': 'n',\n 'ო': 'o',\n 'პ': 'p',\n 'ჟ': 'zh',\n 'რ': 'r',\n 'ს': 's',\n 'ტ': 't',\n 'უ': 'u',\n 'ფ': 'p',\n 'ქ': 'k',\n 'ღ': 'gh',\n 'ყ': 'q',\n 'შ': 'sh',\n 'ჩ': 'ch',\n 'ც': 'ts',\n 'ძ': 'dz',\n 'წ': 'ts',\n 'ჭ': 'ch',\n 'ხ': 'kh',\n 'ჯ': 'j',\n 'ჰ': 'h',\n\n // Greek\n 'α': 'a',\n 'β': 'v',\n 'γ': 'g',\n 'δ': 'd',\n 'ε': 'e',\n 'ζ': 'z',\n 'η': 'i',\n 'θ': 'th',\n 'ι': 'i',\n 'κ': 'k',\n 'λ': 'l',\n 'μ': 'm',\n 'ν': 'n',\n 'ξ': 'ks',\n 'ο': 'o',\n 'π': 'p',\n 'ρ': 'r',\n 'σ': 's',\n 'τ': 't',\n 'υ': 'y',\n 'φ': 'f',\n 'χ': 'x',\n 'ψ': 'ps',\n 'ω': 'o',\n 'ά': 'a',\n 'έ': 'e',\n 'ί': 'i',\n 'ό': 'o',\n 'ύ': 'y',\n 'ή': 'i',\n 'ώ': 'o',\n 'ς': 's',\n 'ϊ': 'i',\n 'ΰ': 'y',\n 'ϋ': 'y',\n 'ΐ': 'i',\n 'Α': 'A',\n 'Β': 'B',\n 'Γ': 'G',\n 'Δ': 'D',\n 'Ε': 'E',\n 'Ζ': 'Z',\n 'Η': 'I',\n 'Θ': 'TH',\n 'Ι': 'I',\n 'Κ': 'K',\n 'Λ': 'L',\n 'Μ': 'M',\n 'Ν': 'N',\n 'Ξ': 'KS',\n 'Ο': 'O',\n 'Π': 'P',\n 'Ρ': 'R',\n 'Σ': 'S',\n 'Τ': 'T',\n 'Υ': 'Y',\n 'Φ': 'F',\n 'Χ': 'X',\n 'Ψ': 'PS',\n 'Ω': 'O',\n 'Ά': 'A',\n 'Έ': 'E',\n 'Ί': 'I',\n 'Ό': 'O',\n 'Ύ': 'Y',\n 'Ή': 'I',\n 'Ώ': 'O',\n 'Ϊ': 'I',\n 'Ϋ': 'Y',\n\n // Latvian\n 'ā': 'a',\n // 'č': 'c', // duplicate\n 'ē': 'e',\n 'ģ': 'g',\n 'ī': 'i',\n 'ķ': 'k',\n 'ļ': 'l',\n 'ņ': 'n',\n // 'š': 's', // duplicate\n 'ū': 'u',\n // 'ž': 'z', // duplicate\n 'Ā': 'A',\n // 'Č': 'C', // duplicate\n 'Ē': 'E',\n 'Ģ': 'G',\n 'Ī': 'I',\n 'Ķ': 'k',\n 'Ļ': 'L',\n 'Ņ': 'N',\n // 'Š': 'S', // duplicate\n 'Ū': 'U',\n // 'Ž': 'Z', // duplicate\n\n // Macedonian\n 'Ќ': 'Kj',\n 'ќ': 'kj',\n 'Љ': 'Lj',\n 'љ': 'lj',\n 'Њ': 'Nj',\n 'њ': 'nj',\n 'Тс': 'Ts',\n 'тс': 'ts',\n\n // Polish\n 'ą': 'a',\n 'ć': 'c',\n 'ę': 'e',\n 'ł': 'l',\n 'ń': 'n',\n // 'ó': 'o', // duplicate\n 'ś': 's',\n 'ź': 'z',\n 'ż': 'z',\n 'Ą': 'A',\n 'Ć': 'C',\n 'Ę': 'E',\n 'Ł': 'L',\n 'Ń': 'N',\n 'Ś': 'S',\n 'Ź': 'Z',\n 'Ż': 'Z',\n\n // Ukranian\n 'Є': 'Ye',\n 'І': 'I',\n 'Ї': 'Yi',\n 'Ґ': 'G',\n 'є': 'ye',\n 'і': 'i',\n 'ї': 'yi',\n 'ґ': 'g',\n\n // Romanian\n 'ă': 'a',\n 'Ă': 'A',\n 'ș': 's',\n 'Ș': 'S',\n // 'ş': 's', // duplicate\n // 'Ş': 'S', // duplicate\n 'ț': 't',\n 'Ț': 'T',\n 'ţ': 't',\n 'Ţ': 'T',\n\n // Russian https://en.wikipedia.org/wiki/Romanization_of_Russian\n // ICAO\n\n 'а': 'a',\n 'б': 'b',\n 'в': 'v',\n 'г': 'g',\n 'д': 'd',\n 'е': 'e',\n 'ё': 'yo',\n 'ж': 'zh',\n 'з': 'z',\n 'и': 'i',\n 'й': 'i',\n 'к': 'k',\n 'л': 'l',\n 'м': 'm',\n 'н': 'n',\n 'о': 'o',\n 'п': 'p',\n 'р': 'r',\n 'с': 's',\n 'т': 't',\n 'у': 'u',\n 'ф': 'f',\n 'х': 'kh',\n 'ц': 'c',\n 'ч': 'ch',\n 'ш': 'sh',\n 'щ': 'sh',\n 'ъ': '',\n 'ы': 'y',\n 'ь': '',\n 'э': 'e',\n 'ю': 'yu',\n 'я': 'ya',\n 'А': 'A',\n 'Б': 'B',\n 'В': 'V',\n 'Г': 'G',\n 'Д': 'D',\n 'Е': 'E',\n 'Ё': 'Yo',\n 'Ж': 'Zh',\n 'З': 'Z',\n 'И': 'I',\n 'Й': 'I',\n 'К': 'K',\n 'Л': 'L',\n 'М': 'M',\n 'Н': 'N',\n 'О': 'O',\n 'П': 'P',\n 'Р': 'R',\n 'С': 'S',\n 'Т': 'T',\n 'У': 'U',\n 'Ф': 'F',\n 'Х': 'Kh',\n 'Ц': 'C',\n 'Ч': 'Ch',\n 'Ш': 'Sh',\n 'Щ': 'Sh',\n 'Ъ': '',\n 'Ы': 'Y',\n 'Ь': '',\n 'Э': 'E',\n 'Ю': 'Yu',\n 'Я': 'Ya',\n\n // Serbian\n 'ђ': 'dj',\n 'ј': 'j',\n // 'љ': 'lj', // duplicate\n // 'њ': 'nj', // duplicate\n 'ћ': 'c',\n 'џ': 'dz',\n 'Ђ': 'Dj',\n 'Ј': 'j',\n // 'Љ': 'Lj', // duplicate\n // 'Њ': 'Nj', // duplicate\n 'Ћ': 'C',\n 'Џ': 'Dz',\n\n // Slovak\n 'ľ': 'l',\n 'ĺ': 'l',\n 'ŕ': 'r',\n 'Ľ': 'L',\n 'Ĺ': 'L',\n 'Ŕ': 'R',\n\n // Turkish\n 'ş': 's',\n 'Ş': 'S',\n 'ı': 'i',\n 'İ': 'I',\n // 'ç': 'c', // duplicate\n // 'Ç': 'C', // duplicate\n // 'ü': 'u', // duplicate, see langCharMap\n // 'Ü': 'U', // duplicate, see langCharMap\n // 'ö': 'o', // duplicate, see langCharMap\n // 'Ö': 'O', // duplicate, see langCharMap\n 'ğ': 'g',\n 'Ğ': 'G',\n\n // Vietnamese\n 'ả': 'a',\n 'Ả': 'A',\n 'ẳ': 'a',\n 'Ẳ': 'A',\n 'ẩ': 'a',\n 'Ẩ': 'A',\n 'đ': 'd',\n 'Đ': 'D',\n 'ẹ': 'e',\n 'Ẹ': 'E',\n 'ẽ': 'e',\n 'Ẽ': 'E',\n 'ẻ': 'e',\n 'Ẻ': 'E',\n 'ế': 'e',\n 'Ế': 'E',\n 'ề': 'e',\n 'Ề': 'E',\n 'ệ': 'e',\n 'Ệ': 'E',\n 'ễ': 'e',\n 'Ễ': 'E',\n 'ể': 'e',\n 'Ể': 'E',\n 'ỏ': 'o',\n 'ọ': 'o',\n 'Ọ': 'o',\n 'ố': 'o',\n 'Ố': 'O',\n 'ồ': 'o',\n 'Ồ': 'O',\n 'ổ': 'o',\n 'Ổ': 'O',\n 'ộ': 'o',\n 'Ộ': 'O',\n 'ỗ': 'o',\n 'Ỗ': 'O',\n 'ơ': 'o',\n 'Ơ': 'O',\n 'ớ': 'o',\n 'Ớ': 'O',\n 'ờ': 'o',\n 'Ờ': 'O',\n 'ợ': 'o',\n 'Ợ': 'O',\n 'ỡ': 'o',\n 'Ỡ': 'O',\n 'Ở': 'o',\n 'ở': 'o',\n 'ị': 'i',\n 'Ị': 'I',\n 'ĩ': 'i',\n 'Ĩ': 'I',\n 'ỉ': 'i',\n 'Ỉ': 'i',\n 'ủ': 'u',\n 'Ủ': 'U',\n 'ụ': 'u',\n 'Ụ': 'U',\n 'ũ': 'u',\n 'Ũ': 'U',\n 'ư': 'u',\n 'Ư': 'U',\n 'ứ': 'u',\n 'Ứ': 'U',\n 'ừ': 'u',\n 'Ừ': 'U',\n 'ự': 'u',\n 'Ự': 'U',\n 'ữ': 'u',\n 'Ữ': 'U',\n 'ử': 'u',\n 'Ử': 'ư',\n 'ỷ': 'y',\n 'Ỷ': 'y',\n 'ỳ': 'y',\n 'Ỳ': 'Y',\n 'ỵ': 'y',\n 'Ỵ': 'Y',\n 'ỹ': 'y',\n 'Ỹ': 'Y',\n 'ạ': 'a',\n 'Ạ': 'A',\n 'ấ': 'a',\n 'Ấ': 'A',\n 'ầ': 'a',\n 'Ầ': 'A',\n 'ậ': 'a',\n 'Ậ': 'A',\n 'ẫ': 'a',\n 'Ẫ': 'A',\n // 'ă': 'a', // duplicate\n // 'Ă': 'A', // duplicate\n 'ắ': 'a',\n 'Ắ': 'A',\n 'ằ': 'a',\n 'Ằ': 'A',\n 'ặ': 'a',\n 'Ặ': 'A',\n 'ẵ': 'a',\n 'Ẵ': 'A',\n \"⓪\": \"0\",\n \"①\": \"1\",\n \"②\": \"2\",\n \"③\": \"3\",\n \"④\": \"4\",\n \"⑤\": \"5\",\n \"⑥\": \"6\",\n \"⑦\": \"7\",\n \"⑧\": \"8\",\n \"⑨\": \"9\",\n \"⑩\": \"10\",\n \"⑪\": \"11\",\n \"⑫\": \"12\",\n \"⑬\": \"13\",\n \"⑭\": \"14\",\n \"⑮\": \"15\",\n \"⑯\": \"16\",\n \"⑰\": \"17\",\n \"⑱\": \"18\",\n \"⑲\": \"18\",\n \"⑳\": \"18\",\n\n \"⓵\": \"1\",\n \"⓶\": \"2\",\n \"⓷\": \"3\",\n \"⓸\": \"4\",\n \"⓹\": \"5\",\n \"⓺\": \"6\",\n \"⓻\": \"7\",\n \"⓼\": \"8\",\n \"⓽\": \"9\",\n \"⓾\": \"10\",\n\n \"⓿\": \"0\",\n \"⓫\": \"11\",\n \"⓬\": \"12\",\n \"⓭\": \"13\",\n \"⓮\": \"14\",\n \"⓯\": \"15\",\n \"⓰\": \"16\",\n \"⓱\": \"17\",\n \"⓲\": \"18\",\n \"⓳\": \"19\",\n \"⓴\": \"20\",\n\n \"Ⓐ\": \"A\",\n \"Ⓑ\": \"B\",\n \"Ⓒ\": \"C\",\n \"Ⓓ\": \"D\",\n \"Ⓔ\": \"E\",\n \"Ⓕ\": \"F\",\n \"Ⓖ\": \"G\",\n \"Ⓗ\": \"H\",\n \"Ⓘ\": \"I\",\n \"Ⓙ\": \"J\",\n \"Ⓚ\": \"K\",\n \"Ⓛ\": \"L\",\n \"Ⓜ\": \"M\",\n \"Ⓝ\": \"N\",\n \"Ⓞ\": \"O\",\n \"Ⓟ\": \"P\",\n \"Ⓠ\": \"Q\",\n \"Ⓡ\": \"R\",\n \"Ⓢ\": \"S\",\n \"Ⓣ\": \"T\",\n \"Ⓤ\": \"U\",\n \"Ⓥ\": \"V\",\n \"Ⓦ\": \"W\",\n \"Ⓧ\": \"X\",\n \"Ⓨ\": \"Y\",\n \"Ⓩ\": \"Z\",\n\n \"ⓐ\": \"a\",\n \"ⓑ\": \"b\",\n \"ⓒ\": \"c\",\n \"ⓓ\": \"d\",\n \"ⓔ\": \"e\",\n \"ⓕ\": \"f\",\n \"ⓖ\": \"g\",\n \"ⓗ\": \"h\",\n \"ⓘ\": \"i\",\n \"ⓙ\": \"j\",\n \"ⓚ\": \"k\",\n \"ⓛ\": \"l\",\n \"ⓜ\": \"m\",\n \"ⓝ\": \"n\",\n \"ⓞ\": \"o\",\n \"ⓟ\": \"p\",\n \"ⓠ\": \"q\",\n \"ⓡ\": \"r\",\n \"ⓢ\": \"s\",\n \"ⓣ\": \"t\",\n \"ⓤ\": \"u\",\n \"ⓦ\": \"v\",\n \"ⓥ\": \"w\",\n \"ⓧ\": \"x\",\n \"ⓨ\": \"y\",\n \"ⓩ\": \"z\",\n\n // symbols\n '“': '\"',\n '”': '\"',\n '‘': \"'\",\n '’': \"'\",\n '∂': 'd',\n 'ƒ': 'f',\n '™': '(TM)',\n '©': '(C)',\n 'œ': 'oe',\n 'Œ': 'OE',\n '®': '(R)',\n '†': '+',\n '℠': '(SM)',\n '…': '...',\n '˚': 'o',\n 'º': 'o',\n 'ª': 'a',\n '•': '*',\n '၊': ',',\n '။': '.',\n\n // currency\n '$': 'USD',\n '€': 'EUR',\n '₢': 'BRN',\n '₣': 'FRF',\n '£': 'GBP',\n '₤': 'ITL',\n '₦': 'NGN',\n '₧': 'ESP',\n '₩': 'KRW',\n '₪': 'ILS',\n '₫': 'VND',\n '₭': 'LAK',\n '₮': 'MNT',\n '₯': 'GRD',\n '₱': 'ARS',\n '₲': 'PYG',\n '₳': 'ARA',\n '₴': 'UAH',\n '₵': 'GHS',\n '¢': 'cent',\n '¥': 'CNY',\n '元': 'CNY',\n '円': 'YEN',\n '﷼': 'IRR',\n '₠': 'EWE',\n '฿': 'THB',\n '₨': 'INR',\n '₹': 'INR',\n '₰': 'PF',\n '₺': 'TRY',\n '؋': 'AFN',\n '₼': 'AZN',\n 'лв': 'BGN',\n '៛': 'KHR',\n '₡': 'CRC',\n '₸': 'KZT',\n 'ден': 'MKD',\n 'zł': 'PLN',\n '₽': 'RUB',\n '₾': 'GEL'\n\n };\n\n /**\n * special look ahead character array\n * These characters form with consonants to become 'single'/consonant combo\n * @type [Array]\n */\n var lookAheadCharArray = [\n // burmese\n '်',\n\n // Dhivehi\n 'ް'\n ];\n\n /**\n * diatricMap for languages where transliteration changes entirely as more diatrics are added\n * @type {Object}\n */\n var diatricMap = {\n // Burmese\n // dependent vowels\n 'ာ': 'a',\n 'ါ': 'a',\n 'ေ': 'e',\n 'ဲ': 'e',\n 'ိ': 'i',\n 'ီ': 'i',\n 'ို': 'o',\n 'ု': 'u',\n 'ူ': 'u',\n 'ေါင်': 'aung',\n 'ော': 'aw',\n 'ော်': 'aw',\n 'ေါ': 'aw',\n 'ေါ်': 'aw',\n '်': '်', // this is special case but the character will be converted to latin in the code\n 'က်': 'et',\n 'ိုက်': 'aik',\n 'ောက်': 'auk',\n 'င်': 'in',\n 'ိုင်': 'aing',\n 'ောင်': 'aung',\n 'စ်': 'it',\n 'ည်': 'i',\n 'တ်': 'at',\n 'ိတ်': 'eik',\n 'ုတ်': 'ok',\n 'ွတ်': 'ut',\n 'ေတ်': 'it',\n 'ဒ်': 'd',\n 'ိုဒ်': 'ok',\n 'ုဒ်': 'ait',\n 'န်': 'an',\n 'ာန်': 'an',\n 'ိန်': 'ein',\n 'ုန်': 'on',\n 'ွန်': 'un',\n 'ပ်': 'at',\n 'ိပ်': 'eik',\n 'ုပ်': 'ok',\n 'ွပ်': 'ut',\n 'န်ုပ်': 'nub',\n 'မ်': 'an',\n 'ိမ်': 'ein',\n 'ုမ်': 'on',\n 'ွမ်': 'un',\n 'ယ်': 'e',\n 'ိုလ်': 'ol',\n 'ဉ်': 'in',\n 'ံ': 'an',\n 'ိံ': 'ein',\n 'ုံ': 'on',\n\n // Dhivehi\n 'ައް': 'ah',\n 'ަށް': 'ah'\n };\n\n /**\n * langCharMap language specific characters translations\n * @type {Object}\n */\n var langCharMap = {\n 'en': {}, // default language\n\n 'az': { // Azerbaijani\n 'ç': 'c',\n 'ə': 'e',\n 'ğ': 'g',\n 'ı': 'i',\n 'ö': 'o',\n 'ş': 's',\n 'ü': 'u',\n 'Ç': 'C',\n 'Ə': 'E',\n 'Ğ': 'G',\n 'İ': 'I',\n 'Ö': 'O',\n 'Ş': 'S',\n 'Ü': 'U'\n },\n\n 'cs': { // Czech\n 'č': 'c',\n 'ď': 'd',\n 'ě': 'e',\n 'ň': 'n',\n 'ř': 'r',\n 'š': 's',\n 'ť': 't',\n 'ů': 'u',\n 'ž': 'z',\n 'Č': 'C',\n 'Ď': 'D',\n 'Ě': 'E',\n 'Ň': 'N',\n 'Ř': 'R',\n 'Š': 'S',\n 'Ť': 'T',\n 'Ů': 'U',\n 'Ž': 'Z'\n },\n\n 'fi': { // Finnish\n // 'å': 'a', duplicate see charMap/latin\n // 'Å': 'A', duplicate see charMap/latin\n 'ä': 'a', // ok\n 'Ä': 'A', // ok\n 'ö': 'o', // ok\n 'Ö': 'O' // ok\n },\n\n 'hu': { // Hungarian\n 'ä': 'a', // ok\n 'Ä': 'A', // ok\n // 'á': 'a', duplicate see charMap/latin\n // 'Á': 'A', duplicate see charMap/latin\n 'ö': 'o', // ok\n 'Ö': 'O', // ok\n // 'ő': 'o', duplicate see charMap/latin\n // 'Ő': 'O', duplicate see charMap/latin\n 'ü': 'u',\n 'Ü': 'U',\n 'ű': 'u',\n 'Ű': 'U'\n },\n\n 'lt': { // Lithuanian\n 'ą': 'a',\n 'č': 'c',\n 'ę': 'e',\n 'ė': 'e',\n 'į': 'i',\n 'š': 's',\n 'ų': 'u',\n 'ū': 'u',\n 'ž': 'z',\n 'Ą': 'A',\n 'Č': 'C',\n 'Ę': 'E',\n 'Ė': 'E',\n 'Į': 'I',\n 'Š': 'S',\n 'Ų': 'U',\n 'Ū': 'U'\n },\n\n 'lv': { // Latvian\n 'ā': 'a',\n 'č': 'c',\n 'ē': 'e',\n 'ģ': 'g',\n 'ī': 'i',\n 'ķ': 'k',\n 'ļ': 'l',\n 'ņ': 'n',\n 'š': 's',\n 'ū': 'u',\n 'ž': 'z',\n 'Ā': 'A',\n 'Č': 'C',\n 'Ē': 'E',\n 'Ģ': 'G',\n 'Ī': 'i',\n 'Ķ': 'k',\n 'Ļ': 'L',\n 'Ņ': 'N',\n 'Š': 'S',\n 'Ū': 'u',\n 'Ž': 'Z'\n },\n\n 'pl': { // Polish\n 'ą': 'a',\n 'ć': 'c',\n 'ę': 'e',\n 'ł': 'l',\n 'ń': 'n',\n 'ó': 'o',\n 'ś': 's',\n 'ź': 'z',\n 'ż': 'z',\n 'Ą': 'A',\n 'Ć': 'C',\n 'Ę': 'e',\n 'Ł': 'L',\n 'Ń': 'N',\n 'Ó': 'O',\n 'Ś': 'S',\n 'Ź': 'Z',\n 'Ż': 'Z'\n },\n\n 'sv': { // Swedish\n // 'å': 'a', duplicate see charMap/latin\n // 'Å': 'A', duplicate see charMap/latin\n 'ä': 'a', // ok\n 'Ä': 'A', // ok\n 'ö': 'o', // ok\n 'Ö': 'O' // ok\n },\n\n 'sk': { // Slovak\n 'ä': 'a',\n 'Ä': 'A'\n },\n\n 'sr': { // Serbian\n 'љ': 'lj',\n 'њ': 'nj',\n 'Љ': 'Lj',\n 'Њ': 'Nj',\n 'đ': 'dj',\n 'Đ': 'Dj'\n },\n\n 'tr': { // Turkish\n 'Ü': 'U',\n 'Ö': 'O',\n 'ü': 'u',\n 'ö': 'o'\n }\n };\n\n /**\n * symbolMap language specific symbol translations\n * translations must be transliterated already\n * @type {Object}\n */\n var symbolMap = {\n 'ar': {\n '∆': 'delta',\n '∞': 'la-nihaya',\n '♥': 'hob',\n '&': 'wa',\n '|': 'aw',\n '<': 'aqal-men',\n '>': 'akbar-men',\n '∑': 'majmou',\n '¤': 'omla'\n },\n\n 'az': {},\n\n 'ca': {\n '∆': 'delta',\n '∞': 'infinit',\n '♥': 'amor',\n '&': 'i',\n '|': 'o',\n '<': 'menys que',\n '>': 'mes que',\n '∑': 'suma dels',\n '¤': 'moneda'\n },\n\n 'cs': {\n '∆': 'delta',\n '∞': 'nekonecno',\n '♥': 'laska',\n '&': 'a',\n '|': 'nebo',\n '<': 'mensi nez',\n '>': 'vetsi nez',\n '∑': 'soucet',\n '¤': 'mena'\n },\n\n 'de': {\n '∆': 'delta',\n '∞': 'unendlich',\n '♥': 'Liebe',\n '&': 'und',\n '|': 'oder',\n '<': 'kleiner als',\n '>': 'groesser als',\n '∑': 'Summe von',\n '¤': 'Waehrung'\n },\n\n 'dv': {\n '∆': 'delta',\n '∞': 'kolunulaa',\n '♥': 'loabi',\n '&': 'aai',\n '|': 'noonee',\n '<': 'ah vure kuda',\n '>': 'ah vure bodu',\n '∑': 'jumula',\n '¤': 'faisaa'\n },\n\n 'en': {\n '∆': 'delta',\n '∞': 'infinity',\n '♥': 'love',\n '&': 'and',\n '|': 'or',\n '<': 'less than',\n '>': 'greater than',\n '∑': 'sum',\n '¤': 'currency'\n },\n\n 'es': {\n '∆': 'delta',\n '∞': 'infinito',\n '♥': 'amor',\n '&': 'y',\n '|': 'u',\n '<': 'menos que',\n '>': 'mas que',\n '∑': 'suma de los',\n '¤': 'moneda'\n },\n\n 'fa': {\n '∆': 'delta',\n '∞': 'bi-nahayat',\n '♥': 'eshgh',\n '&': 'va',\n '|': 'ya',\n '<': 'kamtar-az',\n '>': 'bishtar-az',\n '∑': 'majmooe',\n '¤': 'vahed'\n },\n\n 'fi': {\n '∆': 'delta',\n '∞': 'aarettomyys',\n '♥': 'rakkaus',\n '&': 'ja',\n '|': 'tai',\n '<': 'pienempi kuin',\n '>': 'suurempi kuin',\n '∑': 'summa',\n '¤': 'valuutta'\n },\n\n 'fr': {\n '∆': 'delta',\n '∞': 'infiniment',\n '♥': 'Amour',\n '&': 'et',\n '|': 'ou',\n '<': 'moins que',\n '>': 'superieure a',\n '∑': 'somme des',\n '¤': 'monnaie'\n },\n\n 'ge': {\n '∆': 'delta',\n '∞': 'usasruloba',\n '♥': 'siqvaruli',\n '&': 'da',\n '|': 'an',\n '<': 'naklebi',\n '>': 'meti',\n '∑': 'jami',\n '¤': 'valuta'\n },\n\n 'gr': {},\n\n 'hu': {\n '∆': 'delta',\n '∞': 'vegtelen',\n '♥': 'szerelem',\n '&': 'es',\n '|': 'vagy',\n '<': 'kisebb mint',\n '>': 'nagyobb mint',\n '∑': 'szumma',\n '¤': 'penznem'\n },\n\n 'it': {\n '∆': 'delta',\n '∞': 'infinito',\n '♥': 'amore',\n '&': 'e',\n '|': 'o',\n '<': 'minore di',\n '>': 'maggiore di',\n '∑': 'somma',\n '¤': 'moneta'\n },\n\n 'lt': {\n '∆': 'delta',\n '∞': 'begalybe',\n '♥': 'meile',\n '&': 'ir',\n '|': 'ar',\n '<': 'maziau nei',\n '>': 'daugiau nei',\n '∑': 'suma',\n '¤': 'valiuta'\n },\n\n 'lv': {\n '∆': 'delta',\n '∞': 'bezgaliba',\n '♥': 'milestiba',\n '&': 'un',\n '|': 'vai',\n '<': 'mazak neka',\n '>': 'lielaks neka',\n '∑': 'summa',\n '¤': 'valuta'\n },\n\n 'my': {\n '∆': 'kwahkhyaet',\n '∞': 'asaonasme',\n '♥': 'akhyait',\n '&': 'nhin',\n '|': 'tho',\n '<': 'ngethaw',\n '>': 'kyithaw',\n '∑': 'paungld',\n '¤': 'ngwekye'\n },\n\n 'mk': {},\n\n 'nl': {\n '∆': 'delta',\n '∞': 'oneindig',\n '♥': 'liefde',\n '&': 'en',\n '|': 'of',\n '<': 'kleiner dan',\n '>': 'groter dan',\n '∑': 'som',\n '¤': 'valuta'\n },\n\n 'pl': {\n '∆': 'delta',\n '∞': 'nieskonczonosc',\n '♥': 'milosc',\n '&': 'i',\n '|': 'lub',\n '<': 'mniejsze niz',\n '>': 'wieksze niz',\n '∑': 'suma',\n '¤': 'waluta'\n },\n\n 'pt': {\n '∆': 'delta',\n '∞': 'infinito',\n '♥': 'amor',\n '&': 'e',\n '|': 'ou',\n '<': 'menor que',\n '>': 'maior que',\n '∑': 'soma',\n '¤': 'moeda'\n },\n\n 'ro': {\n '∆': 'delta',\n '∞': 'infinit',\n '♥': 'dragoste',\n '&': 'si',\n '|': 'sau',\n '<': 'mai mic ca',\n '>': 'mai mare ca',\n '∑': 'suma',\n '¤': 'valuta'\n },\n\n 'ru': {\n '∆': 'delta',\n '∞': 'beskonechno',\n '♥': 'lubov',\n '&': 'i',\n '|': 'ili',\n '<': 'menshe',\n '>': 'bolshe',\n '∑': 'summa',\n '¤': 'valjuta'\n },\n\n 'sk': {\n '∆': 'delta',\n '∞': 'nekonecno',\n '♥': 'laska',\n '&': 'a',\n '|': 'alebo',\n '<': 'menej ako',\n '>': 'viac ako',\n '∑': 'sucet',\n '¤': 'mena'\n },\n\n 'sr': {},\n\n 'tr': {\n '∆': 'delta',\n '∞': 'sonsuzluk',\n '♥': 'ask',\n '&': 've',\n '|': 'veya',\n '<': 'kucuktur',\n '>': 'buyuktur',\n '∑': 'toplam',\n '¤': 'para birimi'\n },\n\n 'uk': {\n '∆': 'delta',\n '∞': 'bezkinechnist',\n '♥': 'lubov',\n '&': 'i',\n '|': 'abo',\n '<': 'menshe',\n '>': 'bilshe',\n '∑': 'suma',\n '¤': 'valjuta'\n },\n\n 'vn': {\n '∆': 'delta',\n '∞': 'vo cuc',\n '♥': 'yeu',\n '&': 'va',\n '|': 'hoac',\n '<': 'nho hon',\n '>': 'lon hon',\n '∑': 'tong',\n '¤': 'tien te'\n }\n };\n\n var uricChars = [';', '?', ':', '@', '&', '=', '+', '$', ',', '/'].join('');\n\n var uricNoSlashChars = [';', '?', ':', '@', '&', '=', '+', '$', ','].join('');\n\n var markChars = ['.', '!', '~', '*', \"'\", '(', ')'].join('');\n\n /**\n * getSlug\n * @param {string} input input string\n * @param {object|string} opts config object or separator string/char\n * @api public\n * @return {string} sluggified string\n */\n var getSlug = function getSlug(input, opts) {\n var separator = '-';\n var result = '';\n var diatricString = '';\n var convertSymbols = true;\n var customReplacements = {};\n var maintainCase;\n var titleCase;\n var truncate;\n var uricFlag;\n var uricNoSlashFlag;\n var markFlag;\n var symbol;\n var langChar;\n var lucky;\n var i;\n var ch;\n var l;\n var lastCharWasSymbol;\n var lastCharWasDiatric;\n var allowedChars = '';\n\n if (typeof input !== 'string') {\n return '';\n }\n\n if (typeof opts === 'string') {\n separator = opts;\n }\n\n symbol = symbolMap.en;\n langChar = langCharMap.en;\n\n if (typeof opts === 'object') {\n maintainCase = opts.maintainCase || false;\n customReplacements = (opts.custom && typeof opts.custom === 'object') ? opts.custom : customReplacements;\n truncate = (+opts.truncate > 1 && opts.truncate) || false;\n uricFlag = opts.uric || false;\n uricNoSlashFlag = opts.uricNoSlash || false;\n markFlag = opts.mark || false;\n convertSymbols = (opts.symbols === false || opts.lang === false) ? false : true;\n separator = opts.separator || separator;\n\n if (uricFlag) {\n allowedChars += uricChars;\n }\n\n if (uricNoSlashFlag) {\n allowedChars += uricNoSlashChars;\n }\n\n if (markFlag) {\n allowedChars += markChars;\n }\n\n symbol = (opts.lang && symbolMap[opts.lang] && convertSymbols) ?\n symbolMap[opts.lang] : (convertSymbols ? symbolMap.en : {});\n\n langChar = (opts.lang && langCharMap[opts.lang]) ?\n langCharMap[opts.lang] :\n opts.lang === false || opts.lang === true ? {} : langCharMap.en;\n\n // if titleCase config is an Array, rewrite to object format\n if (opts.titleCase && typeof opts.titleCase.length === 'number' && Array.prototype.toString.call(opts.titleCase)) {\n opts.titleCase.forEach(function (v) {\n customReplacements[v + ''] = v + '';\n });\n\n titleCase = true;\n } else {\n titleCase = !!opts.titleCase;\n }\n\n // if custom config is an Array, rewrite to object format\n if (opts.custom && typeof opts.custom.length === 'number' && Array.prototype.toString.call(opts.custom)) {\n opts.custom.forEach(function (v) {\n customReplacements[v + ''] = v + '';\n });\n }\n\n // custom replacements\n Object.keys(customReplacements).forEach(function (v) {\n var r;\n\n if (v.length > 1) {\n r = new RegExp('\\\\b' + escapeChars(v) + '\\\\b', 'gi');\n } else {\n r = new RegExp(escapeChars(v), 'gi');\n }\n\n input = input.replace(r, customReplacements[v]);\n });\n\n // add all custom replacement to allowed charlist\n for (ch in customReplacements) {\n allowedChars += ch;\n }\n }\n\n allowedChars += separator;\n\n // escape all necessary chars\n allowedChars = escapeChars(allowedChars);\n\n // trim whitespaces\n input = input.replace(/(^\\s+|\\s+$)/g, '');\n\n lastCharWasSymbol = false;\n lastCharWasDiatric = false;\n\n for (i = 0, l = input.length; i < l; i++) {\n ch = input[i];\n\n if (isReplacedCustomChar(ch, customReplacements)) {\n // don't convert a already converted char\n lastCharWasSymbol = false;\n } else if (langChar[ch]) {\n // process language specific diactrics chars conversion\n ch = lastCharWasSymbol && langChar[ch].match(/[A-Za-z0-9]/) ? ' ' + langChar[ch] : langChar[ch];\n\n lastCharWasSymbol = false;\n } else if (ch in charMap) {\n // the transliteration changes entirely when some special characters are added\n if (i + 1 < l && lookAheadCharArray.indexOf(input[i + 1]) >= 0) {\n diatricString += ch;\n ch = '';\n } else if (lastCharWasDiatric === true) {\n ch = diatricMap[diatricString] + charMap[ch];\n diatricString = '';\n } else {\n // process diactrics chars\n ch = lastCharWasSymbol && charMap[ch].match(/[A-Za-z0-9]/) ? ' ' + charMap[ch] : charMap[ch];\n }\n\n lastCharWasSymbol = false;\n lastCharWasDiatric = false;\n } else if (ch in diatricMap) {\n diatricString += ch;\n ch = '';\n // end of string, put the whole meaningful word\n if (i === l - 1) {\n ch = diatricMap[diatricString];\n }\n lastCharWasDiatric = true;\n } else if (\n // process symbol chars\n symbol[ch] && !(uricFlag && uricChars\n .indexOf(ch) !== -1) && !(uricNoSlashFlag && uricNoSlashChars\n // .indexOf(ch) !== -1) && !(markFlag && markChars\n .indexOf(ch) !== -1)) {\n ch = lastCharWasSymbol || result.substr(-1).match(/[A-Za-z0-9]/) ? separator + symbol[ch] : symbol[ch];\n ch += input[i + 1] !== void 0 && input[i + 1].match(/[A-Za-z0-9]/) ? separator : '';\n\n lastCharWasSymbol = true;\n } else {\n if (lastCharWasDiatric === true) {\n ch = diatricMap[diatricString] + ch;\n diatricString = '';\n lastCharWasDiatric = false;\n } else if (lastCharWasSymbol && (/[A-Za-z0-9]/.test(ch) || result.substr(-1).match(/A-Za-z0-9]/))) {\n // process latin chars\n ch = ' ' + ch;\n }\n lastCharWasSymbol = false;\n }\n\n // add allowed chars\n result += ch.replace(new RegExp('[^\\\\w\\\\s' + allowedChars + '_-]', 'g'), separator);\n }\n\n if (titleCase) {\n result = result.replace(/(\\w)(\\S*)/g, function (_, i, r) {\n var j = i.toUpperCase() + (r !== null ? r : '');\n return (Object.keys(customReplacements).indexOf(j.toLowerCase()) < 0) ? j : j.toLowerCase();\n });\n }\n\n // eliminate duplicate separators\n // add separator\n // trim separators from start and end\n result = result.replace(/\\s+/g, separator)\n .replace(new RegExp('\\\\' + separator + '+', 'g'), separator)\n .replace(new RegExp('(^\\\\' + separator + '+|\\\\' + separator + '+$)', 'g'), '');\n\n if (truncate && result.length > truncate) {\n lucky = result.charAt(truncate) === separator;\n result = result.slice(0, truncate);\n\n if (!lucky) {\n result = result.slice(0, result.lastIndexOf(separator));\n }\n }\n\n if (!maintainCase && !titleCase) {\n result = result.toLowerCase();\n }\n\n return result;\n };\n\n /**\n * createSlug curried(opts)(input)\n * @param {object|string} opts config object or input string\n * @return {Function} function getSlugWithConfig()\n **/\n var createSlug = function createSlug(opts) {\n\n /**\n * getSlugWithConfig\n * @param {string} input string\n * @return {string} slug string\n */\n return function getSlugWithConfig(input) {\n return getSlug(input, opts);\n };\n };\n\n /**\n * escape Chars\n * @param {string} input string\n */\n var escapeChars = function escapeChars(input) {\n return input.replace(/[-\\\\^$*+?.()|[\\]{}\\/]/g, '\\\\$&');\n };\n\n /**\n * check if the char is an already converted char from custom list\n * @param {char} ch character to check\n * @param {object} customReplacements custom translation map\n */\n var isReplacedCustomChar = function (ch, customReplacements) {\n for (var c in customReplacements) {\n if (customReplacements[c] === ch) {\n return true;\n }\n }\n };\n\n if (typeof module !== 'undefined' && module.exports) {\n\n // export functions for use in Node\n module.exports = getSlug;\n module.exports.createSlug = createSlug;\n } else if (typeof define !== 'undefined' && define.amd) {\n\n // export function for use in AMD\n define([], function () {\n return getSlug;\n });\n } else {\n\n // don't overwrite global if exists\n try {\n if (root.getSlug || root.createSlug) {\n throw 'speakingurl: globals exists /(getSlug|createSlug)/';\n } else {\n root.getSlug = getSlug;\n root.createSlug = createSlug;\n }\n } catch (e) {}\n }\n})(this);","module.exports = require('./lib/speakingurl');\n"],"names":["dateTimestampProvider","ReplaySubject","_super","__extends","_bufferSize","_windowTime","_timestampProvider","_this","value","_a","isStopped","_buffer","_infiniteTimeWindow","subscriber","subscription","copy","i","adjustedBufferSize","now","last","Subject","Action","scheduler","work","state","delay","Subscription","intervalProvider","handler","timeout","args","_i","__spreadArray","__read","handle","AsyncAction","id","_id","_scheduler","error","_delay","errored","errorValue","e","actions","arrRemove","Scheduler","schedulerActionCtor","AsyncScheduler","SchedulerAction","action","asyncScheduler","async","EMPTY","Observable","throwError","errorOrErrorFactory","errorFactory","isFunction","init","EmptyError","createErrorClass","lastValueFrom","source","config","hasConfig","resolve","reject","_hasValue","_value","firstValueFrom","SafeSubscriber","isValidDate","isArray","callOrApply","fn","mapOneOrManyArgs","map","getPrototypeOf","objectProto","getKeys","argsArgArrayOrObject","first_1","isPOJO","keys","key","obj","createObject","values","result","combineLatest","popScheduler","resultSelector","popResultSelector","observables","from","combineLatestInit","identity","valueTransform","maybeSchedule","length","active","remainingFirstValues","_loop_1","hasFirstValue","createOperatorSubscriber","execute","executeSchedule","mergeInternals","project","concurrent","onBeforeNext","expand","innerSubScheduler","additionalFinalizer","buffer","index","isComplete","checkComplete","outerNext","doInnerSub","innerComplete","innerFrom","innerValue","bufferedValue","err","mergeMap","a","b","ii","operate","mergeAll","concatAll","concat","defer","observableFactory","nodeEventEmitterMethods","eventTargetMethods","jqueryMethods","fromEvent","target","eventName","options","isEventTarget","methodName","isNodeStyleEventEmitter","toCommonHandlerRegistry","isJQueryStyleEventEmitter","add","remove","isArrayLike","subTarget","timer","dueTime","intervalOrScheduler","intervalDuration","isScheduler","due","n","merge","popNumber","sources","argsOrArgArray","filter","predicate","thisArg","catchError","selector","innerSub","syncUnsub","handledResult","pipe","combineLatestWith","otherSources","concatMap","take","count","seen","finalize","callback","share","connector","_b","resetOnError","_c","resetOnComplete","_d","resetOnRefCountZero","wrapperSource","connection","resetConnection","subject","refCount","hasCompleted","hasErrored","cancelReset","reset","resetAndUnsubscribe","conn","dest","handleReset","on","onSubscriber","shareReplay","configOrBufferSize","windowTime","bufferSize","takeUntil","notifier","noop","tap","observerOrNext","complete","tapObserver","isUnsub","ConditionalWrapper","children","condition","wrapper","LARGE_BUTTON_PROPS","space","padding","DEFAULT_BUTTON_PROPS","TooltipButtonWrapper","styled","span","Button","forwardRef","t0","ref","$","paddingY","rest","t1","t2","t3","tooltipProps","size","mode","tone","undefined","t4","jsx","Tooltip","content","renderWrapper","sizeProps","t5","t6","UIButton","t7","ErrorBoundary","onCatch","useContext","SourceContext","handleCatch","useCallback","caughtError","info","caughtInfo","onUncaughtError","message","console","UIErrorBoundary","MenuButton","props","popover","animate","UIMenuButton","Hotkeys","makePlatformAware","hotKeys","platformifyKey","UIHotkeys","IS_APPLE_DEVICE","navigator","platform","test","lowerKey","toLowerCase","matchCase","original","orgLength","replace","char","toUpperCase","TOOLTIP_DELAY_PROPS","open","TOOLTIP_SHARED_PROPS","arrow","boundaryElement","fallbackPlacements","placement","portal","hotkeys","Box","Text","jsxs","Flex","UITooltip","FONT_SIZE","SUBTITLE_FONT_SIZE","SubtitleText","PreviewWrapper","MenuItem","Icon","IconRight","__unstable_space","__unstable_subtitle","badgeText","childrenProp","disabled","renderMenuItem","text","icon","iconRight","preview","opacity","isValidElement","isValidElementType","Stack","marginTop","marginBottom","Badge","menuItemContent","t8","t9","t10","t11","t12","t13","UIMenuItem","t14","TooltipDelayGroupProvider","UITooltipDelayGroupProvider","t","r","s","o","c","u","l","l$1","__publicField","__privateAdd","_e","_t","_r","_o","_n","_s","__privateSet","__privateGet","h","d","p","f","w","y","define_process_env_default","F","O","j","v","x","E","R","q","A","S","_","P","isRecord","I","T","C","stegaClean","rePropName","reKeySegment","reIndexTuple","isIndexSegment","segment","isKeySegment","isIndexTuple","to","get","path","defaultVal","select","fromString","acc","item","toString","segmentType","segments","parsePathSegment","parseIndexSegment","parseKeySegment","parseIndexTupleSegment","seg","studioPath","DRAFTS_FOLDER","VERSION_FOLDER","PATH_SEPARATOR","DRAFTS_PREFIX","VERSION_PREFIX","isDraftId","isVersionId","getDraftId","publishedId","getPublishedId","getVersionId","version","getVersionFromId","_versionPrefix","versionId","_publishedId","ESCAPE","UNESCAPE","jsonPath","match","parseJsonPath","parsed","parseRe","m","_key","jsonPathToMappingPath","resolveMapping","resultPath","csm","resultMappingPath","mappings","key1","key2","matchedPath","mapping","pathSuffix","walkMap","mappingFn","idx","k","random","bytes","customRandom","alphabet","defaultSize","getRandom","mask","step","customAlphabet","nanoid","byte","NEWLINE","codeFrame","query","location2","lines","loc","columnToLine","start","end","markerLines","getMarkerLines","numberMaxWidth","line","number","gutter","hasMarker","lastMarkerLine","markerLine","markerSpacing","numberOfMarkers","startLoc","endLoc","linesAbove","linesBelow","startLine","startColumn","endLine","endColumn","lineDiff","lineNumber","sourceLength","column","offset","lineLength","MAX_ITEMS_IN_ERROR_MESSAGE","ClientError","res","context","extractErrorProps","ServerError","body","stringifyBody","httpErrorMessage","isMutationError","isActionError","allItems","items","itemsStr","isQueryParseError","tag","formatQueryParseError","description","withTag","details","sliceWithEllipsis","statusMessage","str","max","CorsOriginError","projectId2","url","origin","httpError","printWarnings","warn","warnings","msg","defineHttpRequest","envMiddleware2","getIt","retry","shouldRetry","jsonRequest","jsonResponse","progress","observable","attempt","isSafe","isQuery2","isRetriableResponse","BASE_URL","generateHelpUrl","slug","VALID_ASSET_TYPES","VALID_INSERT_LOCATIONS","dataset","name","projectId","validateAssetType","type","validateObject","op","val","validateDocumentId","requireDocumentId","doc","validateDocumentType","requireDocumentType","validateVersionIdMatch","builtVersionId","document","validateInsert","at","signature","valid","hasDataset","requestTag","resourceConfig","resourceGuard","service","once","didCall","returnValue","createWarningPrinter","printCdnAndWithCredentialsWarning","printCdnWarning","printCdnPreviewDraftsWarning","printPreviewDraftsDeprecationWarning","printBrowserTokenWarning","printCredentialedTokenWarning","printNoApiVersionSpecifiedWarning","defaultCdnHost","defaultConfig","LOCALHOSTS","isLocal","host","validateApiVersion","apiVersion","apiDate","validateApiPerspective","perspective","initConfig","prevConfig","specifiedConfig","newConfig","projectBased","helpUrl","isBrowser","isLocalhost","hasToken","hostParts","protocol","cdnHost","ConnectionFailedError","DisconnectError","reason","ChannelError","data","MessageError","MessageParseError","REQUIRED_EVENTS","connectEventSource","initEventSource","events","es","isObservable","of","connectWithESInstance","observer","emitOpen","emitReconnect","onError","evt","parseError","event","parseEvent","onOpen","onMessage","extractErrorMessage","cleanedEvents","isEmptyObject","getSelection","sel","selectionOpts","BasePatch","selection","operations","attrs","deleteCount","delAll","startIndex","delCount","delRange","rangeSelector","rev","merge2","_ObservablePatch","client","_client","returnFirst","opts","ObservablePatch","_Patch","Patch","defaultMutateOptions","BaseTransaction","transactionId","documentId","mut","_Transaction","patchOrDocumentId","patchOps","isBuilder","isPatch","isMutationSelection","patch","Transaction","_ObservableTransaction","ObservableTransaction","projectHeader","requestOptions","overrides","headers","token","withCredentials","encodeQueryString","params","searchParams","includeMutations","returnQuery","excludeFalsey","param","defValue","getMutationQuery","isResponse","getBody","indexBy","docs","attr","indexed","getQuerySizeLimit","_fetch","httpRequest","_stega","_params","stega","mapResponse","cache","next","reqOpts","$request","_dataRequest","stegaEncodeSourceMap","_getDocument","docId","_getDataUrl","_requestObservable","_getDocuments","ids","_getReleaseDocuments","releaseId","_createIfNotExists","_create","_createOrReplace","_createVersion","_action","_delete","_discardVersion","purge","_replaceVersion","_unpublishVersion","_mutate","mutations","muts","acts","skipCrossDatasetReferenceValidation","dryRun","endpoint","isMutation","isAction","strQuery","useGet","stringQuery","lastLiveEventId","cacheMode","uri","reqOptions","results","mutation","hasDataConfig","isQuery","isMutate","isDoc","isListener","isHistory","isData","canUseCdn","useCdn","resultSourceMap","perspectiveOption","_getUrl","request","_withAbortSignal","_request","operation","resourceBase","resourceDataBase","uri2","catalog","baseUri","cdnUrl","signal","input","abort","_createAbortError","isDomExceptionSupported","_generate","dataset2","_patch","_prompt","_transform","_translate","ObservableAgentsActionClient","_httpRequest","AgentActionsClient","ObservableAssetsClient","assetType","_upload","AssetsClient","observable2","meta","optionsFromFile","label","title","creditLine","filename","buildAssetUploadUrl","assetTypeEndpoint","file","defaults","defaults2","prop","pick","eventSourcePolyfill","EventSource2","reconnectOnConnectionFailure","caught","MAX_URL_LENGTH","possibleOptions","defaultOptions","_listen","requestTagPrefix","configHeaders","listenOpts","qs","listenFor","esOptions","shareReplayLatest","configOrPredicate","_shareReplayLatest","latest","emitted","shareConfig","wrapped","emitLatest","requiredApiVersion","LiveClient","includeDrafts","_tag","_apiVersion","existing","eventsCache","checkCors","fetchObservable","finalize$1","controller","response","ObservableDatasetsClient","_modify","DatasetsClient","method","ObservableProjectsClient","ProjectsClient","generateReleaseId","getDocumentVersionId","deriveDocumentVersionId","isDraft","isVersion","getArgs","releaseOrOptions","maybeOptions","metadata","createRelease","finalMetadata","ObservableReleasesClient","map$1","actionResult","editAction","publishAction","archiveAction","unarchiveAction","publishAt","scheduleAction","unscheduleAction","deleteAction","ReleasesClient","ObservableUsersClient","UsersClient","_ObservableSanityClient","_clientConfig","thisConfig","documentVersionId","documentVersion","versionPublishedId","ObservableSanityClient","_SanityClient","SanityClient","defineCreateClientExports","ClassConstructor","clientRequester","requester2","envMiddleware","exp","createClient","root","charMap","lookAheadCharArray","diatricMap","langCharMap","symbolMap","uricChars","uricNoSlashChars","markChars","getSlug","separator","diatricString","convertSymbols","customReplacements","maintainCase","titleCase","truncate","uricFlag","uricNoSlashFlag","markFlag","symbol","langChar","lucky","ch","lastCharWasSymbol","lastCharWasDiatric","allowedChars","escapeChars","isReplacedCustomChar","createSlug","module","this","speakingurl","require$$0"],"mappings":"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AAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA;AAAA;AAAA,QAKL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAGL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAGL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,MAAM;AAAA,QACN,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,MAAM;AAAA,QACN,KAAK;AAAA;AAAA,QAEL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,QAAQ;AAAA,QACR,GAAK;AAAA;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA;AAAA,QAIL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA;AAAA,QAEL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAEL,GAAK;AAAA;AAAA,QAEL,GAAK;AAAA;AAAA,QAEL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAEL,GAAK;AAAA;AAAA;AAAA,QAIL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,IAAM;AAAA,QACN,IAAM;AAAA;AAAA,QAGN,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAEL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA;AAAA,QAKL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAOL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QAEL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAGL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA;AAAA,QAGL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,GAAK;AAAA,QACL,GAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,IAAM;AAAA,QACN,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAO;AAAA,QACP,IAAM;AAAA,QACN,KAAK;AAAA,QACL,KAAK;AAAA,MAER,GAOGC,IAAqB;AAAA;AAAA,QAErB;AAAA;AAAA,QAGA;AAAA,MACH,GAMGC,IAAa;AAAA;AAAA;AAAA,QAGb,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,KAAK;AAAA,QACL,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA;AAAA,QACL,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM;AAAA,QACN,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,SAAS;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,KAAK;AAAA,QACL,MAAM;AAAA,QACN,MAAM;AAAA;AAAA,QAGN,OAAO;AAAA,QACP,OAAO;AAAA,MACV,GAMGC,IAAc;AAAA,QACd,IAAM,CAAE;AAAA;AAAA,QAER,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA;AAAA;AAAA,UAGF,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA;AAAA;AAAA,UAGL,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA;AAAA;AAAA,UAGL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA;AAAA;AAAA,UAGF,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA,UACL,GAAK;AAAA;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA;AAAA,UACF,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,UACL,GAAK;AAAA,QACjB;AAAA,MACK,GAOGC,IAAY;AAAA,QACZ,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM,CAAE;AAAA,QAER,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM,CAAE;AAAA,QAER,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM,CAAE;AAAA,QAER,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA,UACF,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACR;AAAA,QAED,IAAM;AAAA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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,48,49,50,51,52,53,54,55,56,57,58]}