@kedem/okdb 1.0.1 → 1.0.3

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 (193) hide show
  1. package/bin/okdb.js +1 -1
  2. package/keys/public.pem +3 -0
  3. package/okdb.js +1 -1
  4. package/package.json +2 -2
  5. package/public/admin-app.js +1 -1
  6. package/public/components/admin-route-host.ok.js +1 -1
  7. package/public/components/env-picker.ok.js +1 -1
  8. package/public/components/field-path-input.ok.js +1 -1
  9. package/public/components/geo-map.ok.js +1 -1
  10. package/public/components/ok-cron-input.ok.js +1 -1
  11. package/public/components/ok-dropzone.ok.js +1 -1
  12. package/public/components/ok-js-input.ok.js +1 -1
  13. package/public/components/ok-json-input.ok.js +1 -1
  14. package/public/components/ok-text-monaco-input.ok.js +1 -1
  15. package/public/components/theme-toggle.ok.js +1 -1
  16. package/public/login-app.js +1 -1
  17. package/public/modules/ok.js +1 -1
  18. package/public/sections/api/parts/api-endpoint.ok.js +1 -1
  19. package/public/sections/auth/modals/create-token-modal.ok.js +1 -1
  20. package/public/sections/auth/modals/edit-token-modal.ok.js +1 -1
  21. package/public/sections/auth/modals/perm-info-popover.ok.js +1 -1
  22. package/public/sections/auth/parts/token-detail.ok.js +1 -1
  23. package/public/sections/auth/parts/token-list.ok.js +1 -1
  24. package/public/sections/db/modals/add-item-modal.ok.js +1 -1
  25. package/public/sections/db/modals/create-env-modal.ok.js +1 -1
  26. package/public/sections/db/modals/create-fts-modal.ok.js +1 -1
  27. package/public/sections/db/modals/create-index-modal.ok.js +1 -1
  28. package/public/sections/db/modals/create-pipeline-modal.ok.js +1 -1
  29. package/public/sections/db/modals/demo-env-modal.ok.js +1 -1
  30. package/public/sections/db/modals/remove-env-modal.ok.js +1 -1
  31. package/public/sections/db/modals/schema-edit-modal.ok.js +1 -1
  32. package/public/sections/db/parts/db-overview.ok.js +1 -1
  33. package/public/sections/db/parts/db-pipelines-panel.ok.js +1 -1
  34. package/public/sections/db/parts/edit-row.ok.js +1 -1
  35. package/public/sections/db/parts/tm-timeline.ok.js +1 -1
  36. package/public/sections/db/parts/type-changelog.ok.js +1 -1
  37. package/public/sections/db/parts/type-list.ok.js +1 -1
  38. package/public/sections/db/parts/type-pipelines-tab.ok.js +1 -1
  39. package/public/sections/db/parts/type-schema-tab.ok.js +1 -1
  40. package/public/sections/db/parts/type-viewer.ok.js +1 -1
  41. package/public/sections/db/parts/type-violations-tab.ok.js +1 -1
  42. package/public/sections/embeddings/modals/register-model-modal.ok.js +1 -1
  43. package/public/sections/embeddings/parts/embed-create-panel.ok.js +1 -1
  44. package/public/sections/embeddings/parts/embed-embedder-panel.ok.js +1 -1
  45. package/public/sections/embeddings/parts/embed-engine-declaration-editor.ok.js +1 -1
  46. package/public/sections/embeddings/parts/embed-engine-list.ok.js +1 -1
  47. package/public/sections/embeddings/parts/embed-indexer-panel.ok.js +1 -1
  48. package/public/sections/embeddings/parts/embed-lifecycle-bar.ok.js +1 -1
  49. package/public/sections/embeddings/parts/embed-model-catalog.ok.js +1 -1
  50. package/public/sections/embeddings/parts/embed-overview.ok.js +1 -1
  51. package/public/sections/embeddings/parts/embed-search-panel.ok.js +1 -1
  52. package/public/sections/embeddings/parts/embed-worker-panel.ok.js +1 -1
  53. package/public/sections/embeddings/parts/embeddings-engine-panel.ok.js +1 -1
  54. package/public/sections/embeddings/parts/engines-overview.ok.js +1 -1
  55. package/public/sections/embeddings/parts/pipeline-create-panel.ok.js +1 -1
  56. package/public/sections/engines/engine-panel-shared-style.js +1 -1
  57. package/public/sections/engines/engine-ui-utils.js +1 -1
  58. package/public/sections/engines/modals/engine-modal.ok.js +1 -1
  59. package/public/sections/engines/parts/engine-declaration-editor.ok.js +1 -1
  60. package/public/sections/engines/parts/engine-lifecycle-actions.ok.js +1 -1
  61. package/public/sections/engines/parts/engine-panel-shell.ok.js +1 -1
  62. package/public/sections/engines/parts/engine-resource-card.ok.js +1 -1
  63. package/public/sections/engines/parts/engine-row-item.ok.js +1 -1
  64. package/public/sections/engines/parts/generic-engine-panel.ok.js +1 -1
  65. package/public/sections/files/parts/files-blob-status.ok.js +1 -1
  66. package/public/sections/files/parts/files-collection-list.ok.js +1 -1
  67. package/public/sections/files/parts/files-collection-panel.ok.js +1 -1
  68. package/public/sections/files/parts/files-file-list.ok.js +1 -1
  69. package/public/sections/files/parts/files-overview.ok.js +1 -1
  70. package/public/sections/files/parts/files-path-browser.ok.js +1 -1
  71. package/public/sections/files/parts/files-upload-panel.ok.js +1 -1
  72. package/public/sections/functions/modals/function-modal.ok.js +1 -1
  73. package/public/sections/functions/parts/function-detail.ok.js +1 -1
  74. package/public/sections/functions/parts/function-logs.ok.js +1 -1
  75. package/public/sections/functions/parts/function-runner.ok.js +1 -1
  76. package/public/sections/functions/parts/functions-list.ok.js +1 -1
  77. package/public/sections/license/parts/license-panel.ok.js +1 -1
  78. package/public/sections/queue/modals/create-bucket-modal.ok.js +1 -1
  79. package/public/sections/queue/modals/edit-bucket-modal.ok.js +1 -1
  80. package/public/sections/queue/modals/edit-job-modal.ok.js +1 -1
  81. package/public/sections/queue/modals/enqueue-job-modal.ok.js +1 -1
  82. package/public/sections/queue/modals/job-type-modal.ok.js +1 -1
  83. package/public/sections/queue/parts/ok-job-form.ok.js +1 -1
  84. package/public/sections/queue/parts/queue-buckets.ok.js +1 -1
  85. package/public/sections/queue/parts/queue-job-types.ok.js +1 -1
  86. package/public/sections/queue/parts/queue-jobs.ok.js +1 -1
  87. package/public/sections/queue/parts/queue-types.ok.js +1 -1
  88. package/public/sections/queue/parts/queue-workers.ok.js +1 -1
  89. package/public/sections/sync/parts/sync-node-detail.ok.js +1 -1
  90. package/public/sections/sync/parts/sync-retention.ok.js +1 -1
  91. package/public/sections/sync/parts/sync-topology.ok.js +1 -1
  92. package/public/sections/system/modals/data-ops-modal.ok.js +1 -1
  93. package/public/sections/system/parts/system-api-panel.ok.js +1 -1
  94. package/public/sections/system/parts/system-auth-panel.ok.js +1 -1
  95. package/public/sections/system/parts/system-log-history.ok.js +1 -1
  96. package/public/sections/system/parts/system-log.ok.js +1 -1
  97. package/public/sections/system/parts/system-status.ok.js +1 -1
  98. package/public/sections/system/parts/system-sync-panel.ok.js +1 -1
  99. package/public/sections/views/modals/create-view-modal.ok.js +1 -1
  100. package/public/sections/views/parts/view-detail.ok.js +1 -1
  101. package/public/sections/views/parts/views-list.ok.js +1 -1
  102. package/public/sections/views/parts/views-overview.ok.js +1 -1
  103. package/public/setup-app.js +1 -1
  104. package/public/stores/auth-store.js +1 -1
  105. package/public/stores/events-store.js +1 -1
  106. package/public/stores/functions-store.js +1 -1
  107. package/public/stores/okdb-store.js +1 -1
  108. package/public/stores/theme-store.js +1 -1
  109. package/public/util/permissions.js +1 -1
  110. package/public/util/sift-schema.js +1 -1
  111. package/public/vendor/okjs/ok.esm.min.js +1 -2
  112. package/public/vendor/okjs/toolkit/behavior/async.ok.js +1 -1
  113. package/public/vendor/okjs/toolkit/components/ok-chart.ok.js +1 -1
  114. package/public/vendor/okjs/toolkit/components/ok-doc-viewer.ok.js +1 -1
  115. package/public/vendor/okjs/toolkit/components/ok-marked.ok.js +1 -1
  116. package/public/vendor/okjs/toolkit/components/ok-monaco.ok.js +1 -1
  117. package/public/vendor/okjs/toolkit/core/ok-layer-service.ok.js +1 -1
  118. package/public/vendor/okjs/toolkit/core/ok-layer.ok.js +1 -1
  119. package/public/vendor/okjs/toolkit/core/ok-overlay.ok.js +1 -1
  120. package/public/vendor/okjs/toolkit/core/ok-sandbox.ok.js +1 -1
  121. package/public/vendor/okjs/toolkit/core/transition.ok.js +1 -1
  122. package/public/vendor/okjs/toolkit/core/virtualized.ok.js +1 -1
  123. package/public/vendor/okjs/toolkit/devtools/ok-console-service.ok.js +1 -1
  124. package/public/vendor/okjs/toolkit/devtools/ok-console.ok.js +1 -1
  125. package/public/vendor/okjs/toolkit/devtools/ok-fps-monitor-service.ok.js +1 -1
  126. package/public/vendor/okjs/toolkit/devtools/ok-fps-monitor.ok.js +1 -1
  127. package/public/vendor/okjs/toolkit/devtools/ok-inspector-service.ok.js +1 -1
  128. package/public/vendor/okjs/toolkit/devtools/ok-inspector.ok.js +1 -1
  129. package/public/vendor/okjs/toolkit/devtools/ok-js-tree.ok.js +1 -1
  130. package/public/vendor/okjs/toolkit/devtools/ok-timeline-service.ok.js +1 -1
  131. package/public/vendor/okjs/toolkit/devtools/ok-timeline.ok.js +1 -1
  132. package/public/vendor/okjs/toolkit/docs/doc-viewer.ok.js +1 -1
  133. package/public/vendor/okjs/toolkit/editor/ok-live-component.ok.js +1 -1
  134. package/public/vendor/okjs/toolkit/editor/ok-live-example.ok.js +1 -1
  135. package/public/vendor/okjs/toolkit/editor/ok-live-shell.ok.js +1 -1
  136. package/public/vendor/okjs/toolkit/elements/ok-dropdown.ok.js +1 -1
  137. package/public/vendor/okjs/toolkit/elements/ok-icon.ok.js +1 -1
  138. package/public/vendor/okjs/toolkit/elements/ok-select.ok.js +1 -1
  139. package/public/vendor/okjs/toolkit/elements/ok-table.ok.js +1 -1
  140. package/public/vendor/okjs/toolkit/errors/ok-crash-boundary.ok.js +1 -1
  141. package/public/vendor/okjs/toolkit/errors/ok-crash-info.ok.js +1 -1
  142. package/public/vendor/okjs/toolkit/i18n/i18n-editor-examples.ok.js +1 -1
  143. package/public/vendor/okjs/toolkit/i18n/i18n-editor.ok.js +1 -1
  144. package/public/vendor/okjs/toolkit/i18n/i18n-key-editor-tips.ok.js +1 -1
  145. package/public/vendor/okjs/toolkit/i18n/i18n-key-editor.ok.js +1 -1
  146. package/public/vendor/okjs/toolkit/i18n/i18n-service.ok.js +1 -1
  147. package/public/vendor/okjs/toolkit/i18n/ok-i18n.js +1 -1
  148. package/public/vendor/okjs/toolkit/interaction/ok-contextmenu.ok.js +1 -1
  149. package/public/vendor/okjs/toolkit/interaction/ok-dismiss-service.ok.js +1 -1
  150. package/public/vendor/okjs/toolkit/interaction/ok-draggable.ok.js +1 -1
  151. package/public/vendor/okjs/toolkit/interaction/ok-flyover-panel.ok.js +1 -1
  152. package/public/vendor/okjs/toolkit/interaction/ok-flyover.ok.js +1 -1
  153. package/public/vendor/okjs/toolkit/interaction/ok-highlight-service.ok.js +1 -1
  154. package/public/vendor/okjs/toolkit/interaction/ok-highlight.ok.js +1 -1
  155. package/public/vendor/okjs/toolkit/interaction/ok-hotkeys-service.ok.js +1 -1
  156. package/public/vendor/okjs/toolkit/interaction/ok-picker-service.ok.js +1 -1
  157. package/public/vendor/okjs/toolkit/interaction/ok-popout-service.ok.js +1 -1
  158. package/public/vendor/okjs/toolkit/interaction/ok-popout.ok.js +1 -1
  159. package/public/vendor/okjs/toolkit/interaction/ok-portal-service.ok.js +1 -1
  160. package/public/vendor/okjs/toolkit/interaction/ok-submenu.ok.js +1 -1
  161. package/public/vendor/okjs/toolkit/layout/ok-resizer.ok.js +1 -1
  162. package/public/vendor/okjs/toolkit/manifest.js +1 -1
  163. package/public/vendor/okjs/toolkit/modals/ok-modal-service.ok.js +1 -1
  164. package/public/vendor/okjs/toolkit/modals/ok-modal.ok.js +1 -1
  165. package/public/vendor/okjs/toolkit/modals/ok-toast-service.ok.js +1 -1
  166. package/public/vendor/okjs/toolkit/modals/ok-window.ok.js +1 -1
  167. package/public/vendor/okjs/toolkit/navigation/hash-router.ok.js +1 -1
  168. package/public/vendor/okjs/toolkit/navigation/history-router.ok.js +1 -1
  169. package/public/vendor/okjs/toolkit/navigation/router.ok.js +1 -1
  170. package/public/vendor/okjs/toolkit/sync/reactive-sync-service.ok.js +1 -1
  171. package/public/vendor/okjs/toolkit/sync/reactive-sync.js +1 -1
  172. package/public/vendor/okjs/toolkit/theming/blocks/ok-design-button.css.js +1 -1
  173. package/public/vendor/okjs/toolkit/theming/blocks/ok-design-input.css.js +1 -1
  174. package/public/vendor/okjs/toolkit/theming/ok-design-style.js +1 -1
  175. package/public/vendor/okjs/toolkit/theming/ok-design-vars.js +1 -1
  176. package/public/vendor/okjs/toolkit/theming/ok-design.ok.js +1 -1
  177. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor-input.ok.js +1 -1
  178. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor-service.ok.js +1 -1
  179. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor-style.js +1 -1
  180. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor-utils.js +1 -1
  181. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor-variable.ok.js +1 -1
  182. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor-vm.js +1 -1
  183. package/public/vendor/okjs/toolkit/theming/ok-theme-editor/ok-theme-editor.ok.js +1 -1
  184. package/public/vendor/okjs/toolkit/theming/ok-theme.ok.js +1 -1
  185. package/public/view-models/type-query-vm.js +1 -1
  186. package/okdb-data/default/data.mdb +0 -0
  187. package/okdb-data/default/lock.mdb +0 -0
  188. package/okdb-data/~log/data.mdb +0 -0
  189. package/okdb-data/~log/lock.mdb +0 -0
  190. package/okdb-data/~system/data.mdb +0 -0
  191. package/okdb-data/~system/lock.mdb +0 -0
  192. package/public/images/logo.png +0 -0
  193. package/public/images/logo.svg +0 -333
@@ -1 +1 @@
1
- function _0x152a(_0x173a76,_0x465f14){_0x173a76=_0x173a76-0x80;const _0x25cefd=_0x25ce();let _0x152a42=_0x25cefd[_0x173a76];return _0x152a42;}const _0x3a097e=_0x152a;(function(_0x14ea29,_0x4e45d1){const _0x5be16a=_0x152a,_0x1de331=_0x14ea29();while(!![]){try{const _0x5b1c09=-parseInt(_0x5be16a(0xcc))/0x1+parseInt(_0x5be16a(0xb2))/0x2*(parseInt(_0x5be16a(0x90))/0x3)+parseInt(_0x5be16a(0xa2))/0x4+parseInt(_0x5be16a(0x9f))/0x5+parseInt(_0x5be16a(0xc4))/0x6*(parseInt(_0x5be16a(0xb0))/0x7)+parseInt(_0x5be16a(0xa7))/0x8+-parseInt(_0x5be16a(0x83))/0x9*(parseInt(_0x5be16a(0x99))/0xa);if(_0x5b1c09===_0x4e45d1)break;else _0x1de331['push'](_0x1de331['shift']());}catch(_0x1f949d){_0x1de331['push'](_0x1de331['shift']());}}}(_0x25ce,0xa279e));function _0x25ce(){const _0x298c37=['$dispatch','put','Execution\x20context\x20passed\x20to\x20the\x20stored\x20function.\x20Shape\x20depends\x20on\x20scope.','reset','listBuckets','InsertAsSnippet','vs-dark','create','column','12300KbHwIX','Execution\x20metadata:\x20runId,\x20scope,\x20env,\x20functionName,\x20trigger,\x20requestedAt.','stream','Log\x20a\x20','Env\x20files\x20facade\x20method:\x20','lastText','enqueue','payload','897674vgNKMQ','warn','CompletionItemKind','light','9yWBceX','getBucket','Method','slice','ctx.','ctx','languages','ctx.env.','edit','$watch','Files\x20facade\x20scoped\x20to\x20the\x20current\x20environment.','registerCompletionItemProvider','log','6NyeSIv','Variable','Structured\x20logger\x20for\x20this\x20run.\x20Emits\x20persisted\x20function\x20logs\x20and\x20live\x20log\x20events.','CompletionItemInsertTextRule','list','lineNumber','monaco','($1)','queue','20638910tTggNw','javascript','debug','remove','$attr','removeJob','5953960KwYfkb','test','Env\x20facade\x20member:\x20','888984IUkDfm','push','unsafe','Property','\x0a\x20\x20\x20\x20\x20\x20\x20\x20<ok-monaco\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22height:100%;\x20width:100%;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20language=\x22javascript\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@mount=\x22editorEl\x20=\x20$el\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@editor-change=\x22onText($event.detail)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22lastText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:theme=\x22monacoTheme\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:options\x0a\x20\x20\x20\x20\x20\x20\x20\x20></ok-monaco>\x0a\x20\x20\x20\x20','8870296EjLpgf','update','options','query','ensureType','updateJob','AbortSignal\x20tied\x20to\x20the\x20runtime\x20timeout\x20for\x20this\x20execution.','registerType','selection','1526OXOsGp','files','658342TCkzUs','env','name','⚠\x20UNSAFE:\x20Full\x20cross-environment\x20database\x20access.\x20Only\x20available\x20when\x20the\x20function\x20is\x20marked\x20unsafe:\x20true.','getByPath','value','Queue\x20facade\x20scoped\x20to\x20the\x20current\x20environment.','get','info'];_0x25ce=function(){return _0x298c37;};return _0x25ce();}import _0x3e7b35 from'@toolkit/components/ok-monaco.ok.js';import _0x56c5f8 from'../stores/theme-store.js';let n=!0x1,o=!0x1;export default{'tag':'ok-js-input','dependencies':[_0x3e7b35],'attr':{'value':{},'theme':{'default':_0x3a097e(0xc1)},'options':{},'language':{'default':'javascript'},'unsafe':{'default':!0x1}},'context':_0x21fae8=>({'editorEl':null,'lastText':'',get 'monacoTheme'(){const _0x41de84=_0x3a097e;return _0x41de84(0x82)===_0x56c5f8['current']?'vs':'vs-dark';},get 'options'(){const _0x4447dc=_0x3a097e;return{'minimap':{'enabled':!0x1},'automaticLayout':!0x0,'wordWrap':'on','fontSize':0xd,'lineNumbersMinChars':0x3,'scrollBeyondLastLine':!0x1,'renderWhitespace':_0x4447dc(0xaf),'tabSize':0x2,'insertSpaces':!0x0,'fixedOverflowWidgets':!0x0,..._0x21fae8[_0x4447dc(0x9d)][_0x4447dc(0xa9)]};},'onText'(_0x532c61){const _0x6f458a=_0x3a097e;this[_0x6f458a(0xc9)]=_0x532c61??'',_0x21fae8[_0x6f458a(0xbb)](_0x6f458a(0x8b),this[_0x6f458a(0xc9)]);},'reset'(){const _0x2f41b0=_0x3a097e;this[_0x2f41b0(0xc9)]='string'==typeof _0x21fae8[_0x2f41b0(0x9d)]['value']?_0x21fae8[_0x2f41b0(0x9d)][_0x2f41b0(0xb7)]:'';}}),'init'(_0x427066){const _0x3ab73a=_0x3a097e;!(function(){const _0x4f6a83=_0x152a,_0x392c68=globalThis[_0x4f6a83(0x96)];if(!_0x392c68||n)return;n=!0x0;const _0x17dc57={'ctx':_0x4f6a83(0xbd),'ctx.payload':'User-provided\x20payload\x20for\x20the\x20current\x20run.','ctx.info':_0x4f6a83(0xc5),'ctx.log':_0x4f6a83(0x92),'ctx.env':'Live\x20facade\x20for\x20the\x20function\x27s\x20environment.\x20Includes\x20data\x20operations\x20plus\x20env.queue\x20and\x20env.files.','ctx.env.queue':_0x4f6a83(0xb8),'ctx.env.files':_0x4f6a83(0x8d),'ctx.okdb':_0x4f6a83(0xb5),'ctx.signal':_0x4f6a83(0xad)};_0x392c68[_0x4f6a83(0x89)][_0x4f6a83(0x8e)](_0x4f6a83(0x9a),{'triggerCharacters':['.','c'],'provideCompletionItems'(_0x8ec243,_0x3ec75c){const _0x5a7cfe=_0x4f6a83,_0x2aa9d0=_0x8ec243['getLineContent'](_0x3ec75c['lineNumber'])[_0x5a7cfe(0x86)](0x0,_0x3ec75c[_0x5a7cfe(0xc3)]-0x1),_0x49ddbe=[],_0x3f499d=new _0x392c68['Range'](_0x3ec75c[_0x5a7cfe(0x95)],_0x3ec75c[_0x5a7cfe(0xc3)],_0x3ec75c[_0x5a7cfe(0x95)],_0x3ec75c[_0x5a7cfe(0xc3)]);if((/\bctx?$/[_0x5a7cfe(0xa0)](_0x2aa9d0)||/(^|[^\w$])$/[_0x5a7cfe(0xa0)](_0x2aa9d0))&&_0x49ddbe[_0x5a7cfe(0xa3)]({'label':'ctx','kind':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x81)][_0x5a7cfe(0x91)],'insertText':_0x5a7cfe(0x88),'documentation':_0x17dc57[_0x5a7cfe(0x88)],'range':_0x3f499d}),/\bctx\.$/[_0x5a7cfe(0xa0)](_0x2aa9d0)){const _0x4c0f83=[_0x5a7cfe(0xcb),_0x5a7cfe(0xba),_0x5a7cfe(0x8f),'signal',_0x5a7cfe(0xb3)];o&&_0x4c0f83[_0x5a7cfe(0xa3)]('okdb');for(const _0x3b5a36 of _0x4c0f83)_0x49ddbe['push']({'label':_0x3b5a36,'kind':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x81)][_0x5a7cfe(0xa5)],'insertText':_0x3b5a36,'documentation':_0x17dc57[_0x5a7cfe(0x87)+_0x3b5a36]||'','range':_0x3f499d});}if(/\bctx\.log\.?$/[_0x5a7cfe(0xa0)](_0x2aa9d0)){for(const _0x4e518e of[_0x5a7cfe(0xba),_0x5a7cfe(0x80),'error',_0x5a7cfe(0x9b)])_0x49ddbe[_0x5a7cfe(0xa3)]({'label':_0x4e518e,'kind':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x81)]['Method'],'insertText':_0x4e518e+'($1)','insertTextRules':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x93)][_0x5a7cfe(0xc0)],'documentation':_0x5a7cfe(0xc7)+_0x4e518e+'\x20message\x20for\x20this\x20function\x20run.','range':_0x3f499d});}if(/\bctx\.env\.$/['test'](_0x2aa9d0)){for(const _0xa29f68 of[_0x5a7cfe(0xb4),'get',_0x5a7cfe(0xbc),_0x5a7cfe(0xa8),'create',_0x5a7cfe(0x9c),_0x5a7cfe(0xaa),'getCount','registerType',_0x5a7cfe(0x98),_0x5a7cfe(0xb1)])_0x49ddbe[_0x5a7cfe(0xa3)]({'label':_0xa29f68,'kind':_0x392c68[_0x5a7cfe(0x89)]['CompletionItemKind'][_0x5a7cfe(0xa5)],'insertText':_0xa29f68,'documentation':_0x17dc57[_0x5a7cfe(0x8a)+_0xa29f68]||_0x5a7cfe(0xa1)+_0xa29f68,'range':_0x3f499d});}if(/\bctx\.env\.queue\.$/[_0x5a7cfe(0xa0)](_0x2aa9d0)){for(const _0x41c884 of[_0x5a7cfe(0xca),'getJob',_0x5a7cfe(0x94),_0x5a7cfe(0xac),_0x5a7cfe(0x9e),'addBucket',_0x5a7cfe(0x84),_0x5a7cfe(0xbf)])_0x49ddbe[_0x5a7cfe(0xa3)]({'label':_0x41c884,'kind':_0x392c68[_0x5a7cfe(0x89)]['CompletionItemKind'][_0x5a7cfe(0x85)],'insertText':_0x41c884+_0x5a7cfe(0x97),'insertTextRules':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x93)][_0x5a7cfe(0xc0)],'documentation':'Env\x20queue\x20facade\x20method:\x20'+_0x41c884,'range':_0x3f499d});}if(/\bctx\.env\.files\.$/['test'](_0x2aa9d0)){for(const _0x41e4db of['upload',_0x5a7cfe(0xc6),_0x5a7cfe(0x9c),'get','list',_0x5a7cfe(0xb6)])_0x49ddbe[_0x5a7cfe(0xa3)]({'label':_0x41e4db,'kind':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x81)][_0x5a7cfe(0x85)],'insertText':_0x41e4db+'($1)','insertTextRules':_0x392c68['languages'][_0x5a7cfe(0x93)][_0x5a7cfe(0xc0)],'documentation':_0x5a7cfe(0xc8)+_0x41e4db,'range':_0x3f499d});}if(o&&/\bctx\.okdb\.$/[_0x5a7cfe(0xa0)](_0x2aa9d0)){for(const _0x293b36 of[_0x5a7cfe(0xb3),'createEnvironment','removeEnvironment',_0x5a7cfe(0xb9),_0x5a7cfe(0xbc),'update',_0x5a7cfe(0xc2),_0x5a7cfe(0x9c),'query',_0x5a7cfe(0xab),_0x5a7cfe(0xae),_0x5a7cfe(0x98),_0x5a7cfe(0xb1)])_0x49ddbe[_0x5a7cfe(0xa3)]({'label':_0x293b36,'kind':_0x392c68[_0x5a7cfe(0x89)][_0x5a7cfe(0x81)][_0x5a7cfe(0xa5)],'insertText':_0x293b36,'documentation':_0x17dc57['ctx.okdb.'+_0x293b36]||'Global\x20OKDB\x20facade\x20member:\x20'+_0x293b36,'range':_0x3f499d});}return{'suggestions':_0x49ddbe};}});}()),o=!!_0x427066['$attr'][_0x3ab73a(0xa4)],_0x427066[_0x3ab73a(0x8c)](()=>_0x427066[_0x3ab73a(0x9d)][_0x3ab73a(0xa4)],_0x33d546=>{o=!!_0x33d546;}),_0x427066[_0x3ab73a(0x8c)](()=>_0x427066[_0x3ab73a(0x9d)][_0x3ab73a(0xb7)],()=>{const _0xcd00f4=_0x3ab73a;(_0x427066[_0xcd00f4(0x9d)][_0xcd00f4(0xb7)]??'')!==this[_0xcd00f4(0xc9)]&&this[_0xcd00f4(0xbe)]();}),this[_0x3ab73a(0xbe)]();},'template':_0x3a097e(0xa6),'style':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20>\x20div\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20'};
1
+ const _0x4793ee=_0x202e;(function(_0x3d7d8e,_0x29e039){const _0x41d320=_0x202e,_0x2d3cfa=_0x3d7d8e();while(!![]){try{const _0x1eceef=-parseInt(_0x41d320(0x1ec))/0x1+-parseInt(_0x41d320(0x1dd))/0x2+parseInt(_0x41d320(0x1aa))/0x3+parseInt(_0x41d320(0x1a3))/0x4*(parseInt(_0x41d320(0x1b9))/0x5)+-parseInt(_0x41d320(0x1df))/0x6+-parseInt(_0x41d320(0x1be))/0x7+parseInt(_0x41d320(0x19d))/0x8;if(_0x1eceef===_0x29e039)break;else _0x2d3cfa['push'](_0x2d3cfa['shift']());}catch(_0x5a1a12){_0x2d3cfa['push'](_0x2d3cfa['shift']());}}}(_0x17ee,0xc2503));import _0x2efdde from'@toolkit/components/ok-monaco.ok.js';function _0x202e(_0x12b74a,_0xcfe7dc){_0x12b74a=_0x12b74a-0x19a;const _0x17ee51=_0x17ee();let _0x202e40=_0x17ee51[_0x12b74a];return _0x202e40;}import _0x10fe0b from'../stores/theme-store.js';let n=!0x1,o=!0x1;export default{'tag':_0x4793ee(0x1db),'dependencies':[_0x2efdde],'attr':{'value':{},'theme':{'default':_0x4793ee(0x1ab)},'options':{},'language':{'default':_0x4793ee(0x1c3)},'unsafe':{'default':!0x1}},'context':_0x1735bb=>({'editorEl':null,'lastText':'',get 'monacoTheme'(){const _0x1cee33=_0x4793ee;return _0x1cee33(0x1e9)===_0x10fe0b['current']?'vs':_0x1cee33(0x1ab);},get 'options'(){const _0xd8d5b7=_0x4793ee;return{'minimap':{'enabled':!0x1},'automaticLayout':!0x0,'wordWrap':'on','fontSize':0xd,'lineNumbersMinChars':0x3,'scrollBeyondLastLine':!0x1,'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!0x0,'fixedOverflowWidgets':!0x0,..._0x1735bb[_0xd8d5b7(0x1b3)][_0xd8d5b7(0x1eb)]};},'onText'(_0x3a3254){const _0x49232a=_0x4793ee;this[_0x49232a(0x1da)]=_0x3a3254??'',_0x1735bb[_0x49232a(0x1dc)](_0x49232a(0x1de),this[_0x49232a(0x1da)]);},'reset'(){const _0x29a7da=_0x4793ee;this['lastText']=_0x29a7da(0x1ce)==typeof _0x1735bb[_0x29a7da(0x1b3)][_0x29a7da(0x1e7)]?_0x1735bb['$attr'][_0x29a7da(0x1e7)]:'';}}),'init'(_0x2bfd04){const _0x41be3f=_0x4793ee;!(function(){const _0x15bcce=_0x202e,_0x24824b=globalThis['monaco'];if(!_0x24824b||n)return;n=!0x0;const _0x4ed2bb={'ctx':'Execution\x20context\x20passed\x20to\x20the\x20stored\x20function.\x20Shape\x20depends\x20on\x20scope.','ctx.payload':'User-provided\x20payload\x20for\x20the\x20current\x20run.','ctx.info':_0x15bcce(0x1b4),'ctx.log':'Structured\x20logger\x20for\x20this\x20run.\x20Emits\x20persisted\x20function\x20logs\x20and\x20live\x20log\x20events.','ctx.env':_0x15bcce(0x1d2),'ctx.env.queue':_0x15bcce(0x1e0),'ctx.env.files':_0x15bcce(0x1c4),'ctx.okdb':_0x15bcce(0x19a),'ctx.signal':_0x15bcce(0x1b8)};_0x24824b[_0x15bcce(0x1b2)][_0x15bcce(0x1ad)](_0x15bcce(0x1c3),{'triggerCharacters':['.','c'],'provideCompletionItems'(_0x13cd11,_0x583e72){const _0x576dad=_0x15bcce,_0x553b97=_0x13cd11[_0x576dad(0x19c)](_0x583e72[_0x576dad(0x1bb)])[_0x576dad(0x1b0)](0x0,_0x583e72[_0x576dad(0x1e1)]-0x1),_0x4be0ea=[],_0xf1826b=new _0x24824b[(_0x576dad(0x1d6))](_0x583e72[_0x576dad(0x1bb)],_0x583e72[_0x576dad(0x1e1)],_0x583e72[_0x576dad(0x1bb)],_0x583e72[_0x576dad(0x1e1)]);if((/\bctx?$/['test'](_0x553b97)||/(^|[^\w$])$/['test'](_0x553b97))&&_0x4be0ea[_0x576dad(0x1ac)]({'label':_0x576dad(0x1d8),'kind':_0x24824b['languages'][_0x576dad(0x1d4)][_0x576dad(0x1a4)],'insertText':_0x576dad(0x1d8),'documentation':_0x4ed2bb[_0x576dad(0x1d8)],'range':_0xf1826b}),/\bctx\.$/['test'](_0x553b97)){const _0x2d6258=[_0x576dad(0x1bd),_0x576dad(0x1b6),_0x576dad(0x1a5),_0x576dad(0x1cc),_0x576dad(0x1af)];o&&_0x2d6258['push']('okdb');for(const _0x5065fc of _0x2d6258)_0x4be0ea['push']({'label':_0x5065fc,'kind':_0x24824b[_0x576dad(0x1b2)][_0x576dad(0x1d4)][_0x576dad(0x19f)],'insertText':_0x5065fc,'documentation':_0x4ed2bb[_0x576dad(0x1e4)+_0x5065fc]||'','range':_0xf1826b});}if(/\bctx\.log\.?$/[_0x576dad(0x1e5)](_0x553b97)){for(const _0x4327c2 of[_0x576dad(0x1b6),'warn',_0x576dad(0x1b1),_0x576dad(0x19b)])_0x4be0ea[_0x576dad(0x1ac)]({'label':_0x4327c2,'kind':_0x24824b['languages']['CompletionItemKind']['Method'],'insertText':_0x4327c2+_0x576dad(0x1a2),'insertTextRules':_0x24824b[_0x576dad(0x1b2)][_0x576dad(0x1c9)]['InsertAsSnippet'],'documentation':_0x576dad(0x1a0)+_0x4327c2+_0x576dad(0x1d1),'range':_0xf1826b});}if(/\bctx\.env\.$/[_0x576dad(0x1e5)](_0x553b97)){for(const _0x253597 of[_0x576dad(0x1c5),_0x576dad(0x1a7),_0x576dad(0x1c8),_0x576dad(0x1cb),_0x576dad(0x1ca),_0x576dad(0x1b7),_0x576dad(0x1bf),_0x576dad(0x1e3),_0x576dad(0x1a8),'queue',_0x576dad(0x1e6)])_0x4be0ea[_0x576dad(0x1ac)]({'label':_0x253597,'kind':_0x24824b[_0x576dad(0x1b2)][_0x576dad(0x1d4)]['Property'],'insertText':_0x253597,'documentation':_0x4ed2bb['ctx.env.'+_0x253597]||_0x576dad(0x1e2)+_0x253597,'range':_0xf1826b});}if(/\bctx\.env\.queue\.$/[_0x576dad(0x1e5)](_0x553b97)){for(const _0x459ac1 of[_0x576dad(0x1d5),_0x576dad(0x1a1),_0x576dad(0x1d0),'updateJob',_0x576dad(0x1b5),_0x576dad(0x1a9),_0x576dad(0x1ae),_0x576dad(0x1ba)])_0x4be0ea[_0x576dad(0x1ac)]({'label':_0x459ac1,'kind':_0x24824b[_0x576dad(0x1b2)][_0x576dad(0x1d4)]['Method'],'insertText':_0x459ac1+_0x576dad(0x1a2),'insertTextRules':_0x24824b['languages'][_0x576dad(0x1c9)][_0x576dad(0x1cd)],'documentation':'Env\x20queue\x20facade\x20method:\x20'+_0x459ac1,'range':_0xf1826b});}if(/\bctx\.env\.files\.$/[_0x576dad(0x1e5)](_0x553b97)){for(const _0x294410 of['upload',_0x576dad(0x1ea),'remove',_0x576dad(0x1a7),_0x576dad(0x1d0),_0x576dad(0x1c0)])_0x4be0ea[_0x576dad(0x1ac)]({'label':_0x294410,'kind':_0x24824b['languages'][_0x576dad(0x1d4)]['Method'],'insertText':_0x294410+_0x576dad(0x1a2),'insertTextRules':_0x24824b[_0x576dad(0x1b2)][_0x576dad(0x1c9)][_0x576dad(0x1cd)],'documentation':_0x576dad(0x1d9)+_0x294410,'range':_0xf1826b});}if(o&&/\bctx\.okdb\.$/['test'](_0x553b97)){for(const _0x59a644 of[_0x576dad(0x1af),_0x576dad(0x1a6),_0x576dad(0x1bc),'get',_0x576dad(0x1c8),_0x576dad(0x1cb),_0x576dad(0x1ca),_0x576dad(0x1b7),_0x576dad(0x1bf),_0x576dad(0x1cf),_0x576dad(0x1a8),_0x576dad(0x1c1),_0x576dad(0x1e6)])_0x4be0ea[_0x576dad(0x1ac)]({'label':_0x59a644,'kind':_0x24824b['languages'][_0x576dad(0x1d4)][_0x576dad(0x19f)],'insertText':_0x59a644,'documentation':_0x4ed2bb[_0x576dad(0x1d7)+_0x59a644]||_0x576dad(0x19e)+_0x59a644,'range':_0xf1826b});}return{'suggestions':_0x4be0ea};}});}()),o=!!_0x2bfd04[_0x41be3f(0x1b3)][_0x41be3f(0x1e8)],_0x2bfd04[_0x41be3f(0x1c7)](()=>_0x2bfd04[_0x41be3f(0x1b3)][_0x41be3f(0x1e8)],_0x53a568=>{o=!!_0x53a568;}),_0x2bfd04['$watch'](()=>_0x2bfd04[_0x41be3f(0x1b3)][_0x41be3f(0x1e7)],()=>{const _0xe1a8f=_0x41be3f;(_0x2bfd04[_0xe1a8f(0x1b3)][_0xe1a8f(0x1e7)]??'')!==this[_0xe1a8f(0x1da)]&&this[_0xe1a8f(0x1c6)]();}),this[_0x41be3f(0x1c6)]();},'template':_0x4793ee(0x1c2),'style':_0x4793ee(0x1d3)};function _0x17ee(){const _0x3a13b3=['error','languages','$attr','Execution\x20metadata:\x20runId,\x20scope,\x20env,\x20functionName,\x20trigger,\x20requestedAt.','removeJob','info','remove','AbortSignal\x20tied\x20to\x20the\x20runtime\x20timeout\x20for\x20this\x20execution.','2613505rBephh','listBuckets','lineNumber','removeEnvironment','payload','9756026lHCudT','query','getByPath','queue','\x0a\x20\x20\x20\x20\x20\x20\x20\x20<ok-monaco\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22height:100%;\x20width:100%;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20language=\x22javascript\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@mount=\x22editorEl\x20=\x20$el\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@editor-change=\x22onText($event.detail)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22lastText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:theme=\x22monacoTheme\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:options\x0a\x20\x20\x20\x20\x20\x20\x20\x20></ok-monaco>\x0a\x20\x20\x20\x20','javascript','Files\x20facade\x20scoped\x20to\x20the\x20current\x20environment.','name','reset','$watch','put','CompletionItemInsertTextRule','create','update','signal','InsertAsSnippet','string','ensureType','list','\x20message\x20for\x20this\x20function\x20run.','Live\x20facade\x20for\x20the\x20function\x27s\x20environment.\x20Includes\x20data\x20operations\x20plus\x20env.queue\x20and\x20env.files.','\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20>\x20div\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20','CompletionItemKind','enqueue','Range','ctx.okdb.','ctx','Env\x20files\x20facade\x20method:\x20','lastText','ok-js-input','$dispatch','227622dAaSpk','edit','113736slxEyn','Queue\x20facade\x20scoped\x20to\x20the\x20current\x20environment.','column','Env\x20facade\x20member:\x20','getCount','ctx.','test','files','value','unsafe','light','stream','options','139501yIunGq','⚠\x20UNSAFE:\x20Full\x20cross-environment\x20database\x20access.\x20Only\x20available\x20when\x20the\x20function\x20is\x20marked\x20unsafe:\x20true.','debug','getLineContent','14304608CKDtCP','Global\x20OKDB\x20facade\x20member:\x20','Property','Log\x20a\x20','getJob','($1)','4bUjkVV','Variable','log','createEnvironment','get','registerType','addBucket','453348uoHwcN','vs-dark','push','registerCompletionItemProvider','getBucket','env','slice'];_0x17ee=function(){return _0x3a13b3;};return _0x17ee();}
@@ -1 +1 @@
1
- const _0x3b476e=_0x27ac;(function(_0x183ba9,_0x35ea45){const _0x58d879=_0x27ac,_0x4aa83d=_0x183ba9();while(!![]){try{const _0xdbd933=-parseInt(_0x58d879(0xef))/0x1*(parseInt(_0x58d879(0x10b))/0x2)+-parseInt(_0x58d879(0xd9))/0x3+-parseInt(_0x58d879(0x11d))/0x4*(-parseInt(_0x58d879(0xfa))/0x5)+-parseInt(_0x58d879(0xf4))/0x6*(parseInt(_0x58d879(0x118))/0x7)+-parseInt(_0x58d879(0x103))/0x8*(parseInt(_0x58d879(0xe0))/0x9)+parseInt(_0x58d879(0x109))/0xa+parseInt(_0x58d879(0x10d))/0xb;if(_0xdbd933===_0x35ea45)break;else _0x4aa83d['push'](_0x4aa83d['shift']());}catch(_0x3e7e96){_0x4aa83d['push'](_0x4aa83d['shift']());}}}(_0x174b,0xb4a45));import _0x58259a from'@toolkit/components/ok-monaco.ok.js';import _0x22e818 from'../stores/theme-store.js';function _0x174b(){const _0x1c4c94=['shiftKey','editorEl','parse','7zUUUjp','push','getEditor','KeyCode','monaco','224836DqjhFP','none','change','input','175482sUSmwt','languages','message','mode','$ok','options','schema','9cFhdiN','lineNumber','parse-error','mergeClass','lastValid','$attr','stopPropagation','auto','\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag].textbox\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex-direction:column;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:100%;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag].input\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:inline-flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:auto;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:12rem;\x20/*\x20or\x20whatever\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:2rem;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20the\x20editor\x20container\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20force\x20monaco\x20inner\x20container\x20to\x20fill\x20space\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20>\x20div\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20','metaKey','hidden','$dispatch','toString','_schemaUri','jsonDefaults','10tsRTsk','getPositionAt','resetEditor','commitOnEnter','setDiagnosticsOptions','482772oFVnVQ','solid','$watch','stringify','MarkerSeverity','off','35LnGUsE','onKeyDown','column','updateOptions','match','current','delete','set','onText','5100808tBTCSP','$cache','value','json','getModel','util','7434070DMAKFu','editor','114074tJrIcu','setModelMarkers','10449626MnIASI','textbox','applyValidationMarkers','vs-dark','edit','lastText','Enter','ok-json-input'];_0x174b=function(){return _0x1c4c94;};return _0x174b();}const n=new Map();function i(){const _0x492175=_0x27ac,_0x3adc9c=window['monaco'];if(!_0x3adc9c?.[_0x492175(0xda)]?.['json']?.[_0x492175(0xee)])return;const _0x34ae41=[];for(const [_0xdc5241,_0x455218]of n)_0x34ae41[_0x492175(0x119)]({'uri':_0xdc5241,'fileMatch':[_0xdc5241],'schema':_0x455218});_0x3adc9c[_0x492175(0xda)][_0x492175(0x106)][_0x492175(0xee)][_0x492175(0xf3)]({'validate':!0x0,'allowComments':!0x1,'enableSchemaRequest':!0x1,'schemas':_0x34ae41});}function _0x27ac(_0x5f3f4f,_0x289300){_0x5f3f4f=_0x5f3f4f-0xd9;const _0x174b2a=_0x174b();let _0x27acfa=_0x174b2a[_0x5f3f4f];return _0x27acfa;}export default{'tag':_0x3b476e(0x114),'dependencies':[_0x58259a],'attr':{'value':{},'mode':{'default':_0x3b476e(0x10e)},'theme':{'default':_0x3b476e(0x110)},'class':{'transform':(_0x5422b2,_0x255e87)=>_0x5422b2[_0x3b476e(0xdd)][_0x3b476e(0x108)][_0x3b476e(0xe3)](_0x255e87,_0x5422b2[_0x3b476e(0xe5)]['mode'])},'options':{},'commitOnEnter':{'default':!0x0},'schema':{}},'context':_0x3e6440=>({'editorEl':null,'lastValid':null,'lastText':'','_schemaUri':null,get 'monacoTheme'(){const _0x4062a1=_0x3b476e;return'light'===_0x22e818[_0x4062a1(0xff)]?'vs':'vs-dark';},get 'mode'(){const _0x586519=_0x3b476e;return _0x3e6440[_0x586519(0xe5)][_0x586519(0xdc)];},get 'options'(){const _0x56e355=_0x3b476e,_0xa6a1e1=!!_0x3e6440[_0x56e355(0xe5)][_0x56e355(0xdf)];return{'lineNumbers':'off','glyphMargin':!0x1,'folding':!0x1,'renderLineHighlight':_0x56e355(0x11e),'lineDecorationsWidth':0x0,'lineNumbersMinChars':0x0,'minimap':{'enabled':!0x1},'overviewRulerBorder':!0x1,'overviewRulerLanes':0x0,'renderWhitespace':_0x56e355(0x11e),'renderIndentGuides':!0x1,'guides':{'indentation':!0x1,'highlightActiveIndentation':!0x1},'padding':{'top':0x0,'bottom':0x0},'cursorSmoothCaretAnimation':!0x1,'cursorBlinking':_0x56e355(0xf5),'quickSuggestions':_0xa6a1e1,'suggestOnTriggerCharacters':_0xa6a1e1,'parameterHints':{'enabled':!0x1},'contextmenu':!0x1,'rulers':[],'fixedOverflowWidgets':!0x0,..._0x56e355(0x120)===this[_0x56e355(0xdc)]?{'wordWrap':_0x56e355(0xf9),'scrollbar':{'vertical':_0x56e355(0xea),'horizontal':'hidden','useShadows':!0x1}}:{'wordWrap':'on','scrollbar':{'vertical':_0x56e355(0xe7),'horizontal':_0x56e355(0xea),'useShadows':!0x1}},..._0x3e6440['$attr'][_0x56e355(0xde)]};},'stringify'(_0x366680){const _0x35ae85=_0x3b476e;if(void 0x0===_0x366680)return'';try{return _0x35ae85(0x120)===this[_0x35ae85(0xdc)]?JSON[_0x35ae85(0xf7)](_0x366680):JSON[_0x35ae85(0xf7)](_0x366680,null,'\x09');}catch{return String(_0x366680??'');}},'applyValidationMarkers'(_0x55a466){const _0x53bb64=_0x3b476e,_0x3e9d34=window[_0x53bb64(0x11c)],_0x5a5595=this[_0x53bb64(0x11a)]();if(!_0x3e9d34||!_0x5a5595)return null;const _0x243f6b=_0x5a5595[_0x53bb64(0x107)]();try{const _0x5013ff=JSON[_0x53bb64(0x117)](_0x55a466);return _0x3e9d34[_0x53bb64(0x10a)][_0x53bb64(0x10c)](_0x243f6b,_0x53bb64(0x106),[]),_0x5013ff;}catch(_0x2643e9){const _0x4c84b3=_0x2643e9[_0x53bb64(0xdb)],_0x52ebe3=_0x4c84b3[_0x53bb64(0xfe)](/at position (\d+)/),_0x1cebdf=_0x52ebe3?parseInt(_0x52ebe3[0x1],0xa):0x0,_0x1259e9=_0x243f6b[_0x53bb64(0xf0)](_0x1cebdf);return _0x3e9d34[_0x53bb64(0x10a)][_0x53bb64(0x10c)](_0x243f6b,_0x53bb64(0x106),[{'startLineNumber':_0x1259e9[_0x53bb64(0xe1)],'startColumn':_0x1259e9[_0x53bb64(0xfc)],'endLineNumber':_0x1259e9[_0x53bb64(0xe1)],'endColumn':_0x1259e9[_0x53bb64(0xfc)]+0x1,'message':_0x4c84b3,'severity':_0x3e9d34[_0x53bb64(0xf8)]['Error']}]),_0x2643e9;}},'getEditor'(){const _0x37892f=_0x3b476e;return this[_0x37892f(0x116)]?.['$scope']?.[_0x37892f(0x104)]?.[_0x37892f(0x10a)]||null;},'onText'(_0xb97c98,_0x17fb67=!0x0){const _0x1e3236=_0x3b476e;if(_0xb97c98===this['lastText'])return;this[_0x1e3236(0x112)]=_0xb97c98;const _0x5bafa0=this[_0x1e3236(0x10f)](_0xb97c98);_0x5bafa0 instanceof Error?_0x17fb67&&_0x3e6440[_0x1e3236(0xeb)](_0x1e3236(0xe2),!0x0):(this['lastValid']=_0x5bafa0,_0x17fb67&&(_0x3e6440[_0x1e3236(0xeb)](_0x1e3236(0x111),_0x5bafa0),_0x3e6440[_0x1e3236(0xeb)](_0x1e3236(0xe2),!0x1)));},'resetEditor'(_0x57dec6=!0x0){const _0x59f20e=_0x3b476e,_0x4af27f=this[_0x59f20e(0xf7)](_0x3e6440[_0x59f20e(0xe5)][_0x59f20e(0x105)]);this[_0x59f20e(0x102)](_0x4af27f,_0x57dec6);}}),'init'(_0x4975ca){const _0x149337=_0x3b476e;_0x4975ca['$watch'](()=>_0x4975ca[_0x149337(0xe5)]['value'],()=>{const _0x44b184=_0x149337;_0x4975ca[_0x44b184(0xe5)][_0x44b184(0x105)]!==this[_0x44b184(0xe4)]&&this[_0x44b184(0xf1)]();}),this['getEditor']()[_0x149337(0xfb)](_0x3c6d22=>{const _0x19549c=_0x149337;_0x3c6d22['keyCode']===monaco[_0x19549c(0x11b)][_0x19549c(0x113)]&&(_0x4975ca[_0x19549c(0xe5)][_0x19549c(0xf2)]&&!_0x3c6d22[_0x19549c(0x115)]||!_0x4975ca[_0x19549c(0xe5)][_0x19549c(0xf2)]&&(_0x3c6d22['ctrlKey']||_0x3c6d22[_0x19549c(0xe9)]))&&(_0x3c6d22['preventDefault'](),_0x3c6d22[_0x19549c(0xe6)](),''===this[_0x19549c(0x112)]?_0x4975ca[_0x19549c(0xeb)](_0x19549c(0x11f),void 0x0):null!==this[_0x19549c(0xe4)]&&_0x4975ca[_0x19549c(0xeb)]('change',this[_0x19549c(0xe4)]));}),this[_0x149337(0xf1)](!0x1);const _0x4ff671=()=>{const _0xb1f424=_0x149337;if(this['_schemaUri'])return this[_0xb1f424(0xed)];const _0x5dd08f=this['getEditor']();return _0x5dd08f?(this[_0xb1f424(0xed)]=_0x5dd08f['getModel']()?.['uri']?.[_0xb1f424(0xec)]()??null,this['_schemaUri']):null;},_0x4cceee=_0x16cfb7=>{const _0x573476=_0x149337,_0x7818f3=_0x4ff671();if(!_0x7818f3)return;if(_0x16cfb7){let _0xfa3773;try{_0xfa3773=JSON[_0x573476(0x117)](JSON['stringify'](_0x16cfb7));}catch{_0xfa3773=_0x16cfb7;}n[_0x573476(0x101)](_0x7818f3,_0xfa3773);}else n[_0x573476(0x100)](_0x7818f3);i();const _0x264d95=this[_0x573476(0x11a)]();_0x264d95&&_0x264d95[_0x573476(0xfd)]({'quickSuggestions':!!_0x16cfb7,'suggestOnTriggerCharacters':!!_0x16cfb7,'fixedOverflowWidgets':!0x0});};_0x4975ca[_0x149337(0xe5)][_0x149337(0xdf)]&&_0x4cceee(_0x4975ca[_0x149337(0xe5)]['schema']),_0x4975ca[_0x149337(0xf6)](()=>_0x4975ca[_0x149337(0xe5)][_0x149337(0xdf)],_0x1aba90=>{_0x4cceee(_0x1aba90);});},'unmount'(){const _0xf00b7c=_0x3b476e;this[_0xf00b7c(0xed)]&&(n[_0xf00b7c(0x100)](this[_0xf00b7c(0xed)]),i(),this[_0xf00b7c(0xed)]=null);},'template':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<ok-monaco\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22height:\x20100%\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20language=\x22json\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@mount=\x22editorEl\x20=\x20$el\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@editor-change=\x22onText($event.detail)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22lastText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:theme=\x22monacoTheme\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:options\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20></ok-monaco>\x0a\x20\x20\x20\x20','style':_0x3b476e(0xe8)};
1
+ const _0x379504=_0x5cb3;(function(_0x48854d,_0x17351e){const _0x1e3282=_0x5cb3,_0x142f09=_0x48854d();while(!![]){try{const _0x2bc1ba=parseInt(_0x1e3282(0x223))/0x1*(parseInt(_0x1e3282(0x207))/0x2)+parseInt(_0x1e3282(0x210))/0x3*(-parseInt(_0x1e3282(0x218))/0x4)+-parseInt(_0x1e3282(0x1ea))/0x5*(-parseInt(_0x1e3282(0x22e))/0x6)+-parseInt(_0x1e3282(0x201))/0x7*(-parseInt(_0x1e3282(0x1e8))/0x8)+parseInt(_0x1e3282(0x21f))/0x9+-parseInt(_0x1e3282(0x206))/0xa*(parseInt(_0x1e3282(0x1f9))/0xb)+parseInt(_0x1e3282(0x1f2))/0xc*(parseInt(_0x1e3282(0x1f0))/0xd);if(_0x2bc1ba===_0x17351e)break;else _0x142f09['push'](_0x142f09['shift']());}catch(_0x17ec5d){_0x142f09['push'](_0x142f09['shift']());}}}(_0x42af,0x996ec));function _0x5cb3(_0xbc0802,_0x2d8110){_0xbc0802=_0xbc0802-0x1e4;const _0x42afc1=_0x42af();let _0x5cb30e=_0x42afc1[_0xbc0802];return _0x5cb30e;}import _0x3ca038 from'@toolkit/components/ok-monaco.ok.js';function _0x42af(){const _0x158aab=['solid','KeyCode','hidden','message','json','schema','getModel','off','1074rZTYMF','Enter','$cache','$watch','stringify','edit','util','editorEl','13876pzsGxz','jsonDefaults','monaco','$dispatch','none','mode','lastText','7936398JdBnKB','mergeClass','getPositionAt','$ok','596FuIsRi','ok-json-input','getEditor','onText','metaKey','change','parse-error','Error','setModelMarkers','lastValid','_schemaUri','1294896Lqkzae','uri','column','setDiagnosticsOptions','editor','8IkwEbK','resetEditor','15EMrYSx','light','MarkerSeverity','parse','languages','delete','13fuaNIW','ctrlKey','410676VzIPfb','onKeyDown','auto','$scope','input','lineNumber','\x0a\x20\x20\x20\x20\x20\x20\x20\x20<ok-monaco\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22height:\x20100%\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20language=\x22json\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@mount=\x22editorEl\x20=\x20$el\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@editor-change=\x22onText($event.detail)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22lastText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:theme=\x22monacoTheme\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:options\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20></ok-monaco>\x0a\x20\x20\x20\x20','3096137DeGGwk','updateOptions','commitOnEnter','match','vs-dark','$attr','preventDefault','applyValidationMarkers','3338188sWsZIe','keyCode','options','value','stopPropagation','10COKMPQ','374eDqQhP'];_0x42af=function(){return _0x158aab;};return _0x42af();}import _0x4a9cb0 from'../stores/theme-store.js';const n=new Map();function i(){const _0x1cc906=_0x5cb3,_0x13532f=window[_0x1cc906(0x21a)];if(!_0x13532f?.['languages']?.[_0x1cc906(0x20c)]?.['jsonDefaults'])return;const _0x1e51b8=[];for(const [_0x254220,_0x5f457a]of n)_0x1e51b8['push']({'uri':_0x254220,'fileMatch':[_0x254220],'schema':_0x5f457a});_0x13532f[_0x1cc906(0x1ee)][_0x1cc906(0x20c)][_0x1cc906(0x219)][_0x1cc906(0x1e6)]({'validate':!0x0,'allowComments':!0x1,'enableSchemaRequest':!0x1,'schemas':_0x1e51b8});}export default{'tag':_0x379504(0x224),'dependencies':[_0x3ca038],'attr':{'value':{},'mode':{'default':'textbox'},'theme':{'default':_0x379504(0x1fd)},'class':{'transform':(_0x5a1e61,_0x463958)=>_0x5a1e61[_0x379504(0x222)][_0x379504(0x216)][_0x379504(0x220)](_0x463958,_0x5a1e61[_0x379504(0x1fe)][_0x379504(0x21d)])},'options':{},'commitOnEnter':{'default':!0x0},'schema':{}},'context':_0x37ff2b=>({'editorEl':null,'lastValid':null,'lastText':'','_schemaUri':null,get 'monacoTheme'(){const _0x32b94d=_0x379504;return _0x32b94d(0x1eb)===_0x4a9cb0['current']?'vs':_0x32b94d(0x1fd);},get 'mode'(){const _0x5e1947=_0x379504;return _0x37ff2b['$attr'][_0x5e1947(0x21d)];},get 'options'(){const _0x5e70a9=_0x379504,_0x2cde13=!!_0x37ff2b[_0x5e70a9(0x1fe)][_0x5e70a9(0x20d)];return{'lineNumbers':_0x5e70a9(0x20f),'glyphMargin':!0x1,'folding':!0x1,'renderLineHighlight':_0x5e70a9(0x21c),'lineDecorationsWidth':0x0,'lineNumbersMinChars':0x0,'minimap':{'enabled':!0x1},'overviewRulerBorder':!0x1,'overviewRulerLanes':0x0,'renderWhitespace':_0x5e70a9(0x21c),'renderIndentGuides':!0x1,'guides':{'indentation':!0x1,'highlightActiveIndentation':!0x1},'padding':{'top':0x0,'bottom':0x0},'cursorSmoothCaretAnimation':!0x1,'cursorBlinking':_0x5e70a9(0x208),'quickSuggestions':_0x2cde13,'suggestOnTriggerCharacters':_0x2cde13,'parameterHints':{'enabled':!0x1},'contextmenu':!0x1,'rulers':[],'fixedOverflowWidgets':!0x0,..._0x5e70a9(0x1f6)===this[_0x5e70a9(0x21d)]?{'wordWrap':_0x5e70a9(0x20f),'scrollbar':{'vertical':_0x5e70a9(0x20a),'horizontal':_0x5e70a9(0x20a),'useShadows':!0x1}}:{'wordWrap':'on','scrollbar':{'vertical':_0x5e70a9(0x1f4),'horizontal':_0x5e70a9(0x20a),'useShadows':!0x1}},..._0x37ff2b[_0x5e70a9(0x1fe)][_0x5e70a9(0x203)]};},'stringify'(_0x279460){const _0x308fe7=_0x379504;if(void 0x0===_0x279460)return'';try{return _0x308fe7(0x1f6)===this['mode']?JSON[_0x308fe7(0x214)](_0x279460):JSON[_0x308fe7(0x214)](_0x279460,null,'\x09');}catch{return String(_0x279460??'');}},'applyValidationMarkers'(_0x380dde){const _0x22eb8d=_0x379504,_0x5cadd5=window[_0x22eb8d(0x21a)],_0xdc72a3=this[_0x22eb8d(0x225)]();if(!_0x5cadd5||!_0xdc72a3)return null;const _0x176af5=_0xdc72a3[_0x22eb8d(0x20e)]();try{const _0x695cce=JSON[_0x22eb8d(0x1ed)](_0x380dde);return _0x5cadd5[_0x22eb8d(0x1e7)][_0x22eb8d(0x22b)](_0x176af5,'json',[]),_0x695cce;}catch(_0x51252e){const _0x586087=_0x51252e[_0x22eb8d(0x20b)],_0x86f537=_0x586087[_0x22eb8d(0x1fc)](/at position (\d+)/),_0x21b9e6=_0x86f537?parseInt(_0x86f537[0x1],0xa):0x0,_0x5ba11c=_0x176af5[_0x22eb8d(0x221)](_0x21b9e6);return _0x5cadd5[_0x22eb8d(0x1e7)]['setModelMarkers'](_0x176af5,'json',[{'startLineNumber':_0x5ba11c[_0x22eb8d(0x1f7)],'startColumn':_0x5ba11c[_0x22eb8d(0x1e5)],'endLineNumber':_0x5ba11c[_0x22eb8d(0x1f7)],'endColumn':_0x5ba11c['column']+0x1,'message':_0x586087,'severity':_0x5cadd5[_0x22eb8d(0x1ec)][_0x22eb8d(0x22a)]}]),_0x51252e;}},'getEditor'(){const _0x21058b=_0x379504;return this[_0x21058b(0x217)]?.[_0x21058b(0x1f5)]?.[_0x21058b(0x212)]?.[_0x21058b(0x1e7)]||null;},'onText'(_0x2b4779,_0x21ccc0=!0x0){const _0x9411fa=_0x379504;if(_0x2b4779===this[_0x9411fa(0x21e)])return;this['lastText']=_0x2b4779;const _0x90f5de=this[_0x9411fa(0x200)](_0x2b4779);_0x90f5de instanceof Error?_0x21ccc0&&_0x37ff2b['$dispatch'](_0x9411fa(0x229),!0x0):(this[_0x9411fa(0x22c)]=_0x90f5de,_0x21ccc0&&(_0x37ff2b[_0x9411fa(0x21b)](_0x9411fa(0x215),_0x90f5de),_0x37ff2b[_0x9411fa(0x21b)](_0x9411fa(0x229),!0x1)));},'resetEditor'(_0xd50bf8=!0x0){const _0x176383=_0x379504,_0x1977af=this[_0x176383(0x214)](_0x37ff2b[_0x176383(0x1fe)][_0x176383(0x204)]);this[_0x176383(0x226)](_0x1977af,_0xd50bf8);}}),'init'(_0x5246d1){const _0xacc958=_0x379504;_0x5246d1[_0xacc958(0x213)](()=>_0x5246d1[_0xacc958(0x1fe)][_0xacc958(0x204)],()=>{const _0x4953f5=_0xacc958;_0x5246d1[_0x4953f5(0x1fe)]['value']!==this[_0x4953f5(0x22c)]&&this[_0x4953f5(0x1e9)]();}),this[_0xacc958(0x225)]()[_0xacc958(0x1f3)](_0x6569e4=>{const _0x33ace4=_0xacc958;_0x6569e4[_0x33ace4(0x202)]===monaco[_0x33ace4(0x209)][_0x33ace4(0x211)]&&(_0x5246d1[_0x33ace4(0x1fe)][_0x33ace4(0x1fb)]&&!_0x6569e4['shiftKey']||!_0x5246d1['$attr'][_0x33ace4(0x1fb)]&&(_0x6569e4[_0x33ace4(0x1f1)]||_0x6569e4[_0x33ace4(0x227)]))&&(_0x6569e4[_0x33ace4(0x1ff)](),_0x6569e4[_0x33ace4(0x205)](),''===this[_0x33ace4(0x21e)]?_0x5246d1[_0x33ace4(0x21b)](_0x33ace4(0x228),void 0x0):null!==this[_0x33ace4(0x22c)]&&_0x5246d1[_0x33ace4(0x21b)](_0x33ace4(0x228),this[_0x33ace4(0x22c)]));}),this['resetEditor'](!0x1);const _0x4a3b74=()=>{const _0xc8bfdb=_0xacc958;if(this[_0xc8bfdb(0x22d)])return this[_0xc8bfdb(0x22d)];const _0x19a03e=this[_0xc8bfdb(0x225)]();return _0x19a03e?(this[_0xc8bfdb(0x22d)]=_0x19a03e[_0xc8bfdb(0x20e)]()?.[_0xc8bfdb(0x1e4)]?.['toString']()??null,this['_schemaUri']):null;},_0x228096=_0x1d916c=>{const _0x43da91=_0xacc958,_0x16788f=_0x4a3b74();if(!_0x16788f)return;if(_0x1d916c){let _0x564552;try{_0x564552=JSON['parse'](JSON[_0x43da91(0x214)](_0x1d916c));}catch{_0x564552=_0x1d916c;}n['set'](_0x16788f,_0x564552);}else n[_0x43da91(0x1ef)](_0x16788f);i();const _0x52a235=this[_0x43da91(0x225)]();_0x52a235&&_0x52a235[_0x43da91(0x1fa)]({'quickSuggestions':!!_0x1d916c,'suggestOnTriggerCharacters':!!_0x1d916c,'fixedOverflowWidgets':!0x0});};_0x5246d1[_0xacc958(0x1fe)][_0xacc958(0x20d)]&&_0x228096(_0x5246d1['$attr'][_0xacc958(0x20d)]),_0x5246d1[_0xacc958(0x213)](()=>_0x5246d1[_0xacc958(0x1fe)][_0xacc958(0x20d)],_0x3ff737=>{_0x228096(_0x3ff737);});},'unmount'(){const _0x3b2f9e=_0x379504;this[_0x3b2f9e(0x22d)]&&(n[_0x3b2f9e(0x1ef)](this['_schemaUri']),i(),this[_0x3b2f9e(0x22d)]=null);},'template':_0x379504(0x1f8),'style':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag].textbox\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex-direction:column;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:100%;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag].input\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:inline-flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:auto;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:12rem;\x20/*\x20or\x20whatever\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:2rem;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20the\x20editor\x20container\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20force\x20monaco\x20inner\x20container\x20to\x20fill\x20space\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20>\x20div\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20'};
@@ -1 +1 @@
1
- function _0x2df6(_0x17ec22,_0x592a24){_0x17ec22=_0x17ec22-0x1f2;var _0x18f805=_0x18f8();var _0x2df69a=_0x18f805[_0x17ec22];return _0x2df69a;}var _0x3a4cde=_0x2df6;(function(_0x954f71,_0x1c3c33){var _0x419323=_0x2df6,_0x2f0883=_0x954f71();while(!![]){try{var _0x40d821=parseInt(_0x419323(0x1f5))/0x1*(-parseInt(_0x419323(0x203))/0x2)+-parseInt(_0x419323(0x1f3))/0x3+-parseInt(_0x419323(0x1fc))/0x4+-parseInt(_0x419323(0x200))/0x5*(-parseInt(_0x419323(0x1fd))/0x6)+-parseInt(_0x419323(0x1f2))/0x7+parseInt(_0x419323(0x201))/0x8*(-parseInt(_0x419323(0x1f7))/0x9)+parseInt(_0x419323(0x1fa))/0xa*(parseInt(_0x419323(0x202))/0xb);if(_0x40d821===_0x1c3c33)break;else _0x2f0883['push'](_0x2f0883['shift']());}catch(_0x17e1b2){_0x2f0883['push'](_0x2f0883['shift']());}}}(_0x18f8,0x63f35));function _0x18f8(){var _0x2c3db7=['830118KDCSqe','value','727ZuSQmT','lastText','18MqEtQi','$watch','reset','90IBNWti','\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20>\x20div\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20','1471632bvbrib','29238dBSFVf','options','json','710CqMugg','3167352dqtxjs','1761089HRjUVl','594rIaXkt','ok-text-monaco-input','$attr','vs-dark','497623DvslnY'];_0x18f8=function(){return _0x2c3db7;};return _0x18f8();}import _0x2bfb04 from'@toolkit/components/ok-monaco.ok.js';import _0x466505 from'../stores/theme-store.js';export default{'tag':_0x3a4cde(0x204),'dependencies':[_0x2bfb04],'attr':{'value':{},'theme':{'default':_0x3a4cde(0x206)},'options':{},'language':{'default':_0x3a4cde(0x1ff)}},'context':_0x8c4d3f=>({'lastText':'',get 'monacoTheme'(){var _0x47b4a3=_0x3a4cde;return'light'===_0x466505['current']?'vs':_0x47b4a3(0x206);},get 'options'(){var _0x24689c=_0x3a4cde;return{'minimap':{'enabled':!0x1},'automaticLayout':!0x0,'wordWrap':'on','fontSize':0xd,'scrollBeyondLastLine':!0x1,'fixedOverflowWidgets':!0x0,..._0x8c4d3f[_0x24689c(0x205)][_0x24689c(0x1fe)]};},'onText'(_0x446a57){var _0x35ae0a=_0x3a4cde;this[_0x35ae0a(0x1f6)]=_0x446a57??'',_0x8c4d3f['$dispatch']('edit',this[_0x35ae0a(0x1f6)]);},'reset'(){var _0x4f73c6=_0x3a4cde;this['lastText']='string'==typeof _0x8c4d3f[_0x4f73c6(0x205)][_0x4f73c6(0x1f4)]?_0x8c4d3f['$attr'][_0x4f73c6(0x1f4)]:'';}}),'init'(_0x394d3a){var _0x17fa94=_0x3a4cde;_0x394d3a[_0x17fa94(0x1f8)](()=>_0x394d3a[_0x17fa94(0x205)]['value'],()=>{var _0x282c65=_0x17fa94;(_0x394d3a[_0x282c65(0x205)][_0x282c65(0x1f4)]??'')!==this['lastText']&&this[_0x282c65(0x1f9)]();}),this[_0x17fa94(0x1f9)]();},'template':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<ok-monaco\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22height:100%;\x20width:100%;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:language=\x22$attr.language\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@editor-change=\x22onText($event.detail)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22lastText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:theme=\x22monacoTheme\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:options\x0a\x20\x20\x20\x20\x20\x20\x20\x20></ok-monaco>\x0a\x20\x20\x20\x20','style':_0x3a4cde(0x1fb)};
1
+ function _0x2974(){var _0x3e2c16=['113502VDAekz','edit','1589540tYeyhz','vs-dark','$watch','18oecUPq','14pqhAcD','current','873534HmpIcd','reset','24595iNdMSI','ok-text-monaco-input','lastText','35901NBvUmJ','$attr','752vqteRO','light','json','2783256JdvXjt','$dispatch','20811550zYZtYy','string','value'];_0x2974=function(){return _0x3e2c16;};return _0x2974();}function _0x2cc1(_0x153e50,_0x390a50){_0x153e50=_0x153e50-0xc3;var _0x2974b8=_0x2974();var _0x2cc179=_0x2974b8[_0x153e50];return _0x2cc179;}var _0x23760b=_0x2cc1;(function(_0x30b9c2,_0x4a5298){var _0x1d3337=_0x2cc1,_0x92ceba=_0x30b9c2();while(!![]){try{var _0x74a403=parseInt(_0x1d3337(0xd6))/0x1+-parseInt(_0x1d3337(0xcb))/0x2+parseInt(_0x1d3337(0xc9))/0x3+parseInt(_0x1d3337(0xd8))/0x4*(-parseInt(_0x1d3337(0xd3))/0x5)+-parseInt(_0x1d3337(0xd1))/0x6*(parseInt(_0x1d3337(0xcf))/0x7)+parseInt(_0x1d3337(0xc4))/0x8*(parseInt(_0x1d3337(0xce))/0x9)+parseInt(_0x1d3337(0xc6))/0xa;if(_0x74a403===_0x4a5298)break;else _0x92ceba['push'](_0x92ceba['shift']());}catch(_0x836da0){_0x92ceba['push'](_0x92ceba['shift']());}}}(_0x2974,0xcd130));import _0x24fad8 from'@toolkit/components/ok-monaco.ok.js';import _0x32db90 from'../stores/theme-store.js';export default{'tag':_0x23760b(0xd4),'dependencies':[_0x24fad8],'attr':{'value':{},'theme':{'default':_0x23760b(0xcc)},'options':{},'language':{'default':_0x23760b(0xc3)}},'context':_0xa57b0c=>({'lastText':'',get 'monacoTheme'(){var _0x399953=_0x23760b;return _0x399953(0xd9)===_0x32db90[_0x399953(0xd0)]?'vs':_0x399953(0xcc);},get 'options'(){var _0x155db4=_0x23760b;return{'minimap':{'enabled':!0x1},'automaticLayout':!0x0,'wordWrap':'on','fontSize':0xd,'scrollBeyondLastLine':!0x1,'fixedOverflowWidgets':!0x0,..._0xa57b0c[_0x155db4(0xd7)]['options']};},'onText'(_0x5a12cd){var _0x6d177e=_0x23760b;this[_0x6d177e(0xd5)]=_0x5a12cd??'',_0xa57b0c[_0x6d177e(0xc5)](_0x6d177e(0xca),this[_0x6d177e(0xd5)]);},'reset'(){var _0x3a2795=_0x23760b;this[_0x3a2795(0xd5)]=_0x3a2795(0xc7)==typeof _0xa57b0c[_0x3a2795(0xd7)][_0x3a2795(0xc8)]?_0xa57b0c[_0x3a2795(0xd7)][_0x3a2795(0xc8)]:'';}}),'init'(_0x5741fa){var _0x28b4e9=_0x23760b;_0x5741fa[_0x28b4e9(0xcd)](()=>_0x5741fa['$attr'][_0x28b4e9(0xc8)],()=>{var _0x14c508=_0x28b4e9;(_0x5741fa[_0x14c508(0xd7)][_0x14c508(0xc8)]??'')!==this[_0x14c508(0xd5)]&&this[_0x14c508(0xd2)]();}),this[_0x28b4e9(0xd2)]();},'template':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<ok-monaco\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22height:100%;\x20width:100%;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:language=\x22$attr.language\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@editor-change=\x22onText($event.detail)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22lastText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:theme=\x22monacoTheme\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:options\x0a\x20\x20\x20\x20\x20\x20\x20\x20></ok-monaco>\x0a\x20\x20\x20\x20','style':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20ok-monaco\x20>\x20div\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex:\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100%\x20!important;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20'};
@@ -1 +1 @@
1
- const _0x317443=_0x5b04;function _0x5b04(_0xb493c,_0xa8c75e){_0xb493c=_0xb493c-0x177;const _0x2c97e4=_0x2c97();let _0x5b04c5=_0x2c97e4[_0xb493c];return _0x5b04c5;}(function(_0x28e63f,_0x57dab8){const _0x443f7e=_0x5b04,_0x4c94ee=_0x28e63f();while(!![]){try{const _0x31a6de=-parseInt(_0x443f7e(0x186))/0x1*(-parseInt(_0x443f7e(0x17f))/0x2)+parseInt(_0x443f7e(0x187))/0x3+-parseInt(_0x443f7e(0x182))/0x4*(-parseInt(_0x443f7e(0x183))/0x5)+parseInt(_0x443f7e(0x177))/0x6+parseInt(_0x443f7e(0x181))/0x7+-parseInt(_0x443f7e(0x17c))/0x8*(-parseInt(_0x443f7e(0x17b))/0x9)+-parseInt(_0x443f7e(0x179))/0xa;if(_0x31a6de===_0x57dab8)break;else _0x4c94ee['push'](_0x4c94ee['shift']());}catch(_0x247724){_0x4c94ee['push'](_0x4c94ee['shift']());}}}(_0x2c97,0x5836a));import _0x421fa2 from'../stores/theme-store.js';function _0x2c97(){const _0x3e6af0=['\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20position:\x20fixed;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20top:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20right:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20z-index:\x209999;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20line-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20.theme-toggle__btn\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x2028px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x2028px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20padding:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20inline-flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20align-items:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20justify-content:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x2050%;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-border);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-surface-2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg-muted);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cursor:\x20pointer;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20transition:\x20background\x20.15s,\x20color\x20.15s,\x20border-color\x20.15s,\x20transform\x20.1s;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20.theme-toggle__btn:hover\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-surface-3);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-color:\x20var(--okdb-app-border-strong);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20transform:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-shadow:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20.theme-toggle__btn:active\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20transform:\x20scale(0.94);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20','5571YJkvvn','7672VfRADM','toggle','$ext','30638aaauyb','current','3639160qvIYck','32dEFFRf','121370qvjKDg','\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22theme-toggle__btn\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:title=\x22current\x20===\x20\x27dark\x27\x20?\x20\x27Switch\x20to\x20light\x20mode\x27\x20:\x20\x27Switch\x20to\x20dark\x20mode\x27\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:aria-label=\x22current\x20===\x20\x27dark\x27\x20?\x20\x27Switch\x20to\x20light\x20mode\x27\x20:\x20\x27Switch\x20to\x20dark\x20mode\x27\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@click=\x22toggle()\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22current\x20===\x20\x27dark\x27\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!--\x20sun\x20icon\x20(currently\x20dark,\x20click\x20→\x20light)\x20-->\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20fill=\x22none\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x224\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M12\x202v2M12\x2020v2M4.93\x204.93l1.41\x201.41M17.66\x2017.66l1.41\x201.41M2\x2012h2M20\x2012h2M4.93\x2019.07l1.41-1.41M17.66\x206.34l1.41-1.41\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22current\x20===\x20\x27light\x27\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!--\x20moon\x20icon\x20(currently\x20light,\x20click\x20→\x20dark)\x20-->\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20fill=\x22none\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M21\x2012.79A9\x209\x200\x201\x201\x2011.21\x203\x207\x207\x200\x200\x200\x2021\x2012.79z\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20','subscribe','13ZONMLj','1497609bjLExT','5250ZVcldE','unmount','16455960EwGJWr'];_0x2c97=function(){return _0x3e6af0;};return _0x2c97();}export default{'tag':'theme-toggle','context'(_0x272226){const _0x480c81=_0x5b04,_0x40548e={'current':_0x421fa2['current'],'toggle'(){const _0x4507d3=_0x5b04;_0x421fa2[_0x4507d3(0x17d)]();}},_0x5d98d1=_0x421fa2[_0x480c81(0x185)](_0x3db1ea=>{const _0x4756a3=_0x480c81;_0x40548e[_0x4756a3(0x180)]=_0x3db1ea;});return _0x272226[_0x480c81(0x17e)](_0x480c81(0x178),_0x5d98d1),_0x40548e;},'template':_0x317443(0x184),'style':_0x317443(0x17a)};
1
+ function _0x1aac(_0x56a4a2,_0x63ebde){_0x56a4a2=_0x56a4a2-0x6e;const _0x1e8dbb=_0x1e8d();let _0x1aace7=_0x1e8dbb[_0x56a4a2];return _0x1aace7;}(function(_0x56e15a,_0x54edf1){const _0x26b8e7=_0x1aac,_0x3b0a0c=_0x56e15a();while(!![]){try{const _0x215489=parseInt(_0x26b8e7(0x75))/0x1+parseInt(_0x26b8e7(0x72))/0x2*(-parseInt(_0x26b8e7(0x74))/0x3)+-parseInt(_0x26b8e7(0x7c))/0x4*(parseInt(_0x26b8e7(0x7b))/0x5)+-parseInt(_0x26b8e7(0x73))/0x6*(-parseInt(_0x26b8e7(0x7d))/0x7)+-parseInt(_0x26b8e7(0x79))/0x8+parseInt(_0x26b8e7(0x7a))/0x9*(parseInt(_0x26b8e7(0x70))/0xa)+-parseInt(_0x26b8e7(0x71))/0xb;if(_0x215489===_0x54edf1)break;else _0x3b0a0c['push'](_0x3b0a0c['shift']());}catch(_0x538463){_0x3b0a0c['push'](_0x3b0a0c['shift']());}}}(_0x1e8d,0x5e4ab));import _0x3a9131 from'../stores/theme-store.js';export default{'tag':'theme-toggle','context'(_0x170325){const _0x4e04e7=_0x1aac,_0x163b72={'current':_0x3a9131['current'],'toggle'(){const _0x1259af=_0x1aac;_0x3a9131[_0x1259af(0x6f)]();}},_0x4b68ea=_0x3a9131[_0x4e04e7(0x77)](_0x4af6ee=>{const _0x28b3c1=_0x4e04e7;_0x163b72[_0x28b3c1(0x78)]=_0x4af6ee;});return _0x170325[_0x4e04e7(0x76)](_0x4e04e7(0x6e),_0x4b68ea),_0x163b72;},'template':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22theme-toggle__btn\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:title=\x22current\x20===\x20\x27dark\x27\x20?\x20\x27Switch\x20to\x20light\x20mode\x27\x20:\x20\x27Switch\x20to\x20dark\x20mode\x27\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:aria-label=\x22current\x20===\x20\x27dark\x27\x20?\x20\x27Switch\x20to\x20light\x20mode\x27\x20:\x20\x27Switch\x20to\x20dark\x20mode\x27\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@click=\x22toggle()\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22current\x20===\x20\x27dark\x27\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!--\x20sun\x20icon\x20(currently\x20dark,\x20click\x20→\x20light)\x20-->\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20fill=\x22none\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x224\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M12\x202v2M12\x2020v2M4.93\x204.93l1.41\x201.41M17.66\x2017.66l1.41\x201.41M2\x2012h2M20\x2012h2M4.93\x2019.07l1.41-1.41M17.66\x206.34l1.41-1.41\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22current\x20===\x20\x27light\x27\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!--\x20moon\x20icon\x20(currently\x20light,\x20click\x20→\x20dark)\x20-->\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20fill=\x22none\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M21\x2012.79A9\x209\x200\x201\x201\x2011.21\x203\x207\x207\x200\x200\x200\x2021\x2012.79z\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20','style':'\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20position:\x20fixed;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20top:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20right:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20z-index:\x209999;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20line-height:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20.theme-toggle__btn\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20width:\x2028px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x2028px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20padding:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20inline-flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20align-items:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20justify-content:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x2050%;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-border);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-surface-2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg-muted);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cursor:\x20pointer;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20transition:\x20background\x20.15s,\x20color\x20.15s,\x20border-color\x20.15s,\x20transform\x20.1s;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20.theme-toggle__btn:hover\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-surface-3);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-color:\x20var(--okdb-app-border-strong);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20transform:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-shadow:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20[tag]\x20.theme-toggle__btn:active\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20transform:\x20scale(0.94);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20'};function _0x1e8d(){const _0x1fb0b8=['current','2858344mJHLIn','5019939TifPmu','5wByIfJ','924500RCQZAT','693XsMAaL','unmount','toggle','10DnUyEc','6353314oeqsCk','35292ntrgov','32706fmXCsG','21aiwoCw','578313atPxtk','$ext','subscribe'];_0x1e8d=function(){return _0x1fb0b8;};return _0x1e8d();}
@@ -1 +1 @@
1
- const _0x52c771=_0x216c;(function(_0xc3d3aa,_0x5f466c){const _0xb23d55=_0x216c,_0x49473d=_0xc3d3aa();while(!![]){try{const _0x4fdf28=parseInt(_0xb23d55(0x18b))/0x1+-parseInt(_0xb23d55(0x1a6))/0x2*(-parseInt(_0xb23d55(0x19f))/0x3)+parseInt(_0xb23d55(0x198))/0x4+parseInt(_0xb23d55(0x1a8))/0x5*(-parseInt(_0xb23d55(0x1be))/0x6)+parseInt(_0xb23d55(0x18e))/0x7+parseInt(_0xb23d55(0x18f))/0x8*(parseInt(_0xb23d55(0x1bc))/0x9)+-parseInt(_0xb23d55(0x189))/0xa*(parseInt(_0xb23d55(0x1a9))/0xb);if(_0x4fdf28===_0x5f466c)break;else _0x49473d['push'](_0x49473d['shift']());}catch(_0xd9e0a8){_0x49473d['push'](_0x49473d['shift']());}}}(_0x370a,0xa8312));const params=new URLSearchParams(window[_0x52c771(0x1c3)]['search']),error=params[_0x52c771(0x1b1)](_0x52c771(0x19d)),redirect=params[_0x52c771(0x1b1)](_0x52c771(0x193))||'/admin/index.html';if(error){const e=document['getElementById'](_0x52c771(0x1b9));e[_0x52c771(0x1ce)]=!0x1,e['textContent']=error;}async function loadConfig(){const _0x11a3d0=_0x52c771,_0x211d82=await fetch('/admin/login/config',{'credentials':'same-origin'}),_0x5812e7=(await _0x211d82[_0x11a3d0(0x1b7)]()[_0x11a3d0(0x18c)](()=>({})))[_0x11a3d0(0x1b4)]||{};if(_0x5812e7['openAccess'])return void window[_0x11a3d0(0x1c3)][_0x11a3d0(0x199)](_0x11a3d0(0x1c8));if(_0x5812e7[_0x11a3d0(0x1c2)])return void window[_0x11a3d0(0x1c3)][_0x11a3d0(0x199)]('/admin/setup.html');const _0xda85fc=document['getElementById'](_0x11a3d0(0x188)),_0x45981a=document['getElementById'](_0x11a3d0(0x19a)),_0x5e2a6a=document[_0x11a3d0(0x18a)](_0x11a3d0(0x1ca)),_0x18967b=document[_0x11a3d0(0x18a)](_0x11a3d0(0x1c6)),_0x44b097=document[_0x11a3d0(0x18a)](_0x11a3d0(0x195)),_0x2d81ab=document[_0x11a3d0(0x18a)](_0x11a3d0(0x1cd)),_0x48178d=document[_0x11a3d0(0x18a)](_0x11a3d0(0x18d)),_0x117614=!!_0x5812e7['login']?.[_0x11a3d0(0x1a7)],_0x275d1e=!!_0x5812e7['oauth']?.[_0x11a3d0(0x1a7)];if(_0x45981a[_0x11a3d0(0x1ce)]=!_0x117614,_0x5e2a6a[_0x11a3d0(0x1ce)]=!_0x275d1e,_0x18967b[_0x11a3d0(0x1ce)]=!(_0x117614&&_0x275d1e),_0xda85fc[_0x11a3d0(0x1ce)]=!(_0x117614||_0x275d1e),_0x275d1e){const _0x4e1157=_0x5812e7['oauth']?.[_0x11a3d0(0x1a1)]||_0x11a3d0(0x1ac);_0x44b097[_0x11a3d0(0x1ba)]=_0x4e1157,_0x2d81ab[_0x11a3d0(0x1ba)]=_0x4e1157,document[_0x11a3d0(0x18a)]('loginButton')[_0x11a3d0(0x1a0)]=_0x11a3d0(0x194)+encodeURIComponent(redirect);}_0x48178d['textContent']=_0x117614&&!_0x275d1e?'Use\x20your\x20local\x20admin\x20credentials\x20to\x20create\x20a\x20secure\x20browser\x20session.':!_0x117614&&_0x275d1e?_0x11a3d0(0x1ae):_0x117614&&_0x275d1e?_0x11a3d0(0x1d2):_0x11a3d0(0x190);}function _0x370a(){const _0x283734=['basicForm','\x20·\x20','button','error','(unset)','69SDtpOi','href','label','tokens','application/json','join','value','103866CqIcSJ','enabled','5175kkAadM','11DopFRv','createElement','stringify','Use\x20a\x20provider','result','Use\x20your\x20organization\x20account.\x20API\x20and\x20MCP\x20clients\x20should\x20use\x20OAuth\x20access\x20tokens\x20directly.','toLocaleDateString','password','get','numeric','permissions','data','preventDefault','length','json','type','errorBox','textContent','...','99ONEuDL','tokenId','5946rXRkFt','same-origin','innerHTML','/auth/login','bootstrap','location','click','addEventListener','divider','Login\x20failed','/admin/index.html','submit','oauthWrap','picker-item','</span><span\x20class=\x22picker-item-meta\x22>','providerButtonLabel','hidden','pickerSection','slice','Failed\x20to\x20load\x20login\x20methods','Sign\x20in\x20with\x20local\x20admin\x20credentials\x20or\x20continue\x20with\x20your\x20configured\x20provider.','loginStack','13215560peYEzN','getElementById','86871lIxqbn','catch','noteBox','4212873AmFdpp','727984OQZfYf','No\x20login\x20method\x20is\x20configured.','message','pickerList','redirect','/admin/auth/start?redirect=','providerLabel','</span>','isArray','608032egAXAk','replace'];_0x370a=function(){return _0x283734;};return _0x370a();}function _0x216c(_0x905fc6,_0x5d9c47){_0x905fc6=_0x905fc6-0x188;const _0x370a6c=_0x370a();let _0x216c6c=_0x370a6c[_0x905fc6];return _0x216c6c;}function showError(_0x2656bf){const _0x50e4a6=_0x52c771,_0xdda983=document[_0x50e4a6(0x18a)](_0x50e4a6(0x1b9));_0xdda983['hidden']=!0x1,_0xdda983['textContent']=_0x2656bf;}function formatDate(_0x5ae7eb){const _0x48476c=_0x52c771;return _0x5ae7eb?new Date(_0x5ae7eb)[_0x48476c(0x1af)](void 0x0,{'year':_0x48476c(0x1b2),'month':'short','day':'numeric'}):'';}function formatPermissions(_0x504689){const _0x89a3f0=_0x52c771;if(!Array[_0x89a3f0(0x197)](_0x504689)||0x0===_0x504689[_0x89a3f0(0x1b6)])return'';const _0x2fa1d5=_0x504689[_0x89a3f0(0x1a4)](',\x20');return _0x2fa1d5[_0x89a3f0(0x1b6)]>0x28?_0x2fa1d5[_0x89a3f0(0x1d0)](0x0,0x25)+_0x89a3f0(0x1bb):_0x2fa1d5;}document['getElementById'](_0x52c771(0x19a))['addEventListener'](_0x52c771(0x1c9),async _0x2e5eec=>{const _0x2f979d=_0x52c771;_0x2e5eec[_0x2f979d(0x1b5)]();const _0x217ffa=document[_0x2f979d(0x18a)]('user')[_0x2f979d(0x1a5)],_0xc2eed5=document[_0x2f979d(0x18a)](_0x2f979d(0x1b0))['value'],_0x2d58ec=await fetch(_0x2f979d(0x1c1),{'method':'POST','headers':{'content-type':_0x2f979d(0x1a3)},'credentials':_0x2f979d(0x1bf),'body':JSON[_0x2f979d(0x1ab)]({'username':_0x217ffa,'password':_0xc2eed5})}),_0x5132bb=await _0x2d58ec[_0x2f979d(0x1b7)]()[_0x2f979d(0x18c)](()=>({}));if(!_0x2d58ec['ok'])return void showError(_0x5132bb?.['error']?.[_0x2f979d(0x191)]||_0x5132bb?.[_0x2f979d(0x19d)]||_0x5132bb?.[_0x2f979d(0x1ad)]?.[_0x2f979d(0x19d)]||_0x2f979d(0x1c7));const _0x5100f8=_0x5132bb?.[_0x2f979d(0x1b4)];if(_0x5100f8?.['ambiguous']){document[_0x2f979d(0x18a)]('basicForm')[_0x2f979d(0x1ce)]=!0x0,document['getElementById'](_0x2f979d(0x1cf))[_0x2f979d(0x1ce)]=!0x1;const _0x1026aa=document['getElementById'](_0x2f979d(0x192));_0x1026aa['innerHTML']='';for(const _0x3f187c of _0x5100f8[_0x2f979d(0x1a2)]||[]){const _0x586172=document[_0x2f979d(0x1aa)](_0x2f979d(0x19c));_0x586172[_0x2f979d(0x1b8)]=_0x2f979d(0x19c),_0x586172['className']=_0x2f979d(0x1cb);const _0xaad1d4=formatPermissions(_0x3f187c[_0x2f979d(0x1b3)]),_0x2aa19a=formatDate(_0x3f187c['createdAt']);_0x586172[_0x2f979d(0x1c0)]='<span\x20class=\x22picker-item-label\x22>'+(_0x3f187c[_0x2f979d(0x1a1)]||_0x2f979d(0x19e))+_0x2f979d(0x1cc)+_0xaad1d4+(_0xaad1d4&&_0x2aa19a?_0x2f979d(0x19b):'')+_0x2aa19a+_0x2f979d(0x196),_0x586172[_0x2f979d(0x1c5)](_0x2f979d(0x1c4),async()=>{const _0x22fc06=_0x2f979d,_0x300794=await fetch('/auth/login/select',{'method':'POST','headers':{'content-type':_0x22fc06(0x1a3)},'credentials':_0x22fc06(0x1bf),'body':JSON[_0x22fc06(0x1ab)]({'username':_0x217ffa,'password':_0xc2eed5,'tokenId':_0x3f187c[_0x22fc06(0x1bd)]})}),_0x11155b=await _0x300794[_0x22fc06(0x1b7)]()[_0x22fc06(0x18c)](()=>({}));if(!_0x300794['ok'])return document[_0x22fc06(0x18a)](_0x22fc06(0x1cf))[_0x22fc06(0x1ce)]=!0x0,document['getElementById']('basicForm')['hidden']=!0x1,void showError(_0x11155b?.[_0x22fc06(0x19d)]?.[_0x22fc06(0x191)]||_0x11155b?.[_0x22fc06(0x19d)]||'Selection\x20failed');window['location'][_0x22fc06(0x199)](redirect);}),_0x1026aa['appendChild'](_0x586172);}return;}window[_0x2f979d(0x1c3)][_0x2f979d(0x199)](redirect);}),loadConfig()[_0x52c771(0x18c)](_0x4aa521=>{const _0x201511=_0x52c771,_0x197f54=document[_0x201511(0x18a)](_0x201511(0x1b9));_0x197f54[_0x201511(0x1ce)]=!0x1,_0x197f54[_0x201511(0x1ba)]=_0x4aa521?.[_0x201511(0x191)]||_0x201511(0x1d1);});
1
+ const _0x59adb2=_0x3db2;(function(_0x34ad0b,_0x596510){const _0x34ea9a=_0x3db2,_0x2c8120=_0x34ad0b();while(!![]){try{const _0x3482e8=parseInt(_0x34ea9a(0x1f1))/0x1*(-parseInt(_0x34ea9a(0x1f3))/0x2)+-parseInt(_0x34ea9a(0x1ca))/0x3+parseInt(_0x34ea9a(0x1c1))/0x4+-parseInt(_0x34ea9a(0x1c8))/0x5+-parseInt(_0x34ea9a(0x1f9))/0x6+parseInt(_0x34ea9a(0x1ea))/0x7+parseInt(_0x34ea9a(0x1bc))/0x8;if(_0x3482e8===_0x596510)break;else _0x2c8120['push'](_0x2c8120['shift']());}catch(_0x137941){_0x2c8120['push'](_0x2c8120['shift']());}}}(_0x2a2a,0x5a889));const params=new URLSearchParams(window[_0x59adb2(0x1c4)]['search']),error=params[_0x59adb2(0x1f4)](_0x59adb2(0x1d7)),redirect=params[_0x59adb2(0x1f4)]('redirect')||_0x59adb2(0x1bd);function _0x2a2a(){const _0x53f1f2=['providerLabel','result','oauthWrap','tokenId','basicForm','href','login','join','openAccess','/auth/login','Sign\x20in\x20with\x20local\x20admin\x20credentials\x20or\x20continue\x20with\x20your\x20configured\x20provider.','preventDefault','getElementById','hidden','createdAt','numeric','2405088UeXhIE','divider','label','short','json','loginButton','same-origin','4451RpeQeg','Use\x20a\x20provider','56hbCsIw','get','createElement','ambiguous','/admin/setup.html','data','2896830ikwtfM','className','catch','button','slice','loginStack','tokens','picker-item','message','textContent','enabled','submit','pickerSection','Use\x20your\x20local\x20admin\x20credentials\x20to\x20create\x20a\x20secure\x20browser\x20session.','Selection\x20failed','(unset)','<span\x20class=\x22picker-item-label\x22>','noteBox','12793920bgWLrl','/admin/index.html','user','toLocaleDateString','permissions','213656ndtBwf','stringify','\x20·\x20','location','application/json','/admin/auth/start?redirect=','</span>','2304140RNvkkm','Use\x20your\x20organization\x20account.\x20API\x20and\x20MCP\x20clients\x20should\x20use\x20OAuth\x20access\x20tokens\x20directly.','1671456aKUKcJ','providerButtonLabel','type','isArray','length','addEventListener','oauth','replace','Login\x20failed','POST','innerHTML','value','click','error','pickerList','errorBox'];_0x2a2a=function(){return _0x53f1f2;};return _0x2a2a();}if(error){const e=document[_0x59adb2(0x1e6)]('errorBox');e[_0x59adb2(0x1e7)]=!0x1,e[_0x59adb2(0x1b3)]=error;}async function loadConfig(){const _0x2a6728=_0x59adb2,_0x15f641=await fetch('/admin/login/config',{'credentials':_0x2a6728(0x1f0)}),_0x27b197=(await _0x15f641[_0x2a6728(0x1ee)]()[_0x2a6728(0x1fb)](()=>({})))[_0x2a6728(0x1f8)]||{};if(_0x27b197[_0x2a6728(0x1e2)])return void window[_0x2a6728(0x1c4)][_0x2a6728(0x1d1)](_0x2a6728(0x1bd));if(_0x27b197['bootstrap'])return void window[_0x2a6728(0x1c4)]['replace'](_0x2a6728(0x1f7));const _0x468f4b=document['getElementById'](_0x2a6728(0x1fe)),_0xc0bcb4=document['getElementById'](_0x2a6728(0x1de)),_0x4af70a=document['getElementById'](_0x2a6728(0x1dc)),_0x32021a=document[_0x2a6728(0x1e6)](_0x2a6728(0x1eb)),_0x5a5966=document['getElementById'](_0x2a6728(0x1da)),_0x475714=document[_0x2a6728(0x1e6)](_0x2a6728(0x1cb)),_0x52e8b1=document[_0x2a6728(0x1e6)](_0x2a6728(0x1bb)),_0x63146f=!!_0x27b197[_0x2a6728(0x1e0)]?.[_0x2a6728(0x1b4)],_0x446ce8=!!_0x27b197[_0x2a6728(0x1d0)]?.[_0x2a6728(0x1b4)];if(_0xc0bcb4[_0x2a6728(0x1e7)]=!_0x63146f,_0x4af70a[_0x2a6728(0x1e7)]=!_0x446ce8,_0x32021a['hidden']=!(_0x63146f&&_0x446ce8),_0x468f4b[_0x2a6728(0x1e7)]=!(_0x63146f||_0x446ce8),_0x446ce8){const _0x47f1f8=_0x27b197[_0x2a6728(0x1d0)]?.[_0x2a6728(0x1ec)]||_0x2a6728(0x1f2);_0x5a5966[_0x2a6728(0x1b3)]=_0x47f1f8,_0x475714[_0x2a6728(0x1b3)]=_0x47f1f8,document[_0x2a6728(0x1e6)](_0x2a6728(0x1ef))[_0x2a6728(0x1df)]=_0x2a6728(0x1c6)+encodeURIComponent(redirect);}_0x52e8b1[_0x2a6728(0x1b3)]=_0x63146f&&!_0x446ce8?_0x2a6728(0x1b7):!_0x63146f&&_0x446ce8?_0x2a6728(0x1c9):_0x63146f&&_0x446ce8?_0x2a6728(0x1e4):'No\x20login\x20method\x20is\x20configured.';}function showError(_0x12d0a9){const _0x403268=_0x59adb2,_0x3b9a06=document['getElementById'](_0x403268(0x1d9));_0x3b9a06[_0x403268(0x1e7)]=!0x1,_0x3b9a06[_0x403268(0x1b3)]=_0x12d0a9;}function formatDate(_0x297d48){const _0x5dd39b=_0x59adb2;return _0x297d48?new Date(_0x297d48)[_0x5dd39b(0x1bf)](void 0x0,{'year':_0x5dd39b(0x1e9),'month':_0x5dd39b(0x1ed),'day':_0x5dd39b(0x1e9)}):'';}function formatPermissions(_0x3e7a25){const _0x481d6d=_0x59adb2;if(!Array[_0x481d6d(0x1cd)](_0x3e7a25)||0x0===_0x3e7a25[_0x481d6d(0x1ce)])return'';const _0x29f439=_0x3e7a25[_0x481d6d(0x1e1)](',\x20');return _0x29f439[_0x481d6d(0x1ce)]>0x28?_0x29f439[_0x481d6d(0x1fd)](0x0,0x25)+'...':_0x29f439;}function _0x3db2(_0x3d181a,_0x96824d){_0x3d181a=_0x3d181a-0x1b3;const _0x2a2a06=_0x2a2a();let _0x3db27d=_0x2a2a06[_0x3d181a];return _0x3db27d;}document[_0x59adb2(0x1e6)](_0x59adb2(0x1de))[_0x59adb2(0x1cf)](_0x59adb2(0x1b5),async _0x569570=>{const _0x7bc532=_0x59adb2;_0x569570[_0x7bc532(0x1e5)]();const _0x47a71d=document['getElementById'](_0x7bc532(0x1be))[_0x7bc532(0x1d5)],_0x249fdf=document[_0x7bc532(0x1e6)]('password')[_0x7bc532(0x1d5)],_0x5296a2=await fetch(_0x7bc532(0x1e3),{'method':_0x7bc532(0x1d3),'headers':{'content-type':_0x7bc532(0x1c5)},'credentials':_0x7bc532(0x1f0),'body':JSON[_0x7bc532(0x1c2)]({'username':_0x47a71d,'password':_0x249fdf})}),_0xcf3dcc=await _0x5296a2[_0x7bc532(0x1ee)]()[_0x7bc532(0x1fb)](()=>({}));if(!_0x5296a2['ok'])return void showError(_0xcf3dcc?.['error']?.[_0x7bc532(0x201)]||_0xcf3dcc?.[_0x7bc532(0x1d7)]||_0xcf3dcc?.[_0x7bc532(0x1db)]?.[_0x7bc532(0x1d7)]||_0x7bc532(0x1d2));const _0xcb38db=_0xcf3dcc?.['data'];if(_0xcb38db?.[_0x7bc532(0x1f6)]){document[_0x7bc532(0x1e6)](_0x7bc532(0x1de))['hidden']=!0x0,document[_0x7bc532(0x1e6)]('pickerSection')[_0x7bc532(0x1e7)]=!0x1;const _0x304011=document[_0x7bc532(0x1e6)](_0x7bc532(0x1d8));_0x304011['innerHTML']='';for(const _0x3eec10 of _0xcb38db[_0x7bc532(0x1ff)]||[]){const _0x5430a0=document[_0x7bc532(0x1f5)](_0x7bc532(0x1fc));_0x5430a0[_0x7bc532(0x1cc)]='button',_0x5430a0[_0x7bc532(0x1fa)]=_0x7bc532(0x200);const _0x3d4b4d=formatPermissions(_0x3eec10[_0x7bc532(0x1c0)]),_0x36fcb1=formatDate(_0x3eec10[_0x7bc532(0x1e8)]);_0x5430a0[_0x7bc532(0x1d4)]=_0x7bc532(0x1ba)+(_0x3eec10[_0x7bc532(0x1ec)]||_0x7bc532(0x1b9))+'</span><span\x20class=\x22picker-item-meta\x22>'+_0x3d4b4d+(_0x3d4b4d&&_0x36fcb1?_0x7bc532(0x1c3):'')+_0x36fcb1+_0x7bc532(0x1c7),_0x5430a0['addEventListener'](_0x7bc532(0x1d6),async()=>{const _0x120477=_0x7bc532,_0x4631d5=await fetch('/auth/login/select',{'method':'POST','headers':{'content-type':'application/json'},'credentials':_0x120477(0x1f0),'body':JSON[_0x120477(0x1c2)]({'username':_0x47a71d,'password':_0x249fdf,'tokenId':_0x3eec10[_0x120477(0x1dd)]})}),_0x25a5fd=await _0x4631d5[_0x120477(0x1ee)]()['catch'](()=>({}));if(!_0x4631d5['ok'])return document[_0x120477(0x1e6)](_0x120477(0x1b6))[_0x120477(0x1e7)]=!0x0,document[_0x120477(0x1e6)](_0x120477(0x1de))[_0x120477(0x1e7)]=!0x1,void showError(_0x25a5fd?.[_0x120477(0x1d7)]?.[_0x120477(0x201)]||_0x25a5fd?.[_0x120477(0x1d7)]||_0x120477(0x1b8));window[_0x120477(0x1c4)][_0x120477(0x1d1)](redirect);}),_0x304011['appendChild'](_0x5430a0);}return;}window[_0x7bc532(0x1c4)][_0x7bc532(0x1d1)](redirect);}),loadConfig()['catch'](_0x3a2370=>{const _0x6f6109=_0x59adb2,_0x2a4768=document[_0x6f6109(0x1e6)](_0x6f6109(0x1d9));_0x2a4768['hidden']=!0x1,_0x2a4768[_0x6f6109(0x1b3)]=_0x3a2370?.[_0x6f6109(0x201)]||'Failed\x20to\x20load\x20login\x20methods';});
@@ -1 +1 @@
1
- const _0x4fad61=_0x18c3;(function(_0x53c2c7,_0x1ed713){const _0x47820f=_0x18c3,_0x5a7b0c=_0x53c2c7();while(!![]){try{const _0xc1fd56=parseInt(_0x47820f(0xb3))/0x1*(parseInt(_0x47820f(0xaf))/0x2)+-parseInt(_0x47820f(0xad))/0x3+-parseInt(_0x47820f(0xb4))/0x4*(-parseInt(_0x47820f(0xb0))/0x5)+-parseInt(_0x47820f(0xb1))/0x6+-parseInt(_0x47820f(0xa9))/0x7+parseInt(_0x47820f(0xa8))/0x8+-parseInt(_0x47820f(0xac))/0x9*(-parseInt(_0x47820f(0xaa))/0xa);if(_0xc1fd56===_0x1ed713)break;else _0x5a7b0c['push'](_0x5a7b0c['shift']());}catch(_0x3f6784){_0x5a7b0c['push'](_0x5a7b0c['shift']());}}}(_0x5c54,0x7c9c2));function _0x18c3(_0x37bc43,_0x341fe6){_0x37bc43=_0x37bc43-0xa8;const _0x5c541c=_0x5c54();let _0x18c308=_0x5c541c[_0x37bc43];return _0x18c308;}import _0x281a2b from'@okjs';import _0xf04f8 from'@toolkit/navigation/hash-router.ok.js';import _0x170ad0 from'@toolkit/errors/ok-crash-info.ok.js';function _0x5c54(){const _0x32b4ef=['65915plhmIa','5956422BpNQdN','register','675UAeECX','308DoiFEP','2017192GHbUBk','3351992DSCzuP','430pGUpIl','dev','83601FqZLHc','872466hMrRVl','forEach','1796AsVXCc'];_0x5c54=function(){return _0x32b4ef;};return _0x5c54();}import _0xd727d1 from'@toolkit/elements/ok-icon.ok.js';import _0xa59d2a from'@toolkit/elements/ok-table.ok.js';import _0x2ad1e3 from'@toolkit/core/ok-overlay.ok.js';import _0x38adac from'@toolkit/modals/ok-modal-service.ok.js';import _0x260dd8 from'@toolkit/modals/ok-toast-service.ok.js';import _0x1c8fd8 from'../components/admin-route-host.ok.js';import _0x1f0217 from'../components/theme-toggle.ok.js';export const ok=_0x281a2b({'env':_0x4fad61(0xab)});[_0x170ad0,_0xf04f8,_0xd727d1,_0xa59d2a,_0x2ad1e3,_0x38adac,_0x260dd8,_0x1c8fd8,_0x1f0217][_0x4fad61(0xae)](_0x4fa25d=>ok[_0x4fad61(0xb2)](_0x4fa25d));
1
+ const _0x3045ad=_0x2806;function _0x53b0(){const _0x27417e=['55vseKEx','684012ybSejj','3927966BsMsQT','78908IfOwLM','142328ZUKzkj','dev','230967LoGGKU','153uNlFMs','4590jVTvPE','forEach','3399XKgjaI','165058ksgomv','1PMSWSP'];_0x53b0=function(){return _0x27417e;};return _0x53b0();}(function(_0x1794b2,_0x4a938e){const _0x4ecc27=_0x2806,_0x20a89b=_0x1794b2();while(!![]){try{const _0x5cb1a5=parseInt(_0x4ecc27(0x18c))/0x1*(-parseInt(_0x4ecc27(0x18b))/0x2)+parseInt(_0x4ecc27(0x186))/0x3+-parseInt(_0x4ecc27(0x190))/0x4*(parseInt(_0x4ecc27(0x18d))/0x5)+parseInt(_0x4ecc27(0x18e))/0x6+parseInt(_0x4ecc27(0x18f))/0x7+parseInt(_0x4ecc27(0x191))/0x8*(-parseInt(_0x4ecc27(0x187))/0x9)+-parseInt(_0x4ecc27(0x188))/0xa*(-parseInt(_0x4ecc27(0x18a))/0xb);if(_0x5cb1a5===_0x4a938e)break;else _0x20a89b['push'](_0x20a89b['shift']());}catch(_0x4e7d7c){_0x20a89b['push'](_0x20a89b['shift']());}}}(_0x53b0,0x47493));import _0x392a17 from'@okjs';import _0x54d789 from'@toolkit/navigation/hash-router.ok.js';import _0x21565b from'@toolkit/errors/ok-crash-info.ok.js';import _0x457601 from'@toolkit/elements/ok-icon.ok.js';import _0x43a945 from'@toolkit/elements/ok-table.ok.js';import _0x4d3208 from'@toolkit/core/ok-overlay.ok.js';import _0x4127de from'@toolkit/modals/ok-modal-service.ok.js';function _0x2806(_0x268ac0,_0x56f218){_0x268ac0=_0x268ac0-0x185;const _0x53b080=_0x53b0();let _0x28063a=_0x53b080[_0x268ac0];return _0x28063a;}import _0x22912e from'@toolkit/modals/ok-toast-service.ok.js';import _0x3907c2 from'../components/admin-route-host.ok.js';import _0x476580 from'../components/theme-toggle.ok.js';export const ok=_0x392a17({'env':_0x3045ad(0x185)});[_0x21565b,_0x54d789,_0x457601,_0x43a945,_0x4d3208,_0x4127de,_0x22912e,_0x3907c2,_0x476580][_0x3045ad(0x189)](_0x1f67ce=>ok['register'](_0x1f67ce));
@@ -1 +1 @@
1
- function _0x20b2(_0x51ac3a,_0xbe1e8e){_0x51ac3a=_0x51ac3a-0xb4;const _0x472291=_0x4722();let _0x20b258=_0x472291[_0x51ac3a];return _0x20b258;}function _0x4722(){const _0x3cd5da=['4ykgvfw','6BrOgmF','trim','63496FcwakP','257290FrbrEH','var(--okdb-accent-2)','path','buildUrl','time','includes','join','endpoint','PUT','queryValues','DELETE','now','text','entries','matchAll','object','\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-section-label\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2010px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20text-transform:\x20uppercase;\x0a\x20\x20\x20\x20\x20\x20\x20\x20letter-spacing:\x20.07em;\x0a\x20\x20\x20\x20\x20\x20\x20\x20opacity:\x20.45;\x0a\x20\x20\x20\x20\x20\x20\x20\x20margin-bottom:\x206px;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-input\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-bg-deep);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-border);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x206px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20padding:\x205px\x2010px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg);\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2013px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20monospace;\x0a\x20\x20\x20\x20\x20\x20\x20\x20outline:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20transition:\x20border-color\x20.12s;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-input:focus\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-color:\x20var(--okdb-accent-border);\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-textarea\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-bg-deep);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-border);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20padding:\x2010px\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg);\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20\x27Cascadia\x20Code\x27,\x20\x27Fira\x20Mono\x27,\x20monospace;\x0a\x20\x20\x20\x20\x20\x20\x20\x20resize:\x20vertical;\x0a\x20\x20\x20\x20\x20\x20\x20\x20outline:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20line-height:\x201.6;\x0a\x20\x20\x20\x20\x20\x20\x20\x20transition:\x20border-color\x20.12s;\x0a\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%;\x0a\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-textarea:focus\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-color:\x20var(--okdb-accent-soft-border);\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-response\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-bg-deep);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-surface-2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20padding:\x2012px\x2014px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20\x27Cascadia\x20Code\x27,\x20\x27Fira\x20Mono\x27,\x20monospace;\x0a\x20\x20\x20\x20\x20\x20\x20\x20color:\x20#88c8b0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20overflow-x:\x20auto;\x0a\x20\x20\x20\x20\x20\x20\x20\x20white-space:\x20pre-wrap;\x0a\x20\x20\x20\x20\x20\x20\x20\x20word-break:\x20break-all;\x0a\x20\x20\x20\x20\x20\x20\x20\x20margin:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20max-height:\x20400px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20overflow-y:\x20auto;\x0a\x20\x20\x20\x20\x20\x20\x20\x20line-height:\x201.55;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20','map','meta','body','filter','1523630rqEQWk','running','method','964128FhlaEQ','333265ZQFGOW','match','status','API','message','stringify','var(--okdb-success)','$watch','paramValues','var(--okdb-method-default)','POST','response','json','1201711cQEhvI','\x0a<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:0;\x20height:100%;\x22>\x0a\x0a\x20\x20<!--\x20Method\x20+\x20path\x20header\x20-->\x0a\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:12px;\x20padding:18px\x2020px\x2014px;\x20flex-shrink:0;\x20border-bottom:1px\x20solid\x20var(--okdb-app-surface-2);\x22>\x0a\x20\x20\x20\x20<span\x20:style=\x22\x27font-size:11px;\x20font-weight:700;\x20padding:3px\x2010px;\x20border-radius:5px;\x20border:1px\x20solid;\x20color:\x27+methodColor+\x27;\x20border-color:color-mix(in\x20srgb,\x20\x27+methodColor+\x27\x2033%,\x20transparent);\x20background:color-mix(in\x20srgb,\x20\x27+methodColor+\x27\x207%,\x20transparent);\x20letter-spacing:.06em;\x27\x22>\x0a\x20\x20\x20\x20\x20\x20{{\x20ep?.method\x20}}\x0a\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20<code\x20style=\x22font-family:monospace;\x20font-size:14px;\x20color:var(--okdb-app-fg);\x20word-break:break-all;\x22>{{\x20pathParts.before\x20}}<if\x20:=\x22pathParts.optional\x22><span\x20style=\x22opacity:.35;\x22>{{\x20pathParts.optional\x20}}</span></if>{{\x20pathParts.after\x20}}</code>\x0a\x20\x20</div>\x0a\x0a\x20\x20<!--\x20Scrollable\x20form\x20area\x20-->\x0a\x20\x20<div\x20style=\x22flex:1;\x20min-height:0;\x20overflow-y:auto;\x20padding:18px\x2020px;\x20display:flex;\x20flex-direction:column;\x20gap:18px;\x22>\x0a\x0a\x20\x20\x20\x20<!--\x20Summary\x20+\x20description\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.summary\x20||\x20ep?.meta?.description\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:4px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22font-weight:600;\x20font-size:14px;\x20color:var(--okdb-app-fg-strong);\x22>{{\x20ep.meta.summary\x20}}</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.description\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22font-size:13px;\x20opacity:.65;\x20line-height:1.6;\x22>{{\x20ep.meta.description\x20}}</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Path\x20params\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22pathParams.length\x20>\x200\x22>\x0a\x20\x20\x20\x20\x20\x20<div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Path\x20Parameters</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<each\x20:of=\x22pathParams\x22\x20let:item=\x22p\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:10px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20style=\x22font-family:monospace;\x20font-size:12px;\x20color:var(--okdb-accent);\x20width:120px;\x20flex-shrink:0;\x22>:{{\x20p\x20}}</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.params?.[p]\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:11px;\x20opacity:.5;\x20flex-shrink:0;\x22>{{\x20ep.meta.params[p]\x20}}</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22ae-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:placeholder=\x22p\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22paramValues[p]\x20||\x20\x27\x27\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@input=\x22setParam(p,\x20$el.value)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22flex:1;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</each>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Query\x20params\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22Object.keys(queryValues).length\x20>\x200\x22>\x0a\x20\x20\x20\x20\x20\x20<div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Query\x20Parameters</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<each\x20:of=\x22Object.keys(queryValues)\x22\x20let:item=\x22k\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:10px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20style=\x22font-family:monospace;\x20font-size:12px;\x20color:var(--okdb-accent-2);\x20width:120px;\x20flex-shrink:0;\x22>{{\x20k\x20}}</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22ae-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22queryValues[k]\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@input=\x22setQuery(k,\x20$el.value)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22flex:1;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</each>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Body\x20editor\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22hasBody\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Request\x20Body\x20<span\x20style=\x22opacity:.4;\x20font-weight:400;\x22>(JSON)</span></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<textarea\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22ae-textarea\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20rows=\x2210\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20!value=\x22bodyText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20></textarea>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Run\x20button\x20-->\x0a\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:12px;\x22>\x0a\x20\x20\x20\x20\x20\x20<button\x0a\x20\x20\x20\x20\x20\x20\x20\x20@click=\x22run()\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20:disabled=\x22running\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20style=\x22background:var(--okdb-accent-soft-bg);\x20border-color:var(--okdb-accent-soft-border);\x20color:var(--okdb-accent);\x20font-weight:600;\x20padding:8px\x2022px;\x20font-size:13px;\x22\x0a\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22running\x22>⏳\x20Running…</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22!running\x22>▶\x20Run</if>\x0a\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20<if\x20:=\x22response\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20:style=\x22\x27font-size:12px;\x20font-weight:700;\x20color:\x27+statusColor(response.status)+\x27;\x27\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{\x20response.status\x20}}\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22response.serverMs\x20!==\x20null\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:12px;\x20opacity:.65;\x22\x20title=\x22Server\x20processing\x20time\x20(from\x20meta.time)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{\x20response.serverMs\x20}}ms\x20<span\x20style=\x22opacity:.5;\x20font-size:11px;\x22>server</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:12px;\x20opacity:.35;\x22\x20title=\x22Client\x20roundtrip\x20time\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{\x20response.clientMs\x20}}ms\x20<span\x20style=\x22font-size:11px;\x22>roundtrip</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20<if\x20:=\x22runError\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:12px;\x20color:var(--okdb-danger);\x22>{{\x20runError\x20}}</span>\x0a\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20</div>\x0a\x0a\x20\x20\x20\x20<!--\x20Response\x20viewer\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22response\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Response</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22ae-response\x22>{{\x20prettyJson(response.body)\x20}}</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20</div><!--\x20/scroll\x20area\x20-->\x0a</div>\x0a','replace','defaults','$attr','bodyText','(?=\x5c/|$)','reset','var(--okdb-danger)','54ifnfrY','var(--okdb-warning)','headers','5000590vDChuX','application/json','runError'];_0x4722=function(){return _0x3cd5da;};return _0x4722();}const _0x4b69e6=_0x20b2;(function(_0x77c8a6,_0x18e3cc){const _0x4cdf57=_0x20b2,_0x568e84=_0x77c8a6();while(!![]){try{const _0x1cf049=parseInt(_0x4cdf57(0xeb))/0x1+-parseInt(_0x4cdf57(0xd2))/0x2+parseInt(_0x4cdf57(0xea))/0x3+parseInt(_0x4cdf57(0xce))/0x4*(parseInt(_0x4cdf57(0xe7))/0x5)+parseInt(_0x4cdf57(0xcf))/0x6*(-parseInt(_0x4cdf57(0xbf))/0x7)+parseInt(_0x4cdf57(0xd1))/0x8*(parseInt(_0x4cdf57(0xc8))/0x9)+-parseInt(_0x4cdf57(0xcb))/0xa;if(_0x1cf049===_0x18e3cc)break;else _0x568e84['push'](_0x568e84['shift']());}catch(_0x599ecc){_0x568e84['push'](_0x568e84['shift']());}}}(_0x4722,0x32714));export default{'tag':'api-endpoint','attr':{'endpoint':{}},'context':_0xa8b66f=>({'paramValues':{},'queryValues':{},'bodyText':'','running':!0x1,'response':null,'runError':null,get 'ep'(){const _0x1fcd2a=_0x20b2;return _0xa8b66f[_0x1fcd2a(0xc3)][_0x1fcd2a(0xd9)];},get 'pathParts'(){const _0x348a81=_0x20b2,_0x55f13f=this['ep']?.['path']||'',_0xa2280=_0x55f13f['match'](/^(.*?)\[([^\]]*)\](.*)$/);return _0xa2280?{'before':_0xa2280[0x1],'optional':_0xa2280[0x2][_0x348a81(0xc1)](/=\w+/g,''),'after':_0xa2280[0x3]}:{'before':_0x55f13f,'optional':null,'after':''};},get 'pathParams'(){const _0x55eb60=_0x20b2;return[...(this['ep']?.['path']||'')['replace'](/\[([^\]]*)\]/g,'$1')[_0x55eb60(0xe0)](/:(\w+)/g)][_0x55eb60(0xe3)](_0x449526=>_0x449526[0x1]);},get 'hasBody'(){const _0x2960a5=_0x20b2;return[_0x2960a5(0xbc),_0x2960a5(0xda),'PATCH',_0x2960a5(0xdc)][_0x2960a5(0xd7)](this['ep']?.[_0x2960a5(0xe9)]);},get 'methodColor'(){const _0x546cda=_0x20b2;return{'GET':'var(--okdb-accent)','POST':_0x546cda(0xb8),'PUT':_0x546cda(0xc9),'PATCH':_0x546cda(0xd3),'DELETE':_0x546cda(0xc7)}[this['ep']?.['method']]||_0x546cda(0xbb);},'reset'(){const _0xa6dc83=_0x20b2;this[_0xa6dc83(0xba)]={},this[_0xa6dc83(0xdb)]={},this[_0xa6dc83(0xbd)]=null,this['runError']=null;const _0x277eec=this['ep']?.[_0xa6dc83(0xc2)]??{};for(const [_0xc52329,_0x4eee77]of Object[_0xa6dc83(0xdf)](_0x277eec))this[_0xa6dc83(0xba)][_0xc52329]=_0x4eee77;const _0x677582=this['ep']?.[_0xa6dc83(0xe4)]?.['query']||{};for(const [_0x5dbef3,_0x5a654b]of Object[_0xa6dc83(0xdf)](_0x677582))this[_0xa6dc83(0xdb)][_0x5dbef3]=null!=_0x5a654b?String(_0x5a654b):'';this[_0xa6dc83(0xc4)]=null!=this['ep']?.['meta']?.[_0xa6dc83(0xe5)]?JSON['stringify'](this['ep']['meta']['body'],null,0x2):'';},'buildUrl'(){const _0x5058be=_0x20b2;let _0x3490f6=this['ep'][_0x5058be(0xd4)][_0x5058be(0xc1)](/^\/api/,'');_0x3490f6=_0x3490f6['replace'](/\[([^\]]*)\]/g,(_0x1435b5,_0x1b1109)=>{const _0x106887=_0x5058be,_0x2c530b=_0x1b1109[_0x106887(0xec)](/:(\w+)(?:=(\w+))?/);if(!_0x2c530b)return _0x1b1109;const _0x190bde=_0x2c530b[0x1],_0x421d73=_0x2c530b[0x2]??'';return(this[_0x106887(0xba)][_0x190bde]??_0x421d73)===_0x421d73?'':_0x1b1109[_0x106887(0xc1)](/:(\w+)(?:=\w+)?/g,(_0x35e6c5,_0x57be25)=>'/'+encodeURIComponent(this['paramValues'][_0x57be25]??''))[_0x106887(0xc1)](/^\//,'/');});for(const [_0xec3de,_0x38fe5b]of Object[_0x5058be(0xdf)](this[_0x5058be(0xba)]))_0x3490f6=_0x3490f6['replace'](new RegExp(':'+_0xec3de+_0x5058be(0xc5),'g'),encodeURIComponent(_0x38fe5b||':'+_0xec3de));const _0x28edb5=Object['entries'](this[_0x5058be(0xdb)])[_0x5058be(0xe6)](([,_0x5dd72b])=>''!==_0x5dd72b&&null!=_0x5dd72b)['map'](([_0x55a678,_0x97d57a])=>encodeURIComponent(_0x55a678)+'='+encodeURIComponent(_0x97d57a))[_0x5058be(0xd8)]('&');return __ENV__[_0x5058be(0xb5)]+_0x3490f6+(_0x28edb5?'?'+_0x28edb5:'');},async 'run'(){const _0x1c8680=_0x20b2;this[_0x1c8680(0xe8)]=!0x0,this['response']=null,this['runError']=null;const _0x4731f7=Date[_0x1c8680(0xdd)]();try{const _0x1c5ff7=this[_0x1c8680(0xd5)](),_0x266533={'method':this['ep'][_0x1c8680(0xe9)]};this['hasBody']&&this[_0x1c8680(0xc4)][_0x1c8680(0xd0)]()&&(_0x266533[_0x1c8680(0xca)]={'Content-Type':_0x1c8680(0xcc)},_0x266533[_0x1c8680(0xe5)]=this[_0x1c8680(0xc4)]);const _0x379d1d=await fetch(_0x1c5ff7,_0x266533),_0x3758e4=Date[_0x1c8680(0xdd)]()-_0x4731f7;let _0x58963e;try{_0x58963e=await _0x379d1d[_0x1c8680(0xbe)]();}catch{_0x58963e=await _0x379d1d[_0x1c8680(0xde)]();}const _0x2099ca=_0x1c8680(0xe1)==typeof _0x58963e&&null!==_0x58963e?_0x58963e?.[_0x1c8680(0xe4)]?.[_0x1c8680(0xd6)]??null:null;this[_0x1c8680(0xbd)]={'status':_0x379d1d[_0x1c8680(0xb4)],'clientMs':_0x3758e4,'serverMs':_0x2099ca,'body':_0x58963e};}catch(_0x1bc0ba){this[_0x1c8680(0xcd)]=_0x1bc0ba?.[_0x1c8680(0xb6)]||String(_0x1bc0ba);}finally{this[_0x1c8680(0xe8)]=!0x1;}},'statusColor':_0x5ea341=>_0x5ea341>=0xc8&&_0x5ea341<0x12c?_0x4b69e6(0xb8):_0x5ea341>=0x190&&_0x5ea341<0x1f4?_0x4b69e6(0xc9):'var(--okdb-danger)','prettyJson'(_0x3ca9ba){const _0x2955ef=_0x4b69e6;try{return JSON[_0x2955ef(0xb7)](_0x3ca9ba,null,0x2);}catch{return String(_0x3ca9ba);}},'setParam'(_0x5e3c2b,_0x57d979){const _0xcaa72f=_0x4b69e6;this[_0xcaa72f(0xba)]={...this['paramValues'],[_0x5e3c2b]:_0x57d979};},'setQuery'(_0xcc927b,_0x28a3aa){const _0x59ffbc=_0x4b69e6;this[_0x59ffbc(0xdb)]={...this['queryValues'],[_0xcc927b]:_0x28a3aa};}}),'init'(_0x3bbe05){const _0x4c0296=_0x4b69e6;_0x3bbe05[_0x4c0296(0xb9)](()=>_0x3bbe05[_0x4c0296(0xc3)]['endpoint'],()=>{const _0x1f9f00=_0x4c0296;this[_0x1f9f00(0xc6)]();}),this[_0x4c0296(0xc6)]();},'template':_0x4b69e6(0xc0),'style':_0x4b69e6(0xe2)};
1
+ const _0xeb1ee2=_0x47b2;(function(_0x1587db,_0x4ea77f){const _0x426be3=_0x47b2,_0x26c4b2=_0x1587db();while(!![]){try{const _0x42e426=parseInt(_0x426be3(0x138))/0x1*(parseInt(_0x426be3(0x141))/0x2)+-parseInt(_0x426be3(0x148))/0x3+-parseInt(_0x426be3(0x14c))/0x4*(-parseInt(_0x426be3(0x153))/0x5)+-parseInt(_0x426be3(0x146))/0x6+-parseInt(_0x426be3(0x149))/0x7*(-parseInt(_0x426be3(0x133))/0x8)+-parseInt(_0x426be3(0x12c))/0x9+parseInt(_0x426be3(0x15e))/0xa;if(_0x42e426===_0x4ea77f)break;else _0x26c4b2['push'](_0x26c4b2['shift']());}catch(_0x3acfdf){_0x26c4b2['push'](_0x26c4b2['shift']());}}}(_0x115d,0x7798c));function _0x115d(){const _0x3647f1=['status','path','runError','api-endpoint','(?=\x5c/|$)','10bHZgKy','API','PATCH','match','paramValues','buildUrl','$attr','var(--okdb-accent)','reset','query','method','17751840GqPyqx','stringify','\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-section-label\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2010px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20text-transform:\x20uppercase;\x0a\x20\x20\x20\x20\x20\x20\x20\x20letter-spacing:\x20.07em;\x0a\x20\x20\x20\x20\x20\x20\x20\x20opacity:\x20.45;\x0a\x20\x20\x20\x20\x20\x20\x20\x20margin-bottom:\x206px;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-input\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-bg-deep);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-border);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x206px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20padding:\x205px\x2010px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg);\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2013px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20monospace;\x0a\x20\x20\x20\x20\x20\x20\x20\x20outline:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20transition:\x20border-color\x20.12s;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-input:focus\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-color:\x20var(--okdb-accent-border);\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-textarea\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-bg-deep);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-border);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20padding:\x2010px\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--okdb-app-fg);\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20\x27Cascadia\x20Code\x27,\x20\x27Fira\x20Mono\x27,\x20monospace;\x0a\x20\x20\x20\x20\x20\x20\x20\x20resize:\x20vertical;\x0a\x20\x20\x20\x20\x20\x20\x20\x20outline:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20line-height:\x201.6;\x0a\x20\x20\x20\x20\x20\x20\x20\x20transition:\x20border-color\x20.12s;\x0a\x20\x20\x20\x20\x20\x20\x20\x20width:\x20100%;\x0a\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20border-box;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-textarea:focus\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-color:\x20var(--okdb-accent-soft-border);\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20api-endpoint\x20.ae-response\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20background:\x20var(--okdb-app-bg-deep);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20var(--okdb-app-surface-2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20padding:\x2012px\x2014px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20\x27Cascadia\x20Code\x27,\x20\x27Fira\x20Mono\x27,\x20monospace;\x0a\x20\x20\x20\x20\x20\x20\x20\x20color:\x20#88c8b0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20overflow-x:\x20auto;\x0a\x20\x20\x20\x20\x20\x20\x20\x20white-space:\x20pre-wrap;\x0a\x20\x20\x20\x20\x20\x20\x20\x20word-break:\x20break-all;\x0a\x20\x20\x20\x20\x20\x20\x20\x20margin:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20max-height:\x20400px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20overflow-y:\x20auto;\x0a\x20\x20\x20\x20\x20\x20\x20\x20line-height:\x201.55;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20','includes','meta','8028837QtGuYw','body','application/json','defaults','endpoint','POST','running','3784bCxuoH','var(--okdb-success)','bodyText','text','trim','19bvahyd','hasBody','DELETE','queryValues','response','matchAll','filter','var(--okdb-warning)','\x0a<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:0;\x20height:100%;\x22>\x0a\x0a\x20\x20<!--\x20Method\x20+\x20path\x20header\x20-->\x0a\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:12px;\x20padding:18px\x2020px\x2014px;\x20flex-shrink:0;\x20border-bottom:1px\x20solid\x20var(--okdb-app-surface-2);\x22>\x0a\x20\x20\x20\x20<span\x20:style=\x22\x27font-size:11px;\x20font-weight:700;\x20padding:3px\x2010px;\x20border-radius:5px;\x20border:1px\x20solid;\x20color:\x27+methodColor+\x27;\x20border-color:color-mix(in\x20srgb,\x20\x27+methodColor+\x27\x2033%,\x20transparent);\x20background:color-mix(in\x20srgb,\x20\x27+methodColor+\x27\x207%,\x20transparent);\x20letter-spacing:.06em;\x27\x22>\x0a\x20\x20\x20\x20\x20\x20{{\x20ep?.method\x20}}\x0a\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20<code\x20style=\x22font-family:monospace;\x20font-size:14px;\x20color:var(--okdb-app-fg);\x20word-break:break-all;\x22>{{\x20pathParts.before\x20}}<if\x20:=\x22pathParts.optional\x22><span\x20style=\x22opacity:.35;\x22>{{\x20pathParts.optional\x20}}</span></if>{{\x20pathParts.after\x20}}</code>\x0a\x20\x20</div>\x0a\x0a\x20\x20<!--\x20Scrollable\x20form\x20area\x20-->\x0a\x20\x20<div\x20style=\x22flex:1;\x20min-height:0;\x20overflow-y:auto;\x20padding:18px\x2020px;\x20display:flex;\x20flex-direction:column;\x20gap:18px;\x22>\x0a\x0a\x20\x20\x20\x20<!--\x20Summary\x20+\x20description\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.summary\x20||\x20ep?.meta?.description\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:4px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22font-weight:600;\x20font-size:14px;\x20color:var(--okdb-app-fg-strong);\x22>{{\x20ep.meta.summary\x20}}</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.description\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22font-size:13px;\x20opacity:.65;\x20line-height:1.6;\x22>{{\x20ep.meta.description\x20}}</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Path\x20params\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22pathParams.length\x20>\x200\x22>\x0a\x20\x20\x20\x20\x20\x20<div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Path\x20Parameters</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<each\x20:of=\x22pathParams\x22\x20let:item=\x22p\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:10px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20style=\x22font-family:monospace;\x20font-size:12px;\x20color:var(--okdb-accent);\x20width:120px;\x20flex-shrink:0;\x22>:{{\x20p\x20}}</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22ep?.meta?.params?.[p]\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:11px;\x20opacity:.5;\x20flex-shrink:0;\x22>{{\x20ep.meta.params[p]\x20}}</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22ae-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:placeholder=\x22p\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22paramValues[p]\x20||\x20\x27\x27\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@input=\x22setParam(p,\x20$el.value)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22flex:1;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</each>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Query\x20params\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22Object.keys(queryValues).length\x20>\x200\x22>\x0a\x20\x20\x20\x20\x20\x20<div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Query\x20Parameters</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<each\x20:of=\x22Object.keys(queryValues)\x22\x20let:item=\x22k\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:10px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20style=\x22font-family:monospace;\x20font-size:12px;\x20color:var(--okdb-accent-2);\x20width:120px;\x20flex-shrink:0;\x22>{{\x20k\x20}}</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22ae-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20:value=\x22queryValues[k]\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@input=\x22setQuery(k,\x20$el.value)\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20style=\x22flex:1;\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</each>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Body\x20editor\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22hasBody\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Request\x20Body\x20<span\x20style=\x22opacity:.4;\x20font-weight:400;\x22>(JSON)</span></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<textarea\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22ae-textarea\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20rows=\x2210\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20!value=\x22bodyText\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20></textarea>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20\x20\x20<!--\x20Run\x20button\x20-->\x0a\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20align-items:center;\x20gap:12px;\x22>\x0a\x20\x20\x20\x20\x20\x20<button\x0a\x20\x20\x20\x20\x20\x20\x20\x20@click=\x22run()\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20:disabled=\x22running\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20style=\x22background:var(--okdb-accent-soft-bg);\x20border-color:var(--okdb-accent-soft-border);\x20color:var(--okdb-accent);\x20font-weight:600;\x20padding:8px\x2022px;\x20font-size:13px;\x22\x0a\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22running\x22>⏳\x20Running…</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22!running\x22>▶\x20Run</if>\x0a\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20<if\x20:=\x22response\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20:style=\x22\x27font-size:12px;\x20font-weight:700;\x20color:\x27+statusColor(response.status)+\x27;\x27\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{\x20response.status\x20}}\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<if\x20:=\x22response.serverMs\x20!==\x20null\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:12px;\x20opacity:.65;\x22\x20title=\x22Server\x20processing\x20time\x20(from\x20meta.time)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{\x20response.serverMs\x20}}ms\x20<span\x20style=\x22opacity:.5;\x20font-size:11px;\x22>server</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:12px;\x20opacity:.35;\x22\x20title=\x22Client\x20roundtrip\x20time\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{\x20response.clientMs\x20}}ms\x20<span\x20style=\x22font-size:11px;\x22>roundtrip</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20\x20\x20<if\x20:=\x22runError\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:12px;\x20color:var(--okdb-danger);\x22>{{\x20runError\x20}}</span>\x0a\x20\x20\x20\x20\x20\x20</if>\x0a\x20\x20\x20\x20</div>\x0a\x0a\x20\x20\x20\x20<!--\x20Response\x20viewer\x20-->\x0a\x20\x20\x20\x20<if\x20:=\x22response\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:6px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ae-section-label\x22>Response</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22ae-response\x22>{{\x20prettyJson(response.body)\x20}}</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</if>\x0a\x0a\x20\x20</div><!--\x20/scroll\x20area\x20-->\x0a</div>\x0a','62184aRApQm','now','replace','object','map','4065888dthLDW','var(--okdb-danger)','2099721zeYulg','3878UZGwMg','$watch','entries','263084UeHDzG','join'];_0x115d=function(){return _0x3647f1;};return _0x115d();}function _0x47b2(_0x31b29c,_0x36eae4){_0x31b29c=_0x31b29c-0x129;const _0x115d07=_0x115d();let _0x47b266=_0x115d07[_0x31b29c];return _0x47b266;}export default{'tag':_0xeb1ee2(0x151),'attr':{'endpoint':{}},'context':_0x14b0fb=>({'paramValues':{},'queryValues':{},'bodyText':'','running':!0x1,'response':null,'runError':null,get 'ep'(){const _0x5c67a6=_0xeb1ee2;return _0x14b0fb['$attr'][_0x5c67a6(0x130)];},get 'pathParts'(){const _0x150142=_0xeb1ee2,_0x506dee=this['ep']?.[_0x150142(0x14f)]||'',_0x21c10d=_0x506dee[_0x150142(0x156)](/^(.*?)\[([^\]]*)\](.*)$/);return _0x21c10d?{'before':_0x21c10d[0x1],'optional':_0x21c10d[0x2][_0x150142(0x143)](/=\w+/g,''),'after':_0x21c10d[0x3]}:{'before':_0x506dee,'optional':null,'after':''};},get 'pathParams'(){const _0x19c130=_0xeb1ee2;return[...(this['ep']?.['path']||'')[_0x19c130(0x143)](/\[([^\]]*)\]/g,'$1')[_0x19c130(0x13d)](/:(\w+)/g)][_0x19c130(0x145)](_0x253552=>_0x253552[0x1]);},get 'hasBody'(){const _0x3638b9=_0xeb1ee2;return[_0x3638b9(0x131),'PUT',_0x3638b9(0x155),_0x3638b9(0x13a)][_0x3638b9(0x12a)](this['ep']?.[_0x3638b9(0x15d)]);},get 'methodColor'(){const _0x5ee62d=_0xeb1ee2;return{'GET':_0x5ee62d(0x15a),'POST':_0x5ee62d(0x134),'PUT':'var(--okdb-warning)','PATCH':'var(--okdb-accent-2)','DELETE':_0x5ee62d(0x147)}[this['ep']?.[_0x5ee62d(0x15d)]]||'var(--okdb-method-default)';},'reset'(){const _0x3b8035=_0xeb1ee2;this[_0x3b8035(0x157)]={},this[_0x3b8035(0x13b)]={},this[_0x3b8035(0x13c)]=null,this[_0x3b8035(0x150)]=null;const _0x5071ee=this['ep']?.[_0x3b8035(0x12f)]??{};for(const [_0x5414e7,_0x4f9abe]of Object[_0x3b8035(0x14b)](_0x5071ee))this[_0x3b8035(0x157)][_0x5414e7]=_0x4f9abe;const _0x468a30=this['ep']?.[_0x3b8035(0x12b)]?.[_0x3b8035(0x15c)]||{};for(const [_0x5d8c11,_0x4113ba]of Object[_0x3b8035(0x14b)](_0x468a30))this[_0x3b8035(0x13b)][_0x5d8c11]=null!=_0x4113ba?String(_0x4113ba):'';this[_0x3b8035(0x135)]=null!=this['ep']?.[_0x3b8035(0x12b)]?.[_0x3b8035(0x12d)]?JSON[_0x3b8035(0x15f)](this['ep'][_0x3b8035(0x12b)][_0x3b8035(0x12d)],null,0x2):'';},'buildUrl'(){const _0x511da3=_0xeb1ee2;let _0x59745c=this['ep']['path'][_0x511da3(0x143)](/^\/api/,'');_0x59745c=_0x59745c[_0x511da3(0x143)](/\[([^\]]*)\]/g,(_0xe8ca26,_0x4ec7f5)=>{const _0x12e1ca=_0x511da3,_0x28425c=_0x4ec7f5[_0x12e1ca(0x156)](/:(\w+)(?:=(\w+))?/);if(!_0x28425c)return _0x4ec7f5;const _0x390ec9=_0x28425c[0x1],_0x302d02=_0x28425c[0x2]??'';return(this[_0x12e1ca(0x157)][_0x390ec9]??_0x302d02)===_0x302d02?'':_0x4ec7f5[_0x12e1ca(0x143)](/:(\w+)(?:=\w+)?/g,(_0x155d9e,_0x31162c)=>'/'+encodeURIComponent(this[_0x12e1ca(0x157)][_0x31162c]??''))['replace'](/^\//,'/');});for(const [_0x52dfd1,_0x13b618]of Object[_0x511da3(0x14b)](this[_0x511da3(0x157)]))_0x59745c=_0x59745c[_0x511da3(0x143)](new RegExp(':'+_0x52dfd1+_0x511da3(0x152),'g'),encodeURIComponent(_0x13b618||':'+_0x52dfd1));const _0x11f6c3=Object[_0x511da3(0x14b)](this[_0x511da3(0x13b)])[_0x511da3(0x13e)](([,_0x4fcb33])=>''!==_0x4fcb33&&null!=_0x4fcb33)[_0x511da3(0x145)](([_0x27b1ee,_0x56c727])=>encodeURIComponent(_0x27b1ee)+'='+encodeURIComponent(_0x56c727))[_0x511da3(0x14d)]('&');return __ENV__[_0x511da3(0x154)]+_0x59745c+(_0x11f6c3?'?'+_0x11f6c3:'');},async 'run'(){const _0x86969f=_0xeb1ee2;this[_0x86969f(0x132)]=!0x0,this[_0x86969f(0x13c)]=null,this['runError']=null;const _0x4afe67=Date[_0x86969f(0x142)]();try{const _0x2b3af0=this[_0x86969f(0x158)](),_0x4d61a0={'method':this['ep'][_0x86969f(0x15d)]};this[_0x86969f(0x139)]&&this[_0x86969f(0x135)][_0x86969f(0x137)]()&&(_0x4d61a0['headers']={'Content-Type':_0x86969f(0x12e)},_0x4d61a0[_0x86969f(0x12d)]=this[_0x86969f(0x135)]);const _0x45410e=await fetch(_0x2b3af0,_0x4d61a0),_0x428e46=Date[_0x86969f(0x142)]()-_0x4afe67;let _0x1ad754;try{_0x1ad754=await _0x45410e['json']();}catch{_0x1ad754=await _0x45410e[_0x86969f(0x136)]();}const _0x1592fe=_0x86969f(0x144)==typeof _0x1ad754&&null!==_0x1ad754?_0x1ad754?.[_0x86969f(0x12b)]?.['time']??null:null;this['response']={'status':_0x45410e[_0x86969f(0x14e)],'clientMs':_0x428e46,'serverMs':_0x1592fe,'body':_0x1ad754};}catch(_0x27b558){this[_0x86969f(0x150)]=_0x27b558?.['message']||String(_0x27b558);}finally{this[_0x86969f(0x132)]=!0x1;}},'statusColor':_0x4d7d07=>_0x4d7d07>=0xc8&&_0x4d7d07<0x12c?_0xeb1ee2(0x134):_0x4d7d07>=0x190&&_0x4d7d07<0x1f4?_0xeb1ee2(0x13f):_0xeb1ee2(0x147),'prettyJson'(_0x2f815d){const _0x43c673=_0xeb1ee2;try{return JSON[_0x43c673(0x15f)](_0x2f815d,null,0x2);}catch{return String(_0x2f815d);}},'setParam'(_0x1d6be7,_0x5ed6cf){const _0x5474d1=_0xeb1ee2;this[_0x5474d1(0x157)]={...this[_0x5474d1(0x157)],[_0x1d6be7]:_0x5ed6cf};},'setQuery'(_0x1c502a,_0x5c9b56){this['queryValues']={...this['queryValues'],[_0x1c502a]:_0x5c9b56};}}),'init'(_0x22c007){const _0x5b2da4=_0xeb1ee2;_0x22c007[_0x5b2da4(0x14a)](()=>_0x22c007[_0x5b2da4(0x159)][_0x5b2da4(0x130)],()=>{const _0x315ba7=_0x5b2da4;this[_0x315ba7(0x15b)]();}),this['reset']();},'template':_0xeb1ee2(0x140),'style':_0xeb1ee2(0x129)};
@@ -1 +1 @@
1
- const _0x4cef19=_0x52b1;function _0x4e57(){const _0x3b27ce=['10016QzZiIU','label','collapsedScopes','/auth/tokens','token','work','namespaces','test','length','611394SZALEO','indexOf','env','26776FkxTXc','application/json','catalogError','sort','success','clipboard','ADMIN_API','ttl','opOrder','query','1325286JaTkzi','run','var(--okdb-warning)','weak','Failed\x20to\x20create\x20token','isNsAllSelectedForGrant','165ewaeUb','operations','result','var(--okdb-danger)','close','validateForm','selectedPerms','write','godMode','shared','Gate','json','permissions','gate','grants','keys','map','showToken','System','<div\x20class=\x22tf-root\x22><if\x20:=\x22busy\x20&&\x20!showToken\x22><ok-overlay><div\x20class=\x22loader-center\x22><ok-icon\x20name=\x22loader\x22\x20class=\x22spin\x22\x20style=\x22width:28px;height:28px;\x22/></div></ok-overlay></if><if\x20:=\x22showToken\x20&&\x20createdToken\x22><div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:12px;\x22><div\x20style=\x22font-size:13px;\x20font-weight:600;\x20color:var(--okdb-success);\x22>✓\x20Token\x20Created</div><div\x20class=\x22tf-token-box\x22><div\x20class=\x22tf-token-warn\x22>⚠\x20Copy\x20this\x20token\x20now\x20—\x20it\x20will\x20not\x20be\x20shown\x20again.</div><div\x20class=\x22tf-token-value\x22>{{\x20createdToken.token\x20||\x20createdToken.value\x20||\x20createdToken\x20}}</div><div\x20style=\x22font-size:11px;\x20color:var(--okdb-app-fg-muted);\x22>{{\x20createdToken.label\x20||\x20\x27Unnamed\x27\x20}}</div></div><div\x20class=\x22tf-actions\x22><button\x20class=\x22tf-btn\x20tf-btn--primary\x22\x20@click=\x22copyToken()\x22>Copy\x20token</button>\x20<button\x20class=\x22tf-btn\x20tf-btn--secondary\x22\x20@click=\x22dismissToken()\x22>Done</button></div></div></if><if\x20:=\x22!showToken\x22><div\x20class=\x22tf-header-fields\x22><div\x20class=\x22tf-header-row\x22><div\x20class=\x22tf-field\x22\x20style=\x22flex:2;\x22><span\x20class=\x22tf-label\x22>Label</span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22text\x22\x20placeholder=\x22e.g.,\x20API\x20Client\x22\x20:value=\x22label\x22\x20@input=\x22label\x20=\x20$el.value\x22\x20:disabled=\x22busy\x22></div><div\x20class=\x22tf-field\x22\x20style=\x22flex:1.5;\x22><span\x20class=\x22tf-label\x22>Expires\x20<span\x20style=\x22opacity:.4;\x22>(optional)</span></span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22datetime-local\x22\x20:value=\x22expiresAt\x22\x20@input=\x22expiresAt\x20=\x20$el.value\x22\x20:disabled=\x22busy\x22></div></div><div\x20class=\x22tf-creds-section\x22><div><div\x20class=\x22tf-creds-label\x22>Login\x20credentials\x20<span\x20style=\x22opacity:.4;\x20text-transform:none;\x20font-weight:400;\x20letter-spacing:0;\x22>(optional)</span></div><div\x20class=\x22tf-creds-hint\x22>If\x20set,\x20this\x20token\x20can\x20also\x20be\x20used\x20via\x20username\x20+\x20password\x20authentication.</div></div><div\x20class=\x22tf-creds-row\x22><div\x20class=\x22tf-field\x22\x20style=\x22flex:1;\x22><span\x20class=\x22tf-label\x22>Username</span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22text\x22\x20placeholder=\x22leave\x20blank\x20for\x20token-only\x22\x20:value=\x22name\x22\x20@input=\x22name\x20=\x20$el.value\x22\x20:disabled=\x22busy\x22\x20autocomplete=\x22off\x22></div><div\x20class=\x22tf-field\x22\x20style=\x22flex:1;\x22><span\x20class=\x22tf-label\x22>Password</span><div\x20class=\x22tf-pw-wrap\x22><input\x20class=\x22tf-input\x22\x20:type=\x22showPassword\x20?\x20\x27text\x27\x20:\x20\x27password\x27\x22\x20placeholder=\x22required\x20if\x20username\x20is\x20set\x22\x20:value=\x22password\x22\x20@input=\x22password\x20=\x20$el.value\x22\x20:disabled=\x22busy\x20||\x20!name\x22\x20autocomplete=\x22new-password\x22>\x20<button\x20class=\x22tf-pw-eye\x22\x20@click=\x22toggleShowPassword()\x22\x20type=\x22button\x22\x20tabindex=\x22-1\x22>{{\x20showPassword\x20?\x20\x27🙈\x27\x20:\x20\x27👁\x27\x20}}</button></div><if\x20:=\x22password\x22><div\x20class=\x22tf-strength-bar\x22><div\x20class=\x22tf-strength-fill\x22\x20:style=\x22\x27width:\x27\x20+\x20(passwordStrength(password)/5*100)\x20+\x20\x27%;\x20background:\x27\x20+\x20passwordStrengthColor(password)\x22/></div><div\x20class=\x22tf-strength-text\x22\x20:style=\x22\x27color:\x27\x20+\x20passwordStrengthColor(password)\x22>{{\x20passwordStrengthLabel(password)\x20}}</div></if></div></div></div></div><div\x20class=\x22tf-divider\x22/><if\x20:=\x22catalogLoading\x22><div\x20class=\x22tf-hint\x22\x20style=\x22padding-bottom:12px;\x22>Loading\x20permissions…</div></if><if\x20:=\x22catalogError\x20&&\x20!catalogLoading\x22><div\x20class=\x22tf-section\x22><span\x20class=\x22tf-label\x22>Permissions\x20<span\x20style=\x22color:var(--okdb-danger);\x22>(fallback)</span></span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22text\x22\x20placeholder=\x22data:read,\x20data:write\x22\x20:value=\x22selectedPerms._fallback\x20||\x20\x27\x27\x22\x20@input=\x22selectedPerms\x20=\x20{\x20_fallback:\x20$el.value\x20}\x22\x20:disabled=\x22busy\x22>\x20<span\x20class=\x22tf-hint\x22>Comma-separated\x20permission\x20strings</span></div></if><if\x20:=\x22catalog\x20&&\x20!catalogError\x20&&\x20!catalogLoading\x22><div\x20class=\x22tf-section\x22\x20style=\x22gap:4px;\x22><div\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--full\x27,\x20godMode\x20?\x20\x27tf-pill--full-on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGodMode()\x22\x20style=\x22width:fit-content;\x22>★\x20&nbsp;Full\x20access\x20—\x20all\x20permissions</div></div><if\x20:=\x22!godMode\x22><each\x20:of=\x22getPermSections()\x22\x20let:item=\x22section\x22><div\x20class=\x22tf-section\x22><div\x20class=\x22tf-scope-header\x22\x20@click=\x22toggleScope(section.scope)\x22><span\x20class=\x22tf-scope-name\x22>{{\x20section.label\x20}}</span><if\x20:=\x22scopeSelectionCount(section)\x22><span\x20class=\x22tf-scope-count\x22>{{\x20scopeSelectionCount(section)\x20}}</span></if><span\x20class=\x22tf-scope-chevron\x22>{{\x20isCollapsed(section.scope)\x20?\x20\x27▸\x27\x20:\x20\x27▾\x27\x20}}</span></div><if\x20:=\x22!isCollapsed(section.scope)\x22><each\x20:of=\x22section.namespaces\x22\x20let:item=\x22nsEntry\x22><div\x20class=\x22tf-ns-block\x22><div\x20class=\x22tf-ns-row\x22><span\x20:class=\x22[\x27tf-ns-label\x27,\x20isNsAllSelected(nsEntry.ns)\x20?\x20\x27tf-ns-label--on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleNamespace(nsEntry.ns,\x20nsEntry.operations)\x22\x20title=\x22Toggle\x20all\x22>{{\x20nsEntry.nsLabel\x20||\x20nsEntry.ns\x20}}</span><if\x20:=\x22nsEntry.nsDescription\x22><span\x20class=\x22tf-ns-desc\x22>{{\x20nsEntry.nsDescription\x20}}</span></if></div><div\x20class=\x22tf-pills\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--wild\x27,\x20isNsAllSelected(nsEntry.ns)\x20?\x20\x27tf-pill--wild-on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleNamespace(nsEntry.ns,\x20nsEntry.operations)\x22\x20title=\x22ns:*\x20—\x20toggle\x20all\x22>*</span><each\x20:of=\x22getPermOps(nsEntry.ns,\x20nsEntry.operations,\x20nsEntry.operationMeta)\x22\x20let:item=\x22permOp\x22><span\x20class=\x22tf-pill-wrap\x22\x20@mouseenter=\x22setHover($event,\x20permOp.perm,\x20permOp)\x22\x20@mouseleave=\x22clearHover()\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20permOp.checked\x20?\x20\x27tf-pill--on\x27\x20:\x20\x27\x27,\x20permOp.hasDestructive\x20?\x20\x27tf-pill--destructive\x27\x20:\x20\x27\x27]\x22\x20@click=\x22togglePerm(permOp.ns,\x20permOp.op,\x20nsEntry.operations)\x22>{{\x20permOp.op\x20}}<if\x20:=\x22permOp.hasDestructive\x22><span\x20class=\x22tf-pill-warn\x22>⚠</span></if></span></span></each></div></div></each></if></div></each><if\x20:=\x22catalog.envs\x20&&\x20catalog.envs.length\x20>\x200\x22><div\x20class=\x22tf-divider\x22/><div\x20class=\x22tf-section\x22\x20style=\x22gap:8px;\x22><div\x20class=\x22tf-scope-header\x22\x20style=\x22cursor:default;\x20pointer-events:none;\x22><span\x20class=\x22tf-scope-name\x22>Per-env\x20grants</span>\x20<span\x20class=\x22tf-hint\x22\x20style=\x22margin-left:6px;\x22>extra\x20permissions\x20for\x20a\x20specific\x20environment</span></div><if\x20:=\x22availableGrantEnvs().length\x20>\x200\x22><div\x20class=\x22tf-pills\x22><each\x20:of=\x22availableGrantEnvs()\x22\x20let:item=\x22envName\x22><span\x20class=\x22tf-pill\x20tf-pill--add\x22\x20@click=\x22addGrantEnv(envName)\x22>+\x20{{\x20envName\x20}}</span></each></div></if><each\x20:of=\x22getGrantEntries()\x22\x20let:item=\x22grantEntry\x22><div\x20class=\x22tf-env-row\x22><div\x20class=\x22tf-env-row-header\x22><div\x20style=\x22display:flex;\x20align-items:center;\x20gap:6px;\x22><span\x20class=\x22tf-env-name\x22>{{\x20grantEntry.env\x20}}</span>\x20<span\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--wild\x27,\x20isEnvAllSelected(grantEntry.env)\x20?\x20\x27tf-pill--wild-on\x27\x20:\x20isEnvWildInherited(grantEntry.env)\x20?\x20\x27tf-pill--wild-inherited\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantAllPerms(grantEntry.env)\x22\x20title=\x22*\x20—\x20all\x20permissions\x20for\x20this\x20env\x22\x20style=\x22font-size:11px;\x20padding:1px\x206px;\x22>*</span><if\x20:=\x22grantEntry.globalCoverAll\x22><span\x20class=\x22tf-hint\x22\x20style=\x22color:rgba(79,193,255,.35);\x22\x20title=\x22All\x20permissions\x20already\x20covered\x20by\x20global\x20*\x20or\x20god\x20mode\x22>inherited</span></if></div><span\x20class=\x22tf-env-remove\x22\x20@click=\x22removeGrantEnv(grantEntry.env)\x22>✕\x20remove</span></div><each\x20:of=\x22grantEntry.nGroups\x22\x20let:item=\x22nsGroup\x22><div\x20class=\x22tf-ns-row\x22><span\x20:class=\x22[\x27tf-ns-label\x27,\x20isNsAllSelectedForGrant(grantEntry.env,\x20nsGroup.ns)\x20?\x20\x27tf-ns-label--on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantNamespace(grantEntry.env,\x20nsGroup.ns,\x20nsGroup.ops)\x22\x20title=\x22Toggle\x20all\x22>{{\x20nsGroup.ns\x20}}</span><div\x20class=\x22tf-pills\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--wild\x27,\x20isNsAllSelectedForGrant(grantEntry.env,\x20nsGroup.ns)\x20?\x20\x27tf-pill--wild-on\x27\x20:\x20isNsWildInheritedForGrant(grantEntry.env,\x20nsGroup.ns)\x20?\x20\x27tf-pill--wild-inherited\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantNamespace(grantEntry.env,\x20nsGroup.ns,\x20nsGroup.ops)\x22\x20title=\x22ns:*\x20—\x20toggle\x20all\x22>*</span><each\x20:of=\x22nsGroup.ops\x22\x20let:item=\x22grantPerm\x22><span\x20class=\x22tf-pill-wrap\x22\x20@mouseenter=\x22setHover($event,\x20grantPerm.perm,\x20grantPerm)\x22\x20@mouseleave=\x22clearHover()\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20grantPerm.checked\x20?\x20\x27tf-pill--on\x27\x20:\x20grantPerm.inherited\x20?\x20\x27tf-pill--inherited\x27\x20:\x20\x27\x27,\x20grantPerm.hasDestructive\x20?\x20\x27tf-pill--destructive\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantPerm(grantEntry.env,\x20nsGroup.ns,\x20grantPerm.op,\x20nsGroup.ops.map(o\x20=>\x20o.op))\x22>{{\x20grantPerm.op\x20}}<if\x20:=\x22grantPerm.hasDestructive\x22><span\x20class=\x22tf-pill-warn\x22>⚠</span></if></span></span></each></div></div></each></div></each></div></if></if></if><if\x20:=\x22error\x22><div\x20class=\x22tf-error\x22>{{\x20error\x20}}</div></if><div\x20class=\x22tf-actions\x22><button\x20class=\x22tf-btn\x20tf-btn--secondary\x22\x20@click=\x22cancel()\x22\x20:disabled=\x22busy\x22>Cancel</button>\x20<button\x20class=\x22tf-btn\x20tf-btn--primary\x22\x20@click=\x22save()\x22\x20:disabled=\x22busy\x20||\x20!label.trim()\x22>Create\x20Token</button></div></if><if\x20:=\x22hoveredPermOp\x20&&\x20tooltipPos\x22><div\x20class=\x22tf-pip\x22\x20:style=\x22\x27left:\x27\x20+\x20tooltipPos.left\x20+\x20\x27px;\x20top:\x27\x20+\x20(tooltipPos.bottom\x20+\x204)\x20+\x20\x27px;\x27\x22><div\x20class=\x22tf-pip-perm\x22>{{\x20hoveredPermOp.perm\x20||\x20hoveredPerm\x20}}</div><if\x20:=\x22hoveredPermOp.summary\x22><div\x20class=\x22tf-pip-summary\x22>{{\x20hoveredPermOp.summary\x20}}</div></if><if\x20:=\x22hoveredPermOp.routes\x20&&\x20hoveredPermOp.routes.length\x22><div\x20class=\x22tf-pip-routes-hd\x22>Routes\x20({{\x20hoveredPermOp.routes.length\x20}})</div><each\x20:of=\x22hoveredPermOp.routes\x22\x20let:item=\x22r\x22><div\x20class=\x22tf-pip-route\x22><span\x20class=\x22tf-pip-method\x22>{{\x20r.method\x20}}</span>\x20<span\x20class=\x22tf-pip-path\x22>{{\x20r.path\x20}}</span><if\x20:=\x22r.destructive\x22><span\x20class=\x22tf-pip-bd\x22>destructive</span></if><if\x20:=\x22r.longRunning\x22><span\x20class=\x22tf-pip-lr\x22>long</span></if></div><if\x20:=\x22r.summary\x22><div\x20class=\x22tf-pip-route-desc\x22>{{\x20r.summary\x20}}</div></if></each></if><if\x20:=\x22!(hoveredPermOp.routes\x20&&\x20hoveredPermOp.routes.length)\x22><div\x20class=\x22tf-pip-gate\x22>Gate\x20—\x20combine\x20with\x20underlying\x20namespace\x20permissions.</div></if><if\x20:=\x22getImpliedBy(hoveredPerm).length\x22><div\x20class=\x22tf-pip-implied\x22>Implied\x20by:\x20{{\x20getImpliedBy(hoveredPerm).join(\x27,\x20\x27)\x20}}</div></if></div></if></div>','fair','password','message','catalog','132668mEoKhF','error','stringify','split','tooltipPos','hoveredPermOp','$ok','destructive','busy','read','bottom','createdToken','routes','expiresAt','POST','data','959BLAPba','API','localeCompare','system','1790604jaiQgq','now','Token\x20label\x20is\x20required','filter','loadCatalog','showPassword','modal','getBoundingClientRect','then','transparent','trim','envs','_fallback','hoveredPerm','onDone','strong','scope','$attr','catch','Token\x20copied\x20to\x20clipboard','entries','includes','currentTarget','isEnvAllSelected','left','toast','some','332469nPNXmj','getTime','passwordStrength','catalogLoading','name','writeText'];_0x4e57=function(){return _0x3b27ce;};return _0x4e57();}(function(_0x2625e8,_0x2d0d87){const _0x82c656=_0x52b1,_0x19b077=_0x2625e8();while(!![]){try{const _0x7219b3=parseInt(_0x82c656(0xdb))/0x1+parseInt(_0x82c656(0xac))/0x2+-parseInt(_0x82c656(0x81))/0x3+parseInt(_0x82c656(0x84))/0x4*(-parseInt(_0x82c656(0x94))/0x5)+parseInt(_0x82c656(0x8e))/0x6+parseInt(_0x82c656(0xbc))/0x7*(parseInt(_0x82c656(0xe1))/0x8)+-parseInt(_0x82c656(0xc0))/0x9;if(_0x7219b3===_0x2d0d87)break;else _0x19b077['push'](_0x19b077['shift']());}catch(_0x377b92){_0x19b077['push'](_0x19b077['shift']());}}}(_0x4e57,0x28e80));import _0x1b9311 from'@toolkit/elements/ok-icon.ok.js';import _0x548e06 from'@toolkit/core/ok-overlay.ok.js';function _0x52b1(_0x21b160,_0x4ebf17){_0x21b160=_0x21b160-0x7a;const _0x4e5726=_0x4e57();let _0x52b1a2=_0x4e5726[_0x21b160];return _0x52b1a2;}export default{'tag':'create-token-modal','dependencies':[_0x548e06,_0x1b9311],'attr':{'modal':{},'onDone':{}},'context':_0x57fb72=>({'busy':!0x1,'showToken':!0x1,'createdToken':null,'error':null,'label':'','name':'','password':'','showPassword':!0x1,'expiresAt':'','catalog':null,'catalogError':!0x1,'catalogLoading':!0x1,'godMode':!0x1,'selectedPerms':{},'grants':{},'collapsedScopes':{},'hoveredPerm':null,'hoveredPermOp':null,'tooltipPos':null,'setHover'(_0x351e7a,_0x8bbe49,_0x1f3939){const _0x4e5b9a=_0x52b1,_0x57ce52=_0x351e7a[_0x4e5b9a(0xd6)][_0x4e5b9a(0xc7)]();this[_0x4e5b9a(0xcd)]=_0x8bbe49,this[_0x4e5b9a(0xb1)]=_0x1f3939;const _0x46ae2a=_0x57ce52;this[_0x4e5b9a(0xb0)]={'left':_0x46ae2a[_0x4e5b9a(0xd8)],'bottom':_0x46ae2a[_0x4e5b9a(0xb6)]};},'clearHover'(){const _0x2ba152=_0x52b1;this[_0x2ba152(0xcd)]=null,this[_0x2ba152(0xb1)]=null,this['tooltipPos']=null;},async 'loadCatalog'(){const _0x3ab83b=_0x52b1;this[_0x3ab83b(0xde)]=!0x0;try{const _0x5c6ee5=await fetch(__ENV__[_0x3ab83b(0x8a)]+'/auth/permissions');if(!_0x5c6ee5['ok'])throw new Error('Failed');const _0x450ce6=await _0x5c6ee5['json']();this[_0x3ab83b(0xab)]=_0x450ce6[_0x3ab83b(0xbb)]??_0x450ce6[_0x3ab83b(0x96)];}catch{this[_0x3ab83b(0x86)]=!0x0;}finally{this[_0x3ab83b(0xde)]=!0x1;}},'togglePerm'(_0xadf08d,_0x306730,_0x19ce8a){const _0x25d7f5=_0x52b1;if(this[_0x25d7f5(0x9c)])return;const _0x4490e9=_0xadf08d+':*';if(this[_0x25d7f5(0x9a)][_0x4490e9]){const _0x511352={...this['selectedPerms']};delete _0x511352[_0x4490e9];for(const _0x3bd3cc of _0x19ce8a)_0x3bd3cc!==_0x306730&&(_0x511352[_0xadf08d+':'+_0x3bd3cc]=!0x0);this[_0x25d7f5(0x9a)]=_0x511352;}else this[_0x25d7f5(0x9a)]={...this['selectedPerms'],[_0xadf08d+':'+_0x306730]:!this[_0x25d7f5(0x9a)][_0xadf08d+':'+_0x306730]};},'toggleGodMode'(){const _0x33b571=_0x52b1;this[_0x33b571(0x9c)]=!this[_0x33b571(0x9c)],this[_0x33b571(0x9c)]&&(this[_0x33b571(0x9a)]={});},'toggleNamespace'(_0x596379,_0x4ffb11){const _0x17292a=_0x52b1;if(this[_0x17292a(0x9c)])return;const _0x394ec3=_0x596379+':*',_0x60be4b={...this[_0x17292a(0x9a)]};if(_0x60be4b[_0x394ec3])delete _0x60be4b[_0x394ec3];else{for(const _0xd6091e of _0x4ffb11)delete _0x60be4b[_0x596379+':'+_0xd6091e];_0x60be4b[_0x394ec3]=!0x0;}this['selectedPerms']=_0x60be4b;},'toggleScope'(_0x57b5bd){const _0x522824=_0x52b1;this[_0x522824(0x7a)]={...this[_0x522824(0x7a)],[_0x57b5bd]:!this[_0x522824(0x7a)][_0x57b5bd]};},'isCollapsed'(_0x36e278){const _0x1359cb=_0x52b1;return!!this[_0x1359cb(0x7a)][_0x36e278];},'scopeSelectionCount'(_0x300d73){const _0x121ddd=_0x52b1;let _0x28a25f=0x0,_0x50ac38=0x0;for(const _0x2e66f8 of _0x300d73[_0x121ddd(0x7e)])for(const _0x58161e of _0x2e66f8[_0x121ddd(0x95)])_0x50ac38++,(this['selectedPerms'][_0x2e66f8['ns']+':'+_0x58161e]||this['selectedPerms'][_0x2e66f8['ns']+':*'])&&_0x28a25f++;return _0x28a25f>0x0?_0x28a25f+'/'+_0x50ac38:'';},'addGrantEnv'(_0x2d445f){const _0x470cd5=_0x52b1;_0x2d445f&&!this[_0x470cd5(0xa2)][_0x2d445f]&&(this[_0x470cd5(0xa2)]={...this[_0x470cd5(0xa2)],[_0x2d445f]:{}});},'removeGrantEnv'(_0x45fe16){const _0x4c7cd1=_0x52b1,_0x28be73={...this[_0x4c7cd1(0xa2)]};delete _0x28be73[_0x45fe16],this[_0x4c7cd1(0xa2)]=_0x28be73;},'availableGrantEnvs'(){const _0x3c17ac=_0x52b1;return this['catalog']?.['envs']?this[_0x3c17ac(0xab)][_0x3c17ac(0xcb)][_0x3c17ac(0xc3)](_0x4c6cf2=>!this[_0x3c17ac(0xa2)][_0x4c6cf2]):[];},'getPermSections'(){const _0xb00013=_0x52b1;if(!this['catalog']?.[_0xb00013(0x7e)])return[];const _0x58675b=this['catalog'][_0xb00013(0x8c)]||[_0xb00013(0xb5),'query','run','write',_0xb00013(0x7d),'peer'];return[{'scope':_0xb00013(0x83),'label':'Environment'},{'scope':_0xb00013(0xbf),'label':_0xb00013(0xa6)},{'scope':_0xb00013(0xa1),'label':_0xb00013(0x9e)}]['map'](_0x9a09d5=>({'scope':_0x9a09d5['scope'],'label':_0x9a09d5[_0xb00013(0xe2)],'namespaces':Object[_0xb00013(0xd4)](this[_0xb00013(0xab)]['namespaces'])['filter'](([,_0x550e05])=>_0x550e05[_0xb00013(0xd0)]===_0x9a09d5[_0xb00013(0xd0)])[_0xb00013(0xa4)](([_0x265be6,_0x600701])=>({'ns':_0x265be6,'nsLabel':_0x600701[_0xb00013(0xe2)],'nsDescription':_0x600701['description'],'operations':Object['keys'](_0x600701[_0xb00013(0x95)])[_0xb00013(0x87)]((_0x4db96e,_0x1e2c3c)=>{const _0xcdc768=_0xb00013,_0x1c8689=_0x58675b[_0xcdc768(0x82)](_0x4db96e),_0x2cdb7d=_0x58675b['indexOf'](_0x1e2c3c);return-0x1===_0x1c8689&&-0x1===_0x2cdb7d?_0x4db96e['localeCompare'](_0x1e2c3c):-0x1===_0x1c8689?0x1:-0x1===_0x2cdb7d?-0x1:_0x1c8689-_0x2cdb7d;}),'operationMeta':_0x600701[_0xb00013(0x95)]}))}))[_0xb00013(0xc3)](_0x3445f4=>_0x3445f4['namespaces']['length']>0x0);},'getPermOps'(_0x4ba369,_0x3ce660,_0x370813){const _0x5f0e9e=_0x52b1;return _0x3ce660[_0x5f0e9e(0xa4)](_0x44524e=>{const _0xccc341=_0x5f0e9e,_0x38b0cd=_0x370813?.[_0x44524e]||{},_0x53346b=_0x38b0cd[_0xccc341(0xb8)]||[];return{'ns':_0x4ba369,'op':_0x44524e,'perm':_0x4ba369+':'+_0x44524e,'summary':_0x38b0cd['summary']||'','routes':_0x53346b,'hasDestructive':_0x53346b[_0xccc341(0xda)](_0x4d05fb=>_0x4d05fb[_0xccc341(0xb3)]),'checked':!!this[_0xccc341(0x9a)][_0x4ba369+':'+_0x44524e]||!!this[_0xccc341(0x9a)][_0x4ba369+':*']};});},'getImpliedBy'(_0xe0bf42){const _0x8fcf37=_0x52b1,_0x8e0aa6=this[_0x8fcf37(0xab)]?.['implies']||{};return Object[_0x8fcf37(0xd4)](_0x8e0aa6)[_0x8fcf37(0xc3)](([,_0x13a81b])=>_0x13a81b[_0x8fcf37(0xd5)](_0xe0bf42))['map'](([_0x39b417])=>_0x39b417);},'getGrantEntries'(){const _0x2b8b75=_0x52b1;if(!this[_0x2b8b75(0xab)]?.[_0x2b8b75(0x7e)])return[];const _0x1d7e4d=this[_0x2b8b75(0xab)][_0x2b8b75(0x8c)]||[_0x2b8b75(0xb5),_0x2b8b75(0x8d),_0x2b8b75(0x8f),_0x2b8b75(0x9b),_0x2b8b75(0x7d),'peer'],_0x4fdab8=Object[_0x2b8b75(0xd4)](this['catalog'][_0x2b8b75(0x7e)])['filter'](([,_0x594e82])=>'env'===_0x594e82[_0x2b8b75(0xd0)])[_0x2b8b75(0xa4)](([_0x1d4568,_0x57ad3d])=>({'ns':_0x1d4568,'operations':Object[_0x2b8b75(0xa3)](_0x57ad3d[_0x2b8b75(0x95)])[_0x2b8b75(0x87)]((_0x4b7538,_0x2d670b)=>{const _0x5b372c=_0x2b8b75,_0x3a3c6d=_0x1d7e4d[_0x5b372c(0x82)](_0x4b7538),_0x257528=_0x1d7e4d['indexOf'](_0x2d670b);return-0x1===_0x3a3c6d&&-0x1===_0x257528?_0x4b7538[_0x5b372c(0xbe)](_0x2d670b):-0x1===_0x3a3c6d?0x1:-0x1===_0x257528?-0x1:_0x3a3c6d-_0x257528;})})),_0x4a6cfb=this['selectedPerms'],_0xc85fd1=this[_0x2b8b75(0x9c)];return Object[_0x2b8b75(0xd4)](this[_0x2b8b75(0xa2)])[_0x2b8b75(0xa4)](([_0x15304b,_0x59bfe7])=>({'env':_0x15304b,'globalCoverAll':_0xc85fd1||!!_0x4a6cfb['*'],'nGroups':_0x4fdab8[_0x2b8b75(0xa4)](({ns:_0x51e59e,operations:_0x37b24b})=>({'ns':_0x51e59e,'ops':_0x37b24b[_0x2b8b75(0xa4)](_0x37f66b=>{const _0x41fe13=_0x2b8b75,_0xeae53f=_0x51e59e+':'+_0x37f66b,_0x5ad7b5=!!_0x59bfe7[_0xeae53f]||!!_0x59bfe7[_0x51e59e+':*']||!!_0x59bfe7['*'],_0x4e3fce=!_0x5ad7b5&&(_0xc85fd1||!!_0x4a6cfb['*']||!!_0x4a6cfb[_0x51e59e+':*']||!!_0x4a6cfb[_0xeae53f]),_0x29fd97=this[_0x41fe13(0xab)]['namespaces'][_0x51e59e]?.['operations']?.[_0x37f66b]||{};return{'perm':_0xeae53f,'op':_0x37f66b,'summary':_0x29fd97['summary']||'','routes':_0x29fd97[_0x41fe13(0xb8)]||[],'hasDestructive':(_0x29fd97[_0x41fe13(0xb8)]||[])[_0x41fe13(0xda)](_0x10b2dd=>_0x10b2dd[_0x41fe13(0xb3)]),'checked':_0x5ad7b5,'inherited':_0x4e3fce};})}))}));},'isNsAllSelected'(_0x5f1bb){const _0x531d01=_0x52b1;return!!this[_0x531d01(0x9a)][_0x5f1bb+':*'];},'isEnvAllSelected'(_0x6fbe48){const _0x14a15f=_0x52b1;return!!this[_0x14a15f(0xa2)][_0x6fbe48]?.['*'];},'isEnvWildInherited'(_0x141741){const _0x3f2ce0=_0x52b1;return!this[_0x3f2ce0(0xd7)](_0x141741)&&(this[_0x3f2ce0(0x9c)]||!!this[_0x3f2ce0(0x9a)]['*']);},'isNsAllSelectedForGrant'(_0x46f8e8,_0x6f481c){const _0x21f3eb=_0x52b1;return!!this[_0x21f3eb(0xa2)][_0x46f8e8]?.['*']||!!this[_0x21f3eb(0xa2)][_0x46f8e8]?.[_0x6f481c+':*'];},'isNsWildInheritedForGrant'(_0x224544,_0x11eb50){const _0x608d=_0x52b1;return!this[_0x608d(0x93)](_0x224544,_0x11eb50)&&(this[_0x608d(0x9c)]||!!this[_0x608d(0x9a)]['*']||!!this[_0x608d(0x9a)][_0x11eb50+':*']);},'toggleGrantPerm'(_0x3d7b9b,_0x496064,_0x38ba5c,_0x506f1f){const _0x28f0de=_0x52b1,_0x2b2e6f=_0x496064+':'+_0x38ba5c,_0x2e1b8e=_0x496064+':*',_0x41ea94={...this['grants'][_0x3d7b9b]||{}};if(_0x41ea94['*'])delete _0x41ea94['*'];else{if(_0x41ea94[_0x2e1b8e]){delete _0x41ea94[_0x2e1b8e];for(const _0xbe6865 of _0x506f1f)_0xbe6865!==_0x38ba5c&&(_0x41ea94[_0x496064+':'+_0xbe6865]=!0x0);}else _0x41ea94[_0x2b2e6f]=!_0x41ea94[_0x2b2e6f];}this[_0x28f0de(0xa2)]={...this[_0x28f0de(0xa2)],[_0x3d7b9b]:_0x41ea94};},'toggleGrantNamespace'(_0x7a69fc,_0x216b3b,_0x140631){const _0x338080=_0x52b1,_0x3c0f09=_0x216b3b+':*',_0x5dcc8b={...this['grants'][_0x7a69fc]||{}};if(_0x5dcc8b['*'])delete _0x5dcc8b['*'];else{if(_0x5dcc8b[_0x3c0f09])delete _0x5dcc8b[_0x3c0f09];else{for(const _0x27bd01 of _0x140631)delete _0x5dcc8b[_0x27bd01['perm']];_0x5dcc8b[_0x3c0f09]=!0x0;}}this[_0x338080(0xa2)]={...this[_0x338080(0xa2)],[_0x7a69fc]:_0x5dcc8b};},'toggleGrantAllPerms'(_0x4d1bc8){const _0x57eaad=_0x52b1,_0x4dd9a7=this[_0x57eaad(0xa2)][_0x4d1bc8]||{};if(_0x4dd9a7['*']){const _0xa7ddd3={..._0x4dd9a7};delete _0xa7ddd3['*'],this[_0x57eaad(0xa2)]={...this[_0x57eaad(0xa2)],[_0x4d1bc8]:_0xa7ddd3};}else this['grants']={...this[_0x57eaad(0xa2)],[_0x4d1bc8]:{'*':!0x0}};},'validateForm'(){const _0x4d3108=_0x52b1;if(!this[_0x4d3108(0xe2)][_0x4d3108(0xca)]())throw new Error(_0x4d3108(0xc2));return!0x0;},async 'save'(){const _0x15b4da=_0x52b1;this[_0x15b4da(0xad)]=null;try{this[_0x15b4da(0x99)](),this['busy']=!0x0;const _0x54e74e={'label':this['label']['trim']()};if(this[_0x15b4da(0xb9)]){const _0x3a1006=new Date(this[_0x15b4da(0xb9)])[_0x15b4da(0xdc)]();_0x3a1006>Date[_0x15b4da(0xc1)]()&&(_0x54e74e[_0x15b4da(0x8b)]=_0x3a1006-Date['now']());}if(this[_0x15b4da(0x9c)])_0x54e74e[_0x15b4da(0xa0)]=['*'];else{if(this[_0x15b4da(0x86)]&&void 0x0!==this[_0x15b4da(0x9a)][_0x15b4da(0xcc)]){const _0x59c012=String(this[_0x15b4da(0x9a)]['_fallback']||'')[_0x15b4da(0xaf)](',')[_0x15b4da(0xa4)](_0x45ab76=>_0x45ab76[_0x15b4da(0xca)]())[_0x15b4da(0xc3)](_0x5599bd=>_0x5599bd);_0x59c012['length']&&(_0x54e74e['permissions']=_0x59c012);}else{const _0x290a57=Object[_0x15b4da(0xd4)](this[_0x15b4da(0x9a)])[_0x15b4da(0xc3)](([_0x2af830,_0x11d4e6])=>_0x11d4e6&&_0x15b4da(0xcc)!==_0x2af830)['map'](([_0x138553])=>_0x138553);_0x290a57['length']&&(_0x54e74e[_0x15b4da(0xa0)]=_0x290a57);}}const _0x4dab0f={};for(const [_0x39d7d5,_0x172ff8]of Object['entries'](this['grants'])){const _0x23af2d=Object[_0x15b4da(0xd4)](_0x172ff8)['filter'](([,_0x164a1d])=>_0x164a1d)[_0x15b4da(0xa4)](([_0x3c9e9e])=>_0x3c9e9e);_0x23af2d['length']&&(_0x4dab0f[_0x39d7d5]=_0x23af2d);}Object[_0x15b4da(0xa3)](_0x4dab0f)[_0x15b4da(0x80)]&&(_0x54e74e[_0x15b4da(0xa2)]=_0x4dab0f),this[_0x15b4da(0xdf)][_0x15b4da(0xca)]()&&(_0x54e74e[_0x15b4da(0xdf)]=this['name'][_0x15b4da(0xca)](),this[_0x15b4da(0xa9)]&&(_0x54e74e[_0x15b4da(0xa9)]=this['password']));const _0x1eaabe=await fetch(__ENV__[_0x15b4da(0xbd)]+_0x15b4da(0x7b),{'method':_0x15b4da(0xba),'headers':{'Content-Type':_0x15b4da(0x85)},'body':JSON[_0x15b4da(0xae)](_0x54e74e)});if(!_0x1eaabe['ok']){const _0x13dacf=await _0x1eaabe[_0x15b4da(0x9f)]();throw new Error(_0x13dacf?.[_0x15b4da(0xad)]?.['message']||_0x15b4da(0x92));}const _0x21c3a3=await _0x1eaabe['json']();this['createdToken']=_0x21c3a3[_0x15b4da(0xbb)]??_0x21c3a3,this[_0x15b4da(0xa5)]=!0x0;}catch(_0x3cc314){this[_0x15b4da(0xad)]=_0x3cc314?.[_0x15b4da(0xaa)]||String(_0x3cc314),_0x57fb72['$ok'][_0x15b4da(0x9d)]?.[_0x15b4da(0xd9)]?.[_0x15b4da(0xad)]?.(this[_0x15b4da(0xad)]);}finally{this[_0x15b4da(0xb4)]=!0x1;}},'copyToken'(){const _0x553d5e=_0x52b1;this['createdToken']?.['token']&&navigator[_0x553d5e(0x89)]?.[_0x553d5e(0xe0)](this[_0x553d5e(0xb7)][_0x553d5e(0x7c)])[_0x553d5e(0xc8)](()=>{const _0x3a8649=_0x553d5e;_0x57fb72[_0x3a8649(0xb2)][_0x3a8649(0x9d)]?.['toast']?.[_0x3a8649(0x88)]?.(_0x3a8649(0xd3));})[_0x553d5e(0xd2)](()=>{const _0x40dcdb=_0x553d5e;_0x57fb72[_0x40dcdb(0xb2)][_0x40dcdb(0x9d)]?.['toast']?.[_0x40dcdb(0xad)]?.('Failed\x20to\x20copy\x20token');});},'dismissToken'(){const _0x556826=_0x52b1;_0x57fb72[_0x556826(0xd1)][_0x556826(0xc6)][_0x556826(0x98)](),_0x57fb72[_0x556826(0xd1)][_0x556826(0xce)]?.(this[_0x556826(0xb7)]);},'cancel'(){const _0x10f4bd=_0x52b1;_0x57fb72['$attr'][_0x10f4bd(0xc6)]['close']();},'passwordStrength'(_0x442d65){const _0x4c3301=_0x52b1;if(!_0x442d65)return 0x0;let _0x29c7e9=0x0;return _0x442d65[_0x4c3301(0x80)]>=0x8&&_0x29c7e9++,_0x442d65[_0x4c3301(0x80)]>=0xe&&_0x29c7e9++,/[A-Z]/[_0x4c3301(0x7f)](_0x442d65)&&_0x29c7e9++,/[0-9]/[_0x4c3301(0x7f)](_0x442d65)&&_0x29c7e9++,/[^A-Za-z0-9]/['test'](_0x442d65)&&_0x29c7e9++,_0x29c7e9;},'passwordStrengthLabel'(_0x44b617){const _0x5e8eb3=_0x52b1,_0x1dbfd5=this[_0x5e8eb3(0xdd)](_0x44b617);return _0x44b617?_0x1dbfd5<=0x1?_0x5e8eb3(0x91):_0x1dbfd5<=0x3?_0x5e8eb3(0xa8):_0x5e8eb3(0xcf):'';},'passwordStrengthColor'(_0x100e8f){const _0x3d8167=_0x52b1,_0x35979a=this[_0x3d8167(0xdd)](_0x100e8f);return _0x100e8f?_0x35979a<=0x1?_0x3d8167(0x97):_0x35979a<=0x3?_0x3d8167(0x90):'var(--okdb-success)':_0x3d8167(0xc9);},'toggleShowPassword'(){const _0x26e414=_0x52b1;this[_0x26e414(0xc5)]=!this[_0x26e414(0xc5)];}}),'mount'(_0x33ce42){const _0x4970e4=_0x52b1;this[_0x4970e4(0xc4)]();},'style':'.tf-header-fields,.tf-root,create-token-modal{display:flex;flex-direction:column}.tf-root{gap:0;width:520px;max-width:88vw;position:relative}.tf-header-fields{gap:12px;padding-bottom:16px}.tf-field,.tf-header-row{display:flex;gap:10px}.tf-field{flex-direction:column;gap:4px;min-width:0}.tf-label{font-size:10px;color:var(--okdb-app-fg-muted);text-transform:uppercase;letter-spacing:.07em;font-weight:600}.tf-creds-section{display:flex;flex-direction:column;gap:8px;padding:10px\x2012px;border:1px\x20solid\x20var(--okdb-app-surface);border-radius:6px;background:rgba(0,0,0,.15)}.tf-creds-label{font-size:10px;color:var(--okdb-app-fg-muted);text-transform:uppercase;letter-spacing:.07em;font-weight:600}.tf-creds-hint{font-size:10px;color:var(--okdb-app-fg-subtle);line-height:1.4;margin-top:-4px}.tf-creds-row{display:flex;gap:10px}.tf-pw-wrap{position:relative;display:flex;align-items:center}.tf-pw-wrap\x20.tf-input{padding-right:30px}.tf-pw-eye{position:absolute;right:7px;background:0\x200;border:0;color:var(--okdb-app-fg-subtle);cursor:pointer;font-size:12px;padding:0;line-height:1;user-select:none}.tf-pw-eye:hover,.tf-scope-header:hover\x20.tf-scope-name{color:var(--okdb-accent-muted)}.tf-strength-bar{height:2px;border-radius:1px;background:var(--okdb-app-surface);margin-top:3px;overflow:hidden}.tf-strength-fill{height:100%;border-radius:1px;transition:width\x20.2s,background-color\x20.2s}.tf-strength-text{font-size:9px;margin-top:2px;text-transform:uppercase;letter-spacing:.05em}.tf-input{padding:6px\x208px;border:1px\x20solid\x20var(--okdb-app-surface-2);border-radius:4px;background:0\x200;color:var(--okdb-app-fg-strong);font-size:12px;font-family:monospace;width:100%;box-sizing:border-box}.tf-input:focus{outline:0;border-color:rgba(79,193,255,.4)}.tf-hint{font-size:10px;color:var(--okdb-app-fg-subtle);line-height:1.4}.tf-divider{height:1px;background:var(--okdb-app-surface);margin-bottom:12px}.tf-section{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.tf-scope-header{display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none;padding:2px\x200}.tf-scope-name{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--okdb-app-fg-muted);font-weight:600;transition:color\x20.1s}.tf-scope-count{font-size:10px;color:var(--okdb-accent);opacity:.8}.tf-scope-chevron{margin-left:auto;font-size:10px;color:var(--okdb-app-fg-subtle)}.tf-ns-block{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.tf-ns-row{display:flex;align-items:baseline;gap:8px}.tf-ns-label{font-size:11px;color:var(--okdb-app-fg-subtle);font-family:monospace;flex-shrink:0;cursor:pointer;user-select:none;transition:color\x20.1s;font-weight:600}.tf-ns-label:hover{color:var(--okdb-accent-muted)}.tf-ns-label--on{color:var(--okdb-accent)}.tf-ns-desc{font-size:10px;color:var(--okdb-app-fg-subtle);line-height:1.4}.tf-pills{display:flex;flex-wrap:wrap;gap:4px;padding-left:4px}.tf-pill-wrap{display:inline-flex}.tf-pill-warn{font-size:7px;color:rgba(215,150,60,.85);vertical-align:super;margin-left:1px;line-height:0}.tf-pill--destructive{border-color:rgba(200,140,60,.35)}.tf-pill--destructive:hover{border-color:rgba(200,140,60,.6)}.tf-pill{display:inline-flex;align-items:center;padding:2px\x208px;border-radius:4px;font-size:11px;font-family:monospace;border:1px\x20solid\x20var(--okdb-app-surface-2);color:var(--okdb-app-fg-subtle);cursor:pointer;user-select:none;transition:background\x20.1s,border-color\x20.1s,color\x20.1s;white-space:nowrap}.tf-pill:hover{border-color:var(--okdb-app-border);color:var(--okdb-accent-muted)}.tf-pill--on{background:rgba(79,193,255,.1);border-color:rgba(79,193,255,.35);color:var(--okdb-accent)}.tf-pill--on:hover{background:rgba(79,193,255,.15)}.tf-pill--full{border-color:rgba(251,191,36,.2);color:#5a4a20}.tf-pill--full-on,.tf-pill--full:hover{border-color:rgba(251,191,36,.4);color:var(--okdb-warning-text)}.tf-pill--full-on{background:rgba(251,191,36,.1)}.tf-pill--full-on:hover{background:rgba(251,191,36,.16)}.tf-pill--add{border-style:dashed;border-color:var(--okdb-app-surface-2);color:var(--okdb-app-fg-subtle)}.tf-pill--add:hover{border-color:var(--okdb-app-border);color:var(--okdb-accent-muted);border-style:solid}.tf-pill--wild{border-color:rgba(251,191,36,.2);color:#5a4a20;font-weight:700}.tf-pill--wild-on,.tf-pill--wild:hover{border-color:rgba(251,191,36,.4);color:var(--okdb-warning-text)}.tf-pill--wild-on{background:rgba(251,191,36,.1);font-weight:700}.tf-pill--wild-on:hover{background:rgba(251,191,36,.16)}.tf-pill--wild-inherited{border-style:dashed;border-color:rgba(251,191,36,.45);color:rgba(251,191,36,.6);background:rgba(251,191,36,.05);font-weight:700}.tf-pill--wild-inherited:hover{border-color:rgba(251,191,36,.65);color:rgba(251,191,36,.8);background:rgba(251,191,36,.09)}.tf-pill--inherited{border-style:dashed;border-color:rgba(79,193,255,.5);color:rgba(79,193,255,.65);background:rgba(79,193,255,.06)}.tf-pill--inherited:hover{border-color:rgba(79,193,255,.7);color:rgba(79,193,255,.85);background:rgba(79,193,255,.1)}.tf-env-row{display:flex;flex-direction:column;gap:6px;padding:8px\x200\x2010px;border-top:1px\x20solid\x20var(--okdb-app-bg)}.tf-env-row-header{display:flex;align-items:center;justify-content:space-between}.tf-env-name{font-size:11px;font-weight:600;color:var(--okdb-app-fg-muted);font-family:monospace}.tf-env-all,.tf-env-remove{font-size:10px;color:var(--okdb-app-fg-subtle);cursor:pointer;user-select:none;padding:1px\x204px;transition:color\x20.1s}.tf-env-remove:hover{color:var(--okdb-danger)}.tf-env-all:hover{color:var(--okdb-accent-muted)}.tf-env-all--on{color:var(--okdb-warning-text)}.tf-env-all--on:hover{color:var(--okdb-warning)}.tf-token-box{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px\x20solid\x20rgba(79,193,255,.2);border-radius:6px;background:rgba(79,193,255,.03)}.tf-token-warn{font-size:11px;color:var(--okdb-warning-text);line-height:1.5}.tf-token-value{font-family:monospace;font-size:11px;color:var(--okdb-accent);word-break:break-all;padding:8px;background:rgba(0,0,0,.3);border-radius:4px;border:1px\x20solid\x20rgba(79,193,255,.15);cursor:text;user-select:all}.tf-error{font-size:11px;color:var(--okdb-danger);padding:6px\x200\x200}.tf-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:14px;margin-top:4px;border-top:1px\x20solid\x20var(--okdb-app-surface)}.tf-btn{padding:5px\x2012px;border-radius:5px;font-size:12px;border:1px\x20solid;background:0\x200;cursor:pointer;transition:background\x20.12s,color\x20.12s}.tf-btn:disabled{opacity:.4;cursor:not-allowed}.tf-btn--primary{border-color:var(--okdb-app-border);color:var(--okdb-accent-muted)}.tf-btn--primary:not(:disabled):hover{background:var(--okdb-app-surface);border-color:var(--okdb-app-border);color:var(--okdb-sky)}.tf-btn--secondary{border-color:var(--okdb-app-surface-2);color:var(--okdb-app-fg-subtle)}.tf-btn--secondary:hover{background:var(--okdb-app-bg)}.tf-pip{position:fixed;z-index:9999;min-width:260px;max-width:460px;background:var(--okdb-app-bg-deep);border:1px\x20solid\x20var(--okdb-app-surface-2);border-radius:5px;padding:8px\x2010px;box-shadow:0\x204px\x2018px\x20rgba(0,0,0,.75);pointer-events:none;white-space:normal;font-size:11px}.tf-pip-perm{font-family:monospace;font-size:10px;color:var(--okdb-accent);margin-bottom:3px}.tf-pip-summary{color:var(--okdb-accent-muted);line-height:1.4;margin-bottom:5px}.tf-pip-routes-hd{font-size:9px;color:var(--okdb-app-fg-subtle);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}.tf-pip-route{display:flex;align-items:baseline;gap:5px;padding:1px\x200}.tf-pip-method{font-family:monospace;font-size:9px;color:var(--okdb-accent);width:34px;flex-shrink:0}.tf-pip-path{font-family:monospace;font-size:10px;color:var(--okdb-accent-muted);word-break:break-all}.tf-pip-bd,.tf-pip-lr{font-size:8px;border-radius:2px;padding:0\x203px;flex-shrink:0}.tf-pip-bd{color:var(--okdb-danger);background:rgba(180,50,40,.15)}.tf-pip-lr{color:var(--okdb-app-fg-muted);background:rgba(100,100,100,.12)}.tf-pip-route-desc{font-size:9px;color:var(--okdb-app-fg-subtle);padding-left:39px;margin-bottom:1px}.tf-pip-gate,.tf-pip-implied{color:var(--okdb-app-fg-subtle);font-size:10px}.tf-pip-implied{margin-top:5px;font-size:9px;font-family:monospace}','template':_0x4cef19(0xa7)};
1
+ const _0x41f14e=_0x1e40;function _0x1e40(_0x3abd61,_0x2873b1){_0x3abd61=_0x3abd61-0x17c;const _0x1d6efb=_0x1d6e();let _0x1e40f8=_0x1d6efb[_0x3abd61];return _0x1e40f8;}(function(_0xca82e0,_0x3b167c){const _0x486134=_0x1e40,_0x5cb666=_0xca82e0();while(!![]){try{const _0x1168e6=parseInt(_0x486134(0x1b0))/0x1*(-parseInt(_0x486134(0x1ce))/0x2)+-parseInt(_0x486134(0x189))/0x3+parseInt(_0x486134(0x188))/0x4*(parseInt(_0x486134(0x1df))/0x5)+parseInt(_0x486134(0x1e3))/0x6*(parseInt(_0x486134(0x18d))/0x7)+-parseInt(_0x486134(0x1a6))/0x8+parseInt(_0x486134(0x18e))/0x9*(-parseInt(_0x486134(0x1b7))/0xa)+parseInt(_0x486134(0x180))/0xb*(parseInt(_0x486134(0x1be))/0xc);if(_0x1168e6===_0x3b167c)break;else _0x5cb666['push'](_0x5cb666['shift']());}catch(_0x240b48){_0x5cb666['push'](_0x5cb666['shift']());}}}(_0x1d6e,0xcc2f2));import _0x245ad1 from'@toolkit/elements/ok-icon.ok.js';function _0x1d6e(){const _0xf4a07a=['Failed','writeText','clipboard','includes','length','envs','sort','Failed\x20to\x20copy\x20token','Token\x20label\x20is\x20required','$ok','55qSRCYS','trim','selectedPerms','onDone','457914WbYDOn','run','gate','name','read','showPassword','keys','close','label','1661BrZdXb','message','scope','busy','showToken','query','ADMIN_API','system','424876WVucVm','2492295rPoIpd','filter','summary','operations','21inOUUM','261FfsQAN','fair','System','bottom','var(--okdb-danger)','Token\x20copied\x20to\x20clipboard','routes','json','API','peer','modal','env','/auth/permissions','loadCatalog','toast','Failed\x20to\x20create\x20token','_fallback','split','collapsedScopes','perm','opOrder','transparent','strong','catalogError','7376216DQZiqs','token','test','godMode','shared','application/json','permissions','indexOf','$attr','description','30DCtRYi','stringify','<div\x20class=\x22tf-root\x22><if\x20:=\x22busy\x20&&\x20!showToken\x22><ok-overlay><div\x20class=\x22loader-center\x22><ok-icon\x20name=\x22loader\x22\x20class=\x22spin\x22\x20style=\x22width:28px;height:28px;\x22/></div></ok-overlay></if><if\x20:=\x22showToken\x20&&\x20createdToken\x22><div\x20style=\x22display:flex;\x20flex-direction:column;\x20gap:12px;\x22><div\x20style=\x22font-size:13px;\x20font-weight:600;\x20color:var(--okdb-success);\x22>✓\x20Token\x20Created</div><div\x20class=\x22tf-token-box\x22><div\x20class=\x22tf-token-warn\x22>⚠\x20Copy\x20this\x20token\x20now\x20—\x20it\x20will\x20not\x20be\x20shown\x20again.</div><div\x20class=\x22tf-token-value\x22>{{\x20createdToken.token\x20||\x20createdToken.value\x20||\x20createdToken\x20}}</div><div\x20style=\x22font-size:11px;\x20color:var(--okdb-app-fg-muted);\x22>{{\x20createdToken.label\x20||\x20\x27Unnamed\x27\x20}}</div></div><div\x20class=\x22tf-actions\x22><button\x20class=\x22tf-btn\x20tf-btn--primary\x22\x20@click=\x22copyToken()\x22>Copy\x20token</button>\x20<button\x20class=\x22tf-btn\x20tf-btn--secondary\x22\x20@click=\x22dismissToken()\x22>Done</button></div></div></if><if\x20:=\x22!showToken\x22><div\x20class=\x22tf-header-fields\x22><div\x20class=\x22tf-header-row\x22><div\x20class=\x22tf-field\x22\x20style=\x22flex:2;\x22><span\x20class=\x22tf-label\x22>Label</span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22text\x22\x20placeholder=\x22e.g.,\x20API\x20Client\x22\x20:value=\x22label\x22\x20@input=\x22label\x20=\x20$el.value\x22\x20:disabled=\x22busy\x22></div><div\x20class=\x22tf-field\x22\x20style=\x22flex:1.5;\x22><span\x20class=\x22tf-label\x22>Expires\x20<span\x20style=\x22opacity:.4;\x22>(optional)</span></span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22datetime-local\x22\x20:value=\x22expiresAt\x22\x20@input=\x22expiresAt\x20=\x20$el.value\x22\x20:disabled=\x22busy\x22></div></div><div\x20class=\x22tf-creds-section\x22><div><div\x20class=\x22tf-creds-label\x22>Login\x20credentials\x20<span\x20style=\x22opacity:.4;\x20text-transform:none;\x20font-weight:400;\x20letter-spacing:0;\x22>(optional)</span></div><div\x20class=\x22tf-creds-hint\x22>If\x20set,\x20this\x20token\x20can\x20also\x20be\x20used\x20via\x20username\x20+\x20password\x20authentication.</div></div><div\x20class=\x22tf-creds-row\x22><div\x20class=\x22tf-field\x22\x20style=\x22flex:1;\x22><span\x20class=\x22tf-label\x22>Username</span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22text\x22\x20placeholder=\x22leave\x20blank\x20for\x20token-only\x22\x20:value=\x22name\x22\x20@input=\x22name\x20=\x20$el.value\x22\x20:disabled=\x22busy\x22\x20autocomplete=\x22off\x22></div><div\x20class=\x22tf-field\x22\x20style=\x22flex:1;\x22><span\x20class=\x22tf-label\x22>Password</span><div\x20class=\x22tf-pw-wrap\x22><input\x20class=\x22tf-input\x22\x20:type=\x22showPassword\x20?\x20\x27text\x27\x20:\x20\x27password\x27\x22\x20placeholder=\x22required\x20if\x20username\x20is\x20set\x22\x20:value=\x22password\x22\x20@input=\x22password\x20=\x20$el.value\x22\x20:disabled=\x22busy\x20||\x20!name\x22\x20autocomplete=\x22new-password\x22>\x20<button\x20class=\x22tf-pw-eye\x22\x20@click=\x22toggleShowPassword()\x22\x20type=\x22button\x22\x20tabindex=\x22-1\x22>{{\x20showPassword\x20?\x20\x27🙈\x27\x20:\x20\x27👁\x27\x20}}</button></div><if\x20:=\x22password\x22><div\x20class=\x22tf-strength-bar\x22><div\x20class=\x22tf-strength-fill\x22\x20:style=\x22\x27width:\x27\x20+\x20(passwordStrength(password)/5*100)\x20+\x20\x27%;\x20background:\x27\x20+\x20passwordStrengthColor(password)\x22/></div><div\x20class=\x22tf-strength-text\x22\x20:style=\x22\x27color:\x27\x20+\x20passwordStrengthColor(password)\x22>{{\x20passwordStrengthLabel(password)\x20}}</div></if></div></div></div></div><div\x20class=\x22tf-divider\x22/><if\x20:=\x22catalogLoading\x22><div\x20class=\x22tf-hint\x22\x20style=\x22padding-bottom:12px;\x22>Loading\x20permissions…</div></if><if\x20:=\x22catalogError\x20&&\x20!catalogLoading\x22><div\x20class=\x22tf-section\x22><span\x20class=\x22tf-label\x22>Permissions\x20<span\x20style=\x22color:var(--okdb-danger);\x22>(fallback)</span></span>\x20<input\x20class=\x22tf-input\x22\x20type=\x22text\x22\x20placeholder=\x22data:read,\x20data:write\x22\x20:value=\x22selectedPerms._fallback\x20||\x20\x27\x27\x22\x20@input=\x22selectedPerms\x20=\x20{\x20_fallback:\x20$el.value\x20}\x22\x20:disabled=\x22busy\x22>\x20<span\x20class=\x22tf-hint\x22>Comma-separated\x20permission\x20strings</span></div></if><if\x20:=\x22catalog\x20&&\x20!catalogError\x20&&\x20!catalogLoading\x22><div\x20class=\x22tf-section\x22\x20style=\x22gap:4px;\x22><div\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--full\x27,\x20godMode\x20?\x20\x27tf-pill--full-on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGodMode()\x22\x20style=\x22width:fit-content;\x22>★\x20&nbsp;Full\x20access\x20—\x20all\x20permissions</div></div><if\x20:=\x22!godMode\x22><each\x20:of=\x22getPermSections()\x22\x20let:item=\x22section\x22><div\x20class=\x22tf-section\x22><div\x20class=\x22tf-scope-header\x22\x20@click=\x22toggleScope(section.scope)\x22><span\x20class=\x22tf-scope-name\x22>{{\x20section.label\x20}}</span><if\x20:=\x22scopeSelectionCount(section)\x22><span\x20class=\x22tf-scope-count\x22>{{\x20scopeSelectionCount(section)\x20}}</span></if><span\x20class=\x22tf-scope-chevron\x22>{{\x20isCollapsed(section.scope)\x20?\x20\x27▸\x27\x20:\x20\x27▾\x27\x20}}</span></div><if\x20:=\x22!isCollapsed(section.scope)\x22><each\x20:of=\x22section.namespaces\x22\x20let:item=\x22nsEntry\x22><div\x20class=\x22tf-ns-block\x22><div\x20class=\x22tf-ns-row\x22><span\x20:class=\x22[\x27tf-ns-label\x27,\x20isNsAllSelected(nsEntry.ns)\x20?\x20\x27tf-ns-label--on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleNamespace(nsEntry.ns,\x20nsEntry.operations)\x22\x20title=\x22Toggle\x20all\x22>{{\x20nsEntry.nsLabel\x20||\x20nsEntry.ns\x20}}</span><if\x20:=\x22nsEntry.nsDescription\x22><span\x20class=\x22tf-ns-desc\x22>{{\x20nsEntry.nsDescription\x20}}</span></if></div><div\x20class=\x22tf-pills\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--wild\x27,\x20isNsAllSelected(nsEntry.ns)\x20?\x20\x27tf-pill--wild-on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleNamespace(nsEntry.ns,\x20nsEntry.operations)\x22\x20title=\x22ns:*\x20—\x20toggle\x20all\x22>*</span><each\x20:of=\x22getPermOps(nsEntry.ns,\x20nsEntry.operations,\x20nsEntry.operationMeta)\x22\x20let:item=\x22permOp\x22><span\x20class=\x22tf-pill-wrap\x22\x20@mouseenter=\x22setHover($event,\x20permOp.perm,\x20permOp)\x22\x20@mouseleave=\x22clearHover()\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20permOp.checked\x20?\x20\x27tf-pill--on\x27\x20:\x20\x27\x27,\x20permOp.hasDestructive\x20?\x20\x27tf-pill--destructive\x27\x20:\x20\x27\x27]\x22\x20@click=\x22togglePerm(permOp.ns,\x20permOp.op,\x20nsEntry.operations)\x22>{{\x20permOp.op\x20}}<if\x20:=\x22permOp.hasDestructive\x22><span\x20class=\x22tf-pill-warn\x22>⚠</span></if></span></span></each></div></div></each></if></div></each><if\x20:=\x22catalog.envs\x20&&\x20catalog.envs.length\x20>\x200\x22><div\x20class=\x22tf-divider\x22/><div\x20class=\x22tf-section\x22\x20style=\x22gap:8px;\x22><div\x20class=\x22tf-scope-header\x22\x20style=\x22cursor:default;\x20pointer-events:none;\x22><span\x20class=\x22tf-scope-name\x22>Per-env\x20grants</span>\x20<span\x20class=\x22tf-hint\x22\x20style=\x22margin-left:6px;\x22>extra\x20permissions\x20for\x20a\x20specific\x20environment</span></div><if\x20:=\x22availableGrantEnvs().length\x20>\x200\x22><div\x20class=\x22tf-pills\x22><each\x20:of=\x22availableGrantEnvs()\x22\x20let:item=\x22envName\x22><span\x20class=\x22tf-pill\x20tf-pill--add\x22\x20@click=\x22addGrantEnv(envName)\x22>+\x20{{\x20envName\x20}}</span></each></div></if><each\x20:of=\x22getGrantEntries()\x22\x20let:item=\x22grantEntry\x22><div\x20class=\x22tf-env-row\x22><div\x20class=\x22tf-env-row-header\x22><div\x20style=\x22display:flex;\x20align-items:center;\x20gap:6px;\x22><span\x20class=\x22tf-env-name\x22>{{\x20grantEntry.env\x20}}</span>\x20<span\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--wild\x27,\x20isEnvAllSelected(grantEntry.env)\x20?\x20\x27tf-pill--wild-on\x27\x20:\x20isEnvWildInherited(grantEntry.env)\x20?\x20\x27tf-pill--wild-inherited\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantAllPerms(grantEntry.env)\x22\x20title=\x22*\x20—\x20all\x20permissions\x20for\x20this\x20env\x22\x20style=\x22font-size:11px;\x20padding:1px\x206px;\x22>*</span><if\x20:=\x22grantEntry.globalCoverAll\x22><span\x20class=\x22tf-hint\x22\x20style=\x22color:rgba(79,193,255,.35);\x22\x20title=\x22All\x20permissions\x20already\x20covered\x20by\x20global\x20*\x20or\x20god\x20mode\x22>inherited</span></if></div><span\x20class=\x22tf-env-remove\x22\x20@click=\x22removeGrantEnv(grantEntry.env)\x22>✕\x20remove</span></div><each\x20:of=\x22grantEntry.nGroups\x22\x20let:item=\x22nsGroup\x22><div\x20class=\x22tf-ns-row\x22><span\x20:class=\x22[\x27tf-ns-label\x27,\x20isNsAllSelectedForGrant(grantEntry.env,\x20nsGroup.ns)\x20?\x20\x27tf-ns-label--on\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantNamespace(grantEntry.env,\x20nsGroup.ns,\x20nsGroup.ops)\x22\x20title=\x22Toggle\x20all\x22>{{\x20nsGroup.ns\x20}}</span><div\x20class=\x22tf-pills\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20\x27tf-pill--wild\x27,\x20isNsAllSelectedForGrant(grantEntry.env,\x20nsGroup.ns)\x20?\x20\x27tf-pill--wild-on\x27\x20:\x20isNsWildInheritedForGrant(grantEntry.env,\x20nsGroup.ns)\x20?\x20\x27tf-pill--wild-inherited\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantNamespace(grantEntry.env,\x20nsGroup.ns,\x20nsGroup.ops)\x22\x20title=\x22ns:*\x20—\x20toggle\x20all\x22>*</span><each\x20:of=\x22nsGroup.ops\x22\x20let:item=\x22grantPerm\x22><span\x20class=\x22tf-pill-wrap\x22\x20@mouseenter=\x22setHover($event,\x20grantPerm.perm,\x20grantPerm)\x22\x20@mouseleave=\x22clearHover()\x22><span\x20:class=\x22[\x27tf-pill\x27,\x20grantPerm.checked\x20?\x20\x27tf-pill--on\x27\x20:\x20grantPerm.inherited\x20?\x20\x27tf-pill--inherited\x27\x20:\x20\x27\x27,\x20grantPerm.hasDestructive\x20?\x20\x27tf-pill--destructive\x27\x20:\x20\x27\x27]\x22\x20@click=\x22toggleGrantPerm(grantEntry.env,\x20nsGroup.ns,\x20grantPerm.op,\x20nsGroup.ops.map(o\x20=>\x20o.op))\x22>{{\x20grantPerm.op\x20}}<if\x20:=\x22grantPerm.hasDestructive\x22><span\x20class=\x22tf-pill-warn\x22>⚠</span></if></span></span></each></div></div></each></div></each></div></if></if></if><if\x20:=\x22error\x22><div\x20class=\x22tf-error\x22>{{\x20error\x20}}</div></if><div\x20class=\x22tf-actions\x22><button\x20class=\x22tf-btn\x20tf-btn--secondary\x22\x20@click=\x22cancel()\x22\x20:disabled=\x22busy\x22>Cancel</button>\x20<button\x20class=\x22tf-btn\x20tf-btn--primary\x22\x20@click=\x22save()\x22\x20:disabled=\x22busy\x20||\x20!label.trim()\x22>Create\x20Token</button></div></if><if\x20:=\x22hoveredPermOp\x20&&\x20tooltipPos\x22><div\x20class=\x22tf-pip\x22\x20:style=\x22\x27left:\x27\x20+\x20tooltipPos.left\x20+\x20\x27px;\x20top:\x27\x20+\x20(tooltipPos.bottom\x20+\x204)\x20+\x20\x27px;\x27\x22><div\x20class=\x22tf-pip-perm\x22>{{\x20hoveredPermOp.perm\x20||\x20hoveredPerm\x20}}</div><if\x20:=\x22hoveredPermOp.summary\x22><div\x20class=\x22tf-pip-summary\x22>{{\x20hoveredPermOp.summary\x20}}</div></if><if\x20:=\x22hoveredPermOp.routes\x20&&\x20hoveredPermOp.routes.length\x22><div\x20class=\x22tf-pip-routes-hd\x22>Routes\x20({{\x20hoveredPermOp.routes.length\x20}})</div><each\x20:of=\x22hoveredPermOp.routes\x22\x20let:item=\x22r\x22><div\x20class=\x22tf-pip-route\x22><span\x20class=\x22tf-pip-method\x22>{{\x20r.method\x20}}</span>\x20<span\x20class=\x22tf-pip-path\x22>{{\x20r.path\x20}}</span><if\x20:=\x22r.destructive\x22><span\x20class=\x22tf-pip-bd\x22>destructive</span></if><if\x20:=\x22r.longRunning\x22><span\x20class=\x22tf-pip-lr\x22>long</span></if></div><if\x20:=\x22r.summary\x22><div\x20class=\x22tf-pip-route-desc\x22>{{\x20r.summary\x20}}</div></if></each></if><if\x20:=\x22!(hoveredPermOp.routes\x20&&\x20hoveredPermOp.routes.length)\x22><div\x20class=\x22tf-pip-gate\x22>Gate\x20—\x20combine\x20with\x20underlying\x20namespace\x20permissions.</div></if><if\x20:=\x22getImpliedBy(hoveredPerm).length\x22><div\x20class=\x22tf-pip-implied\x22>Implied\x20by:\x20{{\x20getImpliedBy(hoveredPerm).join(\x27,\x20\x27)\x20}}</div></if></div></if></div>','namespaces','validateForm','create-token-modal','POST','239110XacYLa','createdToken','Environment','password','entries','destructive','passwordStrength','161076ZukJsq','write','grants','currentTarget','catalog','weak','tooltipPos','isNsAllSelectedForGrant','catch','some','implies','hoveredPerm','/auth/tokens','Gate','now','map','9446uAdWSp','var(--okdb-warning)','catalogLoading','isEnvAllSelected','hoveredPermOp','data','error'];_0x1d6e=function(){return _0xf4a07a;};return _0x1d6e();}import _0xced008 from'@toolkit/core/ok-overlay.ok.js';export default{'tag':_0x41f14e(0x1b5),'dependencies':[_0xced008,_0x245ad1],'attr':{'modal':{},'onDone':{}},'context':_0x655793=>({'busy':!0x1,'showToken':!0x1,'createdToken':null,'error':null,'label':'','name':'','password':'','showPassword':!0x1,'expiresAt':'','catalog':null,'catalogError':!0x1,'catalogLoading':!0x1,'godMode':!0x1,'selectedPerms':{},'grants':{},'collapsedScopes':{},'hoveredPerm':null,'hoveredPermOp':null,'tooltipPos':null,'setHover'(_0x1c59ff,_0x49414a,_0xa3f1d3){const _0x4ac17b=_0x41f14e,_0x36d645=_0x1c59ff[_0x4ac17b(0x1c1)]['getBoundingClientRect']();this[_0x4ac17b(0x1c9)]=_0x49414a,this[_0x4ac17b(0x1d2)]=_0xa3f1d3;const _0x18b516=_0x36d645;this['tooltipPos']={'left':_0x18b516['left'],'bottom':_0x18b516[_0x4ac17b(0x191)]};},'clearHover'(){const _0x276e18=_0x41f14e;this[_0x276e18(0x1c9)]=null,this[_0x276e18(0x1d2)]=null,this[_0x276e18(0x1c4)]=null;},async 'loadCatalog'(){const _0x46df3b=_0x41f14e;this[_0x46df3b(0x1d0)]=!0x0;try{const _0x385547=await fetch(__ENV__[_0x46df3b(0x186)]+_0x46df3b(0x19a));if(!_0x385547['ok'])throw new Error(_0x46df3b(0x1d5));const _0x1b461d=await _0x385547[_0x46df3b(0x195)]();this[_0x46df3b(0x1c2)]=_0x1b461d[_0x46df3b(0x1d3)]??_0x1b461d['result'];}catch{this['catalogError']=!0x0;}finally{this[_0x46df3b(0x1d0)]=!0x1;}},'togglePerm'(_0xf72c04,_0x4a862f,_0x158699){const _0x2d5b49=_0x41f14e;if(this['godMode'])return;const _0x2bcea7=_0xf72c04+':*';if(this[_0x2d5b49(0x1e1)][_0x2bcea7]){const _0x1f27cd={...this[_0x2d5b49(0x1e1)]};delete _0x1f27cd[_0x2bcea7];for(const _0x257491 of _0x158699)_0x257491!==_0x4a862f&&(_0x1f27cd[_0xf72c04+':'+_0x257491]=!0x0);this[_0x2d5b49(0x1e1)]=_0x1f27cd;}else this[_0x2d5b49(0x1e1)]={...this[_0x2d5b49(0x1e1)],[_0xf72c04+':'+_0x4a862f]:!this[_0x2d5b49(0x1e1)][_0xf72c04+':'+_0x4a862f]};},'toggleGodMode'(){const _0x1eb721=_0x41f14e;this[_0x1eb721(0x1a9)]=!this[_0x1eb721(0x1a9)],this[_0x1eb721(0x1a9)]&&(this[_0x1eb721(0x1e1)]={});},'toggleNamespace'(_0x4011d9,_0x590fe3){const _0x493b56=_0x41f14e;if(this['godMode'])return;const _0x5d8efd=_0x4011d9+':*',_0x301af9={...this[_0x493b56(0x1e1)]};if(_0x301af9[_0x5d8efd])delete _0x301af9[_0x5d8efd];else{for(const _0x54e05b of _0x590fe3)delete _0x301af9[_0x4011d9+':'+_0x54e05b];_0x301af9[_0x5d8efd]=!0x0;}this[_0x493b56(0x1e1)]=_0x301af9;},'toggleScope'(_0x462599){const _0x452380=_0x41f14e;this['collapsedScopes']={...this[_0x452380(0x1a0)],[_0x462599]:!this[_0x452380(0x1a0)][_0x462599]};},'isCollapsed'(_0x245a80){return!!this['collapsedScopes'][_0x245a80];},'scopeSelectionCount'(_0x220c16){const _0x49bb01=_0x41f14e;let _0xac9417=0x0,_0x29750a=0x0;for(const _0xe5d73d of _0x220c16[_0x49bb01(0x1b3)])for(const _0x507d67 of _0xe5d73d[_0x49bb01(0x18c)])_0x29750a++,(this[_0x49bb01(0x1e1)][_0xe5d73d['ns']+':'+_0x507d67]||this[_0x49bb01(0x1e1)][_0xe5d73d['ns']+':*'])&&_0xac9417++;return _0xac9417>0x0?_0xac9417+'/'+_0x29750a:'';},'addGrantEnv'(_0x4b23f6){const _0x4c2d4b=_0x41f14e;_0x4b23f6&&!this[_0x4c2d4b(0x1c0)][_0x4b23f6]&&(this['grants']={...this[_0x4c2d4b(0x1c0)],[_0x4b23f6]:{}});},'removeGrantEnv'(_0x2171bc){const _0x1ef92f=_0x41f14e,_0x2f5ccc={...this['grants']};delete _0x2f5ccc[_0x2171bc],this[_0x1ef92f(0x1c0)]=_0x2f5ccc;},'availableGrantEnvs'(){const _0x156b5d=_0x41f14e;return this['catalog']?.[_0x156b5d(0x1da)]?this[_0x156b5d(0x1c2)][_0x156b5d(0x1da)][_0x156b5d(0x18a)](_0x415aa7=>!this[_0x156b5d(0x1c0)][_0x415aa7]):[];},'getPermSections'(){const _0xf091d2=_0x41f14e;if(!this['catalog']?.[_0xf091d2(0x1b3)])return[];const _0x3b6572=this[_0xf091d2(0x1c2)]['opOrder']||[_0xf091d2(0x1e7),_0xf091d2(0x185),_0xf091d2(0x1e4),_0xf091d2(0x1bf),'work',_0xf091d2(0x197)];return[{'scope':'env','label':_0xf091d2(0x1b9)},{'scope':_0xf091d2(0x187),'label':_0xf091d2(0x190)},{'scope':_0xf091d2(0x1e5),'label':_0xf091d2(0x1cb)}][_0xf091d2(0x1cd)](_0x1c8791=>({'scope':_0x1c8791[_0xf091d2(0x182)],'label':_0x1c8791[_0xf091d2(0x17f)],'namespaces':Object[_0xf091d2(0x1bb)](this[_0xf091d2(0x1c2)][_0xf091d2(0x1b3)])[_0xf091d2(0x18a)](([,_0x5c28d8])=>_0x5c28d8[_0xf091d2(0x182)]===_0x1c8791['scope'])[_0xf091d2(0x1cd)](([_0x3b4baa,_0x283184])=>({'ns':_0x3b4baa,'nsLabel':_0x283184[_0xf091d2(0x17f)],'nsDescription':_0x283184[_0xf091d2(0x1af)],'operations':Object['keys'](_0x283184[_0xf091d2(0x18c)])[_0xf091d2(0x1db)]((_0x2476f9,_0x3e7659)=>{const _0x23cda5=_0xf091d2,_0x5adc32=_0x3b6572[_0x23cda5(0x1ad)](_0x2476f9),_0x4e6fbf=_0x3b6572[_0x23cda5(0x1ad)](_0x3e7659);return-0x1===_0x5adc32&&-0x1===_0x4e6fbf?_0x2476f9['localeCompare'](_0x3e7659):-0x1===_0x5adc32?0x1:-0x1===_0x4e6fbf?-0x1:_0x5adc32-_0x4e6fbf;}),'operationMeta':_0x283184[_0xf091d2(0x18c)]}))}))[_0xf091d2(0x18a)](_0x1d7fc0=>_0x1d7fc0['namespaces'][_0xf091d2(0x1d9)]>0x0);},'getPermOps'(_0xa6940d,_0x478232,_0x544731){const _0x278f78=_0x41f14e;return _0x478232[_0x278f78(0x1cd)](_0x3c07b0=>{const _0x34046a=_0x278f78,_0x1cc754=_0x544731?.[_0x3c07b0]||{},_0x27b649=_0x1cc754[_0x34046a(0x194)]||[];return{'ns':_0xa6940d,'op':_0x3c07b0,'perm':_0xa6940d+':'+_0x3c07b0,'summary':_0x1cc754['summary']||'','routes':_0x27b649,'hasDestructive':_0x27b649[_0x34046a(0x1c7)](_0x1897e8=>_0x1897e8['destructive']),'checked':!!this[_0x34046a(0x1e1)][_0xa6940d+':'+_0x3c07b0]||!!this[_0x34046a(0x1e1)][_0xa6940d+':*']};});},'getImpliedBy'(_0x35203a){const _0x95ab9f=_0x41f14e,_0xbb6a96=this['catalog']?.[_0x95ab9f(0x1c8)]||{};return Object[_0x95ab9f(0x1bb)](_0xbb6a96)['filter'](([,_0x3bb007])=>_0x3bb007[_0x95ab9f(0x1d8)](_0x35203a))['map'](([_0x31ec3d])=>_0x31ec3d);},'getGrantEntries'(){const _0x251267=_0x41f14e;if(!this[_0x251267(0x1c2)]?.[_0x251267(0x1b3)])return[];const _0x500f4b=this[_0x251267(0x1c2)][_0x251267(0x1a2)]||[_0x251267(0x1e7),'query',_0x251267(0x1e4),_0x251267(0x1bf),'work',_0x251267(0x197)],_0x54c8cc=Object[_0x251267(0x1bb)](this['catalog'][_0x251267(0x1b3)])[_0x251267(0x18a)](([,_0x18354f])=>_0x251267(0x199)===_0x18354f[_0x251267(0x182)])[_0x251267(0x1cd)](([_0x5d33fc,_0x485bf9])=>({'ns':_0x5d33fc,'operations':Object[_0x251267(0x17d)](_0x485bf9['operations'])[_0x251267(0x1db)]((_0x13264f,_0x1a3734)=>{const _0x184052=_0x251267,_0x4b4cd0=_0x500f4b['indexOf'](_0x13264f),_0x6c5157=_0x500f4b[_0x184052(0x1ad)](_0x1a3734);return-0x1===_0x4b4cd0&&-0x1===_0x6c5157?_0x13264f['localeCompare'](_0x1a3734):-0x1===_0x4b4cd0?0x1:-0x1===_0x6c5157?-0x1:_0x4b4cd0-_0x6c5157;})})),_0x2a118f=this[_0x251267(0x1e1)],_0x32a78f=this[_0x251267(0x1a9)];return Object[_0x251267(0x1bb)](this['grants'])['map'](([_0x4ab9c6,_0x1df238])=>({'env':_0x4ab9c6,'globalCoverAll':_0x32a78f||!!_0x2a118f['*'],'nGroups':_0x54c8cc[_0x251267(0x1cd)](({ns:_0x3717da,operations:_0x479fca})=>({'ns':_0x3717da,'ops':_0x479fca['map'](_0x50c74d=>{const _0x359eaf=_0x251267,_0x198420=_0x3717da+':'+_0x50c74d,_0x10feab=!!_0x1df238[_0x198420]||!!_0x1df238[_0x3717da+':*']||!!_0x1df238['*'],_0x54d406=!_0x10feab&&(_0x32a78f||!!_0x2a118f['*']||!!_0x2a118f[_0x3717da+':*']||!!_0x2a118f[_0x198420]),_0x3235e7=this['catalog'][_0x359eaf(0x1b3)][_0x3717da]?.[_0x359eaf(0x18c)]?.[_0x50c74d]||{};return{'perm':_0x198420,'op':_0x50c74d,'summary':_0x3235e7[_0x359eaf(0x18b)]||'','routes':_0x3235e7[_0x359eaf(0x194)]||[],'hasDestructive':(_0x3235e7['routes']||[])['some'](_0x38c055=>_0x38c055[_0x359eaf(0x1bc)]),'checked':_0x10feab,'inherited':_0x54d406};})}))}));},'isNsAllSelected'(_0x370887){const _0x49be89=_0x41f14e;return!!this[_0x49be89(0x1e1)][_0x370887+':*'];},'isEnvAllSelected'(_0x13269a){const _0x197317=_0x41f14e;return!!this[_0x197317(0x1c0)][_0x13269a]?.['*'];},'isEnvWildInherited'(_0x28b5ba){const _0x2496f4=_0x41f14e;return!this[_0x2496f4(0x1d1)](_0x28b5ba)&&(this[_0x2496f4(0x1a9)]||!!this[_0x2496f4(0x1e1)]['*']);},'isNsAllSelectedForGrant'(_0x4b5fed,_0x1d928b){const _0x498a3c=_0x41f14e;return!!this['grants'][_0x4b5fed]?.['*']||!!this[_0x498a3c(0x1c0)][_0x4b5fed]?.[_0x1d928b+':*'];},'isNsWildInheritedForGrant'(_0x8038c,_0x2a9e47){const _0x505211=_0x41f14e;return!this[_0x505211(0x1c5)](_0x8038c,_0x2a9e47)&&(this[_0x505211(0x1a9)]||!!this['selectedPerms']['*']||!!this[_0x505211(0x1e1)][_0x2a9e47+':*']);},'toggleGrantPerm'(_0x329d7e,_0x540d7a,_0x35d4d2,_0x269828){const _0x3d9813=_0x41f14e,_0x206718=_0x540d7a+':'+_0x35d4d2,_0x1718d1=_0x540d7a+':*',_0x34e8b8={...this['grants'][_0x329d7e]||{}};if(_0x34e8b8['*'])delete _0x34e8b8['*'];else{if(_0x34e8b8[_0x1718d1]){delete _0x34e8b8[_0x1718d1];for(const _0x31ab96 of _0x269828)_0x31ab96!==_0x35d4d2&&(_0x34e8b8[_0x540d7a+':'+_0x31ab96]=!0x0);}else _0x34e8b8[_0x206718]=!_0x34e8b8[_0x206718];}this['grants']={...this[_0x3d9813(0x1c0)],[_0x329d7e]:_0x34e8b8};},'toggleGrantNamespace'(_0x481710,_0x3b1b14,_0x1c85d6){const _0x3df61d=_0x41f14e,_0x17d329=_0x3b1b14+':*',_0x1fd1f3={...this['grants'][_0x481710]||{}};if(_0x1fd1f3['*'])delete _0x1fd1f3['*'];else{if(_0x1fd1f3[_0x17d329])delete _0x1fd1f3[_0x17d329];else{for(const _0x1a7290 of _0x1c85d6)delete _0x1fd1f3[_0x1a7290[_0x3df61d(0x1a1)]];_0x1fd1f3[_0x17d329]=!0x0;}}this[_0x3df61d(0x1c0)]={...this[_0x3df61d(0x1c0)],[_0x481710]:_0x1fd1f3};},'toggleGrantAllPerms'(_0x3b2c90){const _0x4a0d4f=_0x41f14e,_0x1f42e8=this[_0x4a0d4f(0x1c0)][_0x3b2c90]||{};if(_0x1f42e8['*']){const _0x5d44d6={..._0x1f42e8};delete _0x5d44d6['*'],this[_0x4a0d4f(0x1c0)]={...this[_0x4a0d4f(0x1c0)],[_0x3b2c90]:_0x5d44d6};}else this[_0x4a0d4f(0x1c0)]={...this[_0x4a0d4f(0x1c0)],[_0x3b2c90]:{'*':!0x0}};},'validateForm'(){const _0xa97ca5=_0x41f14e;if(!this[_0xa97ca5(0x17f)][_0xa97ca5(0x1e0)]())throw new Error(_0xa97ca5(0x1dd));return!0x0;},async 'save'(){const _0x52a3dd=_0x41f14e;this[_0x52a3dd(0x1d4)]=null;try{this[_0x52a3dd(0x1b4)](),this[_0x52a3dd(0x183)]=!0x0;const _0x7f4e01={'label':this[_0x52a3dd(0x17f)][_0x52a3dd(0x1e0)]()};if(this['expiresAt']){const _0x5b49bc=new Date(this['expiresAt'])['getTime']();_0x5b49bc>Date[_0x52a3dd(0x1cc)]()&&(_0x7f4e01['ttl']=_0x5b49bc-Date[_0x52a3dd(0x1cc)]());}if(this[_0x52a3dd(0x1a9)])_0x7f4e01[_0x52a3dd(0x1ac)]=['*'];else{if(this[_0x52a3dd(0x1a5)]&&void 0x0!==this[_0x52a3dd(0x1e1)][_0x52a3dd(0x19e)]){const _0x490e30=String(this[_0x52a3dd(0x1e1)][_0x52a3dd(0x19e)]||'')[_0x52a3dd(0x19f)](',')[_0x52a3dd(0x1cd)](_0x94d1b4=>_0x94d1b4[_0x52a3dd(0x1e0)]())[_0x52a3dd(0x18a)](_0x1f9052=>_0x1f9052);_0x490e30[_0x52a3dd(0x1d9)]&&(_0x7f4e01['permissions']=_0x490e30);}else{const _0x4a2e3d=Object[_0x52a3dd(0x1bb)](this[_0x52a3dd(0x1e1)])[_0x52a3dd(0x18a)](([_0x560678,_0x25c520])=>_0x25c520&&_0x52a3dd(0x19e)!==_0x560678)[_0x52a3dd(0x1cd)](([_0x4e46ac])=>_0x4e46ac);_0x4a2e3d[_0x52a3dd(0x1d9)]&&(_0x7f4e01[_0x52a3dd(0x1ac)]=_0x4a2e3d);}}const _0x28c9e9={};for(const [_0x43d36b,_0x2a3bb5]of Object[_0x52a3dd(0x1bb)](this[_0x52a3dd(0x1c0)])){const _0x4bd7b9=Object[_0x52a3dd(0x1bb)](_0x2a3bb5)['filter'](([,_0x5e83f7])=>_0x5e83f7)[_0x52a3dd(0x1cd)](([_0x158cbb])=>_0x158cbb);_0x4bd7b9['length']&&(_0x28c9e9[_0x43d36b]=_0x4bd7b9);}Object[_0x52a3dd(0x17d)](_0x28c9e9)[_0x52a3dd(0x1d9)]&&(_0x7f4e01[_0x52a3dd(0x1c0)]=_0x28c9e9),this['name'][_0x52a3dd(0x1e0)]()&&(_0x7f4e01[_0x52a3dd(0x1e6)]=this[_0x52a3dd(0x1e6)][_0x52a3dd(0x1e0)](),this['password']&&(_0x7f4e01[_0x52a3dd(0x1ba)]=this[_0x52a3dd(0x1ba)]));const _0xd48643=await fetch(__ENV__[_0x52a3dd(0x196)]+_0x52a3dd(0x1ca),{'method':_0x52a3dd(0x1b6),'headers':{'Content-Type':_0x52a3dd(0x1ab)},'body':JSON[_0x52a3dd(0x1b1)](_0x7f4e01)});if(!_0xd48643['ok']){const _0x1c4fc0=await _0xd48643[_0x52a3dd(0x195)]();throw new Error(_0x1c4fc0?.[_0x52a3dd(0x1d4)]?.[_0x52a3dd(0x181)]||_0x52a3dd(0x19d));}const _0x56bdc9=await _0xd48643['json']();this[_0x52a3dd(0x1b8)]=_0x56bdc9['data']??_0x56bdc9,this[_0x52a3dd(0x184)]=!0x0;}catch(_0x177855){this[_0x52a3dd(0x1d4)]=_0x177855?.[_0x52a3dd(0x181)]||String(_0x177855),_0x655793[_0x52a3dd(0x1de)][_0x52a3dd(0x1aa)]?.[_0x52a3dd(0x19c)]?.[_0x52a3dd(0x1d4)]?.(this[_0x52a3dd(0x1d4)]);}finally{this['busy']=!0x1;}},'copyToken'(){const _0x1ce84e=_0x41f14e;this[_0x1ce84e(0x1b8)]?.[_0x1ce84e(0x1a7)]&&navigator[_0x1ce84e(0x1d7)]?.[_0x1ce84e(0x1d6)](this[_0x1ce84e(0x1b8)][_0x1ce84e(0x1a7)])['then'](()=>{const _0x2299d1=_0x1ce84e;_0x655793[_0x2299d1(0x1de)][_0x2299d1(0x1aa)]?.[_0x2299d1(0x19c)]?.['success']?.(_0x2299d1(0x193));})[_0x1ce84e(0x1c6)](()=>{const _0x165846=_0x1ce84e;_0x655793['$ok']['shared']?.['toast']?.[_0x165846(0x1d4)]?.(_0x165846(0x1dc));});},'dismissToken'(){const _0x2f4aba=_0x41f14e;_0x655793[_0x2f4aba(0x1ae)][_0x2f4aba(0x198)][_0x2f4aba(0x17e)](),_0x655793['$attr'][_0x2f4aba(0x1e2)]?.(this[_0x2f4aba(0x1b8)]);},'cancel'(){const _0x586c2a=_0x41f14e;_0x655793[_0x586c2a(0x1ae)]['modal'][_0x586c2a(0x17e)]();},'passwordStrength'(_0x588e7a){const _0x4e6d2d=_0x41f14e;if(!_0x588e7a)return 0x0;let _0x6fee51=0x0;return _0x588e7a[_0x4e6d2d(0x1d9)]>=0x8&&_0x6fee51++,_0x588e7a[_0x4e6d2d(0x1d9)]>=0xe&&_0x6fee51++,/[A-Z]/[_0x4e6d2d(0x1a8)](_0x588e7a)&&_0x6fee51++,/[0-9]/['test'](_0x588e7a)&&_0x6fee51++,/[^A-Za-z0-9]/[_0x4e6d2d(0x1a8)](_0x588e7a)&&_0x6fee51++,_0x6fee51;},'passwordStrengthLabel'(_0x125d8f){const _0x42854b=_0x41f14e,_0x561f6d=this['passwordStrength'](_0x125d8f);return _0x125d8f?_0x561f6d<=0x1?_0x42854b(0x1c3):_0x561f6d<=0x3?_0x42854b(0x18f):_0x42854b(0x1a4):'';},'passwordStrengthColor'(_0x4d46d3){const _0x540abb=_0x41f14e,_0x2d7c31=this[_0x540abb(0x1bd)](_0x4d46d3);return _0x4d46d3?_0x2d7c31<=0x1?_0x540abb(0x192):_0x2d7c31<=0x3?_0x540abb(0x1cf):'var(--okdb-success)':_0x540abb(0x1a3);},'toggleShowPassword'(){const _0x1661c9=_0x41f14e;this['showPassword']=!this[_0x1661c9(0x17c)];}}),'mount'(_0x56c591){const _0x572a7d=_0x41f14e;this[_0x572a7d(0x19b)]();},'style':'.tf-header-fields,.tf-root,create-token-modal{display:flex;flex-direction:column}.tf-root{gap:0;width:520px;max-width:88vw;position:relative}.tf-header-fields{gap:12px;padding-bottom:16px}.tf-field,.tf-header-row{display:flex;gap:10px}.tf-field{flex-direction:column;gap:4px;min-width:0}.tf-label{font-size:10px;color:var(--okdb-app-fg-muted);text-transform:uppercase;letter-spacing:.07em;font-weight:600}.tf-creds-section{display:flex;flex-direction:column;gap:8px;padding:10px\x2012px;border:1px\x20solid\x20var(--okdb-app-surface);border-radius:6px;background:rgba(0,0,0,.15)}.tf-creds-label{font-size:10px;color:var(--okdb-app-fg-muted);text-transform:uppercase;letter-spacing:.07em;font-weight:600}.tf-creds-hint{font-size:10px;color:var(--okdb-app-fg-subtle);line-height:1.4;margin-top:-4px}.tf-creds-row{display:flex;gap:10px}.tf-pw-wrap{position:relative;display:flex;align-items:center}.tf-pw-wrap\x20.tf-input{padding-right:30px}.tf-pw-eye{position:absolute;right:7px;background:0\x200;border:0;color:var(--okdb-app-fg-subtle);cursor:pointer;font-size:12px;padding:0;line-height:1;user-select:none}.tf-pw-eye:hover,.tf-scope-header:hover\x20.tf-scope-name{color:var(--okdb-accent-muted)}.tf-strength-bar{height:2px;border-radius:1px;background:var(--okdb-app-surface);margin-top:3px;overflow:hidden}.tf-strength-fill{height:100%;border-radius:1px;transition:width\x20.2s,background-color\x20.2s}.tf-strength-text{font-size:9px;margin-top:2px;text-transform:uppercase;letter-spacing:.05em}.tf-input{padding:6px\x208px;border:1px\x20solid\x20var(--okdb-app-surface-2);border-radius:4px;background:0\x200;color:var(--okdb-app-fg-strong);font-size:12px;font-family:monospace;width:100%;box-sizing:border-box}.tf-input:focus{outline:0;border-color:rgba(79,193,255,.4)}.tf-hint{font-size:10px;color:var(--okdb-app-fg-subtle);line-height:1.4}.tf-divider{height:1px;background:var(--okdb-app-surface);margin-bottom:12px}.tf-section{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.tf-scope-header{display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none;padding:2px\x200}.tf-scope-name{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--okdb-app-fg-muted);font-weight:600;transition:color\x20.1s}.tf-scope-count{font-size:10px;color:var(--okdb-accent);opacity:.8}.tf-scope-chevron{margin-left:auto;font-size:10px;color:var(--okdb-app-fg-subtle)}.tf-ns-block{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.tf-ns-row{display:flex;align-items:baseline;gap:8px}.tf-ns-label{font-size:11px;color:var(--okdb-app-fg-subtle);font-family:monospace;flex-shrink:0;cursor:pointer;user-select:none;transition:color\x20.1s;font-weight:600}.tf-ns-label:hover{color:var(--okdb-accent-muted)}.tf-ns-label--on{color:var(--okdb-accent)}.tf-ns-desc{font-size:10px;color:var(--okdb-app-fg-subtle);line-height:1.4}.tf-pills{display:flex;flex-wrap:wrap;gap:4px;padding-left:4px}.tf-pill-wrap{display:inline-flex}.tf-pill-warn{font-size:7px;color:rgba(215,150,60,.85);vertical-align:super;margin-left:1px;line-height:0}.tf-pill--destructive{border-color:rgba(200,140,60,.35)}.tf-pill--destructive:hover{border-color:rgba(200,140,60,.6)}.tf-pill{display:inline-flex;align-items:center;padding:2px\x208px;border-radius:4px;font-size:11px;font-family:monospace;border:1px\x20solid\x20var(--okdb-app-surface-2);color:var(--okdb-app-fg-subtle);cursor:pointer;user-select:none;transition:background\x20.1s,border-color\x20.1s,color\x20.1s;white-space:nowrap}.tf-pill:hover{border-color:var(--okdb-app-border);color:var(--okdb-accent-muted)}.tf-pill--on{background:rgba(79,193,255,.1);border-color:rgba(79,193,255,.35);color:var(--okdb-accent)}.tf-pill--on:hover{background:rgba(79,193,255,.15)}.tf-pill--full{border-color:rgba(251,191,36,.2);color:#5a4a20}.tf-pill--full-on,.tf-pill--full:hover{border-color:rgba(251,191,36,.4);color:var(--okdb-warning-text)}.tf-pill--full-on{background:rgba(251,191,36,.1)}.tf-pill--full-on:hover{background:rgba(251,191,36,.16)}.tf-pill--add{border-style:dashed;border-color:var(--okdb-app-surface-2);color:var(--okdb-app-fg-subtle)}.tf-pill--add:hover{border-color:var(--okdb-app-border);color:var(--okdb-accent-muted);border-style:solid}.tf-pill--wild{border-color:rgba(251,191,36,.2);color:#5a4a20;font-weight:700}.tf-pill--wild-on,.tf-pill--wild:hover{border-color:rgba(251,191,36,.4);color:var(--okdb-warning-text)}.tf-pill--wild-on{background:rgba(251,191,36,.1);font-weight:700}.tf-pill--wild-on:hover{background:rgba(251,191,36,.16)}.tf-pill--wild-inherited{border-style:dashed;border-color:rgba(251,191,36,.45);color:rgba(251,191,36,.6);background:rgba(251,191,36,.05);font-weight:700}.tf-pill--wild-inherited:hover{border-color:rgba(251,191,36,.65);color:rgba(251,191,36,.8);background:rgba(251,191,36,.09)}.tf-pill--inherited{border-style:dashed;border-color:rgba(79,193,255,.5);color:rgba(79,193,255,.65);background:rgba(79,193,255,.06)}.tf-pill--inherited:hover{border-color:rgba(79,193,255,.7);color:rgba(79,193,255,.85);background:rgba(79,193,255,.1)}.tf-env-row{display:flex;flex-direction:column;gap:6px;padding:8px\x200\x2010px;border-top:1px\x20solid\x20var(--okdb-app-bg)}.tf-env-row-header{display:flex;align-items:center;justify-content:space-between}.tf-env-name{font-size:11px;font-weight:600;color:var(--okdb-app-fg-muted);font-family:monospace}.tf-env-all,.tf-env-remove{font-size:10px;color:var(--okdb-app-fg-subtle);cursor:pointer;user-select:none;padding:1px\x204px;transition:color\x20.1s}.tf-env-remove:hover{color:var(--okdb-danger)}.tf-env-all:hover{color:var(--okdb-accent-muted)}.tf-env-all--on{color:var(--okdb-warning-text)}.tf-env-all--on:hover{color:var(--okdb-warning)}.tf-token-box{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px\x20solid\x20rgba(79,193,255,.2);border-radius:6px;background:rgba(79,193,255,.03)}.tf-token-warn{font-size:11px;color:var(--okdb-warning-text);line-height:1.5}.tf-token-value{font-family:monospace;font-size:11px;color:var(--okdb-accent);word-break:break-all;padding:8px;background:rgba(0,0,0,.3);border-radius:4px;border:1px\x20solid\x20rgba(79,193,255,.15);cursor:text;user-select:all}.tf-error{font-size:11px;color:var(--okdb-danger);padding:6px\x200\x200}.tf-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:14px;margin-top:4px;border-top:1px\x20solid\x20var(--okdb-app-surface)}.tf-btn{padding:5px\x2012px;border-radius:5px;font-size:12px;border:1px\x20solid;background:0\x200;cursor:pointer;transition:background\x20.12s,color\x20.12s}.tf-btn:disabled{opacity:.4;cursor:not-allowed}.tf-btn--primary{border-color:var(--okdb-app-border);color:var(--okdb-accent-muted)}.tf-btn--primary:not(:disabled):hover{background:var(--okdb-app-surface);border-color:var(--okdb-app-border);color:var(--okdb-sky)}.tf-btn--secondary{border-color:var(--okdb-app-surface-2);color:var(--okdb-app-fg-subtle)}.tf-btn--secondary:hover{background:var(--okdb-app-bg)}.tf-pip{position:fixed;z-index:9999;min-width:260px;max-width:460px;background:var(--okdb-app-bg-deep);border:1px\x20solid\x20var(--okdb-app-surface-2);border-radius:5px;padding:8px\x2010px;box-shadow:0\x204px\x2018px\x20rgba(0,0,0,.75);pointer-events:none;white-space:normal;font-size:11px}.tf-pip-perm{font-family:monospace;font-size:10px;color:var(--okdb-accent);margin-bottom:3px}.tf-pip-summary{color:var(--okdb-accent-muted);line-height:1.4;margin-bottom:5px}.tf-pip-routes-hd{font-size:9px;color:var(--okdb-app-fg-subtle);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}.tf-pip-route{display:flex;align-items:baseline;gap:5px;padding:1px\x200}.tf-pip-method{font-family:monospace;font-size:9px;color:var(--okdb-accent);width:34px;flex-shrink:0}.tf-pip-path{font-family:monospace;font-size:10px;color:var(--okdb-accent-muted);word-break:break-all}.tf-pip-bd,.tf-pip-lr{font-size:8px;border-radius:2px;padding:0\x203px;flex-shrink:0}.tf-pip-bd{color:var(--okdb-danger);background:rgba(180,50,40,.15)}.tf-pip-lr{color:var(--okdb-app-fg-muted);background:rgba(100,100,100,.12)}.tf-pip-route-desc{font-size:9px;color:var(--okdb-app-fg-subtle);padding-left:39px;margin-bottom:1px}.tf-pip-gate,.tf-pip-implied{color:var(--okdb-app-fg-subtle);font-size:10px}.tf-pip-implied{margin-top:5px;font-size:9px;font-family:monospace}','template':_0x41f14e(0x1b2)};