diff --git a/app/assets/javascripts/discourse/app/lib/load-js-diff.js b/app/assets/javascripts/discourse/app/lib/load-js-diff.js new file mode 100644 index 0000000000000..3be4da6b4aa2d --- /dev/null +++ b/app/assets/javascripts/discourse/app/lib/load-js-diff.js @@ -0,0 +1,7 @@ +/* +Plugins & themes are unable to async-import npm modules directly. +This wrapper provides them with a way to use morphlex, while keeping the `import()` in core's codebase. +*/ +export default async function loadJSDiff() { + return await import("diff"); +} diff --git a/app/assets/javascripts/discourse/package.json b/app/assets/javascripts/discourse/package.json index fe27e6411329f..78c4769205dcf 100644 --- a/app/assets/javascripts/discourse/package.json +++ b/app/assets/javascripts/discourse/package.json @@ -27,6 +27,7 @@ "@messageformat/runtime": "^3.0.1", "ace-builds": "^1.41.0", "decorator-transforms": "^2.3.0", + "diff": "^8.0.1", "discourse-widget-hbs": "workspace:1.0.0", "ember-curry-component": "^0.3.0", "ember-resolver": "^13.1.1", @@ -35,6 +36,8 @@ "highlight.js": "11.11.1", "immer": "^10.1.1", "jspreadsheet-ce": "^4.15.0", + "moment": "2.30.1", + "moment-timezone": "0.5.45", "morphlex": "^0.0.16", "orderedmap": "^2.1.1", "pretty-text": "workspace:1.0.0", @@ -51,9 +54,7 @@ "prosemirror-schema-list": "^1.5.1", "prosemirror-state": "^1.4.3", "prosemirror-transform": "^1.10.4", - "prosemirror-view": "^1.39.3", - "moment": "2.30.1", - "moment-timezone": "0.5.45" + "prosemirror-view": "^1.39.3" }, "devDependencies": { "@babel/core": "^7.27.1", diff --git a/package.json b/package.json index fba651b7766ca..b6c95507e474c 100644 --- a/package.json +++ b/package.json @@ -84,4 +84,4 @@ ] } } -} +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b701a1cb22283..aedd8458bd575 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -284,6 +284,9 @@ importers: decorator-transforms: specifier: ^2.3.0 version: 2.3.0(@babel/core@7.27.1) + diff: + specifier: ^8.0.1 + version: 8.0.1 discourse-widget-hbs: specifier: workspace:1.0.0 version: link:../discourse-widget-hbs @@ -4199,6 +4202,10 @@ packages: resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==} engines: {node: '>=0.3.1'} + diff@8.0.1: + resolution: {integrity: sha512-rEaM3KmVm78zE3dFZaop3aCQa2MTm+T4kcigUFLVU/KbOYdiY6JnL2g2puOYnct3QFw9pjZadaCbCZ1O8ArMlQ==} + engines: {node: '>=0.3.1'} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -12618,6 +12625,8 @@ snapshots: diff@7.0.0: {} + diff@8.0.1: {} + dir-glob@3.0.1: dependencies: path-type: 4.0.0