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,1032 +0,0 @@
1
- /**
2
- * Advanced programmatic tests for get_sfcc_class_info tool (docs-only mode)
3
- *
4
- * These tests go beyond what's possible with YAML testing to provide:
5
- * - Complex validation scenarios
6
- * - Concurrent request handling
7
- * - Advanced workflow simulation
8
- * - Stress testing
9
- *
10
- * @requires mcp-aegis
11
- */
12
-
13
- import { test, describe, before, after, beforeEach } from 'node:test';
14
- import { strict as assert } from 'node:assert';
15
- import { connect } from 'mcp-aegis';
16
-
17
- let client;
18
-
19
- describe('SFCC MCP Server - get_sfcc_class_info Tool (Documentation-Only Mode)', () => {
20
- // ==================================================================================
21
- // SETUP AND TEARDOWN
22
- // ==================================================================================
23
-
24
- before(async () => {
25
- client = await connect('./aegis.config.docs-only.json');
26
- });
27
-
28
- after(async () => {
29
- if (client?.connected) {
30
- await client.disconnect();
31
- }
32
- });
33
-
34
- beforeEach(() => {
35
- // CRITICAL: Clear all buffers to prevent leaking into next tests
36
- client.clearAllBuffers(); // Recommended - comprehensive protection
37
- });
38
-
39
- // ==================================================================================
40
- // TOOL DISCOVERY AND METADATA TESTS
41
- // ==================================================================================
42
-
43
- test('should successfully connect and discover get_sfcc_class_info tool', async () => {
44
- const tools = await client.listTools();
45
- const targetTool = tools.find(tool => tool.name === 'get_sfcc_class_info');
46
-
47
- assert(targetTool, 'get_sfcc_class_info tool should be available');
48
- assert.strictEqual(targetTool.name, 'get_sfcc_class_info');
49
- assert(targetTool.description, 'Tool should have description');
50
- });
51
-
52
- test('should have properly structured tool metadata', async () => {
53
- const tools = await client.listTools();
54
- const tool = tools.find(t => t.name === 'get_sfcc_class_info');
55
-
56
- assert(tool.inputSchema, 'Tool should have input schema');
57
- assert(tool.inputSchema.properties, 'Schema should have properties');
58
- assert(tool.inputSchema.properties.className, 'Should have className parameter');
59
- assert(tool.inputSchema.properties.expand, 'Should have expand parameter');
60
- });
61
-
62
- test('should validate className parameter schema', async () => {
63
- const tools = await client.listTools();
64
- const tool = tools.find(t => t.name === 'get_sfcc_class_info');
65
- const classNameParam = tool.inputSchema.properties.className;
66
-
67
- assert.strictEqual(classNameParam.type, 'string');
68
- assert(classNameParam.description);
69
- });
70
-
71
- test('should validate expand parameter schema', async () => {
72
- const tools = await client.listTools();
73
- const tool = tools.find(t => t.name === 'get_sfcc_class_info');
74
- const expandParam = tool.inputSchema.properties.expand;
75
-
76
- assert.strictEqual(expandParam.type, 'boolean');
77
- assert(expandParam.description);
78
- });
79
-
80
- // ==================================================================================
81
- // BASIC FUNCTIONALITY TESTS
82
- // ==================================================================================
83
-
84
- test('should execute with basic SFCC class successfully', async () => {
85
- const result = await client.callTool('get_sfcc_class_info', {
86
- className: 'dw.catalog.Product'
87
- });
88
-
89
- assertValidMCPResponse(result);
90
- const classInfo = JSON.parse(result.content[0].text);
91
-
92
- assert.strictEqual(classInfo.className, 'Product');
93
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
94
- assert(classInfo.description);
95
- assert(Array.isArray(classInfo.properties));
96
- assert(Array.isArray(classInfo.methods));
97
- });
98
-
99
- test('should work with short class names', async () => {
100
- const result = await client.callTool('get_sfcc_class_info', {
101
- className: 'Product'
102
- });
103
-
104
- assertValidMCPResponse(result);
105
- const classInfo = JSON.parse(result.content[0].text);
106
-
107
- assert.strictEqual(classInfo.className, 'Product');
108
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
109
- assert(classInfo.description);
110
- });
111
-
112
- test('should work with TopLevel classes', async () => {
113
- const result = await client.callTool('get_sfcc_class_info', {
114
- className: 'Customer'
115
- });
116
-
117
- assertValidMCPResponse(result);
118
- const classInfo = JSON.parse(result.content[0].text);
119
-
120
- assert.strictEqual(classInfo.className, 'Customer');
121
- assert(classInfo.packageName === 'dw.customer' || classInfo.packageName === 'TopLevel');
122
- assert(classInfo.description);
123
- });
124
-
125
- // ==================================================================================
126
- // EXPAND PARAMETER TESTS
127
- // ==================================================================================
128
-
129
- test('should handle expand parameter set to false', async () => {
130
- const result = await client.callTool('get_sfcc_class_info', {
131
- className: 'dw.catalog.Product',
132
- expand: false
133
- });
134
-
135
- assertValidMCPResponse(result);
136
- const classInfo = JSON.parse(result.content[0].text);
137
-
138
- assert.strictEqual(classInfo.className, 'Product');
139
- assert(classInfo.properties);
140
- assert(classInfo.methods);
141
- });
142
-
143
- test('should handle expand parameter set to true', async () => {
144
- const result = await client.callTool('get_sfcc_class_info', {
145
- className: 'dw.catalog.Product',
146
- expand: true
147
- });
148
-
149
- assertValidMCPResponse(result);
150
- const classInfo = JSON.parse(result.content[0].text);
151
-
152
- assert.strictEqual(classInfo.className, 'Product');
153
- assert(classInfo.properties);
154
- assert(classInfo.methods);
155
- // When expand is true, we might get additional referenced type information
156
- });
157
-
158
- // ==================================================================================
159
- // COMPLEX CLASS TESTS
160
- // ==================================================================================
161
-
162
- test('should handle complex classes with many methods', async () => {
163
- const result = await client.callTool('get_sfcc_class_info', {
164
- className: 'dw.catalog.Product'
165
- });
166
-
167
- assertValidMCPResponse(result);
168
- const classInfo = JSON.parse(result.content[0].text);
169
-
170
- assert(classInfo.methods.length > 10, 'Product should have many methods');
171
- assert(classInfo.properties.length > 5, 'Product should have many properties');
172
-
173
- // Validate method structure
174
- const sampleMethod = classInfo.methods[0];
175
- assert(sampleMethod.name, 'Method should have name');
176
- assert(sampleMethod.signature, 'Method should have signature');
177
- assert(sampleMethod.description, 'Method should have description');
178
- });
179
-
180
- test('should handle variation model classes', async () => {
181
- const testClasses = [
182
- 'dw.catalog.ProductVariationModel',
183
- 'dw.catalog.ProductVariationAttribute',
184
- 'dw.catalog.ProductVariationAttributeValue'
185
- ];
186
-
187
- for (const className of testClasses) {
188
- const result = await client.callTool('get_sfcc_class_info', { className });
189
- assertValidMCPResponse(result);
190
-
191
- const classInfo = JSON.parse(result.content[0].text);
192
- assert(classInfo.className, `${className} should have className`);
193
- assert(classInfo.description, `${className} should have description`);
194
- }
195
- });
196
-
197
- test('should handle inventory-related classes', async () => {
198
- const result = await client.callTool('get_sfcc_class_info', {
199
- className: 'dw.catalog.ProductInventoryList'
200
- });
201
-
202
- assertValidMCPResponse(result);
203
- const classInfo = JSON.parse(result.content[0].text);
204
-
205
- assert.strictEqual(classInfo.className, 'ProductInventoryList');
206
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
207
- });
208
-
209
- // ==================================================================================
210
- // ERROR HANDLING TESTS
211
- // ==================================================================================
212
-
213
- test('should handle invalid class names gracefully', async () => {
214
- const result = await client.callTool('get_sfcc_class_info', {
215
- className: 'NonExistentClass'
216
- });
217
-
218
- // Should either return an error or empty results
219
- assert(result.content || result.error, 'Should have some response');
220
- });
221
-
222
- test('should handle empty class name', async () => {
223
- const result = await client.callTool('get_sfcc_class_info', {
224
- className: ''
225
- });
226
-
227
- // Should handle empty input gracefully
228
- assert(result.content || result.error, 'Should handle empty className');
229
- });
230
-
231
- test('should handle missing className parameter', async () => {
232
- try {
233
- await client.callTool('get_sfcc_class_info', {});
234
- assert.fail('Should have thrown an error for missing className');
235
- } catch (error) {
236
- assert(error.message.includes('className') || error.message.includes('required'),
237
- 'Error should mention className requirement');
238
- }
239
- });
240
-
241
- test('should handle malformed class names', async () => {
242
- const malformedNames = [
243
- 'dw.catalog..Product',
244
- '.Product',
245
- 'dw.',
246
- 'dw catalog Product',
247
- 'dw/catalog/Product'
248
- ];
249
-
250
- for (const className of malformedNames) {
251
- const result = await client.callTool('get_sfcc_class_info', { className });
252
- // Should handle malformed names without crashing
253
- assert(result, `Should handle malformed name: ${className}`);
254
- }
255
- });
256
-
257
- test('should handle case sensitivity properly', async () => {
258
- const variations = [
259
- 'dw.catalog.product',
260
- 'DW.CATALOG.PRODUCT',
261
- 'dw.Catalog.Product'
262
- ];
263
-
264
- for (const className of variations) {
265
- const result = await client.callTool('get_sfcc_class_info', { className });
266
- // Should either work or fail gracefully
267
- assert(result, `Should handle case variation: ${className}`);
268
- }
269
- });
270
-
271
- // ==================================================================================
272
- // CONSISTENCY AND RELIABILITY TESTS
273
- // ==================================================================================
274
-
275
- test('should return consistent results for repeated calls', async () => {
276
- const className = 'dw.catalog.Catalog';
277
-
278
- const result1 = await client.callTool('get_sfcc_class_info', { className });
279
- const result2 = await client.callTool('get_sfcc_class_info', { className });
280
-
281
- assertValidMCPResponse(result1);
282
- assertValidMCPResponse(result2);
283
-
284
- const class1 = JSON.parse(result1.content[0].text);
285
- const class2 = JSON.parse(result2.content[0].text);
286
-
287
- assert.deepStrictEqual(class1, class2, 'Results should be identical');
288
- });
289
-
290
- test('should handle concurrent requests properly', async () => {
291
- const classNames = [
292
- 'dw.catalog.Product',
293
- 'dw.catalog.Category',
294
- 'dw.catalog.Catalog',
295
- 'dw.system.Site',
296
- 'dw.customer.Customer'
297
- ];
298
-
299
- const promises = classNames.map(className =>
300
- client.callTool('get_sfcc_class_info', { className })
301
- );
302
-
303
- const results = await Promise.all(promises);
304
-
305
- results.forEach((result, index) => {
306
- assertValidMCPResponse(result);
307
- const classInfo = JSON.parse(result.content[0].text);
308
- assert(classInfo.className, `Result ${index} should have className`);
309
- });
310
- });
311
-
312
- // ==================================================================================
313
- // ADVANCED VALIDATION TESTS
314
- // ==================================================================================
315
-
316
- test('should validate complete JSON structure for various classes', async () => {
317
- const testClasses = [
318
- 'dw.catalog.Product',
319
- 'dw.catalog.Category',
320
- 'dw.system.Site'
321
- ];
322
-
323
- for (const className of testClasses) {
324
- const result = await client.callTool('get_sfcc_class_info', { className });
325
- assertValidMCPResponse(result);
326
-
327
- const classInfo = JSON.parse(result.content[0].text);
328
-
329
- // Validate required fields
330
- assert(classInfo.className, `${className} should have className`);
331
- assert(classInfo.packageName, `${className} should have packageName`);
332
- assert(classInfo.description, `${className} should have description`);
333
- assert(Array.isArray(classInfo.properties), `${className} should have properties array`);
334
- assert(Array.isArray(classInfo.methods), `${className} should have methods array`);
335
- assert(Array.isArray(classInfo.constants), `${className} should have constants array`);
336
- }
337
- });
338
-
339
- test('should validate method signatures and descriptions', async () => {
340
- const result = await client.callTool('get_sfcc_class_info', {
341
- className: 'dw.catalog.Product'
342
- });
343
-
344
- assertValidMCPResponse(result);
345
- const classInfo = JSON.parse(result.content[0].text);
346
-
347
- // Validate method structure
348
- classInfo.methods.slice(0, 5).forEach((method, index) => {
349
- assert(method.name, `Method ${index} should have name`);
350
- assert(method.signature, `Method ${index} should have signature`);
351
- assert(method.description, `Method ${index} should have description`);
352
- assert(method.signature.includes(method.name),
353
- `Method ${index} signature should contain method name`);
354
- });
355
- });
356
-
357
- test('should validate property structure', async () => {
358
- const result = await client.callTool('get_sfcc_class_info', {
359
- className: 'dw.catalog.Product'
360
- });
361
-
362
- assertValidMCPResponse(result);
363
- const classInfo = JSON.parse(result.content[0].text);
364
-
365
- // Validate property structure
366
- classInfo.properties.slice(0, 5).forEach((property, index) => {
367
- assert(property.name, `Property ${index} should have name`);
368
- assert(property.type, `Property ${index} should have type`);
369
- assert(property.description, `Property ${index} should have description`);
370
- });
371
- });
372
-
373
- // ==================================================================================
374
- // INTEGRATION AND WORKFLOW TESTS
375
- // ==================================================================================
376
-
377
- test('should support class discovery workflow', async () => {
378
- // In docs-only mode, we test the main functionality directly
379
- const classResult = await client.callTool('get_sfcc_class_info', {
380
- className: 'dw.catalog.Catalog'
381
- });
382
-
383
- assertValidMCPResponse(classResult);
384
- const classInfo = JSON.parse(classResult.content[0].text);
385
-
386
- assert.strictEqual(classInfo.className, 'Catalog');
387
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
388
- assert(classInfo.description);
389
- });
390
-
391
- test('should support development workflow simulation', async () => {
392
- // Simulate a developer exploring the Product class
393
- const result = await client.callTool('get_sfcc_class_info', {
394
- className: 'dw.catalog.Product'
395
- });
396
-
397
- assertValidMCPResponse(result);
398
- const classInfo = JSON.parse(result.content[0].text);
399
-
400
- // Check for commonly used methods
401
- const methodNames = classInfo.methods.map(m => m.name);
402
- const importantMethods = ['getID', 'getName', 'isOnline', 'isAvailable'];
403
-
404
- importantMethods.forEach(methodName => {
405
- assert(methodNames.includes(methodName),
406
- `Product class should have ${methodName} method`);
407
- });
408
- });
409
-
410
- // ==================================================================================
411
- // STRESS AND EDGE CASE TESTS
412
- // ==================================================================================
413
-
414
- test('should handle rapid successive calls without issues', async () => {
415
- const calls = 10;
416
- const className = 'dw.catalog.Category';
417
-
418
- const promises = Array(calls).fill().map(() =>
419
- client.callTool('get_sfcc_class_info', { className })
420
- );
421
-
422
- const results = await Promise.all(promises);
423
-
424
- results.forEach(result => {
425
- assertValidMCPResponse(result);
426
- const classInfo = JSON.parse(result.content[0].text);
427
- assert.strictEqual(classInfo.className, 'Category');
428
- });
429
- });
430
-
431
- test('should maintain accuracy across different parameter combinations', async () => {
432
- const testCases = [
433
- { className: 'dw.catalog.Product', expand: false },
434
- { className: 'dw.catalog.Product', expand: true },
435
- { className: 'Product', expand: false },
436
- { className: 'Product', expand: true }
437
- ];
438
-
439
- const results = await Promise.all(
440
- testCases.map(params => client.callTool('get_sfcc_class_info', params))
441
- );
442
-
443
- results.forEach(result => {
444
- assertValidMCPResponse(result);
445
- const classInfo = JSON.parse(result.content[0].text);
446
- assert.strictEqual(classInfo.className, 'Product');
447
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
448
- });
449
- });
450
-
451
- // ==================================================================================
452
- // FILTERING PARAMETERS COMPREHENSIVE TESTS
453
- // ==================================================================================
454
-
455
- describe('Filtering Parameters', () => {
456
- test('should validate all filtering parameters exist in tool schema', async () => {
457
- const tools = await client.listTools();
458
- const tool = tools.find(t => t.name === 'get_sfcc_class_info');
459
- const props = tool.inputSchema.properties;
460
-
461
- // Validate all new filtering parameters are defined
462
- assert(props.includeDescription, 'Should have includeDescription parameter');
463
- assert(props.includeConstants, 'Should have includeConstants parameter');
464
- assert(props.includeProperties, 'Should have includeProperties parameter');
465
- assert(props.includeMethods, 'Should have includeMethods parameter');
466
- assert(props.includeInheritance, 'Should have includeInheritance parameter');
467
- assert(props.search, 'Should have search parameter');
468
-
469
- // Validate parameter types
470
- assert.strictEqual(props.includeDescription.type, 'boolean');
471
- assert.strictEqual(props.includeConstants.type, 'boolean');
472
- assert.strictEqual(props.includeProperties.type, 'boolean');
473
- assert.strictEqual(props.includeMethods.type, 'boolean');
474
- assert.strictEqual(props.includeInheritance.type, 'boolean');
475
- assert.strictEqual(props.search.type, 'string');
476
- });
477
-
478
- test('should include all sections by default', async () => {
479
- const result = await client.callTool('get_sfcc_class_info', {
480
- className: 'dw.catalog.Product'
481
- });
482
-
483
- assertValidMCPResponse(result);
484
- const classInfo = JSON.parse(result.content[0].text);
485
-
486
- // Verify all sections are present by default
487
- assert(classInfo.description, 'Should include description by default');
488
- assert(Array.isArray(classInfo.constants), 'Should include constants array');
489
- assert(Array.isArray(classInfo.properties), 'Should include properties array');
490
- assert(Array.isArray(classInfo.methods), 'Should include methods array');
491
- assert(classInfo.inheritance, 'Should include inheritance by default');
492
- });
493
-
494
- test('should exclude description when includeDescription is false', async () => {
495
- const result = await client.callTool('get_sfcc_class_info', {
496
- className: 'dw.catalog.Product',
497
- includeDescription: false
498
- });
499
-
500
- assertValidMCPResponse(result);
501
- const classInfo = JSON.parse(result.content[0].text);
502
-
503
- // Description should be excluded or empty
504
- assert(!classInfo.description || classInfo.description === '',
505
- 'Description should be excluded when includeDescription is false');
506
-
507
- // Other sections should still be present
508
- assert(Array.isArray(classInfo.properties), 'Properties should still be included');
509
- assert(Array.isArray(classInfo.methods), 'Methods should still be included');
510
- });
511
-
512
- test('should exclude constants when includeConstants is false', async () => {
513
- const result = await client.callTool('get_sfcc_class_info', {
514
- className: 'dw.catalog.Product',
515
- includeConstants: false
516
- });
517
-
518
- assertValidMCPResponse(result);
519
- const classInfo = JSON.parse(result.content[0].text);
520
-
521
- // Constants should be excluded or empty
522
- assert(!classInfo.constants || classInfo.constants.length === 0,
523
- 'Constants should be excluded when includeConstants is false');
524
-
525
- // Other sections should still be present
526
- assert(classInfo.description, 'Description should still be included');
527
- assert(Array.isArray(classInfo.properties), 'Properties should still be included');
528
- });
529
-
530
- test('should exclude properties when includeProperties is false', async () => {
531
- const result = await client.callTool('get_sfcc_class_info', {
532
- className: 'dw.catalog.Product',
533
- includeProperties: false
534
- });
535
-
536
- assertValidMCPResponse(result);
537
- const classInfo = JSON.parse(result.content[0].text);
538
-
539
- // Properties should be excluded or empty
540
- assert(!classInfo.properties || classInfo.properties.length === 0,
541
- 'Properties should be excluded when includeProperties is false');
542
-
543
- // Other sections should still be present
544
- assert(classInfo.description, 'Description should still be included');
545
- assert(Array.isArray(classInfo.methods), 'Methods should still be included');
546
- });
547
-
548
- test('should exclude methods when includeMethods is false', async () => {
549
- const result = await client.callTool('get_sfcc_class_info', {
550
- className: 'dw.catalog.Product',
551
- includeMethods: false
552
- });
553
-
554
- assertValidMCPResponse(result);
555
- const classInfo = JSON.parse(result.content[0].text);
556
-
557
- // Methods should be excluded or empty
558
- assert(!classInfo.methods || classInfo.methods.length === 0,
559
- 'Methods should be excluded when includeMethods is false');
560
-
561
- // Other sections should still be present
562
- assert(classInfo.description, 'Description should still be included');
563
- assert(Array.isArray(classInfo.properties), 'Properties should still be included');
564
- });
565
-
566
- test('should exclude inheritance when includeInheritance is false', async () => {
567
- const result = await client.callTool('get_sfcc_class_info', {
568
- className: 'dw.catalog.Product',
569
- includeInheritance: false
570
- });
571
-
572
- assertValidMCPResponse(result);
573
- const classInfo = JSON.parse(result.content[0].text);
574
-
575
- // Inheritance should be excluded or empty
576
- assert(!classInfo.inheritance ||
577
- (Array.isArray(classInfo.inheritance) && classInfo.inheritance.length === 0) ||
578
- classInfo.inheritance === '',
579
- 'Inheritance should be excluded when includeInheritance is false');
580
-
581
- // Other sections should still be present
582
- assert(classInfo.description, 'Description should still be included');
583
- assert(Array.isArray(classInfo.methods), 'Methods should still be included');
584
- });
585
-
586
- test('should create minimal response when all filters disabled', async () => {
587
- const result = await client.callTool('get_sfcc_class_info', {
588
- className: 'dw.catalog.Product',
589
- includeDescription: false,
590
- includeConstants: false,
591
- includeProperties: false,
592
- includeMethods: false,
593
- includeInheritance: false
594
- });
595
-
596
- assertValidMCPResponse(result);
597
- const classInfo = JSON.parse(result.content[0].text);
598
-
599
- // Only basic class info should remain
600
- assert.strictEqual(classInfo.className, 'Product');
601
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
602
-
603
- // All optional sections should be excluded or empty
604
- assert(!classInfo.description || classInfo.description === '');
605
- assert(!classInfo.constants || classInfo.constants.length === 0);
606
- assert(!classInfo.properties || classInfo.properties.length === 0);
607
- assert(!classInfo.methods || classInfo.methods.length === 0);
608
- assert(!classInfo.inheritance ||
609
- (Array.isArray(classInfo.inheritance) && classInfo.inheritance.length === 0) ||
610
- classInfo.inheritance === '');
611
- });
612
-
613
- test('should combine filtering parameters effectively', async () => {
614
- const result = await client.callTool('get_sfcc_class_info', {
615
- className: 'dw.catalog.Product',
616
- includeDescription: true,
617
- includeConstants: false,
618
- includeProperties: true,
619
- includeMethods: false,
620
- includeInheritance: true
621
- });
622
-
623
- assertValidMCPResponse(result);
624
- const classInfo = JSON.parse(result.content[0].text);
625
-
626
- // Should include: description, properties, inheritance
627
- assert(classInfo.description, 'Description should be included');
628
- assert(Array.isArray(classInfo.properties), 'Properties should be included');
629
- assert(classInfo.inheritance, 'Inheritance should be included');
630
-
631
- // Should exclude: constants, methods
632
- assert(!classInfo.constants || classInfo.constants.length === 0, 'Constants should be excluded');
633
- assert(!classInfo.methods || classInfo.methods.length === 0, 'Methods should be excluded');
634
- });
635
- });
636
-
637
- // ==================================================================================
638
- // SEARCH FUNCTIONALITY COMPREHENSIVE TESTS
639
- // ==================================================================================
640
-
641
- describe('Search Functionality', () => {
642
- test('should filter results with search parameter', async () => {
643
- const result = await client.callTool('get_sfcc_class_info', {
644
- className: 'dw.catalog.Product',
645
- search: 'name'
646
- });
647
-
648
- assertValidMCPResponse(result);
649
- const classInfo = JSON.parse(result.content[0].text);
650
-
651
- // Search should filter properties and methods
652
- if (classInfo.properties && classInfo.properties.length > 0) {
653
- classInfo.properties.forEach(prop => {
654
- assert(prop.name.toLowerCase().includes('name') ||
655
- (prop.description && prop.description.toLowerCase().includes('name')),
656
- `Property ${prop.name} should match search term 'name'`);
657
- });
658
- }
659
-
660
- if (classInfo.methods && classInfo.methods.length > 0) {
661
- classInfo.methods.forEach(method => {
662
- assert(method.name.toLowerCase().includes('name') ||
663
- (method.description && method.description.toLowerCase().includes('name')),
664
- `Method ${method.name} should match search term 'name'`);
665
- });
666
- }
667
- });
668
-
669
- test('should perform case-insensitive search', async () => {
670
- const result = await client.callTool('get_sfcc_class_info', {
671
- className: 'dw.catalog.Product',
672
- search: 'NAME'
673
- });
674
-
675
- assertValidMCPResponse(result);
676
- const classInfo = JSON.parse(result.content[0].text);
677
-
678
- // Search should be case-insensitive
679
- if (classInfo.properties && classInfo.properties.length > 0) {
680
- classInfo.properties.forEach(prop => {
681
- assert(prop.name.toLowerCase().includes('name') ||
682
- (prop.description && prop.description.toLowerCase().includes('name')),
683
- `Property ${prop.name} should match case-insensitive search 'NAME'`);
684
- });
685
- }
686
- });
687
-
688
- test('should combine search with filtering parameters', async () => {
689
- const result = await client.callTool('get_sfcc_class_info', {
690
- className: 'dw.catalog.Product',
691
- includeMethods: true,
692
- includeProperties: false,
693
- includeConstants: false,
694
- search: 'get'
695
- });
696
-
697
- assertValidMCPResponse(result);
698
- const classInfo = JSON.parse(result.content[0].text);
699
-
700
- // Should only have methods (no properties/constants)
701
- assert(!classInfo.properties || classInfo.properties.length === 0, 'Properties should be excluded');
702
- assert(!classInfo.constants || classInfo.constants.length === 0, 'Constants should be excluded');
703
-
704
- // Methods should be filtered by search term
705
- if (classInfo.methods && classInfo.methods.length > 0) {
706
- classInfo.methods.forEach(method => {
707
- assert(method.name.toLowerCase().includes('get') ||
708
- (method.description && method.description.toLowerCase().includes('get')),
709
- `Method ${method.name} should match search term 'get'`);
710
- });
711
- }
712
- });
713
-
714
- test('should handle search with no matches gracefully', async () => {
715
- const result = await client.callTool('get_sfcc_class_info', {
716
- className: 'dw.catalog.Product',
717
- search: 'zzznomatchesexpected'
718
- });
719
-
720
- assertValidMCPResponse(result);
721
- const classInfo = JSON.parse(result.content[0].text);
722
-
723
- // Should still have basic class info
724
- assert.strictEqual(classInfo.className, 'Product');
725
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
726
-
727
- // Arrays should be empty (no matches)
728
- if (classInfo.properties) {
729
- assert.strictEqual(classInfo.properties.length, 0, 'Properties should be empty with no matches');
730
- }
731
- if (classInfo.methods) {
732
- assert.strictEqual(classInfo.methods.length, 0, 'Methods should be empty with no matches');
733
- }
734
- if (classInfo.constants) {
735
- assert.strictEqual(classInfo.constants.length, 0, 'Constants should be empty with no matches');
736
- }
737
- });
738
-
739
- test('should search across multiple field types', async () => {
740
- const result = await client.callTool('get_sfcc_class_info', {
741
- className: 'dw.catalog.Product',
742
- search: 'get' // Changed from 'id' to 'get' which is more common
743
- });
744
-
745
- assertValidMCPResponse(result);
746
- const classInfo = JSON.parse(result.content[0].text);
747
-
748
- // Should find matches in different sections
749
- let foundMatches = false;
750
-
751
- if (classInfo.properties && classInfo.properties.length > 0) {
752
- foundMatches = true;
753
- classInfo.properties.forEach(prop => {
754
- assert(prop.name.toLowerCase().includes('get') ||
755
- (prop.description && prop.description.toLowerCase().includes('get')),
756
- `Property ${prop.name} should match search term 'get'`);
757
- });
758
- }
759
-
760
- if (classInfo.methods && classInfo.methods.length > 0) {
761
- foundMatches = true;
762
- classInfo.methods.forEach(method => {
763
- assert(method.name.toLowerCase().includes('get') ||
764
- (method.description && method.description.toLowerCase().includes('get')),
765
- `Method ${method.name} should match search term 'get'`);
766
- });
767
- }
768
-
769
- // Should find at least some matches with 'get' in Product class
770
- assert(foundMatches, 'Should find matches for common term "get" in Product class');
771
- });
772
-
773
- test('should handle empty search string', async () => {
774
- const result = await client.callTool('get_sfcc_class_info', {
775
- className: 'dw.catalog.Product',
776
- search: ''
777
- });
778
-
779
- assertValidMCPResponse(result);
780
- const classInfo = JSON.parse(result.content[0].text);
781
-
782
- // Empty search should return all results (no filtering)
783
- assert.strictEqual(classInfo.className, 'Product');
784
- assert(classInfo.description, 'Should include description with empty search');
785
- assert(Array.isArray(classInfo.properties), 'Should include all properties with empty search');
786
- assert(Array.isArray(classInfo.methods), 'Should include all methods with empty search');
787
- });
788
- });
789
-
790
- // ==================================================================================
791
- // RESPONSE STRUCTURE VALIDATION WITH dw.catalog.Product
792
- // ==================================================================================
793
-
794
- describe('Product Class Response Structure Validation', () => {
795
- test('should return comprehensive Product class information', async () => {
796
- const result = await client.callTool('get_sfcc_class_info', {
797
- className: 'dw.catalog.Product'
798
- });
799
-
800
- assertValidMCPResponse(result);
801
- const classInfo = JSON.parse(result.content[0].text);
802
-
803
- // Validate basic structure
804
- assert.strictEqual(classInfo.className, 'Product');
805
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
806
- assert(typeof classInfo.description === 'string', 'Description should be string');
807
-
808
- // Validate arrays are present and non-empty for a rich class like Product
809
- assert(Array.isArray(classInfo.properties), 'Properties should be array');
810
- assert(classInfo.properties.length > 0, 'Product should have properties');
811
-
812
- assert(Array.isArray(classInfo.methods), 'Methods should be array');
813
- assert(classInfo.methods.length > 0, 'Product should have methods');
814
-
815
- // Validate property structure
816
- classInfo.properties.forEach(prop => {
817
- assert(typeof prop.name === 'string', 'Property name should be string');
818
- assert(typeof prop.type === 'string', 'Property type should be string');
819
- // Description is optional but should be string if present
820
- if (prop.description) {
821
- assert(typeof prop.description === 'string', 'Property description should be string');
822
- }
823
- });
824
-
825
- // Validate method structure
826
- classInfo.methods.forEach(method => {
827
- assert(typeof method.name === 'string', 'Method name should be string');
828
- assert(typeof method.signature === 'string', 'Method signature should be string');
829
- // Return type and description are optional
830
- if (method.returnType) {
831
- assert(typeof method.returnType === 'string', 'Method returnType should be string');
832
- }
833
- if (method.description) {
834
- assert(typeof method.description === 'string', 'Method description should be string');
835
- }
836
- });
837
- });
838
-
839
- test('should validate filtered Product class responses maintain structure', async () => {
840
- const scenarios = [
841
- { includeProperties: true, includeMethods: false },
842
- { includeProperties: false, includeMethods: true },
843
- { includeDescription: false, includeProperties: true },
844
- { includeConstants: false, includeInheritance: false }
845
- ];
846
-
847
- for (const scenario of scenarios) {
848
- const result = await client.callTool('get_sfcc_class_info', {
849
- className: 'dw.catalog.Product',
850
- ...scenario
851
- });
852
-
853
- assertValidMCPResponse(result);
854
- const classInfo = JSON.parse(result.content[0].text);
855
-
856
- // Basic info should always be present
857
- assert.strictEqual(classInfo.className, 'Product');
858
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
859
-
860
- // Validate conditional sections
861
- if (scenario.includeProperties === false) {
862
- assert(!classInfo.properties || classInfo.properties.length === 0,
863
- 'Properties should be excluded when includeProperties is false');
864
- } else if (scenario.includeProperties !== false) {
865
- assert(Array.isArray(classInfo.properties), 'Properties should be array when included');
866
- }
867
-
868
- if (scenario.includeMethods === false) {
869
- assert(!classInfo.methods || classInfo.methods.length === 0,
870
- 'Methods should be excluded when includeMethods is false');
871
- } else if (scenario.includeMethods !== false) {
872
- assert(Array.isArray(classInfo.methods), 'Methods should be array when included');
873
- }
874
-
875
- if (scenario.includeDescription === false) {
876
- assert(!classInfo.description || classInfo.description === '',
877
- 'Description should be excluded when includeDescription is false');
878
- }
879
- }
880
- });
881
-
882
- test('should validate Product class search results maintain proper structure', async () => {
883
- const searchTerms = ['get', 'set', 'name']; // Changed from including 'id' and 'price' to more reliable terms
884
-
885
- for (const searchTerm of searchTerms) {
886
- const result = await client.callTool('get_sfcc_class_info', {
887
- className: 'dw.catalog.Product',
888
- search: searchTerm
889
- });
890
-
891
- assertValidMCPResponse(result);
892
- const classInfo = JSON.parse(result.content[0].text);
893
-
894
- // Basic structure should be maintained
895
- assert.strictEqual(classInfo.className, 'Product');
896
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
897
-
898
- // Filtered arrays should still have proper structure
899
- if (classInfo.properties && classInfo.properties.length > 0) {
900
- classInfo.properties.forEach(prop => {
901
- assert(typeof prop.name === 'string', 'Filtered property name should be string');
902
- assert(typeof prop.type === 'string', 'Filtered property type should be string');
903
-
904
- // Verify search filtering worked
905
- const matchesSearch = prop.name.toLowerCase().includes(searchTerm.toLowerCase()) ||
906
- (prop.description && prop.description.toLowerCase().includes(searchTerm.toLowerCase()));
907
- assert(matchesSearch, `Property ${prop.name} should match search term ${searchTerm}`);
908
- });
909
- }
910
-
911
- if (classInfo.methods && classInfo.methods.length > 0) {
912
- classInfo.methods.forEach(method => {
913
- assert(typeof method.name === 'string', 'Filtered method name should be string');
914
- assert(typeof method.signature === 'string', 'Filtered method signature should be string');
915
-
916
- // Verify search filtering worked
917
- const matchesSearch = method.name.toLowerCase().includes(searchTerm.toLowerCase()) ||
918
- (method.description && method.description.toLowerCase().includes(searchTerm.toLowerCase()));
919
- assert(matchesSearch, `Method ${method.name} should match search term ${searchTerm}`);
920
- });
921
- }
922
- }
923
- });
924
-
925
- test('should validate Product class with expand parameter maintains structure', async () => {
926
- const result = await client.callTool('get_sfcc_class_info', {
927
- className: 'dw.catalog.Product',
928
- expand: true
929
- });
930
-
931
- assertValidMCPResponse(result);
932
- const classInfo = JSON.parse(result.content[0].text);
933
-
934
- // Basic structure should be maintained
935
- assert.strictEqual(classInfo.className, 'Product');
936
- assert.strictEqual(classInfo.packageName, 'dw.catalog');
937
- assert(Array.isArray(classInfo.properties), 'Properties should be array');
938
- assert(Array.isArray(classInfo.methods), 'Methods should be array');
939
-
940
- // With expand=true, there might be additional type information
941
- // Validate that expanded information maintains proper structure
942
- classInfo.properties.forEach(prop => {
943
- assert(typeof prop.name === 'string', 'Expanded property name should be string');
944
- assert(typeof prop.type === 'string', 'Expanded property type should be string');
945
- });
946
-
947
- classInfo.methods.forEach(method => {
948
- assert(typeof method.name === 'string', 'Expanded method name should be string');
949
- assert(typeof method.signature === 'string', 'Expanded method signature should be string');
950
- });
951
- });
952
- });
953
-
954
- // ==================================================================================
955
- // PARAMETER COMBINATIONS AND EDGE CASES
956
- // ==================================================================================
957
-
958
- describe('Parameter Combinations and Edge Cases', () => {
959
- test('should handle all parameters together', async () => {
960
- const result = await client.callTool('get_sfcc_class_info', {
961
- className: 'dw.catalog.Product',
962
- expand: true,
963
- includeDescription: true,
964
- includeConstants: false,
965
- includeProperties: true,
966
- includeMethods: true,
967
- includeInheritance: false,
968
- search: 'get'
969
- });
970
-
971
- assertValidMCPResponse(result);
972
- const classInfo = JSON.parse(result.content[0].text);
973
-
974
- // Validate combination of parameters
975
- assert.strictEqual(classInfo.className, 'Product');
976
- assert(classInfo.description, 'Description should be included');
977
- assert(!classInfo.constants || classInfo.constants.length === 0, 'Constants should be excluded');
978
- assert(!classInfo.inheritance ||
979
- (Array.isArray(classInfo.inheritance) && classInfo.inheritance.length === 0) ||
980
- classInfo.inheritance === '', 'Inheritance should be excluded');
981
-
982
- // Properties and methods should be filtered by search
983
- if (classInfo.properties && classInfo.properties.length > 0) {
984
- classInfo.properties.forEach(prop => {
985
- assert(prop.name.toLowerCase().includes('get') ||
986
- (prop.description && prop.description.toLowerCase().includes('get')),
987
- `Property ${prop.name} should match search term 'get'`);
988
- });
989
- }
990
-
991
- if (classInfo.methods && classInfo.methods.length > 0) {
992
- classInfo.methods.forEach(method => {
993
- assert(method.name.toLowerCase().includes('get') ||
994
- (method.description && method.description.toLowerCase().includes('get')),
995
- `Method ${method.name} should match search term 'get'`);
996
- });
997
- }
998
- });
999
-
1000
- test('should handle contradictory filters gracefully', async () => {
1001
- const result = await client.callTool('get_sfcc_class_info', {
1002
- className: 'dw.catalog.Product',
1003
- includeMethods: false,
1004
- search: 'getName' // Searching for method while excluding methods
1005
- });
1006
-
1007
- assertValidMCPResponse(result);
1008
- const classInfo = JSON.parse(result.content[0].text);
1009
-
1010
- // Should respect the filter over the search
1011
- assert(!classInfo.methods || classInfo.methods.length === 0,
1012
- 'Methods should be excluded even when searching for method names');
1013
- });
1014
- });
1015
-
1016
- });
1017
-
1018
- // ==================================================================================
1019
- // HELPER FUNCTIONS
1020
- // ==================================================================================
1021
-
1022
- /**
1023
- * Validates that a response follows the MCP protocol structure
1024
- */
1025
- function assertValidMCPResponse(result) {
1026
- assert.ok(result, 'Result should exist');
1027
- assert.ok(result.content, 'Result should have content');
1028
- assert.ok(Array.isArray(result.content), 'Content should be an array');
1029
- assert.ok(result.content.length > 0, 'Content should not be empty');
1030
- assert.equal(result.content[0].type, 'text', 'Content type should be text');
1031
- assert.ok(typeof result.content[0].text === 'string', 'Content text should be string');
1032
- }