@inpageedit/core 0.11.1 → 0.12.1

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 (95) hide show
  1. package/dist/ActionButton-CRjo_l3y.js +24 -0
  2. package/dist/ActionButton-CRjo_l3y.js.map +1 -0
  3. package/dist/{IconQuickEdit-CAL1HXIb.js → IconQuickEdit-CMCQncyj.js} +2 -2
  4. package/dist/{IconQuickEdit-CAL1HXIb.js.map → IconQuickEdit-CMCQncyj.js.map} +1 -1
  5. package/dist/InPageEdit.d.ts +5 -1
  6. package/dist/InputBox-nQKtiWtZ.js +30 -0
  7. package/dist/InputBox-nQKtiWtZ.js.map +1 -0
  8. package/dist/PluginPrefSync-Ziogy_o-.js +339 -0
  9. package/dist/PluginPrefSync-Ziogy_o-.js.map +1 -0
  10. package/dist/PluginStoreApp-Bnvyl-Oc.js +452 -0
  11. package/dist/PluginStoreApp-Bnvyl-Oc.js.map +1 -0
  12. package/dist/{RadioBox-nJqWsxW2.js → RadioBox-0UuxlcWZ.js} +2 -2
  13. package/dist/{RadioBox-nJqWsxW2.js.map → RadioBox-0UuxlcWZ.js.map} +1 -1
  14. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +10 -0
  15. package/dist/_plugin-vue_export-helper-CHgC5LLL.js.map +1 -0
  16. package/dist/components/index.js +50 -69
  17. package/dist/components/index.js.map +1 -1
  18. package/dist/constants/endpoints.d.ts +2 -1
  19. package/dist/{index-CfgnJ51A.js → index-B3FUDhxl.js} +53 -43
  20. package/dist/index-B3FUDhxl.js.map +1 -0
  21. package/dist/index-B3YJdjxo.js +361 -0
  22. package/dist/index-B3YJdjxo.js.map +1 -0
  23. package/dist/{index-BNDyaWnI.js → index-BRjEc8b8.js} +10 -9
  24. package/dist/index-BRjEc8b8.js.map +1 -0
  25. package/dist/index-Bd70aDMT.js +172 -0
  26. package/dist/index-Bd70aDMT.js.map +1 -0
  27. package/dist/index-BvuaLEFc.js +179 -0
  28. package/dist/index-BvuaLEFc.js.map +1 -0
  29. package/dist/{index-lZkYoUca.js → index-CG38LlAh.js} +2 -2
  30. package/dist/{index-lZkYoUca.js.map → index-CG38LlAh.js.map} +1 -1
  31. package/dist/{index-CvhkVj_L.js → index-CM_6yF2v.js} +3 -3
  32. package/dist/{index-CvhkVj_L.js.map → index-CM_6yF2v.js.map} +1 -1
  33. package/dist/{index-etJXONAj.js → index-Ccr3YhkP.js} +6 -6
  34. package/dist/index-Ccr3YhkP.js.map +1 -0
  35. package/dist/{index-U2RPZk8N.js → index-D5zX93bn.js} +43 -44
  36. package/dist/index-D5zX93bn.js.map +1 -0
  37. package/dist/{index-Bh70Udzi.js → index-DD5CVCfD.js} +2 -2
  38. package/dist/{index-Bh70Udzi.js.map → index-DD5CVCfD.js.map} +1 -1
  39. package/dist/{index-BUI2IX49.js → index-DgQNTfPR.js} +2314 -2316
  40. package/dist/index-DgQNTfPR.js.map +1 -0
  41. package/dist/{index-BQzuJxBO.js → index-Dnmv-xDn.js} +4 -4
  42. package/dist/index-Dnmv-xDn.js.map +1 -0
  43. package/dist/index-eARjMi7f.js +1168 -0
  44. package/dist/index-eARjMi7f.js.map +1 -0
  45. package/dist/{index-D5J7RU5I.js → index-zHTGCjfF.js} +5 -7
  46. package/dist/index-zHTGCjfF.js.map +1 -0
  47. package/dist/index.js +1 -1
  48. package/dist/models/MemoryStorage.d.ts +10 -0
  49. package/dist/models/WikiPage/index.d.ts +19 -1
  50. package/dist/plugins/in-article-links/index.d.ts +5 -0
  51. package/dist/plugins/plugin-store/index.d.ts +56 -0
  52. package/dist/plugins/plugin-store/schema.d.ts +41 -0
  53. package/dist/plugins/preferences-ui/PluginPrefSync.d.ts +1 -0
  54. package/dist/plugins/preferences-ui/index.d.ts +34 -5
  55. package/dist/plugins/quick-diff/index.d.ts +3 -0
  56. package/dist/plugins/quick-edit/index.d.ts +8 -0
  57. package/dist/plugins/quick-move/index.d.ts +5 -3
  58. package/dist/plugins/quick-preview/index.d.ts +4 -0
  59. package/dist/plugins/quick-redirect/index.d.ts +11 -4
  60. package/dist/plugins/toolbox/index.d.ts +3 -0
  61. package/dist/services/PreferencesService.d.ts +53 -11
  62. package/dist/services/ResourceLoaderService.d.ts +3 -0
  63. package/dist/services/WikiMetadataService.d.ts +1 -1
  64. package/dist/services/storage/index.d.ts +18 -8
  65. package/dist/services/storage/{IPEStorageManager.d.ts → managers/IDBStorageManager.d.ts} +9 -6
  66. package/dist/services/storage/managers/LocalStorageManager.d.ts +27 -0
  67. package/dist/style.css +1 -1
  68. package/dist/vueHooks-l04s8cIl.js +4064 -0
  69. package/dist/vueHooks-l04s8cIl.js.map +1 -0
  70. package/lib/index.umd.js +12 -112
  71. package/lib/index.umd.js.map +1 -1
  72. package/lib/style.css +1 -1
  73. package/package.json +14 -14
  74. package/dist/CheckBox-D3rHnX7I.js +0 -13
  75. package/dist/CheckBox-D3rHnX7I.js.map +0 -1
  76. package/dist/InputBox-BV4m05Xs.js +0 -22
  77. package/dist/InputBox-BV4m05Xs.js.map +0 -1
  78. package/dist/PluginPrefSync-COidewzp.js +0 -258
  79. package/dist/PluginPrefSync-COidewzp.js.map +0 -1
  80. package/dist/index-BNDyaWnI.js.map +0 -1
  81. package/dist/index-BQzuJxBO.js.map +0 -1
  82. package/dist/index-BUI2IX49.js.map +0 -1
  83. package/dist/index-CBszdxJJ.js +0 -159
  84. package/dist/index-CBszdxJJ.js.map +0 -1
  85. package/dist/index-CfgnJ51A.js.map +0 -1
  86. package/dist/index-Cx4qgCJK.js +0 -4914
  87. package/dist/index-Cx4qgCJK.js.map +0 -1
  88. package/dist/index-D5J7RU5I.js.map +0 -1
  89. package/dist/index-MhNAv9Vf.js +0 -302
  90. package/dist/index-MhNAv9Vf.js.map +0 -1
  91. package/dist/index-U2RPZk8N.js.map +0 -1
  92. package/dist/index-VnRKIVau.js +0 -167
  93. package/dist/index-VnRKIVau.js.map +0 -1
  94. package/dist/index-etJXONAj.js.map +0 -1
  95. package/dist/plugins/quick-delete/index.d.ts +0 -52
@@ -1,5 +1,5 @@
1
- import { j as l, F as q, P as j } from "./index-CvhkVj_L.js";
2
- import { B as S, I as E, S as P } from "./index-BUI2IX49.js";
1
+ import { j as l, F as q, P as j } from "./index-CM_6yF2v.js";
2
+ import { B as S, I as E, S as P } from "./index-DgQNTfPR.js";
3
3
  import { R as Q } from "./Preferences-DS4-CFWe.js";
4
4
  import { m as C } from "./makeCallable-LDU0xZMJ.js";
5
5
  var F = Object.create, w = Object.defineProperty, T = Object.getOwnPropertyDescriptor, f = (t, i) => (i = Symbol[t]) ? i : Symbol.for("Symbol." + t), x = (t) => {
@@ -17,7 +17,7 @@ var F = Object.create, w = Object.defineProperty, T = Object.getOwnPropertyDescr
17
17
  b = [E(["api", "wikiPage", "modal", "preferences"]), Q(
18
18
  P.object({
19
19
  "quickPreview.keyshortcut": P.string().default("ctrl-p").description("Key shortcut to open quick preview in quick edit modal")
20
- }).extra("category", "edit").description("Quick preview options")
20
+ }).extra("category", "editor").description("Quick preview options")
21
21
  )];
22
22
  class v extends (m = S) {
23
23
  constructor(i) {
@@ -124,4 +124,4 @@ M(h, 1, v);
124
124
  export {
125
125
  v as PluginQuickPreview
126
126
  };
127
- //# sourceMappingURL=index-BQzuJxBO.js.map
127
+ //# sourceMappingURL=index-Dnmv-xDn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-Dnmv-xDn.js","sources":["../src/plugins/quick-preview/index.tsx"],"sourcesContent":["import { Inject, InPageEdit, Schema } from '@/InPageEdit'\nimport { type QuickEditEventPayload } from '@/plugins/quick-edit'\nimport { IWikiPage } from '@/models/WikiPage'\nimport { MwApiParams } from 'wiki-saikou'\nimport { PageParseData } from '@/models/WikiPage/types/PageParseData'\nimport { IPEModal, IPEModalOptions } from '@inpageedit/modal'\nimport { QuickDeleteInitPayload } from '../quick-delete/index.js'\n\ninterface QuickPreviewEventPayload {\n ctx: InPageEdit\n modal: IPEModal\n wikiPage: IWikiPage\n text: string\n parseData: PageParseData\n}\n\ndeclare module '@/InPageEdit' {\n interface InPageEdit {\n quickPreview: PluginQuickPreview & {\n // for backward compatibility\n (\n ...args: Parameters<PluginQuickPreview['previewWikitext']>\n ): ReturnType<PluginQuickPreview['previewWikitext']>\n }\n }\n interface Events {\n 'quick-preview/show-modal'(payload: Omit<QuickPreviewEventPayload, 'parseData'>): void\n 'quick-preview/loaded'(payload: QuickPreviewEventPayload): void\n }\n interface PreferencesMap {\n 'quickPreview.keyshortcut.quickEdit': string\n 'quickPreview.keyshortcut.quickDelete': string\n }\n}\n\n@Inject(['api', 'wikiPage', 'modal', 'preferences'])\n@RegisterPreferences(\n Schema.object({\n 'quickPreview.keyshortcut': Schema.string()\n .default('ctrl-p')\n .description('Key shortcut to open quick preview in quick edit modal'),\n })\n .extra('category', 'editor')\n .description('Quick preview options')\n)\nexport class PluginQuickPreview extends BasePlugin {\n constructor(public ctx: InPageEdit) {\n super(ctx, {}, 'quickPreview')\n this.ctx.set('quickPreview', makeCallable(this, 'previewWikitext'))\n }\n\n protected start(): Promise<void> | void {\n this.ctx.on('quick-edit/wiki-page', this.injectQuickEdit.bind(this))\n this.ctx.on('quick-delete/wiki-page', this.injectQuickDelete.bind(this))\n }\n\n protected stop(): Promise<void> | void {}\n\n previewWikitext(\n text: string,\n params?: MwApiParams,\n wikiPage?: IWikiPage,\n modal?: IPEModal,\n modalOptions?: Partial<IPEModalOptions>\n ) {\n wikiPage ||= this.ctx.wikiPage.newBlankPage({\n title: 'API',\n })\n\n if (!modal || modal.isDestroyed) {\n modal = this.ctx.modal\n .createObject({\n className: 'in-page-edit ipe-quickPreview',\n sizeClass: 'large',\n center: false,\n ...modalOptions,\n })\n .init()\n }\n\n modal.show()\n modal.setTitle('Preview - Loading...')\n modal.setContent(<ProgressBar />)\n modal.bringToFront()\n this.ctx.emit('quick-preview/show-modal', {\n ctx: this.ctx,\n text,\n modal,\n wikiPage,\n })\n\n wikiPage\n .preview(text, params)\n .then((ret) => {\n const {\n data: { parse },\n } = ret\n modal.setTitle(`Preview - ${parse.title}`)\n let outputRef: HTMLElement | null = null\n modal.setContent(\n (\n <section>\n <div\n ref={(el) => (outputRef = el)}\n className=\"mw-parser-output\"\n innerHTML={parse.text}\n ></div>\n </section>\n ) as HTMLElement\n )\n window.mw?.hook('wikipage.content').fire($(outputRef!))\n this.ctx.emit('quick-preview/loaded', {\n ctx: this.ctx,\n modal,\n wikiPage,\n text,\n parseData: parse,\n })\n })\n .catch((error) => {\n modal.setTitle('Preview - Failed')\n modal.setContent(\n <>\n <p>Failed to preview</p>\n <p>{error instanceof Error ? error.message : String(error)}</p>\n </>\n )\n })\n\n return modal\n }\n\n private async injectQuickEdit({ options, modal, wikiPage }: QuickEditEventPayload) {\n let latestPreviewModal: IPEModal | undefined = undefined\n modal.addButton(\n {\n label: 'Preview',\n side: 'left',\n className: 'btn btn-secondary',\n keyPress:\n (await this.ctx.preferences.get('quickPreview.keyshortcut.quickEdit')) || undefined,\n method: () => {\n let wikitext =\n (modal.get$content().querySelector<HTMLTextAreaElement>('textarea[name=\"text\"]')\n ?.value as string) || ''\n if (options.section === 'new') {\n const title = modal\n .get$content()\n .querySelector<HTMLInputElement>('input[name=\"summary\"]')?.value\n if (title) {\n wikitext = `==${title}==\\n${wikitext}`\n }\n }\n\n latestPreviewModal = this.previewWikitext(\n wikitext,\n undefined,\n wikiPage,\n latestPreviewModal,\n {\n backdrop: false,\n draggable: true,\n }\n )\n },\n },\n 1\n )\n modal.on(modal.Event.Close, () => {\n latestPreviewModal?.destroy()\n latestPreviewModal = undefined\n })\n }\n\n private injectQuickDelete({ ctx, modal, wikiPage }: QuickDeleteInitPayload) {\n modal.addButton(\n {\n label: 'Preview',\n side: 'left',\n className: 'btn btn-secondary',\n method: () => {\n this.logger.warn('To be implemented: preview wikitext for quick delete')\n },\n },\n 2\n )\n }\n}\n"],"names":["_PluginQuickPreview_decorators","_init","_a","Inject","RegisterPreferences","Schema","PluginQuickPreview","BasePlugin","ctx","makeCallable","text","params","wikiPage","modal","modalOptions","jsx","ProgressBar","ret","parse","outputRef","el","error","jsxs","Fragment","options","latestPreviewModal","wikitext","title","__decoratorStart","__decorateElement","__runInitializers"],"mappings":"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"}