sfcc-dev-mcp 1.0.19 → 1.0.21

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 (987) hide show
  1. package/dist/clients/logs/index.d.ts +13 -0
  2. package/dist/clients/logs/index.d.ts.map +1 -0
  3. package/dist/clients/logs/index.js +15 -0
  4. package/dist/clients/logs/index.js.map +1 -0
  5. package/dist/clients/logs/log-analyzer.d.ts +55 -0
  6. package/dist/clients/logs/log-analyzer.d.ts.map +1 -0
  7. package/dist/clients/logs/log-analyzer.js +228 -0
  8. package/dist/clients/logs/log-analyzer.js.map +1 -0
  9. package/dist/clients/logs/log-client.d.ts +87 -0
  10. package/dist/clients/logs/log-client.d.ts.map +1 -0
  11. package/dist/clients/logs/log-client.js +418 -0
  12. package/dist/clients/logs/log-client.js.map +1 -0
  13. package/dist/clients/logs/log-constants.d.ts +37 -0
  14. package/dist/clients/logs/log-constants.d.ts.map +1 -0
  15. package/dist/clients/logs/log-constants.js +37 -0
  16. package/dist/clients/logs/log-constants.js.map +1 -0
  17. package/dist/clients/logs/log-file-discovery.d.ts +64 -0
  18. package/dist/clients/logs/log-file-discovery.d.ts.map +1 -0
  19. package/dist/clients/logs/log-file-discovery.js +249 -0
  20. package/dist/clients/logs/log-file-discovery.js.map +1 -0
  21. package/dist/clients/logs/log-file-reader.d.ts +55 -0
  22. package/dist/clients/logs/log-file-reader.d.ts.map +1 -0
  23. package/dist/clients/logs/log-file-reader.js +207 -0
  24. package/dist/clients/logs/log-file-reader.js.map +1 -0
  25. package/dist/clients/logs/log-formatter.d.ts +90 -0
  26. package/dist/clients/logs/log-formatter.d.ts.map +1 -0
  27. package/dist/clients/logs/log-formatter.js +189 -0
  28. package/dist/clients/logs/log-formatter.js.map +1 -0
  29. package/dist/clients/logs/log-processor.d.ts +91 -0
  30. package/dist/clients/logs/log-processor.d.ts.map +1 -0
  31. package/dist/clients/logs/log-processor.js +328 -0
  32. package/dist/clients/logs/log-processor.js.map +1 -0
  33. package/dist/clients/logs/log-types.d.ts +58 -0
  34. package/dist/clients/logs/log-types.d.ts.map +1 -0
  35. package/dist/clients/logs/log-types.js +8 -0
  36. package/dist/clients/logs/log-types.js.map +1 -0
  37. package/dist/clients/logs/webdav-client-manager.d.ts +28 -0
  38. package/dist/clients/logs/webdav-client-manager.d.ts.map +1 -0
  39. package/dist/clients/logs/webdav-client-manager.js +77 -0
  40. package/dist/clients/logs/webdav-client-manager.js.map +1 -0
  41. package/dist/docs/dw_customer/CustomerMgr.md +3 -3
  42. package/dist/docs/dw_customer/Wallet.md +25 -0
  43. package/dist/docs/dw_extensions.payments/SalesforceAdyenPaymentIntent.md +156 -0
  44. package/dist/docs/dw_extensions.payments/SalesforceAdyenSavedPaymentMethod.md +258 -0
  45. package/dist/docs/dw_extensions.payments/SalesforcePayPalOrder.md +36 -0
  46. package/dist/docs/dw_extensions.payments/SalesforcePaymentIntent.md +1 -1
  47. package/dist/docs/dw_extensions.payments/SalesforcePaymentsHooks.md +68 -1
  48. package/dist/docs/dw_extensions.payments/SalesforcePaymentsMerchantAccount.md +154 -0
  49. package/dist/docs/dw_extensions.payments/SalesforcePaymentsMerchantAccountPaymentMethod.md +96 -0
  50. package/dist/docs/dw_extensions.payments/SalesforcePaymentsMgr.md +311 -2
  51. package/dist/docs/dw_extensions.payments/SalesforcePaymentsSiteConfiguration.md +26 -0
  52. package/dist/docs/dw_extensions.payments/SalesforcePaymentsZone.md +458 -0
  53. package/dist/docs/dw_order/OrderMgr.md +3 -3
  54. package/dist/docs/dw_order.hooks/BasketMergeHooks.md +4 -4
  55. package/dist/docs/dw_order.hooks/CheckoutHooks.md +42 -0
  56. package/dist/utils/path-resolver.d.ts +5 -0
  57. package/dist/utils/path-resolver.d.ts.map +1 -1
  58. package/dist/utils/path-resolver.js +27 -5
  59. package/dist/utils/path-resolver.js.map +1 -1
  60. package/package.json +9 -3
  61. package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -131
  62. package/.github/ISSUE_TEMPLATE/config.yml +0 -9
  63. package/.github/ISSUE_TEMPLATE/documentation.yml +0 -117
  64. package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -151
  65. package/.github/ISSUE_TEMPLATE/question.yml +0 -102
  66. package/.github/PULL_REQUEST_TEMPLATE/bug_fix.md +0 -59
  67. package/.github/PULL_REQUEST_TEMPLATE/documentation.md +0 -48
  68. package/.github/PULL_REQUEST_TEMPLATE/new_tool.md +0 -55
  69. package/.github/agents/official-docs-researcher.agent.md +0 -56
  70. package/.github/dependabot.yml +0 -65
  71. package/.github/instructions/mcp-node-tests.instructions.md +0 -30
  72. package/.github/instructions/mcp-yml-tests.instructions.md +0 -27
  73. package/.github/pull_request_template.md +0 -103
  74. package/.github/skills/agent-authoring/SKILL.md +0 -66
  75. package/.github/skills/mcp-log-debugging/SKILL.md +0 -69
  76. package/.github/skills/mcp-programmatic-testing/SKILL.md +0 -142
  77. package/.github/skills/mcp-yaml-testing/SKILL.md +0 -136
  78. package/.github/skills/salesforce-developer-site-scraper/SKILL.md +0 -102
  79. package/.github/skills/salesforce-developer-site-scraper/scripts/scrape-to-markdown.js +0 -205
  80. package/.github/skills/salesforce-help-site-scraper/SKILL.md +0 -84
  81. package/.github/skills/salesforce-help-site-scraper/scripts/scrape-help-to-markdown.js +0 -212
  82. package/.github/skills/skill-authoring/SKILL.md +0 -228
  83. package/.github/skills/skill-authoring/references/PATTERNS.md +0 -384
  84. package/.github/workflows/ci.yml +0 -103
  85. package/.github/workflows/deploy-pages.yml +0 -59
  86. package/.github/workflows/publish.yml +0 -112
  87. package/.github/workflows/update-docs.yml +0 -182
  88. package/.husky/pre-commit +0 -2
  89. package/AGENTS.md +0 -638
  90. package/CONTRIBUTING.md +0 -323
  91. package/SECURITY.md +0 -148
  92. package/aegis.config.docs-only.json +0 -9
  93. package/aegis.config.json +0 -12
  94. package/aegis.config.with-dw.json +0 -15
  95. package/ai-instructions/AGENTS.md +0 -628
  96. package/ai-instructions/skills/sfcc-caching/SKILL.md +0 -89
  97. package/ai-instructions/skills/sfcc-cartridge-development/SKILL.md +0 -240
  98. package/ai-instructions/skills/sfcc-forms-development/SKILL.md +0 -261
  99. package/ai-instructions/skills/sfcc-forms-development/references/ARCHITECTURE-SGJC-SFRA.md +0 -143
  100. package/ai-instructions/skills/sfcc-forms-development/references/FORM-XML-CHEATSHEET.md +0 -127
  101. package/ai-instructions/skills/sfcc-fraud-prevention/SKILL.md +0 -95
  102. package/ai-instructions/skills/sfcc-hooks-registration/SKILL.md +0 -39
  103. package/ai-instructions/skills/sfcc-isml-development/SKILL.md +0 -370
  104. package/ai-instructions/skills/sfcc-isml-development/references/REMOTE-INCLUDES.md +0 -116
  105. package/ai-instructions/skills/sfcc-isml-development/references/SFRA-LAYOUTS.md +0 -50
  106. package/ai-instructions/skills/sfcc-isml-development/references/SFRA-PAGES-CART-ACCOUNT-AUTH.md +0 -45
  107. package/ai-instructions/skills/sfcc-isml-development/references/SFRA-PAGES-CATALOG.md +0 -85
  108. package/ai-instructions/skills/sfcc-isml-development/references/SFRA-STRUCTURE-COMPONENTS.md +0 -63
  109. package/ai-instructions/skills/sfcc-isml-development/references/UTILITIES-EXPRESSIONS.md +0 -159
  110. package/ai-instructions/skills/sfcc-isml-development/references/sfra-base-templates-architecture.md +0 -13
  111. package/ai-instructions/skills/sfcc-job-development/SKILL.md +0 -334
  112. package/ai-instructions/skills/sfcc-job-development/references/CHUNK-ORIENTED.md +0 -393
  113. package/ai-instructions/skills/sfcc-job-development/references/STEPTYPES-JSON.md +0 -271
  114. package/ai-instructions/skills/sfcc-job-development/references/TASK-ORIENTED.md +0 -257
  115. package/ai-instructions/skills/sfcc-localization/SKILL.md +0 -92
  116. package/ai-instructions/skills/sfcc-localization/references/CONTROLLERS.md +0 -63
  117. package/ai-instructions/skills/sfcc-localization/references/FORMATTING.md +0 -29
  118. package/ai-instructions/skills/sfcc-localization/references/FORMS-LOCALIZATION.md +0 -33
  119. package/ai-instructions/skills/sfcc-localization/references/JAVASCRIPT-LOCALIZATION.md +0 -41
  120. package/ai-instructions/skills/sfcc-localization/references/LOCALE-SWITCHING.md +0 -35
  121. package/ai-instructions/skills/sfcc-localization/references/PATTERNS.md +0 -740
  122. package/ai-instructions/skills/sfcc-localization/references/PROPERTIES-ENCODING.md +0 -25
  123. package/ai-instructions/skills/sfcc-localization/references/RESOURCE-BUNDLES.md +0 -67
  124. package/ai-instructions/skills/sfcc-localization/references/STATIC-FILES.md +0 -23
  125. package/ai-instructions/skills/sfcc-localization/references/TESTING.md +0 -21
  126. package/ai-instructions/skills/sfcc-localserviceregistry/SKILL.md +0 -374
  127. package/ai-instructions/skills/sfcc-logging/SKILL.md +0 -352
  128. package/ai-instructions/skills/sfcc-logging/references/LOG-FILES.md +0 -282
  129. package/ai-instructions/skills/sfcc-ocapi-hooks/SKILL.md +0 -350
  130. package/ai-instructions/skills/sfcc-ocapi-scapi-slas/SKILL.md +0 -108
  131. package/ai-instructions/skills/sfcc-page-designer/SKILL.md +0 -353
  132. package/ai-instructions/skills/sfcc-page-designer/references/ATTRIBUTE-TYPES.md +0 -436
  133. package/ai-instructions/skills/sfcc-page-designer/references/META-DEFINITIONS.md +0 -322
  134. package/ai-instructions/skills/sfcc-performance/SKILL.md +0 -424
  135. package/ai-instructions/skills/sfcc-platform-limits/SKILL.md +0 -89
  136. package/ai-instructions/skills/sfcc-scapi-custom-endpoints/SKILL.md +0 -237
  137. package/ai-instructions/skills/sfcc-scapi-custom-endpoints/references/AUTHENTICATION.md +0 -214
  138. package/ai-instructions/skills/sfcc-scapi-custom-endpoints/references/URL-MAPPING.md +0 -253
  139. package/ai-instructions/skills/sfcc-scapi-hooks/SKILL.md +0 -341
  140. package/ai-instructions/skills/sfcc-script-evaluation/SKILL.md +0 -380
  141. package/ai-instructions/skills/sfcc-security/SKILL.md +0 -394
  142. package/ai-instructions/skills/sfcc-sfra-client-side-js/SKILL.md +0 -270
  143. package/ai-instructions/skills/sfcc-sfra-client-side-js/references/AJAX-CSRF-VALIDATION.md +0 -285
  144. package/ai-instructions/skills/sfcc-sfra-client-side-js/references/BASE-MODULE-INDEX.md +0 -206
  145. package/ai-instructions/skills/sfcc-sfra-client-side-js/references/EXTENSION-PATTERNS.md +0 -165
  146. package/ai-instructions/skills/sfcc-sfra-client-side-js/references/PLUGIN-PATTERNS.md +0 -185
  147. package/ai-instructions/skills/sfcc-sfra-controllers/SKILL.md +0 -347
  148. package/ai-instructions/skills/sfcc-sfra-controllers/references/MIDDLEWARE-REFERENCE.md +0 -257
  149. package/ai-instructions/skills/sfcc-sfra-controllers/references/REMOTE-INCLUDES.md +0 -193
  150. package/ai-instructions/skills/sfcc-sfra-controllers/references/standard-sfra-controllers.md +0 -814
  151. package/ai-instructions/skills/sfcc-sfra-models/SKILL.md +0 -322
  152. package/ai-instructions/skills/sfcc-sfra-models/references/MODEL-PATTERNS.md +0 -530
  153. package/ai-instructions/skills/sfcc-sfra-models/references/MODEL-STRUCTURE.md +0 -234
  154. package/ai-instructions/skills/sfcc-sfra-models/references/TESTING-SECURITY.md +0 -417
  155. package/ai-instructions/skills/sfcc-sfra-scss/SKILL.md +0 -393
  156. package/ai-instructions/skills/sfcc-webdav-workflows/SKILL.md +0 -111
  157. package/docs/TopLevel/APIException.md +0 -68
  158. package/docs/TopLevel/Array.md +0 -897
  159. package/docs/TopLevel/ArrayBuffer.md +0 -79
  160. package/docs/TopLevel/BigInt.md +0 -132
  161. package/docs/TopLevel/Boolean.md +0 -62
  162. package/docs/TopLevel/ConversionError.md +0 -23
  163. package/docs/TopLevel/DataView.md +0 -352
  164. package/docs/TopLevel/Date.md +0 -924
  165. package/docs/TopLevel/ES6Iterator.md +0 -33
  166. package/docs/TopLevel/Error.md +0 -88
  167. package/docs/TopLevel/EvalError.md +0 -23
  168. package/docs/TopLevel/Fault.md +0 -87
  169. package/docs/TopLevel/Float32Array.md +0 -130
  170. package/docs/TopLevel/Float64Array.md +0 -130
  171. package/docs/TopLevel/Function.md +0 -105
  172. package/docs/TopLevel/Generator.md +0 -78
  173. package/docs/TopLevel/IOError.md +0 -62
  174. package/docs/TopLevel/Int16Array.md +0 -130
  175. package/docs/TopLevel/Int32Array.md +0 -130
  176. package/docs/TopLevel/Int8Array.md +0 -130
  177. package/docs/TopLevel/InternalError.md +0 -23
  178. package/docs/TopLevel/Iterable.md +0 -41
  179. package/docs/TopLevel/Iterator.md +0 -48
  180. package/docs/TopLevel/JSON.md +0 -162
  181. package/docs/TopLevel/Map.md +0 -216
  182. package/docs/TopLevel/Math.md +0 -913
  183. package/docs/TopLevel/Module.md +0 -45
  184. package/docs/TopLevel/Namespace.md +0 -96
  185. package/docs/TopLevel/Number.md +0 -417
  186. package/docs/TopLevel/Object.md +0 -641
  187. package/docs/TopLevel/QName.md +0 -96
  188. package/docs/TopLevel/RangeError.md +0 -23
  189. package/docs/TopLevel/ReferenceError.md +0 -23
  190. package/docs/TopLevel/RegExp.md +0 -109
  191. package/docs/TopLevel/Set.md +0 -165
  192. package/docs/TopLevel/StopIteration.md +0 -20
  193. package/docs/TopLevel/String.md +0 -1299
  194. package/docs/TopLevel/Symbol.md +0 -78
  195. package/docs/TopLevel/SyntaxError.md +0 -23
  196. package/docs/TopLevel/SystemError.md +0 -62
  197. package/docs/TopLevel/TypeError.md +0 -23
  198. package/docs/TopLevel/URIError.md +0 -23
  199. package/docs/TopLevel/Uint16Array.md +0 -130
  200. package/docs/TopLevel/Uint32Array.md +0 -130
  201. package/docs/TopLevel/Uint8Array.md +0 -130
  202. package/docs/TopLevel/Uint8ClampedArray.md +0 -130
  203. package/docs/TopLevel/WeakMap.md +0 -137
  204. package/docs/TopLevel/WeakSet.md +0 -92
  205. package/docs/TopLevel/XML.md +0 -937
  206. package/docs/TopLevel/XMLList.md +0 -484
  207. package/docs/TopLevel/XMLStreamError.md +0 -74
  208. package/docs/TopLevel/arguments.md +0 -34
  209. package/docs/TopLevel/global.md +0 -474
  210. package/docs/dw_campaign/ABTest.md +0 -47
  211. package/docs/dw_campaign/ABTestMgr.md +0 -70
  212. package/docs/dw_campaign/ABTestSegment.md +0 -96
  213. package/docs/dw_campaign/AmountDiscount.md +0 -51
  214. package/docs/dw_campaign/ApproachingDiscount.md +0 -124
  215. package/docs/dw_campaign/BonusChoiceDiscount.md +0 -146
  216. package/docs/dw_campaign/BonusDiscount.md +0 -48
  217. package/docs/dw_campaign/Campaign.md +0 -365
  218. package/docs/dw_campaign/CampaignMgr.md +0 -395
  219. package/docs/dw_campaign/CampaignStatusCodes.md +0 -48
  220. package/docs/dw_campaign/Coupon.md +0 -310
  221. package/docs/dw_campaign/CouponMgr.md +0 -144
  222. package/docs/dw_campaign/CouponRedemption.md +0 -94
  223. package/docs/dw_campaign/CouponStatusCodes.md +0 -86
  224. package/docs/dw_campaign/Discount.md +0 -226
  225. package/docs/dw_campaign/DiscountPlan.md +0 -282
  226. package/docs/dw_campaign/FixedPriceDiscount.md +0 -52
  227. package/docs/dw_campaign/FixedPriceShippingDiscount.md +0 -52
  228. package/docs/dw_campaign/FreeDiscount.md +0 -17
  229. package/docs/dw_campaign/FreeShippingDiscount.md +0 -17
  230. package/docs/dw_campaign/PercentageDiscount.md +0 -52
  231. package/docs/dw_campaign/PercentageOptionDiscount.md +0 -48
  232. package/docs/dw_campaign/PriceBookPriceDiscount.md +0 -47
  233. package/docs/dw_campaign/Promotion.md +0 -874
  234. package/docs/dw_campaign/PromotionMgr.md +0 -386
  235. package/docs/dw_campaign/PromotionPlan.md +0 -330
  236. package/docs/dw_campaign/SlotContent.md +0 -144
  237. package/docs/dw_campaign/SourceCodeGroup.md +0 -72
  238. package/docs/dw_campaign/SourceCodeInfo.md +0 -144
  239. package/docs/dw_campaign/SourceCodeStatusCodes.md +0 -36
  240. package/docs/dw_campaign/TotalFixedPriceDiscount.md +0 -47
  241. package/docs/dw_catalog/Catalog.md +0 -122
  242. package/docs/dw_catalog/CatalogMgr.md +0 -182
  243. package/docs/dw_catalog/Category.md +0 -1308
  244. package/docs/dw_catalog/CategoryAssignment.md +0 -192
  245. package/docs/dw_catalog/CategoryLink.md +0 -126
  246. package/docs/dw_catalog/PriceBook.md +0 -242
  247. package/docs/dw_catalog/PriceBookMgr.md +0 -204
  248. package/docs/dw_catalog/Product.md +0 -2593
  249. package/docs/dw_catalog/ProductActiveData.md +0 -1275
  250. package/docs/dw_catalog/ProductAttributeModel.md +0 -277
  251. package/docs/dw_catalog/ProductAvailabilityLevels.md +0 -142
  252. package/docs/dw_catalog/ProductAvailabilityModel.md +0 -380
  253. package/docs/dw_catalog/ProductInventoryList.md +0 -140
  254. package/docs/dw_catalog/ProductInventoryMgr.md +0 -117
  255. package/docs/dw_catalog/ProductInventoryRecord.md +0 -563
  256. package/docs/dw_catalog/ProductLink.md +0 -144
  257. package/docs/dw_catalog/ProductMgr.md +0 -138
  258. package/docs/dw_catalog/ProductOption.md +0 -214
  259. package/docs/dw_catalog/ProductOptionModel.md +0 -246
  260. package/docs/dw_catalog/ProductOptionValue.md +0 -123
  261. package/docs/dw_catalog/ProductPriceInfo.md +0 -172
  262. package/docs/dw_catalog/ProductPriceModel.md +0 -745
  263. package/docs/dw_catalog/ProductPriceTable.md +0 -134
  264. package/docs/dw_catalog/ProductSearchHit.md +0 -581
  265. package/docs/dw_catalog/ProductSearchModel.md +0 -2018
  266. package/docs/dw_catalog/ProductSearchRefinementDefinition.md +0 -97
  267. package/docs/dw_catalog/ProductSearchRefinementValue.md +0 -73
  268. package/docs/dw_catalog/ProductSearchRefinements.md +0 -216
  269. package/docs/dw_catalog/ProductVariationAttribute.md +0 -100
  270. package/docs/dw_catalog/ProductVariationAttributeValue.md +0 -238
  271. package/docs/dw_catalog/ProductVariationModel.md +0 -849
  272. package/docs/dw_catalog/Recommendation.md +0 -314
  273. package/docs/dw_catalog/SearchModel.md +0 -901
  274. package/docs/dw_catalog/SearchRefinementDefinition.md +0 -146
  275. package/docs/dw_catalog/SearchRefinementValue.md +0 -185
  276. package/docs/dw_catalog/SearchRefinements.md +0 -180
  277. package/docs/dw_catalog/SortingOption.md +0 -120
  278. package/docs/dw_catalog/SortingRule.md +0 -47
  279. package/docs/dw_catalog/Store.md +0 -562
  280. package/docs/dw_catalog/StoreGroup.md +0 -96
  281. package/docs/dw_catalog/StoreInventoryFilter.md +0 -74
  282. package/docs/dw_catalog/StoreInventoryFilterValue.md +0 -74
  283. package/docs/dw_catalog/StoreMgr.md +0 -236
  284. package/docs/dw_catalog/Variant.md +0 -859
  285. package/docs/dw_catalog/VariationGroup.md +0 -792
  286. package/docs/dw_content/Content.md +0 -534
  287. package/docs/dw_content/ContentMgr.md +0 -166
  288. package/docs/dw_content/ContentSearchModel.md +0 -682
  289. package/docs/dw_content/ContentSearchRefinementDefinition.md +0 -49
  290. package/docs/dw_content/ContentSearchRefinementValue.md +0 -17
  291. package/docs/dw_content/ContentSearchRefinements.md +0 -208
  292. package/docs/dw_content/Folder.md +0 -467
  293. package/docs/dw_content/Library.md +0 -121
  294. package/docs/dw_content/MarkupText.md +0 -88
  295. package/docs/dw_content/MediaFile.md +0 -317
  296. package/docs/dw_crypto/CertificateRef.md +0 -42
  297. package/docs/dw_crypto/CertificateUtils.md +0 -187
  298. package/docs/dw_crypto/Cipher.md +0 -530
  299. package/docs/dw_crypto/Encoding.md +0 -220
  300. package/docs/dw_crypto/JWE.md +0 -224
  301. package/docs/dw_crypto/JWEHeader.md +0 -172
  302. package/docs/dw_crypto/JWS.md +0 -264
  303. package/docs/dw_crypto/JWSHeader.md +0 -148
  304. package/docs/dw_crypto/KeyRef.md +0 -44
  305. package/docs/dw_crypto/Mac.md +0 -139
  306. package/docs/dw_crypto/MessageDigest.md +0 -175
  307. package/docs/dw_crypto/SecureRandom.md +0 -148
  308. package/docs/dw_crypto/Signature.md +0 -252
  309. package/docs/dw_crypto/WeakCipher.md +0 -538
  310. package/docs/dw_crypto/WeakMac.md +0 -121
  311. package/docs/dw_crypto/WeakMessageDigest.md +0 -163
  312. package/docs/dw_crypto/WeakSignature.md +0 -242
  313. package/docs/dw_crypto/X509Certificate.md +0 -193
  314. package/docs/dw_customer/AddressBook.md +0 -163
  315. package/docs/dw_customer/AgentUserMgr.md +0 -83
  316. package/docs/dw_customer/AgentUserStatusCodes.md +0 -96
  317. package/docs/dw_customer/AuthenticationStatus.md +0 -138
  318. package/docs/dw_customer/Credentials.md +0 -494
  319. package/docs/dw_customer/Customer.md +0 -571
  320. package/docs/dw_customer/CustomerActiveData.md +0 -552
  321. package/docs/dw_customer/CustomerAddress.md +0 -852
  322. package/docs/dw_customer/CustomerCDPData.md +0 -70
  323. package/docs/dw_customer/CustomerContextMgr.md +0 -64
  324. package/docs/dw_customer/CustomerGroup.md +0 -134
  325. package/docs/dw_customer/CustomerList.md +0 -71
  326. package/docs/dw_customer/CustomerMgr.md +0 -735
  327. package/docs/dw_customer/CustomerPasswordConstraints.md +0 -142
  328. package/docs/dw_customer/CustomerPaymentInstrument.md +0 -125
  329. package/docs/dw_customer/CustomerStatusCodes.md +0 -30
  330. package/docs/dw_customer/EncryptedObject.md +0 -18
  331. package/docs/dw_customer/ExternalProfile.md +0 -160
  332. package/docs/dw_customer/OrderHistory.md +0 -111
  333. package/docs/dw_customer/ProductList.md +0 -1000
  334. package/docs/dw_customer/ProductListItem.md +0 -504
  335. package/docs/dw_customer/ProductListItemPurchase.md +0 -145
  336. package/docs/dw_customer/ProductListMgr.md +0 -234
  337. package/docs/dw_customer/ProductListRegistrant.md +0 -193
  338. package/docs/dw_customer/Profile.md +0 -1128
  339. package/docs/dw_customer/Wallet.md +0 -118
  340. package/docs/dw_extensions.applepay/ApplePayHookResult.md +0 -209
  341. package/docs/dw_extensions.applepay/ApplePayHooks.md +0 -255
  342. package/docs/dw_extensions.facebook/FacebookFeedHooks.md +0 -47
  343. package/docs/dw_extensions.facebook/FacebookProduct.md +0 -1621
  344. package/docs/dw_extensions.paymentrequest/PaymentRequestHookResult.md +0 -159
  345. package/docs/dw_extensions.paymentrequest/PaymentRequestHooks.md +0 -160
  346. package/docs/dw_extensions.payments/SalesforceBancontactPaymentDetails.md +0 -79
  347. package/docs/dw_extensions.payments/SalesforceCardPaymentDetails.md +0 -103
  348. package/docs/dw_extensions.payments/SalesforceEpsPaymentDetails.md +0 -51
  349. package/docs/dw_extensions.payments/SalesforceIdealPaymentDetails.md +0 -51
  350. package/docs/dw_extensions.payments/SalesforceKlarnaPaymentDetails.md +0 -51
  351. package/docs/dw_extensions.payments/SalesforcePayPalOrder.md +0 -246
  352. package/docs/dw_extensions.payments/SalesforcePayPalOrderAddress.md +0 -191
  353. package/docs/dw_extensions.payments/SalesforcePayPalOrderPayer.md +0 -118
  354. package/docs/dw_extensions.payments/SalesforcePayPalPaymentDetails.md +0 -79
  355. package/docs/dw_extensions.payments/SalesforcePaymentDetails.md +0 -57
  356. package/docs/dw_extensions.payments/SalesforcePaymentIntent.md +0 -281
  357. package/docs/dw_extensions.payments/SalesforcePaymentMethod.md +0 -346
  358. package/docs/dw_extensions.payments/SalesforcePaymentRequest.md +0 -784
  359. package/docs/dw_extensions.payments/SalesforcePaymentsHooks.md +0 -45
  360. package/docs/dw_extensions.payments/SalesforcePaymentsMgr.md +0 -634
  361. package/docs/dw_extensions.payments/SalesforcePaymentsSiteConfiguration.md +0 -95
  362. package/docs/dw_extensions.payments/SalesforceSepaDebitPaymentDetails.md +0 -51
  363. package/docs/dw_extensions.payments/SalesforceVenmoPaymentDetails.md +0 -79
  364. package/docs/dw_extensions.pinterest/PinterestAvailability.md +0 -86
  365. package/docs/dw_extensions.pinterest/PinterestFeedHooks.md +0 -69
  366. package/docs/dw_extensions.pinterest/PinterestOrder.md +0 -232
  367. package/docs/dw_extensions.pinterest/PinterestOrderHooks.md +0 -45
  368. package/docs/dw_extensions.pinterest/PinterestProduct.md +0 -850
  369. package/docs/dw_io/CSVStreamReader.md +0 -80
  370. package/docs/dw_io/CSVStreamWriter.md +0 -60
  371. package/docs/dw_io/File.md +0 -614
  372. package/docs/dw_io/FileReader.md +0 -41
  373. package/docs/dw_io/FileWriter.md +0 -103
  374. package/docs/dw_io/InputStream.md +0 -34
  375. package/docs/dw_io/OutputStream.md +0 -34
  376. package/docs/dw_io/PrintWriter.md +0 -71
  377. package/docs/dw_io/RandomAccessFileReader.md +0 -173
  378. package/docs/dw_io/Reader.md +0 -274
  379. package/docs/dw_io/StringWriter.md +0 -81
  380. package/docs/dw_io/Writer.md +0 -92
  381. package/docs/dw_io/XMLIndentingStreamWriter.md +0 -112
  382. package/docs/dw_io/XMLStreamConstants.md +0 -114
  383. package/docs/dw_io/XMLStreamReader.md +0 -1043
  384. package/docs/dw_io/XMLStreamWriter.md +0 -572
  385. package/docs/dw_job/JobExecution.md +0 -107
  386. package/docs/dw_job/JobStepExecution.md +0 -151
  387. package/docs/dw_net/FTPClient.md +0 -699
  388. package/docs/dw_net/FTPFileInfo.md +0 -122
  389. package/docs/dw_net/HTTPClient.md +0 -831
  390. package/docs/dw_net/HTTPClientLoggingConfig.md +0 -296
  391. package/docs/dw_net/HTTPRequestPart.md +0 -206
  392. package/docs/dw_net/Mail.md +0 -551
  393. package/docs/dw_net/SFTPClient.md +0 -591
  394. package/docs/dw_net/SFTPFileInfo.md +0 -122
  395. package/docs/dw_net/WebDAVClient.md +0 -715
  396. package/docs/dw_net/WebDAVFileInfo.md +0 -184
  397. package/docs/dw_object/ActiveData.md +0 -75
  398. package/docs/dw_object/CustomAttributes.md +0 -16
  399. package/docs/dw_object/CustomObject.md +0 -73
  400. package/docs/dw_object/CustomObjectMgr.md +0 -291
  401. package/docs/dw_object/Extensible.md +0 -64
  402. package/docs/dw_object/ExtensibleObject.md +0 -68
  403. package/docs/dw_object/Note.md +0 -121
  404. package/docs/dw_object/ObjectAttributeDefinition.md +0 -481
  405. package/docs/dw_object/ObjectAttributeGroup.md +0 -170
  406. package/docs/dw_object/ObjectAttributeValueDefinition.md +0 -72
  407. package/docs/dw_object/ObjectTypeDefinition.md +0 -216
  408. package/docs/dw_object/PersistentObject.md +0 -94
  409. package/docs/dw_object/SimpleExtensible.md +0 -46
  410. package/docs/dw_object/SystemObjectMgr.md +0 -153
  411. package/docs/dw_order/AbstractItem.md +0 -244
  412. package/docs/dw_order/AbstractItemCtnr.md +0 -240
  413. package/docs/dw_order/Appeasement.md +0 -367
  414. package/docs/dw_order/AppeasementItem.md +0 -90
  415. package/docs/dw_order/Basket.md +0 -362
  416. package/docs/dw_order/BasketMgr.md +0 -418
  417. package/docs/dw_order/BonusDiscountLineItem.md +0 -248
  418. package/docs/dw_order/CouponLineItem.md +0 -272
  419. package/docs/dw_order/CreateAgentBasketLimitExceededException.md +0 -18
  420. package/docs/dw_order/CreateBasketFromOrderException.md +0 -26
  421. package/docs/dw_order/CreateCouponLineItemException.md +0 -26
  422. package/docs/dw_order/CreateOrderException.md +0 -18
  423. package/docs/dw_order/CreateTemporaryBasketLimitExceededException.md +0 -18
  424. package/docs/dw_order/GiftCertificate.md +0 -569
  425. package/docs/dw_order/GiftCertificateLineItem.md +0 -324
  426. package/docs/dw_order/GiftCertificateMgr.md +0 -197
  427. package/docs/dw_order/GiftCertificateStatusCodes.md +0 -60
  428. package/docs/dw_order/Invoice.md +0 -418
  429. package/docs/dw_order/InvoiceItem.md +0 -222
  430. package/docs/dw_order/LineItem.md +0 -532
  431. package/docs/dw_order/LineItemCtnr.md +0 -2431
  432. package/docs/dw_order/Order.md +0 -2567
  433. package/docs/dw_order/OrderAddress.md +0 -807
  434. package/docs/dw_order/OrderItem.md +0 -536
  435. package/docs/dw_order/OrderMgr.md +0 -535
  436. package/docs/dw_order/OrderPaymentInstrument.md +0 -220
  437. package/docs/dw_order/OrderProcessStatusCodes.md +0 -84
  438. package/docs/dw_order/PaymentCard.md +0 -217
  439. package/docs/dw_order/PaymentInstrument.md +0 -1462
  440. package/docs/dw_order/PaymentMethod.md +0 -242
  441. package/docs/dw_order/PaymentMgr.md +0 -117
  442. package/docs/dw_order/PaymentProcessor.md +0 -70
  443. package/docs/dw_order/PaymentStatusCodes.md +0 -42
  444. package/docs/dw_order/PaymentTransaction.md +0 -328
  445. package/docs/dw_order/PriceAdjustment.md +0 -640
  446. package/docs/dw_order/PriceAdjustmentLimitTypes.md +0 -38
  447. package/docs/dw_order/ProductLineItem.md +0 -1821
  448. package/docs/dw_order/ProductShippingCost.md +0 -96
  449. package/docs/dw_order/ProductShippingLineItem.md +0 -326
  450. package/docs/dw_order/ProductShippingModel.md +0 -125
  451. package/docs/dw_order/Return.md +0 -360
  452. package/docs/dw_order/ReturnCase.md +0 -400
  453. package/docs/dw_order/ReturnCaseItem.md +0 -373
  454. package/docs/dw_order/ReturnItem.md +0 -362
  455. package/docs/dw_order/Shipment.md +0 -1251
  456. package/docs/dw_order/ShipmentShippingCost.md +0 -46
  457. package/docs/dw_order/ShipmentShippingModel.md +0 -146
  458. package/docs/dw_order/ShippingLineItem.md +0 -278
  459. package/docs/dw_order/ShippingLocation.md +0 -366
  460. package/docs/dw_order/ShippingMethod.md +0 -266
  461. package/docs/dw_order/ShippingMgr.md +0 -158
  462. package/docs/dw_order/ShippingOrder.md +0 -561
  463. package/docs/dw_order/ShippingOrderItem.md +0 -355
  464. package/docs/dw_order/SumItem.md +0 -147
  465. package/docs/dw_order/TaxGroup.md +0 -143
  466. package/docs/dw_order/TaxItem.md +0 -74
  467. package/docs/dw_order/TaxMgr.md +0 -227
  468. package/docs/dw_order/TrackingInfo.md +0 -312
  469. package/docs/dw_order/TrackingRef.md +0 -113
  470. package/docs/dw_order.hooks/BasketMergeHooks.md +0 -42
  471. package/docs/dw_order.hooks/CalculateHooks.md +0 -77
  472. package/docs/dw_order.hooks/OrderHooks.md +0 -41
  473. package/docs/dw_order.hooks/PaymentHooks.md +0 -180
  474. package/docs/dw_order.hooks/ReturnHooks.md +0 -135
  475. package/docs/dw_order.hooks/ShippingOrderHooks.md +0 -245
  476. package/docs/dw_rpc/SOAPUtil.md +0 -465
  477. package/docs/dw_rpc/Stub.md +0 -289
  478. package/docs/dw_rpc/WebReference.md +0 -83
  479. package/docs/dw_suggest/BrandSuggestions.md +0 -17
  480. package/docs/dw_suggest/CategorySuggestions.md +0 -53
  481. package/docs/dw_suggest/ContentSuggestions.md +0 -53
  482. package/docs/dw_suggest/CustomSuggestions.md +0 -17
  483. package/docs/dw_suggest/ProductSuggestions.md +0 -53
  484. package/docs/dw_suggest/SearchPhraseSuggestions.md +0 -117
  485. package/docs/dw_suggest/SuggestModel.md +0 -403
  486. package/docs/dw_suggest/SuggestedCategory.md +0 -46
  487. package/docs/dw_suggest/SuggestedContent.md +0 -46
  488. package/docs/dw_suggest/SuggestedPhrase.md +0 -70
  489. package/docs/dw_suggest/SuggestedProduct.md +0 -47
  490. package/docs/dw_suggest/SuggestedTerm.md +0 -143
  491. package/docs/dw_suggest/SuggestedTerms.md +0 -132
  492. package/docs/dw_suggest/Suggestions.md +0 -179
  493. package/docs/dw_svc/FTPService.md +0 -118
  494. package/docs/dw_svc/FTPServiceDefinition.md +0 -69
  495. package/docs/dw_svc/HTTPFormService.md +0 -18
  496. package/docs/dw_svc/HTTPFormServiceDefinition.md +0 -18
  497. package/docs/dw_svc/HTTPService.md +0 -415
  498. package/docs/dw_svc/HTTPServiceDefinition.md +0 -303
  499. package/docs/dw_svc/LocalServiceRegistry.md +0 -43
  500. package/docs/dw_svc/Result.md +0 -303
  501. package/docs/dw_svc/SOAPService.md +0 -115
  502. package/docs/dw_svc/SOAPServiceDefinition.md +0 -17
  503. package/docs/dw_svc/Service.md +0 -295
  504. package/docs/dw_svc/ServiceCallback.md +0 -268
  505. package/docs/dw_svc/ServiceConfig.md +0 -120
  506. package/docs/dw_svc/ServiceCredential.md +0 -156
  507. package/docs/dw_svc/ServiceDefinition.md +0 -176
  508. package/docs/dw_svc/ServiceProfile.md +0 -168
  509. package/docs/dw_svc/ServiceRegistry.md +0 -109
  510. package/docs/dw_system/AgentUserStatusCodes.md +0 -21
  511. package/docs/dw_system/Cache.md +0 -102
  512. package/docs/dw_system/CacheMgr.md +0 -42
  513. package/docs/dw_system/HookMgr.md +0 -66
  514. package/docs/dw_system/InternalObject.md +0 -56
  515. package/docs/dw_system/JobProcessMonitor.md +0 -124
  516. package/docs/dw_system/Log.md +0 -237
  517. package/docs/dw_system/LogNDC.md +0 -88
  518. package/docs/dw_system/Logger.md +0 -263
  519. package/docs/dw_system/OrganizationPreferences.md +0 -18
  520. package/docs/dw_system/Pipeline.md +0 -73
  521. package/docs/dw_system/PipelineDictionary.md +0 -16
  522. package/docs/dw_system/RESTErrorResponse.md +0 -66
  523. package/docs/dw_system/RESTResponseMgr.md +0 -258
  524. package/docs/dw_system/RESTSuccessResponse.md +0 -39
  525. package/docs/dw_system/RemoteInclude.md +0 -74
  526. package/docs/dw_system/Request.md +0 -839
  527. package/docs/dw_system/RequestHooks.md +0 -59
  528. package/docs/dw_system/Response.md +0 -522
  529. package/docs/dw_system/SearchStatus.md +0 -151
  530. package/docs/dw_system/Session.md +0 -476
  531. package/docs/dw_system/Site.md +0 -585
  532. package/docs/dw_system/SitePreferences.md +0 -49
  533. package/docs/dw_system/Status.md +0 -273
  534. package/docs/dw_system/StatusItem.md +0 -273
  535. package/docs/dw_system/System.md +0 -200
  536. package/docs/dw_system/Transaction.md +0 -84
  537. package/docs/dw_util/ArrayList.md +0 -50
  538. package/docs/dw_util/Assert.md +0 -391
  539. package/docs/dw_util/BigInteger.md +0 -326
  540. package/docs/dw_util/Bytes.md +0 -252
  541. package/docs/dw_util/Calendar.md +0 -921
  542. package/docs/dw_util/Collection.md +0 -338
  543. package/docs/dw_util/Currency.md +0 -163
  544. package/docs/dw_util/DateUtils.md +0 -86
  545. package/docs/dw_util/Decimal.md +0 -438
  546. package/docs/dw_util/FilteringCollection.md +0 -93
  547. package/docs/dw_util/Geolocation.md +0 -271
  548. package/docs/dw_util/HashMap.md +0 -43
  549. package/docs/dw_util/HashSet.md +0 -46
  550. package/docs/dw_util/Iterator.md +0 -97
  551. package/docs/dw_util/LinkedHashMap.md +0 -43
  552. package/docs/dw_util/LinkedHashSet.md +0 -46
  553. package/docs/dw_util/List.md +0 -519
  554. package/docs/dw_util/Locale.md +0 -267
  555. package/docs/dw_util/Map.md +0 -313
  556. package/docs/dw_util/MapEntry.md +0 -70
  557. package/docs/dw_util/MappingKey.md +0 -76
  558. package/docs/dw_util/MappingMgr.md +0 -122
  559. package/docs/dw_util/PropertyComparator.md +0 -51
  560. package/docs/dw_util/SecureEncoder.md +0 -350
  561. package/docs/dw_util/SecureFilter.md +0 -350
  562. package/docs/dw_util/SeekableIterator.md +0 -176
  563. package/docs/dw_util/Set.md +0 -19
  564. package/docs/dw_util/SortedMap.md +0 -148
  565. package/docs/dw_util/SortedSet.md +0 -151
  566. package/docs/dw_util/StringUtils.md +0 -753
  567. package/docs/dw_util/Template.md +0 -88
  568. package/docs/dw_util/UUIDUtils.md +0 -38
  569. package/docs/dw_value/EnumValue.md +0 -92
  570. package/docs/dw_value/MimeEncodedText.md +0 -103
  571. package/docs/dw_value/Money.md +0 -610
  572. package/docs/dw_value/Quantity.md +0 -376
  573. package/docs/dw_web/CSRFProtection.md +0 -83
  574. package/docs/dw_web/ClickStream.md +0 -157
  575. package/docs/dw_web/ClickStreamEntry.md +0 -289
  576. package/docs/dw_web/Cookie.md +0 -396
  577. package/docs/dw_web/Cookies.md +0 -46
  578. package/docs/dw_web/Form.md +0 -74
  579. package/docs/dw_web/FormAction.md +0 -199
  580. package/docs/dw_web/FormElement.md +0 -220
  581. package/docs/dw_web/FormElementValidationResult.md +0 -157
  582. package/docs/dw_web/FormField.md +0 -603
  583. package/docs/dw_web/FormFieldOption.md +0 -238
  584. package/docs/dw_web/FormFieldOptions.md +0 -42
  585. package/docs/dw_web/FormGroup.md +0 -199
  586. package/docs/dw_web/FormList.md +0 -126
  587. package/docs/dw_web/FormListItem.md +0 -48
  588. package/docs/dw_web/Forms.md +0 -16
  589. package/docs/dw_web/HttpParameter.md +0 -513
  590. package/docs/dw_web/HttpParameterMap.md +0 -185
  591. package/docs/dw_web/LoopIterator.md +0 -261
  592. package/docs/dw_web/PageMetaData.md +0 -230
  593. package/docs/dw_web/PageMetaTag.md +0 -142
  594. package/docs/dw_web/PagingModel.md +0 -389
  595. package/docs/dw_web/Resource.md +0 -126
  596. package/docs/dw_web/URL.md +0 -213
  597. package/docs/dw_web/URLAction.md +0 -26
  598. package/docs/dw_web/URLParameter.md +0 -22
  599. package/docs/dw_web/URLRedirect.md +0 -71
  600. package/docs/dw_web/URLRedirectMgr.md +0 -73
  601. package/docs/dw_web/URLUtils.md +0 -1264
  602. package/docs/isml/isactivedatacontext.md +0 -382
  603. package/docs/isml/isactivedatahead.md +0 -566
  604. package/docs/isml/isanalyticsoff.md +0 -537
  605. package/docs/isml/isapplepay.md +0 -667
  606. package/docs/isml/isbreak.md +0 -687
  607. package/docs/isml/isbuynow.md +0 -682
  608. package/docs/isml/iscache.md +0 -802
  609. package/docs/isml/iscomment.md +0 -794
  610. package/docs/isml/iscomponent.md +0 -797
  611. package/docs/isml/iscontent.md +0 -594
  612. package/docs/isml/iscontinue.md +0 -563
  613. package/docs/isml/iscookie.md +0 -798
  614. package/docs/isml/isdecorate.md +0 -818
  615. package/docs/isml/isif.md +0 -737
  616. package/docs/isml/isinclude.md +0 -874
  617. package/docs/isml/isloop.md +0 -377
  618. package/docs/isml/ismodule.md +0 -844
  619. package/docs/isml/isnext.md +0 -672
  620. package/docs/isml/isobject.md +0 -760
  621. package/docs/isml/ispayment.md +0 -577
  622. package/docs/isml/ispaymentmessages.md +0 -664
  623. package/docs/isml/isprint.md +0 -875
  624. package/docs/isml/isredirect.md +0 -716
  625. package/docs/isml/isremove.md +0 -725
  626. package/docs/isml/isreplace.md +0 -783
  627. package/docs/isml/isscript.md +0 -859
  628. package/docs/isml/isselect.md +0 -908
  629. package/docs/isml/isset.md +0 -585
  630. package/docs/isml/isslot.md +0 -824
  631. package/docs/isml/isstatus.md +0 -711
  632. package/docs/sfra/account.md +0 -145
  633. package/docs/sfra/address.md +0 -84
  634. package/docs/sfra/billing.md +0 -90
  635. package/docs/sfra/cart.md +0 -134
  636. package/docs/sfra/categories.md +0 -124
  637. package/docs/sfra/content.md +0 -133
  638. package/docs/sfra/locale.md +0 -126
  639. package/docs/sfra/order.md +0 -219
  640. package/docs/sfra/payment.md +0 -131
  641. package/docs/sfra/price-default.md +0 -118
  642. package/docs/sfra/price-range.md +0 -77
  643. package/docs/sfra/price-tiered.md +0 -117
  644. package/docs/sfra/product-bundle.md +0 -164
  645. package/docs/sfra/product-full.md +0 -179
  646. package/docs/sfra/product-line-items.md +0 -147
  647. package/docs/sfra/product-search.md +0 -245
  648. package/docs/sfra/product-tile.md +0 -95
  649. package/docs/sfra/querystring.md +0 -240
  650. package/docs/sfra/render.md +0 -354
  651. package/docs/sfra/request.md +0 -210
  652. package/docs/sfra/response.md +0 -391
  653. package/docs/sfra/server.md +0 -375
  654. package/docs/sfra/shipping.md +0 -181
  655. package/docs/sfra/store.md +0 -145
  656. package/docs/sfra/stores.md +0 -190
  657. package/docs/sfra/totals.md +0 -184
  658. package/docs-site-v2/.vitepress/config.mts +0 -190
  659. package/docs-site-v2/.vitepress/theme/components/AssistantTabs.vue +0 -96
  660. package/docs-site-v2/.vitepress/theme/components/Callout.vue +0 -10
  661. package/docs-site-v2/.vitepress/theme/components/Collapsible.vue +0 -14
  662. package/docs-site-v2/.vitepress/theme/components/DwJsonBuilder.vue +0 -82
  663. package/docs-site-v2/.vitepress/theme/components/HomeSections.vue +0 -552
  664. package/docs-site-v2/.vitepress/theme/components/InstructionFilesTabs.vue +0 -87
  665. package/docs-site-v2/.vitepress/theme/components/ModeTabs.vue +0 -70
  666. package/docs-site-v2/.vitepress/theme/components/NewcomerCTA.vue +0 -14
  667. package/docs-site-v2/.vitepress/theme/components/QuickStartCards.vue +0 -20
  668. package/docs-site-v2/.vitepress/theme/components/QuickStartHero.vue +0 -20
  669. package/docs-site-v2/.vitepress/theme/components/SkillsList.vue +0 -48
  670. package/docs-site-v2/.vitepress/theme/components/ToolExplorer.vue +0 -85
  671. package/docs-site-v2/.vitepress/theme/custom.css +0 -1373
  672. package/docs-site-v2/.vitepress/theme/index.ts +0 -39
  673. package/docs-site-v2/data/skills.ts +0 -147
  674. package/docs-site-v2/data/tools.ts +0 -490
  675. package/docs-site-v2/development/index.md +0 -151
  676. package/docs-site-v2/examples/index.md +0 -333
  677. package/docs-site-v2/features/index.md +0 -144
  678. package/docs-site-v2/guide/ai-interfaces.md +0 -58
  679. package/docs-site-v2/guide/configuration.md +0 -208
  680. package/docs-site-v2/guide/index.md +0 -50
  681. package/docs-site-v2/index.md +0 -32
  682. package/docs-site-v2/package-lock.json +0 -2511
  683. package/docs-site-v2/package.json +0 -15
  684. package/docs-site-v2/public/404.html +0 -15
  685. package/docs-site-v2/public/android-chrome-192x192.png +0 -0
  686. package/docs-site-v2/public/android-chrome-512x512.png +0 -0
  687. package/docs-site-v2/public/apple-touch-icon.png +0 -0
  688. package/docs-site-v2/public/explain-product-pricing-methods-no-mcp.png +0 -0
  689. package/docs-site-v2/public/explain-product-pricing-methods.png +0 -0
  690. package/docs-site-v2/public/favicon-16x16.png +0 -0
  691. package/docs-site-v2/public/favicon-32x32.png +0 -0
  692. package/docs-site-v2/public/favicon.ico +0 -0
  693. package/docs-site-v2/public/index.css +0 -4174
  694. package/docs-site-v2/public/llms.txt +0 -44
  695. package/docs-site-v2/public/logo-dark.svg +0 -8
  696. package/docs-site-v2/public/logo.svg +0 -8
  697. package/docs-site-v2/public/robots.txt +0 -20
  698. package/docs-site-v2/public/site.webmanifest +0 -50
  699. package/docs-site-v2/public/sitemap.xml +0 -90
  700. package/docs-site-v2/script-debugger/index.md +0 -105
  701. package/docs-site-v2/scripts/generate-llms.js +0 -71
  702. package/docs-site-v2/scripts/generate-sitemap.js +0 -97
  703. package/docs-site-v2/security/index.md +0 -115
  704. package/docs-site-v2/skills/index.md +0 -40
  705. package/docs-site-v2/tools/index.md +0 -36
  706. package/docs-site-v2/troubleshooting/index.md +0 -204
  707. package/eslint.config.js +0 -139
  708. package/jest.config.js +0 -27
  709. package/memories/repo/docs-site-v2-build.json +0 -11
  710. package/scripts/convert-docs.js +0 -633
  711. package/scripts/validate-server-json.js +0 -68
  712. package/server.json +0 -20
  713. package/src/clients/agent-instructions-client.ts +0 -370
  714. package/src/clients/base/abstract-documentation-client.ts +0 -405
  715. package/src/clients/base/http-client.ts +0 -152
  716. package/src/clients/base/oauth-token.ts +0 -164
  717. package/src/clients/base/ocapi-auth-client.ts +0 -133
  718. package/src/clients/cartridge/cartridge-generation-client.ts +0 -302
  719. package/src/clients/cartridge/cartridge-structure.ts +0 -37
  720. package/src/clients/cartridge/cartridge-templates.ts +0 -246
  721. package/src/clients/cartridge/index.ts +0 -6
  722. package/src/clients/docs/class-content-parser.ts +0 -308
  723. package/src/clients/docs/class-name-resolver.ts +0 -99
  724. package/src/clients/docs/documentation-scanner.ts +0 -255
  725. package/src/clients/docs/index.ts +0 -16
  726. package/src/clients/docs/referenced-types-extractor.ts +0 -92
  727. package/src/clients/docs-client.ts +0 -393
  728. package/src/clients/isml-client.ts +0 -353
  729. package/src/clients/log-client.ts +0 -19
  730. package/src/clients/ocapi/code-versions-client.ts +0 -54
  731. package/src/clients/ocapi/site-preferences-client.ts +0 -106
  732. package/src/clients/ocapi/system-objects-client.ts +0 -148
  733. package/src/clients/ocapi-client.ts +0 -53
  734. package/src/clients/script-debugger/index.ts +0 -5
  735. package/src/clients/script-debugger/script-debugger-client.ts +0 -754
  736. package/src/clients/sfra-client.ts +0 -339
  737. package/src/config/configuration-factory.ts +0 -201
  738. package/src/config/dw-json-loader.ts +0 -248
  739. package/src/config/workspace-roots.ts +0 -540
  740. package/src/constants/index.ts +0 -1
  741. package/src/core/handlers/abstract-client-handler.ts +0 -85
  742. package/src/core/handlers/agent-instructions-handler.ts +0 -48
  743. package/src/core/handlers/base-handler.ts +0 -172
  744. package/src/core/handlers/cartridge-handler.ts +0 -38
  745. package/src/core/handlers/client-factory.ts +0 -140
  746. package/src/core/handlers/code-version-handler.ts +0 -43
  747. package/src/core/handlers/docs-handler.ts +0 -19
  748. package/src/core/handlers/isml-handler.ts +0 -19
  749. package/src/core/handlers/job-log-handler.ts +0 -39
  750. package/src/core/handlers/log-handler.ts +0 -39
  751. package/src/core/handlers/script-debugger-handler.ts +0 -46
  752. package/src/core/handlers/sfra-handler.ts +0 -23
  753. package/src/core/handlers/simple-client-handler.ts +0 -78
  754. package/src/core/handlers/system-object-handler.ts +0 -43
  755. package/src/core/handlers/validation-helpers.ts +0 -206
  756. package/src/core/instruction-advisor.ts +0 -122
  757. package/src/core/server.ts +0 -374
  758. package/src/core/tool-definitions.ts +0 -30
  759. package/src/core/tool-schemas/agent-instruction-tools.ts +0 -72
  760. package/src/core/tool-schemas/cartridge-tools.ts +0 -29
  761. package/src/core/tool-schemas/code-version-tools.ts +0 -28
  762. package/src/core/tool-schemas/documentation-tools.ts +0 -104
  763. package/src/core/tool-schemas/index.ts +0 -27
  764. package/src/core/tool-schemas/isml-tools.ts +0 -89
  765. package/src/core/tool-schemas/log-tools.ts +0 -196
  766. package/src/core/tool-schemas/script-debugger-tools.ts +0 -83
  767. package/src/core/tool-schemas/sfra-tools.ts +0 -65
  768. package/src/core/tool-schemas/shared-schemas.ts +0 -158
  769. package/src/core/tool-schemas/system-object-tools.ts +0 -127
  770. package/src/index.ts +0 -20
  771. package/src/main.ts +0 -161
  772. package/src/services/file-system-service.ts +0 -117
  773. package/src/services/index.ts +0 -11
  774. package/src/services/path-service.ts +0 -124
  775. package/src/tool-configs/agent-instructions-tool-config.ts +0 -83
  776. package/src/tool-configs/cartridge-tool-config.ts +0 -41
  777. package/src/tool-configs/code-version-tool-config.ts +0 -37
  778. package/src/tool-configs/docs-tool-config.ts +0 -103
  779. package/src/tool-configs/isml-tool-config.ts +0 -87
  780. package/src/tool-configs/job-log-tool-config.ts +0 -119
  781. package/src/tool-configs/log-tool-config.ts +0 -110
  782. package/src/tool-configs/script-debugger-tool-config.ts +0 -69
  783. package/src/tool-configs/sfra-tool-config.ts +0 -74
  784. package/src/tool-configs/system-object-tool-config.ts +0 -142
  785. package/src/types/types.ts +0 -125
  786. package/src/utils/cache.ts +0 -291
  787. package/src/utils/category-utils.ts +0 -70
  788. package/src/utils/log-tool-constants.ts +0 -95
  789. package/src/utils/logger.ts +0 -260
  790. package/src/utils/markdown-utils.ts +0 -280
  791. package/src/utils/ocapi-url-builder.ts +0 -48
  792. package/src/utils/path-resolver.ts +0 -69
  793. package/src/utils/path-validation.ts +0 -113
  794. package/src/utils/query-builder.ts +0 -84
  795. package/src/utils/utils.ts +0 -139
  796. package/src/utils/validator.ts +0 -162
  797. package/tests/__mocks__/docs-client.ts +0 -8
  798. package/tests/__mocks__/src/clients/base/http-client.js +0 -43
  799. package/tests/__mocks__/webdav.js +0 -14
  800. package/tests/base-handler.test.ts +0 -527
  801. package/tests/base-http-client.test.ts +0 -311
  802. package/tests/cache.test.ts +0 -453
  803. package/tests/cartridge-handler.test.ts +0 -290
  804. package/tests/class-content-parser.test.ts +0 -629
  805. package/tests/class-name-resolver.test.ts +0 -365
  806. package/tests/client-factory.test.ts +0 -280
  807. package/tests/code-version-handler.test.ts +0 -291
  808. package/tests/code-versions-client.test.ts +0 -156
  809. package/tests/config.test.ts +0 -285
  810. package/tests/configuration-factory.test.ts +0 -233
  811. package/tests/docs-handler.test.ts +0 -359
  812. package/tests/documentation-scanner.test.ts +0 -755
  813. package/tests/file-system-service.test.ts +0 -111
  814. package/tests/isml-client.test.ts +0 -463
  815. package/tests/isml-handler.test.ts +0 -375
  816. package/tests/job-log-handler.test.ts +0 -283
  817. package/tests/log-client.test.ts +0 -768
  818. package/tests/log-handler.test.ts +0 -365
  819. package/tests/log-processor.test.ts +0 -243
  820. package/tests/log-validation.test.ts +0 -149
  821. package/tests/logger.test.ts +0 -303
  822. package/tests/mcp/AGENTS.md +0 -162
  823. package/tests/mcp/README.md +0 -237
  824. package/tests/mcp/node/activate-code-version-advanced.full-mode.programmatic.test.js +0 -669
  825. package/tests/mcp/node/code-versions.full-mode.programmatic.test.js +0 -605
  826. package/tests/mcp/node/evaluate-script.full-mode.programmatic.test.js +0 -387
  827. package/tests/mcp/node/generate-cartridge-structure.docs-only.programmatic.test.js +0 -644
  828. package/tests/mcp/node/get-available-sfra-documents.programmatic.test.js +0 -274
  829. package/tests/mcp/node/get-isml-categories.programmatic.test.js +0 -278
  830. package/tests/mcp/node/get-isml-element.programmatic.test.js +0 -278
  831. package/tests/mcp/node/get-isml-elements-by-category.programmatic.test.js +0 -363
  832. package/tests/mcp/node/get-job-execution-summary.full-mode.programmatic.test.js +0 -432
  833. package/tests/mcp/node/get-job-log-entries.full-mode.programmatic.test.js +0 -488
  834. package/tests/mcp/node/get-latest-debug.full-mode.programmatic.test.js +0 -338
  835. package/tests/mcp/node/get-latest-error.full-mode.programmatic.test.js +0 -255
  836. package/tests/mcp/node/get-latest-info.full-mode.programmatic.test.js +0 -347
  837. package/tests/mcp/node/get-latest-job-log-files.full-mode.programmatic.test.js +0 -460
  838. package/tests/mcp/node/get-latest-warn.full-mode.programmatic.test.js +0 -454
  839. package/tests/mcp/node/get-log-file-contents.full-mode.programmatic.test.js +0 -381
  840. package/tests/mcp/node/get-sfcc-class-documentation.docs-only.programmatic.test.js +0 -371
  841. package/tests/mcp/node/get-sfcc-class-info.docs-only.programmatic.test.js +0 -1032
  842. package/tests/mcp/node/get-sfra-categories.docs-only.programmatic.test.js +0 -369
  843. package/tests/mcp/node/get-sfra-document.programmatic.test.js +0 -473
  844. package/tests/mcp/node/get-sfra-documents-by-category.docs-only.programmatic.test.js +0 -510
  845. package/tests/mcp/node/get-system-object-definition.full-mode.programmatic.test.js +0 -389
  846. package/tests/mcp/node/get-system-object-definitions.docs-only.programmatic.test.js +0 -300
  847. package/tests/mcp/node/get-system-object-definitions.full-mode.programmatic.test.js +0 -387
  848. package/tests/mcp/node/list-isml-elements.programmatic.test.js +0 -311
  849. package/tests/mcp/node/list-log-files.full-mode.programmatic.test.js +0 -150
  850. package/tests/mcp/node/list-sfcc-classes.docs-only.programmatic.test.js +0 -612
  851. package/tests/mcp/node/search-custom-object-attribute-definitions.full-mode.programmatic.test.js +0 -875
  852. package/tests/mcp/node/search-isml-elements.programmatic.test.js +0 -325
  853. package/tests/mcp/node/search-job-logs-by-name.full-mode.programmatic.test.js +0 -330
  854. package/tests/mcp/node/search-job-logs.full-mode.programmatic.test.js +0 -526
  855. package/tests/mcp/node/search-logs.full-mode.programmatic.test.js +0 -478
  856. package/tests/mcp/node/search-sfcc-classes.docs-only.programmatic.test.js +0 -334
  857. package/tests/mcp/node/search-sfcc-methods.docs-only.programmatic.test.js +0 -487
  858. package/tests/mcp/node/search-sfra-documentation.docs-only.programmatic.test.js +0 -563
  859. package/tests/mcp/node/search-site-preferences.full-mode.programmatic.test.js +0 -556
  860. package/tests/mcp/node/search-system-object-attribute-definitions.full-mode.programmatic.test.js +0 -744
  861. package/tests/mcp/node/search-system-object-attribute-groups.full-mode.programmatic.test.js +0 -657
  862. package/tests/mcp/node/summarize-logs.full-mode.programmatic.test.js +0 -357
  863. package/tests/mcp/node/tools.docs-only.programmatic.test.js +0 -515
  864. package/tests/mcp/node/tools.full-mode.programmatic.test.js +0 -154
  865. package/tests/mcp/test-fixtures/dw.json +0 -10
  866. package/tests/mcp/yaml/activate-code-version.docs-only.test.mcp.yml +0 -318
  867. package/tests/mcp/yaml/activate-code-version.full-mode.test.mcp.yml +0 -507
  868. package/tests/mcp/yaml/evaluate-script.full-mode.test.mcp.yml +0 -281
  869. package/tests/mcp/yaml/get-available-sfra-documents.docs-only.test.mcp.yml +0 -684
  870. package/tests/mcp/yaml/get-available-sfra-documents.full-mode.test.mcp.yml +0 -684
  871. package/tests/mcp/yaml/get-code-versions.docs-only.test.mcp.yml +0 -196
  872. package/tests/mcp/yaml/get-code-versions.full-mode.test.mcp.yml +0 -273
  873. package/tests/mcp/yaml/get-isml-categories.docs-only.test.mcp.yml +0 -330
  874. package/tests/mcp/yaml/get-isml-element.docs-only.test.mcp.yml +0 -294
  875. package/tests/mcp/yaml/get-isml-elements-by-category.docs-only.test.mcp.yml +0 -334
  876. package/tests/mcp/yaml/get-job-execution-summary.full-mode.test.mcp.yml +0 -148
  877. package/tests/mcp/yaml/get-job-log-entries.full-mode.test.mcp.yml +0 -284
  878. package/tests/mcp/yaml/get-latest-debug.full-mode.test.mcp.yml +0 -191
  879. package/tests/mcp/yaml/get-latest-error.full-mode.test.mcp.yml +0 -195
  880. package/tests/mcp/yaml/get-latest-info.full-mode.test.mcp.yml +0 -242
  881. package/tests/mcp/yaml/get-latest-job-log-files.full-mode.test.mcp.yml +0 -189
  882. package/tests/mcp/yaml/get-latest-warn.full-mode.test.mcp.yml +0 -182
  883. package/tests/mcp/yaml/get-log-file-contents.full-mode.test.mcp.yml +0 -256
  884. package/tests/mcp/yaml/get-sfcc-class-documentation.docs-only.test.mcp.yml +0 -2416
  885. package/tests/mcp/yaml/get-sfcc-class-documentation.full-mode.test.mcp.yml +0 -2416
  886. package/tests/mcp/yaml/get-sfcc-class-info.docs-only.test.mcp.yml +0 -1225
  887. package/tests/mcp/yaml/get-sfcc-class-info.full-mode.test.mcp.yml +0 -1225
  888. package/tests/mcp/yaml/get-sfra-categories.docs-only.test.mcp.yml +0 -452
  889. package/tests/mcp/yaml/get-sfra-categories.full-mode.test.mcp.yml +0 -452
  890. package/tests/mcp/yaml/get-sfra-document.docs-only.test.mcp.yml +0 -525
  891. package/tests/mcp/yaml/get-sfra-document.full-mode.test.mcp.yml +0 -525
  892. package/tests/mcp/yaml/get-sfra-documents-by-category.docs-only.test.mcp.yml +0 -507
  893. package/tests/mcp/yaml/get-sfra-documents-by-category.full-mode.test.mcp.yml +0 -507
  894. package/tests/mcp/yaml/get-system-object-definition.docs-only.test.mcp.yml +0 -208
  895. package/tests/mcp/yaml/get-system-object-definition.full-mode.test.mcp.yml +0 -191
  896. package/tests/mcp/yaml/get-system-object-definitions.docs-only.test.mcp.yml +0 -257
  897. package/tests/mcp/yaml/get-system-object-definitions.full-mode.test.mcp.yml +0 -517
  898. package/tests/mcp/yaml/get_latest_error.test.mcp.yml +0 -472
  899. package/tests/mcp/yaml/list-isml-elements.docs-only.test.mcp.yml +0 -212
  900. package/tests/mcp/yaml/list-log-files.full-mode.test.mcp.yml +0 -89
  901. package/tests/mcp/yaml/list-sfcc-classes.docs-only.test.mcp.yml +0 -511
  902. package/tests/mcp/yaml/list-sfcc-classes.full-mode.test.mcp.yml +0 -511
  903. package/tests/mcp/yaml/search-custom-object-attribute-definitions.docs-only.test.mcp.yml +0 -82
  904. package/tests/mcp/yaml/search-custom-object-attribute-definitions.test.mcp.yml +0 -387
  905. package/tests/mcp/yaml/search-isml-elements.docs-only.test.mcp.yml +0 -312
  906. package/tests/mcp/yaml/search-job-logs-by-name.full-mode.test.mcp.yml +0 -169
  907. package/tests/mcp/yaml/search-job-logs.full-mode.test.mcp.yml +0 -174
  908. package/tests/mcp/yaml/search-logs.full-mode.test.mcp.yml +0 -207
  909. package/tests/mcp/yaml/search-sfcc-classes.docs-only.test.mcp.yml +0 -1157
  910. package/tests/mcp/yaml/search-sfcc-classes.full-mode.test.mcp.yml +0 -1157
  911. package/tests/mcp/yaml/search-sfcc-methods.docs-only.test.mcp.yml +0 -723
  912. package/tests/mcp/yaml/search-sfcc-methods.full-mode.test.mcp.yml +0 -723
  913. package/tests/mcp/yaml/search-sfra-documentation.docs-only.test.mcp.yml +0 -427
  914. package/tests/mcp/yaml/search-sfra-documentation.full-mode.test.mcp.yml +0 -427
  915. package/tests/mcp/yaml/search-site-preferences.docs-only.test.mcp.yml +0 -295
  916. package/tests/mcp/yaml/search-site-preferences.full-mode.test.mcp.yml +0 -574
  917. package/tests/mcp/yaml/search-system-object-attribute-definitions.docs-only.test.mcp.yml +0 -168
  918. package/tests/mcp/yaml/search-system-object-attribute-definitions.full-mode.test.mcp.yml +0 -500
  919. package/tests/mcp/yaml/search-system-object-attribute-groups.docs-only.test.mcp.yml +0 -278
  920. package/tests/mcp/yaml/search-system-object-attribute-groups.full-mode.test.mcp.yml +0 -612
  921. package/tests/mcp/yaml/summarize-logs.full-mode.test.mcp.yml +0 -173
  922. package/tests/mcp/yaml/tools.docs-only.test.mcp.yml +0 -535
  923. package/tests/mcp/yaml/tools.full-mode.test.mcp.yml +0 -378
  924. package/tests/oauth-token.test.ts +0 -725
  925. package/tests/ocapi-auth-client.test.ts +0 -276
  926. package/tests/ocapi-client.test.ts +0 -242
  927. package/tests/path-service.test.ts +0 -96
  928. package/tests/query-builder.test.ts +0 -281
  929. package/tests/referenced-types-extractor.test.ts +0 -814
  930. package/tests/script-debugger-client.test.ts +0 -430
  931. package/tests/servers/sfcc-mock-server/README.md +0 -208
  932. package/tests/servers/sfcc-mock-server/mock-data/ocapi/code-versions.json +0 -247
  933. package/tests/servers/sfcc-mock-server/mock-data/ocapi/custom-object-attributes-customapi.json +0 -128
  934. package/tests/servers/sfcc-mock-server/mock-data/ocapi/custom-object-attributes-globalsettings.json +0 -92
  935. package/tests/servers/sfcc-mock-server/mock-data/ocapi/custom-object-attributes-versionhistory.json +0 -256
  936. package/tests/servers/sfcc-mock-server/mock-data/ocapi/site-preferences-ccv.json +0 -275
  937. package/tests/servers/sfcc-mock-server/mock-data/ocapi/site-preferences-fastforward.json +0 -123
  938. package/tests/servers/sfcc-mock-server/mock-data/ocapi/site-preferences-sfra.json +0 -224
  939. package/tests/servers/sfcc-mock-server/mock-data/ocapi/site-preferences-storefront.json +0 -447
  940. package/tests/servers/sfcc-mock-server/mock-data/ocapi/site-preferences-system.json +0 -171
  941. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attribute-groups-campaign.json +0 -13
  942. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attribute-groups-category.json +0 -50
  943. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attribute-groups-order.json +0 -32
  944. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attribute-groups-product.json +0 -224
  945. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attribute-groups-sitepreferences.json +0 -62
  946. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attributes-customeraddress.json +0 -109
  947. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attributes-product-expanded.json +0 -183
  948. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-attributes-product.json +0 -139
  949. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definition-category.json +0 -26
  950. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definition-customer.json +0 -26
  951. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definition-customeraddress.json +0 -26
  952. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definition-order.json +0 -26
  953. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definition-product.json +0 -26
  954. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definitions-old.json +0 -354
  955. package/tests/servers/sfcc-mock-server/mock-data/ocapi/system-object-definitions.json +0 -172
  956. package/tests/servers/sfcc-mock-server/package-lock.json +0 -879
  957. package/tests/servers/sfcc-mock-server/package.json +0 -39
  958. package/tests/servers/sfcc-mock-server/scripts/setup-logs.js +0 -224
  959. package/tests/servers/sfcc-mock-server/server.js +0 -280
  960. package/tests/servers/sfcc-mock-server/src/app.js +0 -182
  961. package/tests/servers/sfcc-mock-server/src/config/server-config.js +0 -124
  962. package/tests/servers/sfcc-mock-server/src/middleware/auth.js +0 -101
  963. package/tests/servers/sfcc-mock-server/src/middleware/cors.js +0 -39
  964. package/tests/servers/sfcc-mock-server/src/middleware/logging.js +0 -124
  965. package/tests/servers/sfcc-mock-server/src/routes/cartridge-webdav.js +0 -258
  966. package/tests/servers/sfcc-mock-server/src/routes/ocapi/code-versions-handler.js +0 -184
  967. package/tests/servers/sfcc-mock-server/src/routes/ocapi/debugger-handler.js +0 -396
  968. package/tests/servers/sfcc-mock-server/src/routes/ocapi/oauth-handler.js +0 -36
  969. package/tests/servers/sfcc-mock-server/src/routes/ocapi/ocapi-error-utils.js +0 -221
  970. package/tests/servers/sfcc-mock-server/src/routes/ocapi/ocapi-utils.js +0 -440
  971. package/tests/servers/sfcc-mock-server/src/routes/ocapi/site-preferences-handler.js +0 -332
  972. package/tests/servers/sfcc-mock-server/src/routes/ocapi/system-objects-handler.js +0 -572
  973. package/tests/servers/sfcc-mock-server/src/routes/ocapi.js +0 -58
  974. package/tests/servers/sfcc-mock-server/src/routes/storefront.js +0 -86
  975. package/tests/servers/sfcc-mock-server/src/routes/webdav.js +0 -240
  976. package/tests/servers/sfcc-mock-server/src/utils/mock-data-loader.js +0 -84
  977. package/tests/servers/sfcc-mock-server/src/utils/webdav-xml.js +0 -121
  978. package/tests/servers/sfcc-mock-server-manager.ts +0 -280
  979. package/tests/sfcc-mock-server.test.ts +0 -423
  980. package/tests/site-preferences-client.test.ts +0 -358
  981. package/tests/system-objects-client.test.ts +0 -310
  982. package/tests/utils.test.ts +0 -477
  983. package/tests/validation-helpers.test.ts +0 -325
  984. package/tests/validator.test.ts +0 -416
  985. package/tests/workspace-roots.test.ts +0 -227
  986. package/tsconfig.json +0 -20
  987. package/tsconfig.test.json +0 -20
@@ -1,875 +0,0 @@
1
- # ISML isprint Element
2
-
3
- ## Overview
4
-
5
- The `<isprint>` element is used to format and encode data for output in ISML templates. It provides comprehensive control over how expression results are displayed, including formatting for money, dates, numbers, and quantities, as well as automatic encoding to prevent cross-site scripting (XSS) attacks.
6
-
7
- **Key Features:** Automatic HTML encoding, flexible formatting options, locale-aware output, context-specific encoding for security, and timezone control for date values.
8
-
9
- ## Syntax
10
-
11
- ```isml
12
- <isprint
13
- value = output // required
14
- (style = style_ID) | (formatter = format) // one required, but not both
15
- timezone = "SITE" | "INSTANCE" | "utc" // optional
16
- padding = padding_constant // optional
17
- encoding = "on" | "off" | context // optional (default: "on")
18
- />
19
- ```
20
-
21
- ## Required Attributes
22
-
23
- ### value
24
-
25
- **Type:** Expression (NOT String literal)
26
- **Required:** Yes
27
- **Allowed Data Type:** Expression only. String literals are not allowed.
28
-
29
- Specifies an expression that resolves to the text or data you want to output. The expression can evaluate to various data types including Money, Date, Number, Quantity, or String.
30
-
31
- **Examples:**
32
- ```isml
33
- <!-- Money value -->
34
- <isprint value="${pdict.product.price}" style="MONEY_LONG"/>
35
-
36
- <!-- Date value -->
37
- <isprint value="${pdict.order.creationDate}" style="DATE_LONG"/>
38
-
39
- <!-- Number value -->
40
- <isprint value="${pdict.productCount}" style="INTEGER"/>
41
-
42
- <!-- String value (with automatic encoding) -->
43
- <isprint value="${pdict.product.name}" encoding="on"/>
44
-
45
- <!-- Complex expression -->
46
- <isprint value="${pdict.basket.totalGrossPrice.subtract(pdict.basket.totalTax)}" style="MONEY_SHORT"/>
47
- ```
48
-
49
- **Important Notes:**
50
- - Must be an expression (using `${}` syntax)
51
- - String literals without expression syntax are **not allowed**
52
- - Encoding is always done **after** formatting
53
-
54
- ### style OR formatter (Mutually Exclusive)
55
-
56
- **You must include either `style` OR `formatter`, but not both.**
57
-
58
- #### style
59
-
60
- **Type:** String
61
- **Required:** Yes (if `formatter` is not specified)
62
-
63
- Specifies a predefined style identifier from standard formatter classes. Styles are locale-aware and automatically adjust formatting based on regional settings.
64
-
65
- **Available Styles by Data Type:**
66
-
67
- **Money Formatting:**
68
- - `MONEY_SHORT` - Two decimal digits, no currency symbol (e.g., "3,333.00")
69
- - `MONEY_LONG` - Two decimal digits with currency symbol (e.g., "$3,333.00")
70
-
71
- **Number Formatting:**
72
- - `INTEGER` - No decimal digits, no decimal separator (e.g., "2,200")
73
- - `DECIMAL` - Exactly two decimal digits (e.g., "2,200.12")
74
-
75
- **Quantity Formatting:**
76
- - `QUANTITY_SHORT` - 0-3 decimal digits, no unit symbol (e.g., "3,333.123")
77
- - `QUANTITY_LONG` - 0-3 decimal digits with unit symbol (e.g., "3,333.123 kg")
78
-
79
- **Date Formatting:**
80
- - `DATE_SHORT` - Short date format, no time (e.g., "9/25/99")
81
- - `DATE_LONG` - Long date format, no time (e.g., "SEP 25, 1999")
82
- - `DATE_TIME` - Clock time only (e.g., "7:55:55 PM")
83
-
84
- **Examples:**
85
- ```isml
86
- <!-- Money with currency symbol -->
87
- <isprint value="${pdict.product.price}" style="MONEY_LONG"/>
88
- <!-- Output: "$49.99" -->
89
-
90
- <!-- Integer without decimals -->
91
- <isprint value="${pdict.itemCount}" style="INTEGER"/>
92
- <!-- Output: "125" -->
93
-
94
- <!-- Short date format -->
95
- <isprint value="${pdict.order.creationDate}" style="DATE_SHORT"/>
96
- <!-- Output: "9/25/99" -->
97
- ```
98
-
99
- #### formatter
100
-
101
- **Type:** String or Expression
102
- **Required:** Yes (if `style` is not specified)
103
-
104
- Defines a custom formatting string to control how expression results are output. This allows you to create specialized formats beyond the predefined styles.
105
-
106
- **Formatter Placeholders:**
107
-
108
- | Placeholder | Action | Usage |
109
- |-------------|--------|-------|
110
- | `"0"` | Required digit placeholder | Forces digit display |
111
- | `"#"` | Optional digit placeholder | Shows digit only if present |
112
- | `"*"` | Required symbol placeholder | Currency or unit symbol |
113
-
114
- **Examples:**
115
- ```isml
116
- <!-- Custom money format: "$ 03.00" -->
117
- <isprint value="${pdict.amount}" formatter="* #,#00.0#"/>
118
-
119
- <!-- Custom quantity format with unit -->
120
- <isprint value="${pdict.weight}" formatter="#,#00.0# *;(-#,#00.0# *)"/>
121
-
122
- <!-- Custom date format: "Wed, July 10, '96" -->
123
- <isprint value="${pdict.date}" formatter="EEE, MMM d, 'yy"/>
124
-
125
- <!-- Time format: "12:08 PM" -->
126
- <isprint value="${pdict.date}" formatter="h a"/>
127
-
128
- <!-- Page number with optional digit -->
129
- <isprint value="${pdict.pagingmodel.start+1}" formatter="#"/>
130
- ```
131
-
132
- **Date Formatter Patterns:**
133
-
134
- | Pattern | Description | Example |
135
- |---------|-------------|---------|
136
- | `EEE` | Day of week (short) | "Wed" |
137
- | `EEEE` | Day of week (full) | "Wednesday" |
138
- | `MMM` | Month (short) | "Jul" |
139
- | `MMMM` | Month (full) | "July" |
140
- | `d` | Day of month | "10" |
141
- | `yy` | Year (2 digits) | "96" |
142
- | `yyyy` | Year (4 digits) | "1996" |
143
- | `h` | Hour (12-hour) | "12" |
144
- | `H` | Hour (24-hour) | "23" |
145
- | `a` | AM/PM marker | "PM" |
146
- | `z` | Time zone | "PST" |
147
-
148
- ## Optional Attributes
149
-
150
- ### timezone
151
-
152
- **Type:** String
153
- **Allowed Values:** `"SITE"`, `"INSTANCE"`, `"utc"`
154
- **Default:** `"SITE"`
155
- **Optional:** Yes
156
-
157
- Specifies the time zone used for printing date values. This attribute enables you to control whether dates are displayed using the instance time zone, site time zone, or without time zone conversion.
158
-
159
- **Important:** Time zone identifiers are case-insensitive.
160
-
161
- **Values:**
162
-
163
- #### SITE (default)
164
-
165
- Prints time zones as specified for your site. Defined through Business Manager via **Site Preferences > Time Zone**.
166
-
167
- ```isml
168
- <isprint value="${new Date()}" style="DATE_LONG" timezone="SITE"/>
169
- ```
170
-
171
- #### INSTANCE
172
-
173
- Prints time zones as specified for your instance. Defined through Business Manager via **Global Preferences > Instance Time Zone**.
174
-
175
- ```isml
176
- <isprint value="${new Date()}" style="DATE_LONG" timezone="INSTANCE"/>
177
- ```
178
-
179
- #### utc
180
-
181
- Prints date values without time zone conversion. Particularly important for date-only attributes like `customer.birthday` that have no time component.
182
-
183
- **Use Case:** For date attributes that should have no time component (like birthdays), use `"utc"` to ensure no time zone conversion occurs. User input for date attributes is always interpreted as UTC time in Business Manager.
184
-
185
- ```isml
186
- <!-- Customer birthday (no time component) -->
187
- <isprint value="${pdict.customer.birthday}" style="DATE_SHORT" timezone="utc"/>
188
- ```
189
-
190
- **Examples:**
191
- ```isml
192
- <!-- Site time zone -->
193
- <isprint value="${new Date()}" style="DATE_LONG" timezone="SITE"/>
194
- <!-- Output: "SEP 25, 1999" (site timezone) -->
195
-
196
- <!-- Instance time zone -->
197
- <isprint value="${new Date()}" style="DATE_LONG" timezone="INSTANCE"/>
198
- <!-- Output: "SEP 25, 1999" (instance timezone) -->
199
-
200
- <!-- UTC (no conversion) -->
201
- <isprint value="${pdict.customer.birthday}" style="DATE_SHORT" timezone="utc"/>
202
- <!-- Output: "9/25/99" (no timezone conversion) -->
203
- ```
204
-
205
- ### padding
206
-
207
- **Type:** String or Expression
208
- **Optional:** Yes
209
- **Use Case:** Mail templates (plain text, not HTML)
210
-
211
- Defines field width and spacing for plain text output, particularly in mail templates. This attribute controls text alignment and truncation.
212
-
213
- **Value Rules:**
214
- - Can be any positive or negative number
215
- - **Absolute value** defines the field width
216
- - **Positive value** produces **left-aligned** output
217
- - **Negative value** produces **right-aligned** output
218
- - If output string exceeds field width, it's **truncated at the right end**
219
-
220
- **Examples:**
221
- ```isml
222
- <!-- Right-aligned in 10-character field -->
223
- <isprint value="${pdict.product.price}" padding="-10"/>
224
- <!-- Output: " 5.00 USD" (padded left with spaces) -->
225
-
226
- <!-- Left-aligned in 10-character field -->
227
- <isprint value="${pdict.product.price}" padding="+10"/>
228
- <!-- Output: "5.00 USD " (padded right with spaces) -->
229
-
230
- <!-- Truncation when exceeds field width -->
231
- <isprint value="#'foolish'#" padding="+3"/>
232
- <!-- Output: "foo" (truncated from "foolish") -->
233
- ```
234
-
235
- **Typical Use Case - Product List in Email:**
236
- ```isml
237
- <!-- Mail template (plain text) -->
238
- Product Name Price Qty
239
- -----------------------------------------------
240
- <isloop items="${pdict.lineItems}" var="item">
241
- <isprint value="${item.productName}" padding="+25"/> <isprint value="${item.price}" padding="-10"/> <isprint value="${item.quantity}" padding="-5"/>
242
- </isloop>
243
- ```
244
-
245
- ### encoding
246
-
247
- **Type:** String
248
- **Allowed Values:** `"on"`, `"off"`, or context identifier
249
- **Default:** `"on"`
250
- **Optional:** Yes
251
-
252
- Controls automatic encoding of output to prevent cross-site scripting (XSS) attacks. With this attribute, you can explicitly switch encoding on/off or specify context-specific encoding.
253
-
254
- **Important:** Salesforce B2C Commerce supports encoding in HTML, XML, and WML. Even if encoding is turned off, you can use the `StringUtils` API to encode individual strings.
255
-
256
- **Values:**
257
-
258
- #### "on" (default)
259
-
260
- Automatically encodes HTML entities to prevent XSS attacks.
261
-
262
- ```isml
263
- <isprint value="${pdict.userInput}" encoding="on"/>
264
- <!-- Input: <script>alert('xss')</script> -->
265
- <!-- Output: &lt;script&gt;alert('xss')&lt;/script&gt; -->
266
- ```
267
-
268
- #### "off"
269
-
270
- Disables automatic encoding. **Use with extreme caution** - only when output is already safe or intentionally contains HTML.
271
-
272
- ```isml
273
- <isprint value="${pdict.richTextContent}" encoding="off"/>
274
- <!-- Output: raw HTML (as-is) -->
275
- ```
276
-
277
- #### Context-Specific Encoding
278
-
279
- Each context value maps to a method in the `SecureEncoder` class and provides specialized encoding for different usage scenarios:
280
-
281
- **HTML Contexts:**
282
- - `htmlcontent` - General HTML content context
283
- - `htmlsinglequote` - HTML attribute guarded by single quote
284
- - `htmldoublequote` - HTML attribute guarded by double quote
285
- - `htmlunquote` - Unguarded HTML attribute (no quotes)
286
-
287
- **JavaScript Contexts:**
288
- - `jshtml` - JavaScript inside HTML context
289
- - `jsattribute` - JavaScript inside HTML attribute
290
- - `jsblock` - JavaScript inside HTML block
291
- - `jssource` - JavaScript inside JavaScript source file
292
-
293
- **JSON Context:**
294
- - `jsonvalue` - JSON object value (prevents escaping into trusted context)
295
-
296
- **URI Contexts:**
297
- - `uricomponent` - URI component encoding
298
- - `uristrict` - Strict URI component encoding
299
-
300
- **XML Contexts:**
301
- - `xmlcontent` - General XML content
302
- - `xmlsinglequote` - XML attribute with single quote
303
- - `xmldoublequote` - XML attribute with double quote
304
- - `xmlcomment` - XML comment context
305
-
306
- **Examples:**
307
- ```isml
308
- <!-- HTML attribute with double quotes -->
309
- <div id="<isprint value="${unsafeData}" encoding="htmldoublequote"/>">
310
- </div>
311
-
312
- <!-- JavaScript block -->
313
- <script type="text/javascript">
314
- var data = "<isprint value="${unsafeData}" encoding="jsblock"/>";
315
- </script>
316
-
317
- <!-- JSON value -->
318
- <script>
319
- var json = {"trusted_data": <isprint value="${unsafeData}" encoding="jsonvalue"/>};
320
- return JSON.stringify(json);
321
- </script>
322
-
323
- <!-- URI component -->
324
- <a href="?param=<isprint value="${searchTerm}" encoding="uricomponent"/>">Search</a>
325
-
326
- <!-- XML attribute -->
327
- <item name="<isprint value="${productName}" encoding="xmldoublequote"/>"/>
328
- ```
329
-
330
- ## Purpose
331
-
332
- The `<isprint>` element serves to:
333
-
334
- 1. **Output Expression Results:** Display the result of expressions and template variables
335
- 2. **Format Data:** Apply locale-aware formatting to Money, Date, Number, and Quantity values
336
- 3. **Encode Output:** Automatically encode HTML entities to prevent XSS attacks
337
- 4. **Control Display:** Manage timezone, padding, and custom formatting for precise output control
338
- 5. **Template Optimization:** Contribute to optimizing template code with explicit output control
339
-
340
- **Note:** Even though it's possible to output expression results without `<isprint>` (using `${expression}` directly), you should always use `<isprint>` because it contributes to optimizing your template code and provides explicit control over formatting and encoding.
341
-
342
- ## Default Formatting Styles
343
-
344
- When no style or formatter is explicitly specified, the following default styles are used:
345
-
346
- | Data Type | Default Style | Example Output |
347
- |-----------|---------------|----------------|
348
- | Money | `MONEY_LONG` | "$3,333.00" |
349
- | Number | `DECIMAL` | "2,200.12" |
350
- | Quantity | `QUANTITY_SHORT` | "3,333.123" |
351
- | Date | `DATE_SHORT` | "9/25/99" |
352
-
353
- ## Automatic Encoding Behavior
354
-
355
- ### When Encoding is Applied
356
-
357
- Expression output is **automatically encoded** in the following cases:
358
-
359
- 1. **Direct Template Embedding:** Expression embedded directly in template
360
- ```isml
361
- ${pdict.product.name} <!-- Automatically encoded -->
362
- ```
363
-
364
- 2. **HTML Attributes:** Expression used for HTML attribute values
365
- ```isml
366
- <div class="${pdict.className}"> <!-- Automatically encoded -->
367
- ```
368
-
369
- ### When Encoding is NOT Applied
370
-
371
- Expression output is **not automatically encoded** when:
372
-
373
- 1. **ISML Tag Attributes:** Expression used in ISML tag attributes
374
- ```isml
375
- <isif condition="${expression}"> <!-- No encoding -->
376
- ```
377
-
378
- **Recommendation:** Use `<isprint>` for granular control of expression output, especially when the result contains special characters.
379
-
380
- ### Encoding Example
381
-
382
- ```isml
383
- <!-- Template variable with special character -->
384
- <!-- Assume: pdict.product.name = 'Nokia 447X Pro 17" Monitor' -->
385
-
386
- <!-- ISML code -->
387
- <isprint value="${pdict.product.name}"/>
388
-
389
- <!-- Generated HTML -->
390
- Nokia 447X Pro 17&quot; Monitor
391
-
392
- <!-- Displayed in browser -->
393
- Nokia 447X Pro 17" Monitor
394
- ```
395
-
396
- ## Common Use Cases
397
-
398
- ### Basic Data Output
399
-
400
- ```isml
401
- <!-- Product price with currency -->
402
- <isprint value="${pdict.product.price}" style="MONEY_LONG"/>
403
- <!-- Output: "$49.99" -->
404
-
405
- <!-- Product name (encoded) -->
406
- <isprint value="${pdict.product.name}" encoding="on"/>
407
- <!-- Output: "Nokia 447X Pro 17&quot; Monitor" -->
408
-
409
- <!-- Item count as integer -->
410
- <isprint value="${pdict.basket.productLineItems.size()}" style="INTEGER"/>
411
- <!-- Output: "5" -->
412
- ```
413
-
414
- ### Money Formatting
415
-
416
- ```isml
417
- <!-- Default money formatting (MONEY_LONG) -->
418
- <isprint value="${pdict.basket.totalGrossPrice}"/>
419
- <!-- Output: "$125.50" -->
420
-
421
- <!-- Short format (no currency symbol) -->
422
- <isprint value="${pdict.basket.totalGrossPrice}" style="MONEY_SHORT"/>
423
- <!-- Output: "125.50" -->
424
-
425
- <!-- Custom money format -->
426
- <isprint value="${pdict.basket.totalGrossPrice}" formatter="* #00.0#"/>
427
- <!-- Output: "$ 125.50" -->
428
-
429
- <!-- Price comparison -->
430
- <div class="pricing">
431
- <span class="original-price">
432
- <isprint value="${pdict.product.price.list}" style="MONEY_LONG"/>
433
- </span>
434
- <span class="sale-price">
435
- <isprint value="${pdict.product.price.sales}" style="MONEY_LONG"/>
436
- </span>
437
- </div>
438
- ```
439
-
440
- ### Date and Time Formatting
441
-
442
- ```isml
443
- <!-- Short date format -->
444
- <isprint value="${pdict.order.creationDate}" style="DATE_SHORT"/>
445
- <!-- Output: "9/25/99" -->
446
-
447
- <!-- Long date format -->
448
- <isprint value="${pdict.order.creationDate}" style="DATE_LONG"/>
449
- <!-- Output: "SEP 25, 1999" -->
450
-
451
- <!-- Time only -->
452
- <isprint value="${pdict.order.creationDate}" style="DATE_TIME"/>
453
- <!-- Output: "7:55:55 PM" -->
454
-
455
- <!-- Custom date format -->
456
- <isprint value="${pdict.order.creationDate}" formatter="EEE, MMM d, 'yy"/>
457
- <!-- Output: "Wed, Sep 25, '99" -->
458
-
459
- <!-- Birthday (no timezone conversion) -->
460
- <isprint value="${pdict.customer.birthday}" style="DATE_SHORT" timezone="utc"/>
461
- <!-- Output: "3/15/85" -->
462
-
463
- <!-- Instance timezone -->
464
- <isprint value="${new Date()}" style="DATE_LONG" timezone="INSTANCE"/>
465
- <!-- Output: "JAN 15, 2024" (instance timezone) -->
466
- ```
467
-
468
- ### Number and Quantity Formatting
469
-
470
- ```isml
471
- <!-- Integer (no decimals) -->
472
- <isprint value="${pdict.searchResults.count}" style="INTEGER"/>
473
- <!-- Output: "1,234" -->
474
-
475
- <!-- Decimal (two decimal places) -->
476
- <isprint value="${pdict.product.rating}" style="DECIMAL"/>
477
- <!-- Output: "4.75" -->
478
-
479
- <!-- Quantity with unit -->
480
- <isprint value="${pdict.product.weight}" style="QUANTITY_LONG"/>
481
- <!-- Output: "3.5 kg" -->
482
-
483
- <!-- Custom quantity format -->
484
- <isprint value="${pdict.product.weight}" formatter="#,#00.0# *"/>
485
- <!-- Output: "3.50 kg" -->
486
- ```
487
-
488
- ### Security and Encoding
489
-
490
- ```isml
491
- <!-- Safe HTML output (encoded) -->
492
- <div class="product-description">
493
- <isprint value="${pdict.product.description}" encoding="on"/>
494
- </div>
495
-
496
- <!-- HTML attribute encoding -->
497
- <div id="<isprint value="${pdict.elementId}" encoding="htmldoublequote"/>"
498
- class="product-tile">
499
- </div>
500
-
501
- <!-- JavaScript context -->
502
- <script>
503
- var productName = "<isprint value="${pdict.product.name}" encoding="jsblock"/>";
504
- console.log(productName);
505
- </script>
506
-
507
- <!-- JSON context -->
508
- <script>
509
- var productData = {
510
- "name": <isprint value="${pdict.product.name}" encoding="jsonvalue"/>,
511
- "price": ${pdict.product.price.value}
512
- };
513
- </script>
514
-
515
- <!-- URL parameter -->
516
- <a href="?search=<isprint value="${pdict.searchTerm}" encoding="uricomponent"/>">
517
- Search Results
518
- </a>
519
-
520
- <!-- Rich text content (intentionally unencoded) -->
521
- <div class="rich-content">
522
- <isprint value="${pdict.content.richText}" encoding="off"/>
523
- </div>
524
- ```
525
-
526
- ### Mail Templates with Padding
527
-
528
- ```isml
529
- <!-- Plain text email receipt -->
530
- PRODUCT PRICE QTY TOTAL
531
- ----------------------------------------------------------
532
- <isloop items="${pdict.lineItems}" var="item">
533
- <isprint value="${item.productName}" padding="+30"/><isprint value="${item.price}" padding="-10" style="MONEY_SHORT"/><isprint value="${item.quantity}" padding="-7" style="INTEGER"/><isprint value="${item.total}" padding="-10" style="MONEY_SHORT"/>
534
- </isloop>
535
- ----------------------------------------------------------
536
- TOTAL:<isprint value="${pdict.orderTotal}" padding="-52" style="MONEY_LONG"/>
537
- ```
538
-
539
- ### Pagination
540
-
541
- ```isml
542
- <!-- Page numbering -->
543
- <div class="pagination">
544
- Showing
545
- <isprint value="${pdict.pagingmodel.start + 1}" formatter="#"/>
546
- -
547
- <isprint value="${pdict.pagingmodel.end}" formatter="#"/>
548
- of
549
- <isprint value="${pdict.pagingmodel.total}" formatter="#"/>
550
- results
551
- </div>
552
- <!-- Output: "Showing 1-20 of 145 results" -->
553
- ```
554
-
555
- ### Complex Expressions
556
-
557
- ```isml
558
- <!-- Calculated discount percentage -->
559
- <isprint value="${((pdict.product.price.list.value - pdict.product.price.sales.value) / pdict.product.price.list.value * 100)}" formatter="#0"/>% OFF
560
-
561
- <!-- Net price (excluding tax) -->
562
- <isprint value="${pdict.basket.totalGrossPrice.subtract(pdict.basket.totalTax)}" style="MONEY_LONG"/>
563
-
564
- <!-- Average rating -->
565
- <isprint value="${pdict.product.ratingsTotal / pdict.product.ratingsCount}" formatter="#.0"/>
566
- ```
567
-
568
- ## Best Practices
569
-
570
- ### 1. Always Use isprint for Output
571
-
572
- **Recommended:** Use `<isprint>` for all expression output for consistency, control, and optimization.
573
-
574
- ```isml
575
- <!-- Good: Explicit control -->
576
- <isprint value="${pdict.product.name}" encoding="on"/>
577
-
578
- <!-- Acceptable but less control -->
579
- ${pdict.product.name}
580
-
581
- <!-- Avoid: No encoding control in attributes -->
582
- <div data-product="${pdict.product.id}"> <!-- Better with isprint -->
583
- ```
584
-
585
- ### 2. Choose Appropriate Encoding Context
586
-
587
- Match the encoding context to where the output will be used:
588
-
589
- ```isml
590
- <!-- HTML content -->
591
- <div><isprint value="${content}" encoding="htmlcontent"/></div>
592
-
593
- <!-- HTML attribute with double quotes -->
594
- <div id="<isprint value="${id}" encoding="htmldoublequote"/>"></div>
595
-
596
- <!-- JavaScript block -->
597
- <script>var data = "<isprint value="${data}" encoding="jsblock"/>";</script>
598
-
599
- <!-- JSON value -->
600
- <script>var json = {"value": <isprint value="${data}" encoding="jsonvalue"/>};</script>
601
-
602
- <!-- URL component -->
603
- <a href="?q=<isprint value="${query}" encoding="uricomponent"/>">Link</a>
604
- ```
605
-
606
- ### 3. Use Styles for Standard Formatting
607
-
608
- Prefer predefined styles over custom formatters when possible:
609
-
610
- ```isml
611
- <!-- Good: Standard style -->
612
- <isprint value="${pdict.product.price}" style="MONEY_LONG"/>
613
-
614
- <!-- Only when needed: Custom formatter -->
615
- <isprint value="${pdict.product.price}" formatter="* #,##0.00"/>
616
- ```
617
-
618
- ### 4. Specify Timezone for Date Values
619
-
620
- Be explicit about timezone handling for dates:
621
-
622
- ```isml
623
- <!-- Date with time component: use SITE or INSTANCE -->
624
- <isprint value="${pdict.order.creationDate}" style="DATE_LONG" timezone="SITE"/>
625
-
626
- <!-- Date without time (birthday, anniversary): use utc -->
627
- <isprint value="${pdict.customer.birthday}" style="DATE_SHORT" timezone="utc"/>
628
- ```
629
-
630
- ### 5. Never Disable Encoding for User Input
631
-
632
- **CRITICAL:** Never use `encoding="off"` for user-provided content:
633
-
634
- ```isml
635
- <!-- DANGEROUS: XSS vulnerability -->
636
- <isprint value="${pdict.userComment}" encoding="off"/> <!-- DON'T DO THIS -->
637
-
638
- <!-- SAFE: Encoded output -->
639
- <isprint value="${pdict.userComment}" encoding="on"/>
640
-
641
- <!-- SAFE: Context-specific encoding -->
642
- <isprint value="${pdict.userComment}" encoding="htmlcontent"/>
643
- ```
644
-
645
- ### 6. Use Formatters for Consistent Display
646
-
647
- Create consistent number displays with custom formatters:
648
-
649
- ```isml
650
- <!-- Consistent decimal places for ratings -->
651
- <isprint value="${pdict.product.rating}" formatter="#.0"/>
652
- <!-- Always shows one decimal: "4.5", "3.0", "5.0" -->
653
-
654
- <!-- Consistent quantity display -->
655
- <isprint value="${pdict.product.quantity}" formatter="#,##0"/>
656
- <!-- Always shows thousands separator: "1,000", "10,000" -->
657
- ```
658
-
659
- ## Formatting Reference Tables
660
-
661
- ### Money Formatting Styles
662
-
663
- | Style | Description | Input | Output |
664
- |-------|-------------|-------|--------|
665
- | `MONEY_SHORT` | Two decimals, no currency | 3333 | "3,333.00" |
666
- | `MONEY_LONG` | Two decimals, with currency | 3333 | "$3,333.00" |
667
-
668
- **Note:** Currency symbols are based on the Default Currency set per site in **Administration > Sites > Manage Sites > [Site] > General**.
669
-
670
- ### Number Formatting Styles
671
-
672
- | Style | Description | Input | Output |
673
- |-------|-------------|-------|--------|
674
- | `INTEGER` | No decimals, no separator | 2200.1234 | "2,200" |
675
- | `DECIMAL` | Exactly two decimals | 2200.1234 | "2,200.12" |
676
-
677
- ### Quantity Formatting Styles
678
-
679
- | Style | Description | Examples |
680
- |-------|-------------|----------|
681
- | `QUANTITY_SHORT` | 0-3 decimals, no unit | 3333 kg → "3,333"<br>3333.1 kg → "3,333.1"<br>3333.1234 kg → "3,333.123" |
682
- | `QUANTITY_LONG` | 0-3 decimals, with unit | 3333 kg → "3,333 kg"<br>3333.1 kg → "3,333.1 kg"<br>3333.1234 kg → "3,333.123 kg" |
683
-
684
- ### Date Formatting Styles
685
-
686
- | Style | Description | Example |
687
- |-------|-------------|---------|
688
- | `DATE_SHORT` | Short date, no time | "9/25/99" |
689
- | `DATE_LONG` | Long date, no time | "SEP 25, 1999" |
690
- | `DATE_TIME` | Time only | "7:55:55 PM" |
691
-
692
- ### Custom Formatter Examples
693
-
694
- | Type | Formatter | Input | Output |
695
- |------|-----------|-------|--------|
696
- | Money | `"* #,#00.0#"` | 3 | "$ 03.00" |
697
- | Money | `"* #,#00.0#"` | 3333.123 | "$ 3,333.12" |
698
- | Quantity | `"#,#00.0# *"` | 3 kg | "03.0 kg" |
699
- | Quantity | `"#,#00.0# *"` | 3333.333 kg | "3,333.33 kg" |
700
- | Date | `"EEE, MMM d, 'yy"` | Date | "Wed, July 10, '96" |
701
- | Date | `"h a"` | Date | "12:08 PM" |
702
- | Date | `"K a, z"` | Date | "0:00 PM, PST" |
703
- | Date | `"yyyyy.MMMMM.dd GGG hh aaa"` | Date | "1996.July.10 AD 12:08 PM" |
704
-
705
- ## Common Errors and Troubleshooting
706
-
707
- ### Formatting Not Applied
708
-
709
- **Symptom:** Output appears without proper formatting.
710
-
711
- **Causes:**
712
- 1. Missing `style` or `formatter` attribute
713
- 2. Wrong data type for the specified style
714
- 3. Expression returns null or undefined
715
-
716
- **Solutions:**
717
- ```isml
718
- <!-- Bad: No formatting specified -->
719
- <isprint value="${pdict.product.price}"/> <!-- Uses default -->
720
-
721
- <!-- Good: Explicit style -->
722
- <isprint value="${pdict.product.price}" style="MONEY_LONG"/>
723
-
724
- <!-- Check for null values -->
725
- <isif condition="${pdict.product.price}">
726
- <isprint value="${pdict.product.price}" style="MONEY_LONG"/>
727
- <iselse>
728
- <span>Price not available</span>
729
- </isif>
730
- ```
731
-
732
- ### Encoding Issues
733
-
734
- **Symptom:** Special characters display as HTML entities or cause XSS vulnerabilities.
735
-
736
- **Causes:**
737
- 1. Incorrect encoding setting
738
- 2. Wrong context for encoding
739
- 3. Double encoding
740
-
741
- **Solutions:**
742
- ```isml
743
- <!-- For user input: always encode -->
744
- <isprint value="${pdict.userInput}" encoding="on"/>
745
-
746
- <!-- For trusted HTML content: disable encoding -->
747
- <isprint value="${pdict.richContent}" encoding="off"/>
748
-
749
- <!-- Use correct context -->
750
- <div id="<isprint value="${id}" encoding="htmldoublequote"/>"> <!-- Not "on" -->
751
- ```
752
-
753
- ### Timezone Confusion
754
-
755
- **Symptom:** Dates display in wrong timezone or dates shift unexpectedly.
756
-
757
- **Solutions:**
758
- ```isml
759
- <!-- For dates with time component: use SITE or INSTANCE -->
760
- <isprint value="${pdict.order.creationDate}" style="DATE_LONG" timezone="SITE"/>
761
-
762
- <!-- For dates without time (birthdays): use utc -->
763
- <isprint value="${pdict.customer.birthday}" style="DATE_SHORT" timezone="utc"/>
764
- ```
765
-
766
- ### String Literals Not Allowed
767
-
768
- **Symptom:** Error when using string literals with `value` attribute.
769
-
770
- **Cause:** The `value` attribute requires expressions, not string literals.
771
-
772
- **Solution:**
773
- ```isml
774
- <!-- Bad: String literal -->
775
- <isprint value="Hello World"/> <!-- ERROR -->
776
-
777
- <!-- Good: Expression -->
778
- <isprint value="${'Hello World'}"/>
779
-
780
- <!-- Better: Template variable -->
781
- <isprint value="${pdict.greeting}"/>
782
- ```
783
-
784
- ## Performance Considerations
785
-
786
- ### 1. Use Styles Over Custom Formatters When Possible
787
-
788
- Predefined styles are optimized and cached:
789
-
790
- ```isml
791
- <!-- Faster: Predefined style -->
792
- <isprint value="${price}" style="MONEY_LONG"/>
793
-
794
- <!-- Slower: Custom formatter (only when needed) -->
795
- <isprint value="${price}" formatter="* #,##0.00"/>
796
- ```
797
-
798
- ### 2. Avoid Complex Expressions
799
-
800
- Pre-calculate complex expressions in controllers:
801
-
802
- ```isml
803
- <!-- Less efficient: Complex calculation in template -->
804
- <isprint value="${(price.list.value - price.sales.value) / price.list.value * 100}" formatter="#0"/>
805
-
806
- <!-- More efficient: Calculate in controller -->
807
- <isprint value="${pdict.discountPercentage}" formatter="#0"/>
808
- ```
809
-
810
- ### 3. Cache Formatted Output When Appropriate
811
-
812
- For repeated values, consider caching:
813
-
814
- ```isml
815
- <isset name="formattedPrice" value="${pdict.product.price}" scope="page"/>
816
- <isloop items="${variants}" var="variant">
817
- <isprint value="${formattedPrice}" style="MONEY_LONG"/>
818
- </isloop>
819
- ```
820
-
821
- ## Security Considerations
822
-
823
- ### Cross-Site Scripting (XSS) Prevention
824
-
825
- **CRITICAL:** Always use appropriate encoding for user-generated content:
826
-
827
- ```isml
828
- <!-- User input: ALWAYS encode -->
829
- <isprint value="${pdict.userComment}" encoding="on"/>
830
-
831
- <!-- Context-specific encoding -->
832
- <div data-comment="<isprint value="${pdict.userComment}" encoding="htmldoublequote"/>"></div>
833
-
834
- <script>
835
- var comment = "<isprint value="${pdict.userComment}" encoding="jsblock"/>";
836
- </script>
837
- ```
838
-
839
- ### Trusted Content vs User Input
840
-
841
- Distinguish between trusted content and user input:
842
-
843
- ```isml
844
- <!-- Trusted: CMS content (can disable encoding) -->
845
- <isprint value="${pdict.contentAsset.body}" encoding="off"/>
846
-
847
- <!-- User input: MUST encode -->
848
- <isprint value="${pdict.searchQuery}" encoding="on"/>
849
-
850
- <!-- User input in URL: Use uricomponent -->
851
- <a href="?q=<isprint value="${pdict.searchQuery}" encoding="uricomponent"/>">
852
- ```
853
-
854
- ## Related Elements
855
-
856
- - **`<isset>`** - Set variables that can be used with `<isprint>`
857
- - **`<isif>`** - Conditionally print values
858
- - **`<isloop>`** - Print values in loops
859
- - **`<isscript>`** - Calculate expressions to be printed
860
-
861
- ## Related APIs
862
-
863
- - **`dw.util.StringUtils`** - String utility methods including encoding
864
- - **`dw.web.URLUtils`** - URL generation and encoding
865
- - **`dw.util.SecureEncoder`** - Context-specific encoding methods
866
- - **`dw.value.Money`** - Money value type
867
- - **`dw.util.Calendar`** - Date and time handling
868
-
869
- ## See Also
870
-
871
- - [ISML Expression Syntax](./expressions.md)
872
- - [StringUtils Class](../dw_util/StringUtils.md)
873
- - [SecureEncoder Class](../dw_util/SecureEncoder.md)
874
- - [Money Class](../dw_value/Money.md)
875
- - [Security Skill](../../ai-instructions/skills/sfcc-security/SKILL.md)