@contrail/flexplm 1.7.2-alpha.f5ce754 → 1.7.3-alpha.2a95cdd

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.
@@ -776,6 +776,47 @@ interface MappingFileBase {
776
776
  * },
777
777
  * },
778
778
  * };
779
+ *
780
+ * @example
781
+ * // Multi-Entry and Composite FlexPLM properties.
782
+ * //
783
+ * // FlexPLM sends both shapes as a single string whose values are joined by
784
+ * // the separator '|~*~|' (a trailing separator follows the last value):
785
+ * // Cuttable Width (multi-entry): '1MM Horizontal|~*~|2MM Vertical|~*~|'
786
+ * // Content (composite): '50.0% MetalProcessing|~*~|50.0% Cable|~*~|'
787
+ * //
788
+ * // VibeIQ stores these raw '|~*~|'-joined strings as-is, so no split/join is
789
+ * // needed — a plain REKEY carries the value through unchanged in both
790
+ * // directions. If you later need to store an array or a cleaned display
791
+ * // value instead, add a VALUE_TRANSFORM task to `transformOrder` and a
792
+ * // matching `valueTransform` entry (see {@link DirectionalSection.valueTransform})
793
+ * // that splits on / joins with '|~*~|'.
794
+ * export const mapping: MappingFile = {
795
+ * orgInfo: { appIdentifier: '@vibeiq/flexplm-connector', orgName: 'acme' },
796
+ * typeConversion: { vibe2flex: {}, flex2vibe: {} },
797
+ * LCSProduct: {
798
+ * vibe2flex: {
799
+ * transformOrder: [
800
+ * { processor: 'REKEY', rekeyDelete: true, rekeyKeepEmptyValues: true, rekeyTransformersKey: 'rekey' },
801
+ * ],
802
+ * // flexField: 'vibeSlug' — raw '|~*~|' strings pass straight through.
803
+ * rekey: {
804
+ * cuttableWidth: 'cuttableWidth', // multi-entry
805
+ * materialContent: 'materialContent', // composite (Flex 'Content')
806
+ * },
807
+ * },
808
+ * flex2vibe: {
809
+ * transformOrder: [
810
+ * { processor: 'REKEY', rekeyDelete: true, rekeyKeepEmptyValues: true, rekeyTransformersKey: 'rekey' },
811
+ * ],
812
+ * // vibeSlug: 'flexField'
813
+ * rekey: {
814
+ * cuttableWidth: 'cuttableWidth',
815
+ * materialContent: 'materialContent',
816
+ * },
817
+ * },
818
+ * },
819
+ * };
779
820
  */
780
821
  export type MappingFile = MappingFileBase & {
781
822
  [mapKey: string]: MappingSection | MappingFileBase[keyof MappingFileBase];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contrail/flexplm",
3
- "version": "1.7.2-alpha.f5ce754",
3
+ "version": "1.7.3-alpha.2a95cdd",
4
4
  "description": "Library used for integration with flexplm.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",