Copy link to clipboard
Copied
I got the error:
Map does not have a constructor on this simple line:
copyMap = new Map();
Isnt map included since 10 years or so? id i do something wrong or do I really have to implement is myself?
Adobe's ExtendScript is based on ECMAScript 3, from 1999.
Copy link to clipboard
Copied
Hi @Lordrhavin , there’s no map object or maps collection. There are collections\objects like ObjectStyleExportTagMaps, StyleExportTagMaps, XMLExportMap, etc. Maybe some context would help, or you can search the API here:
https://www.indesignjs.de/extendscriptAPI/indesign-latest/#Application.html
Copy link to clipboard
Copied
Adobe's ExtendScript is based on ECMAScript 3, from 1999.
Copy link to clipboard
Copied
I'm not sure how I managed to delete my mention of polyfills before hitting "Post." But no, I've found that we typically don't have to actually reimplement this kind of stuff ourselves. Someone else has most likely already done so - usually some years ago, in the name of maintaining backwards compatibility for older web browsers. Every single time I've thoughtlessly used something like map or indexOf, I've been able to find a perfectly functional polyfill in a few clicks.
Copy link to clipboard
Copied
But no, I've found that we typically don't have to actually reimplement this kind of stuff ourselves.
https://community.adobe.com/t5/indesign-discussions/copying-page-content/td-p/14882538
Copy link to clipboard
Copied
You could also try UXP scripting. It's a bit more modern (uses Javascript 6) but still isn't quite at API parity with the old ExtendScript which most scripts are still written in.
Copy link to clipboard
Copied
I just ported an admittedly pretty simple script from ExtendScript to UXP.
The first pitfall people are likely to hit is that the subscript operator, [], doesn't work for collections like paragraphs, as in
Beyond that, it worked fine. Just put
Copy link to clipboard
Copied
There is some documentation on ES > UXP migration, e.g.:
https://developer.adobe.com/indesign/uxp/resources/migration-guides/extendscript/
Copy link to clipboard
Copied
Yep, thanks. That's where I discovered the information about the subscript operator not working anymore.
Get ready! An upgraded Adobe Community experience is coming in January.
Learn more