@merchi/product-form 1.19.33 → 1.19.35

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.
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/styles/globals.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAGC;AAEC;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAbL;AAiBC;;AACA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EAZF;IAaI;;EAEA;IACE;;;AAKN;AAAA;EAGE;EACA;EACA;EACA;;AApDH;AAuDC;;AACA;EACE;;AAEA;EAHF;IAII;;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;AAzEL;AA6EC;;AAKI;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAvGL;AA2GC;;AAEE;EACE;EACA;;AA/GL;AAmHC;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAtIL;AA0IC;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAtMP;AA2MC;;AAEE;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EAJF;IAKI;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAnQP;AAwQC;;AAEE;EACE;EACA;EACA;;AAEA;EALF;IAMI;;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;AArUP;AA0UC;;AAEE;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAMF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAIF;EACE;;AAIF;EACE;;AAKJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAtcL;AA0cC;;AAEE;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAIF;EACE;EACA;EACA;;AAIF;EACE;EACA;EACA;;AAIF;EACE;EACA;EACA;;AA1eL;AA+eC;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAvgBH;AA0gBC;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EANF;IAOI;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAEA;EAHF;IAII;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAIJ;EACE;;AAplBH;AAulBC;;AAIE;EACE;EACA;EACA;;;AAKN;AAAA;AAAA;AAIA;AACA;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AAKN;AAEA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAKF;EAEE;;AAGF;EAEE;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;IACA;IACA;IACA;;EAGF;AAAA;IAEE;IACA;IACA;IACA;;EAGF;IACE;;EAGF;IACE;IACA;;EAGF;IACE;IACA;IACA;;;AAIJ;EACE;IACE","file":"globals.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/styles/globals.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAGC;AAEC;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAbL;AAiBC;;AACA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EAZF;IAaI;;EAEA;IACE;;;AAKN;AAAA;EAGE;EACA;EACA;EACA;;AApDH;AAuDC;;AACA;EACE;;AAEA;EAHF;IAII;;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;AAzEL;AA6EC;;AAKI;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAvGL;AA2GC;;AAEE;EACE;EACA;;AA/GL;AAmHC;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAtIL;AA0IC;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAtMP;AA2MC;;AAEE;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EAJF;IAKI;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAnQP;AAwQC;;AAEE;EACE;EACA;EACA;;AAEA;EALF;IAMI;;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;AArUP;AA0UC;;AAEE;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAMF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAIF;EACE;;AAIF;EACE;;AAKJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAtcL;AA0cC;;AAEE;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAIF;EACE;EACA;EACA;;AAIF;EACE;EACA;EACA;;AAIF;EACE;EACA;EACA;;AA1eL;AA+eC;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAvgBH;AA0gBC;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EANF;IAOI;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAEA;EAHF;IAII;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAIJ;EACE;;AAplBH;AAulBC;;AAIE;EACE;EACA;EACA;;;AAKN;AAAA;AAAA;AAIA;AACA;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AAKN;AAEA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAKF;EAEE;;AAGF;EAEE;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;IACA;IACA;IACA;;EAGF;AAAA;IAEE;IACA;IACA;IACA;;EAGF;IACE;;EAGF;IACE;IACA;;EAGF;IACE;IACA;IACA;;;AAIJ;EACE;IACE;;;AAIJ;EACE;;;AAGF;EACE;IACE","file":"globals.css"}
@@ -520,7 +520,7 @@
520
520
  background: #f2f4fb;
521
521
  border-top: 1px solid white;
522
522
  border-left: 1px solid white;
523
- margin: 0.25rem 0rem 0.5rem;
523
+ margin: 0;
524
524
  }
525
525
 
526
526
  /* product groups */
@@ -1852,3 +1852,13 @@
1852
1852
  flex: 1 1 calc(50% - 0.4rem);
1853
1853
  }
1854
1854
  }
1855
+
1856
+ .animate_spin {
1857
+ animation: merchi-product-form-spin 0.8s linear infinite;
1858
+ }
1859
+
1860
+ @keyframes merchi-product-form-spin {
1861
+ to {
1862
+ transform: rotate(360deg);
1863
+ }
1864
+ }
@@ -30,5 +30,6 @@ export interface CheckoutDesignInput {
30
30
  textStyle?: DesignerTextStyle;
31
31
  groupIndex?: number;
32
32
  }
33
+ export declare function productAllowsAdditionalDesignObjects(product: any): boolean;
33
34
  export declare function collectDesignerInputs(product: any, drafts: DraftTemplateData[]): DesignerInput[];
34
35
  export declare function packDesignInputNotes(inputs: CheckoutDesignInput[]): string | undefined;
@@ -46,7 +46,11 @@ function clipName(value, fallback) {
46
46
  var name = trimmed || fallback;
47
47
  return name.length > NAME_LIMIT ? name.slice(0, NAME_LIMIT).trim() : name;
48
48
  }
49
+ export function productAllowsAdditionalDesignObjects(product) {
50
+ return (product === null || product === void 0 ? void 0 : product.allowAdditionalDesignObjects) !== false;
51
+ }
49
52
  export function collectDesignerInputs(product, drafts) {
53
+ if (!productAllowsAdditionalDesignObjects(product)) return [];
50
54
  var grouped = productHasVariationGroups(product);
51
55
  var inputs = [];
52
56
  var _iterator2 = _createForOfIteratorHelper(drafts || []),
@@ -138,4 +142,4 @@ export function packDesignInputNotes(inputs) {
138
142
  });
139
143
  return "".concat(DESIGN_PREFIX).concat(btoa(binary)).concat(DESIGN_SUFFIX);
140
144
  }
141
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwcm9kdWN0SGFzVmFyaWF0aW9uR3JvdXBzIiwiTkFNRV9MSU1JVCIsIkRFU0lHTl9QUkVGSVgiLCJERVNJR05fU1VGRklYIiwiVEVYVF9CT1hfTlVNQkVSUyIsImZpbml0ZU51bWJlciIsInZhbHVlIiwibnVtYmVyIiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJ1bmRlZmluZWQiLCJ0ZXh0U3R5bGVGcm9tT2JqZWN0Iiwib2JqIiwic3R5bGUiLCJjb2xvdXIiLCJTdHJpbmciLCJmaWxsIiwidHJpbSIsInRleHRTaXplIiwiZm9udFNpemUiLCJmb250IiwiZm9udEZhbWlseSIsImFsaWduIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsImtleSIsImVyciIsImUiLCJmIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImNsaXBOYW1lIiwiZmFsbGJhY2siLCJ0cmltbWVkIiwicmVwbGFjZSIsIm5hbWUiLCJzbGljZSIsImNvbGxlY3REZXNpZ25lcklucHV0cyIsInByb2R1Y3QiLCJkcmFmdHMiLCJncm91cGVkIiwiaW5wdXRzIiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsImRyYWZ0IiwiZ3JvdXBJbmRleCIsIl9pdGVyYXRvcjMiLCJ0ZW1wbGF0ZURhdGEiLCJfc3RlcDMiLCJfdGVtcGxhdGUkY2FudmFzSnNvbiIsInRlbXBsYXRlIiwiX2l0ZXJhdG9yNCIsImNhbnZhc0pzb24iLCJvYmplY3RzIiwiX3N0ZXA0IiwibWVyY2hpRmllbGRJZCIsInR5cGUiLCJ0ZXh0IiwidGV4dFN0eWxlIiwicHVzaCIsIl9vYmplY3RTcHJlYWQiLCJraW5kIiwic3JjIiwicGFja0Rlc2lnbklucHV0Tm90ZXMiLCJwYXlsb2FkIiwiZmlsdGVyIiwiaXRlbSIsIl9pdGVtJGZpbGUiLCJmaWxlIiwiaWQiLCJtYXAiLCJfaXRlbSRmaWxlMiIsImJ5dGVzIiwiVGV4dEVuY29kZXIiLCJlbmNvZGUiLCJKU09OIiwic3RyaW5naWZ5IiwiYmluYXJ5IiwiZm9yRWFjaCIsImJ5dGUiLCJmcm9tQ2hhckNvZGUiLCJjb25jYXQiLCJidG9hIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2Rlc2lnbmVySW5wdXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHByb2R1Y3RIYXNWYXJpYXRpb25Hcm91cHMgfSBmcm9tICcuL2RyYWZ0VGVtcGxhdGVzJztcbmltcG9ydCB7IERyYWZ0VGVtcGxhdGVEYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IE5BTUVfTElNSVQgPSA4MDtcbmNvbnN0IERFU0lHTl9QUkVGSVggPSAnW1tjbGllbnQtZGVzaWduLWlucHV0czonO1xuY29uc3QgREVTSUdOX1NVRkZJWCA9ICddXSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVzaWduZXJUZXh0U3R5bGUge1xuICBjb2xvdXI/OiBzdHJpbmc7XG4gIHRleHRTaXplPzogbnVtYmVyO1xuICBmb250Pzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbiAgeD86IG51bWJlcjtcbiAgeT86IG51bWJlcjtcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgcm90YXRpb24/OiBudW1iZXI7XG4gIHNjYWxlWD86IG51bWJlcjtcbiAgc2NhbGVZPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERlc2lnbmVySW5wdXQge1xuICBraW5kOiAndGV4dCcgfCAnZmlsZSc7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU/OiBzdHJpbmc7XG4gIHNyYz86IHN0cmluZztcbiAgdGV4dFN0eWxlPzogRGVzaWduZXJUZXh0U3R5bGU7XG4gIGdyb3VwSW5kZXg/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2tvdXREZXNpZ25JbnB1dCB7XG4gIGtpbmQ6ICd0ZXh0JyB8ICdmaWxlJztcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZT86IHN0cmluZztcbiAgZmlsZT86IHsgaWQ6IG51bWJlciB8IHN0cmluZyB9O1xuICB0ZXh0U3R5bGU/OiBEZXNpZ25lclRleHRTdHlsZTtcbiAgZ3JvdXBJbmRleD86IG51bWJlcjtcbn1cblxuY29uc3QgVEVYVF9CT1hfTlVNQkVSUyA9IFtcbiAgJ3gnLFxuICAneScsXG4gICd3aWR0aCcsXG4gICdoZWlnaHQnLFxuICAncm90YXRpb24nLFxuICAnc2NhbGVYJyxcbiAgJ3NjYWxlWScsXG5dIGFzIGNvbnN0O1xuXG5mdW5jdGlvbiBmaW5pdGVOdW1iZXIodmFsdWU6IHVua25vd24pOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICBjb25zdCBudW1iZXIgPSBOdW1iZXIodmFsdWUpO1xuICByZXR1cm4gTnVtYmVyLmlzRmluaXRlKG51bWJlcikgPyBudW1iZXIgOiB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIHRleHRTdHlsZUZyb21PYmplY3Qob2JqOiB7XG4gIGZpbGw/OiBzdHJpbmc7XG4gIGZvbnRTaXplPzogbnVtYmVyO1xuICBmb250RmFtaWx5Pzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbiAgeD86IG51bWJlcjtcbiAgeT86IG51bWJlcjtcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgcm90YXRpb24/OiBudW1iZXI7XG4gIHNjYWxlWD86IG51bWJlcjtcbiAgc2NhbGVZPzogbnVtYmVyO1xufSk6IERlc2lnbmVyVGV4dFN0eWxlIHwgdW5kZWZpbmVkIHtcbiAgY29uc3Qgc3R5bGU6IERlc2lnbmVyVGV4dFN0eWxlID0ge307XG4gIGNvbnN0IGNvbG91ciA9IFN0cmluZyhvYmouZmlsbCB8fCAnJykudHJpbSgpO1xuICBpZiAoY29sb3VyKSBzdHlsZS5jb2xvdXIgPSBjb2xvdXI7XG4gIGNvbnN0IHRleHRTaXplID0gZmluaXRlTnVtYmVyKG9iai5mb250U2l6ZSk7XG4gIGlmICh0ZXh0U2l6ZSAhPSBudWxsKSBzdHlsZS50ZXh0U2l6ZSA9IHRleHRTaXplO1xuICBjb25zdCBmb250ID0gU3RyaW5nKG9iai5mb250RmFtaWx5IHx8ICcnKS50cmltKCk7XG4gIGlmIChmb250KSBzdHlsZS5mb250ID0gZm9udDtcbiAgY29uc3QgYWxpZ24gPSBTdHJpbmcob2JqLmFsaWduIHx8ICcnKS50cmltKCk7XG4gIGlmIChhbGlnbikgc3R5bGUuYWxpZ24gPSBhbGlnbjtcbiAgZm9yIChjb25zdCBrZXkgb2YgVEVYVF9CT1hfTlVNQkVSUykge1xuICAgIGNvbnN0IG51bWJlciA9IGZpbml0ZU51bWJlcihvYmpba2V5XSk7XG4gICAgaWYgKG51bWJlciAhPSBudWxsKSBzdHlsZVtrZXldID0gbnVtYmVyO1xuICB9XG4gIHJldHVybiBPYmplY3Qua2V5cyhzdHlsZSkubGVuZ3RoID8gc3R5bGUgOiB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIGNsaXBOYW1lKHZhbHVlOiBzdHJpbmcsIGZhbGxiYWNrOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCB0cmltbWVkID0gdmFsdWUucmVwbGFjZSgvXFxzKy9nLCAnICcpLnRyaW0oKTtcbiAgY29uc3QgbmFtZSA9IHRyaW1tZWQgfHwgZmFsbGJhY2s7XG4gIHJldHVybiBuYW1lLmxlbmd0aCA+IE5BTUVfTElNSVQgPyBuYW1lLnNsaWNlKDAsIE5BTUVfTElNSVQpLnRyaW0oKSA6IG5hbWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0RGVzaWduZXJJbnB1dHMoXG4gIHByb2R1Y3Q6IGFueSxcbiAgZHJhZnRzOiBEcmFmdFRlbXBsYXRlRGF0YVtdLFxuKTogRGVzaWduZXJJbnB1dFtdIHtcbiAgY29uc3QgZ3JvdXBlZCA9IHByb2R1Y3RIYXNWYXJpYXRpb25Hcm91cHMocHJvZHVjdCk7XG4gIGNvbnN0IGlucHV0czogRGVzaWduZXJJbnB1dFtdID0gW107XG4gIGZvciAoY29uc3QgZHJhZnQgb2YgZHJhZnRzIHx8IFtdKSB7XG4gICAgY29uc3QgZ3JvdXBJbmRleCA9IGdyb3VwZWQgPyBkcmFmdC5ncm91cEluZGV4IDogdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgdGVtcGxhdGUgb2YgZHJhZnQudGVtcGxhdGVEYXRhIHx8IFtdKSB7XG4gICAgICBmb3IgKGNvbnN0IG9iaiBvZiB0ZW1wbGF0ZS5jYW52YXNKc29uPy5vYmplY3RzIHx8IFtdKSB7XG4gICAgICAgIGlmIChvYmo/Lm1lcmNoaUZpZWxkSWQgIT0gbnVsbCkgY29udGludWU7XG4gICAgICAgIGlmIChvYmo/LnR5cGUgPT09ICd0ZXh0Jykge1xuICAgICAgICAgIGNvbnN0IHZhbHVlID0gU3RyaW5nKG9iai50ZXh0IHx8ICcnKS50cmltKCk7XG4gICAgICAgICAgaWYgKCF2YWx1ZSkgY29udGludWU7XG4gICAgICAgICAgY29uc3QgdGV4dFN0eWxlID0gdGV4dFN0eWxlRnJvbU9iamVjdChvYmopO1xuICAgICAgICAgIGlucHV0cy5wdXNoKHtcbiAgICAgICAgICAgIGtpbmQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIG5hbWU6IGNsaXBOYW1lKHZhbHVlLCAnQ3VzdG9tIHRleHQnKSxcbiAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgLi4uKHRleHRTdHlsZSA/IHsgdGV4dFN0eWxlIH0gOiB7fSksXG4gICAgICAgICAgICAuLi4oZ3JvdXBJbmRleCAhPSBudWxsID8geyBncm91cEluZGV4IH0gOiB7fSksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAob2JqPy50eXBlID09PSAnaW1hZ2UnICYmIG9iai5zcmMpIHtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7XG4gICAgICAgICAgICBraW5kOiAnZmlsZScsXG4gICAgICAgICAgICBuYW1lOiAnQ3VzdG9tIGltYWdlJyxcbiAgICAgICAgICAgIHNyYzogU3RyaW5nKG9iai5zcmMpLFxuICAgICAgICAgICAgLi4uKGdyb3VwSW5kZXggIT0gbnVsbCA/IHsgZ3JvdXBJbmRleCB9IDoge30pLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBpbnB1dHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYWNrRGVzaWduSW5wdXROb3RlcyhcbiAgaW5wdXRzOiBDaGVja291dERlc2lnbklucHV0W10sXG4pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBjb25zdCBwYXlsb2FkID0gKGlucHV0cyB8fCBbXSlcbiAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmtpbmQgPT09ICd0ZXh0JyB8fCBpdGVtLmZpbGU/LmlkICE9IG51bGwpXG4gICAgLm1hcCgoaXRlbSkgPT4gKHtcbiAgICAgIGtpbmQ6IGl0ZW0ua2luZCxcbiAgICAgIG5hbWU6IGl0ZW0ubmFtZSxcbiAgICAgIC4uLihpdGVtLnZhbHVlICE9IG51bGwgPyB7IHZhbHVlOiBpdGVtLnZhbHVlIH0gOiB7fSksXG4gICAgICAuLi4oaXRlbS50ZXh0U3R5bGUgPyB7IHRleHRTdHlsZTogaXRlbS50ZXh0U3R5bGUgfSA6IHt9KSxcbiAgICAgIC4uLihpdGVtLmZpbGU/LmlkICE9IG51bGwgPyB7IGZpbGU6IHsgaWQ6IGl0ZW0uZmlsZS5pZCB9IH0gOiB7fSksXG4gICAgICAuLi4oaXRlbS5ncm91cEluZGV4ICE9IG51bGwgPyB7IGdyb3VwSW5kZXg6IGl0ZW0uZ3JvdXBJbmRleCB9IDoge30pLFxuICAgIH0pKTtcbiAgaWYgKCFwYXlsb2FkLmxlbmd0aCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgY29uc3QgYnl0ZXMgPSBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoSlNPTi5zdHJpbmdpZnkocGF5bG9hZCkpO1xuICBsZXQgYmluYXJ5ID0gJyc7XG4gIGJ5dGVzLmZvckVhY2goKGJ5dGUpID0+IHtcbiAgICBiaW5hcnkgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShieXRlKTtcbiAgfSk7XG4gIHJldHVybiBgJHtERVNJR05fUFJFRklYfSR7YnRvYShiaW5hcnkpfSR7REVTSUdOX1NVRkZJWH1gO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxTQUFTQSx5QkFBeUIsUUFBUSxrQkFBa0I7QUFHNUQsSUFBTUMsVUFBVSxHQUFHLEVBQUU7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
145
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwcm9kdWN0SGFzVmFyaWF0aW9uR3JvdXBzIiwiTkFNRV9MSU1JVCIsIkRFU0lHTl9QUkVGSVgiLCJERVNJR05fU1VGRklYIiwiVEVYVF9CT1hfTlVNQkVSUyIsImZpbml0ZU51bWJlciIsInZhbHVlIiwibnVtYmVyIiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJ1bmRlZmluZWQiLCJ0ZXh0U3R5bGVGcm9tT2JqZWN0Iiwib2JqIiwic3R5bGUiLCJjb2xvdXIiLCJTdHJpbmciLCJmaWxsIiwidHJpbSIsInRleHRTaXplIiwiZm9udFNpemUiLCJmb250IiwiZm9udEZhbWlseSIsImFsaWduIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsImtleSIsImVyciIsImUiLCJmIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImNsaXBOYW1lIiwiZmFsbGJhY2siLCJ0cmltbWVkIiwicmVwbGFjZSIsIm5hbWUiLCJzbGljZSIsInByb2R1Y3RBbGxvd3NBZGRpdGlvbmFsRGVzaWduT2JqZWN0cyIsInByb2R1Y3QiLCJhbGxvd0FkZGl0aW9uYWxEZXNpZ25PYmplY3RzIiwiY29sbGVjdERlc2lnbmVySW5wdXRzIiwiZHJhZnRzIiwiZ3JvdXBlZCIsImlucHV0cyIsIl9pdGVyYXRvcjIiLCJfc3RlcDIiLCJkcmFmdCIsImdyb3VwSW5kZXgiLCJfaXRlcmF0b3IzIiwidGVtcGxhdGVEYXRhIiwiX3N0ZXAzIiwiX3RlbXBsYXRlJGNhbnZhc0pzb24iLCJ0ZW1wbGF0ZSIsIl9pdGVyYXRvcjQiLCJjYW52YXNKc29uIiwib2JqZWN0cyIsIl9zdGVwNCIsIm1lcmNoaUZpZWxkSWQiLCJ0eXBlIiwidGV4dCIsInRleHRTdHlsZSIsInB1c2giLCJfb2JqZWN0U3ByZWFkIiwia2luZCIsInNyYyIsInBhY2tEZXNpZ25JbnB1dE5vdGVzIiwicGF5bG9hZCIsImZpbHRlciIsIml0ZW0iLCJfaXRlbSRmaWxlIiwiZmlsZSIsImlkIiwibWFwIiwiX2l0ZW0kZmlsZTIiLCJieXRlcyIsIlRleHRFbmNvZGVyIiwiZW5jb2RlIiwiSlNPTiIsInN0cmluZ2lmeSIsImJpbmFyeSIsImZvckVhY2giLCJieXRlIiwiZnJvbUNoYXJDb2RlIiwiY29uY2F0IiwiYnRvYSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9kZXNpZ25lcklucHV0cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcm9kdWN0SGFzVmFyaWF0aW9uR3JvdXBzIH0gZnJvbSAnLi9kcmFmdFRlbXBsYXRlcyc7XG5pbXBvcnQgeyBEcmFmdFRlbXBsYXRlRGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBOQU1FX0xJTUlUID0gODA7XG5jb25zdCBERVNJR05fUFJFRklYID0gJ1tbY2xpZW50LWRlc2lnbi1pbnB1dHM6JztcbmNvbnN0IERFU0lHTl9TVUZGSVggPSAnXV0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIERlc2lnbmVyVGV4dFN0eWxlIHtcbiAgY29sb3VyPzogc3RyaW5nO1xuICB0ZXh0U2l6ZT86IG51bWJlcjtcbiAgZm9udD86IHN0cmluZztcbiAgYWxpZ24/OiBzdHJpbmc7XG4gIHg/OiBudW1iZXI7XG4gIHk/OiBudW1iZXI7XG4gIHdpZHRoPzogbnVtYmVyO1xuICBoZWlnaHQ/OiBudW1iZXI7XG4gIHJvdGF0aW9uPzogbnVtYmVyO1xuICBzY2FsZVg/OiBudW1iZXI7XG4gIHNjYWxlWT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXNpZ25lcklucHV0IHtcbiAga2luZDogJ3RleHQnIHwgJ2ZpbGUnO1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICBzcmM/OiBzdHJpbmc7XG4gIHRleHRTdHlsZT86IERlc2lnbmVyVGV4dFN0eWxlO1xuICBncm91cEluZGV4PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrb3V0RGVzaWduSW5wdXQge1xuICBraW5kOiAndGV4dCcgfCAnZmlsZSc7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU/OiBzdHJpbmc7XG4gIGZpbGU/OiB7IGlkOiBudW1iZXIgfCBzdHJpbmcgfTtcbiAgdGV4dFN0eWxlPzogRGVzaWduZXJUZXh0U3R5bGU7XG4gIGdyb3VwSW5kZXg/OiBudW1iZXI7XG59XG5cbmNvbnN0IFRFWFRfQk9YX05VTUJFUlMgPSBbXG4gICd4JyxcbiAgJ3knLFxuICAnd2lkdGgnLFxuICAnaGVpZ2h0JyxcbiAgJ3JvdGF0aW9uJyxcbiAgJ3NjYWxlWCcsXG4gICdzY2FsZVknLFxuXSBhcyBjb25zdDtcblxuZnVuY3Rpb24gZmluaXRlTnVtYmVyKHZhbHVlOiB1bmtub3duKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgbnVtYmVyID0gTnVtYmVyKHZhbHVlKTtcbiAgcmV0dXJuIE51bWJlci5pc0Zpbml0ZShudW1iZXIpID8gbnVtYmVyIDogdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiB0ZXh0U3R5bGVGcm9tT2JqZWN0KG9iajoge1xuICBmaWxsPzogc3RyaW5nO1xuICBmb250U2l6ZT86IG51bWJlcjtcbiAgZm9udEZhbWlseT86IHN0cmluZztcbiAgYWxpZ24/OiBzdHJpbmc7XG4gIHg/OiBudW1iZXI7XG4gIHk/OiBudW1iZXI7XG4gIHdpZHRoPzogbnVtYmVyO1xuICBoZWlnaHQ/OiBudW1iZXI7XG4gIHJvdGF0aW9uPzogbnVtYmVyO1xuICBzY2FsZVg/OiBudW1iZXI7XG4gIHNjYWxlWT86IG51bWJlcjtcbn0pOiBEZXNpZ25lclRleHRTdHlsZSB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IHN0eWxlOiBEZXNpZ25lclRleHRTdHlsZSA9IHt9O1xuICBjb25zdCBjb2xvdXIgPSBTdHJpbmcob2JqLmZpbGwgfHwgJycpLnRyaW0oKTtcbiAgaWYgKGNvbG91cikgc3R5bGUuY29sb3VyID0gY29sb3VyO1xuICBjb25zdCB0ZXh0U2l6ZSA9IGZpbml0ZU51bWJlcihvYmouZm9udFNpemUpO1xuICBpZiAodGV4dFNpemUgIT0gbnVsbCkgc3R5bGUudGV4dFNpemUgPSB0ZXh0U2l6ZTtcbiAgY29uc3QgZm9udCA9IFN0cmluZyhvYmouZm9udEZhbWlseSB8fCAnJykudHJpbSgpO1xuICBpZiAoZm9udCkgc3R5bGUuZm9udCA9IGZvbnQ7XG4gIGNvbnN0IGFsaWduID0gU3RyaW5nKG9iai5hbGlnbiB8fCAnJykudHJpbSgpO1xuICBpZiAoYWxpZ24pIHN0eWxlLmFsaWduID0gYWxpZ247XG4gIGZvciAoY29uc3Qga2V5IG9mIFRFWFRfQk9YX05VTUJFUlMpIHtcbiAgICBjb25zdCBudW1iZXIgPSBmaW5pdGVOdW1iZXIob2JqW2tleV0pO1xuICAgIGlmIChudW1iZXIgIT0gbnVsbCkgc3R5bGVba2V5XSA9IG51bWJlcjtcbiAgfVxuICByZXR1cm4gT2JqZWN0LmtleXMoc3R5bGUpLmxlbmd0aCA/IHN0eWxlIDogdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBjbGlwTmFtZSh2YWx1ZTogc3RyaW5nLCBmYWxsYmFjazogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgdHJpbW1lZCA9IHZhbHVlLnJlcGxhY2UoL1xccysvZywgJyAnKS50cmltKCk7XG4gIGNvbnN0IG5hbWUgPSB0cmltbWVkIHx8IGZhbGxiYWNrO1xuICByZXR1cm4gbmFtZS5sZW5ndGggPiBOQU1FX0xJTUlUID8gbmFtZS5zbGljZSgwLCBOQU1FX0xJTUlUKS50cmltKCkgOiBuYW1lO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvZHVjdEFsbG93c0FkZGl0aW9uYWxEZXNpZ25PYmplY3RzKHByb2R1Y3Q6IGFueSk6IGJvb2xlYW4ge1xuICByZXR1cm4gcHJvZHVjdD8uYWxsb3dBZGRpdGlvbmFsRGVzaWduT2JqZWN0cyAhPT0gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0RGVzaWduZXJJbnB1dHMoXG4gIHByb2R1Y3Q6IGFueSxcbiAgZHJhZnRzOiBEcmFmdFRlbXBsYXRlRGF0YVtdLFxuKTogRGVzaWduZXJJbnB1dFtdIHtcbiAgaWYgKCFwcm9kdWN0QWxsb3dzQWRkaXRpb25hbERlc2lnbk9iamVjdHMocHJvZHVjdCkpIHJldHVybiBbXTtcbiAgY29uc3QgZ3JvdXBlZCA9IHByb2R1Y3RIYXNWYXJpYXRpb25Hcm91cHMocHJvZHVjdCk7XG4gIGNvbnN0IGlucHV0czogRGVzaWduZXJJbnB1dFtdID0gW107XG4gIGZvciAoY29uc3QgZHJhZnQgb2YgZHJhZnRzIHx8IFtdKSB7XG4gICAgY29uc3QgZ3JvdXBJbmRleCA9IGdyb3VwZWQgPyBkcmFmdC5ncm91cEluZGV4IDogdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgdGVtcGxhdGUgb2YgZHJhZnQudGVtcGxhdGVEYXRhIHx8IFtdKSB7XG4gICAgICBmb3IgKGNvbnN0IG9iaiBvZiB0ZW1wbGF0ZS5jYW52YXNKc29uPy5vYmplY3RzIHx8IFtdKSB7XG4gICAgICAgIGlmIChvYmo/Lm1lcmNoaUZpZWxkSWQgIT0gbnVsbCkgY29udGludWU7XG4gICAgICAgIGlmIChvYmo/LnR5cGUgPT09ICd0ZXh0Jykge1xuICAgICAgICAgIGNvbnN0IHZhbHVlID0gU3RyaW5nKG9iai50ZXh0IHx8ICcnKS50cmltKCk7XG4gICAgICAgICAgaWYgKCF2YWx1ZSkgY29udGludWU7XG4gICAgICAgICAgY29uc3QgdGV4dFN0eWxlID0gdGV4dFN0eWxlRnJvbU9iamVjdChvYmopO1xuICAgICAgICAgIGlucHV0cy5wdXNoKHtcbiAgICAgICAgICAgIGtpbmQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIG5hbWU6IGNsaXBOYW1lKHZhbHVlLCAnQ3VzdG9tIHRleHQnKSxcbiAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgLi4uKHRleHRTdHlsZSA/IHsgdGV4dFN0eWxlIH0gOiB7fSksXG4gICAgICAgICAgICAuLi4oZ3JvdXBJbmRleCAhPSBudWxsID8geyBncm91cEluZGV4IH0gOiB7fSksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAob2JqPy50eXBlID09PSAnaW1hZ2UnICYmIG9iai5zcmMpIHtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7XG4gICAgICAgICAgICBraW5kOiAnZmlsZScsXG4gICAgICAgICAgICBuYW1lOiAnQ3VzdG9tIGltYWdlJyxcbiAgICAgICAgICAgIHNyYzogU3RyaW5nKG9iai5zcmMpLFxuICAgICAgICAgICAgLi4uKGdyb3VwSW5kZXggIT0gbnVsbCA/IHsgZ3JvdXBJbmRleCB9IDoge30pLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBpbnB1dHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYWNrRGVzaWduSW5wdXROb3RlcyhcbiAgaW5wdXRzOiBDaGVja291dERlc2lnbklucHV0W10sXG4pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBjb25zdCBwYXlsb2FkID0gKGlucHV0cyB8fCBbXSlcbiAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmtpbmQgPT09ICd0ZXh0JyB8fCBpdGVtLmZpbGU/LmlkICE9IG51bGwpXG4gICAgLm1hcCgoaXRlbSkgPT4gKHtcbiAgICAgIGtpbmQ6IGl0ZW0ua2luZCxcbiAgICAgIG5hbWU6IGl0ZW0ubmFtZSxcbiAgICAgIC4uLihpdGVtLnZhbHVlICE9IG51bGwgPyB7IHZhbHVlOiBpdGVtLnZhbHVlIH0gOiB7fSksXG4gICAgICAuLi4oaXRlbS50ZXh0U3R5bGUgPyB7IHRleHRTdHlsZTogaXRlbS50ZXh0U3R5bGUgfSA6IHt9KSxcbiAgICAgIC4uLihpdGVtLmZpbGU/LmlkICE9IG51bGwgPyB7IGZpbGU6IHsgaWQ6IGl0ZW0uZmlsZS5pZCB9IH0gOiB7fSksXG4gICAgICAuLi4oaXRlbS5ncm91cEluZGV4ICE9IG51bGwgPyB7IGdyb3VwSW5kZXg6IGl0ZW0uZ3JvdXBJbmRleCB9IDoge30pLFxuICAgIH0pKTtcbiAgaWYgKCFwYXlsb2FkLmxlbmd0aCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgY29uc3QgYnl0ZXMgPSBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoSlNPTi5zdHJpbmdpZnkocGF5bG9hZCkpO1xuICBsZXQgYmluYXJ5ID0gJyc7XG4gIGJ5dGVzLmZvckVhY2goKGJ5dGUpID0+IHtcbiAgICBiaW5hcnkgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShieXRlKTtcbiAgfSk7XG4gIHJldHVybiBgJHtERVNJR05fUFJFRklYfSR7YnRvYShiaW5hcnkpfSR7REVTSUdOX1NVRkZJWH1gO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxTQUFTQSx5QkFBeUIsUUFBUSxrQkFBa0I7QUFHNUQsSUFBTUMsVUFBVSxHQUFHLEVBQUU7QUFDckIsSUFBTUMsYUFBYSxHQUFHLHlCQUF5QjtBQUMvQyxJQUFNQyxhQUFhLEdBQUcsSUFBSTtBQWtDMUIsSUFBTUMsZ0JBQWdCLEdBQUcsQ0FDdkIsR0FBRyxFQUNILEdBQUcsRUFDSCxPQUFPLEVBQ1AsUUFBUSxFQUNSLFVBQVUsRUFDVixRQUFRLEVBQ1IsUUFBUSxDQUNBO0FBRVYsU0FBU0MsWUFBWUEsQ0FBQ0MsS0FBYyxFQUFzQjtFQUN4RCxJQUFNQyxNQUFNLEdBQUdDLE1BQU0sQ0FBQ0YsS0FBSyxDQUFDO0VBQzVCLE9BQU9FLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRixNQUFNLENBQUMsR0FBR0EsTUFBTSxHQUFHRyxTQUFTO0FBQ3JEO0FBRUEsU0FBU0MsbUJBQW1CQSxDQUFDQyxHQVk1QixFQUFpQztFQUNoQyxJQUFNQyxLQUF3QixHQUFHLENBQUMsQ0FBQztFQUNuQyxJQUFNQyxNQUFNLEdBQUdDLE1BQU0sQ0FBQ0gsR0FBRyxDQUFDSSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUNDLElBQUksQ0FBQyxDQUFDO0VBQzVDLElBQUlILE1BQU0sRUFBRUQsS0FBSyxDQUFDQyxNQUFNLEdBQUdBLE1BQU07RUFDakMsSUFBTUksUUFBUSxHQUFHYixZQUFZLENBQUNPLEdBQUcsQ0FBQ08sUUFBUSxDQUFDO0VBQzNDLElBQUlELFFBQVEsSUFBSSxJQUFJLEVBQUVMLEtBQUssQ0FBQ0ssUUFBUSxHQUFH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
@@ -1,9 +1,15 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
1
2
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
2
3
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
4
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
4
5
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
5
6
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
7
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
8
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
13
  import { collectDesignerInputs, packDesignInputNotes } from './designerInputs';
8
14
  var groupedProduct = {
9
15
  groupVariationFields: [{
@@ -103,6 +109,11 @@ test('collectDesignerInputs keeps only text and images the customer added', func
103
109
  src: 'data:image/png;base64,aaa'
104
110
  }]);
105
111
  });
112
+ test('collectDesignerInputs drops extra text and images when the product disallows them', function () {
113
+ expect(collectDesignerInputs(_objectSpread(_objectSpread({}, plainProduct), {}, {
114
+ allowAdditionalDesignObjects: false
115
+ }), drafts())).toEqual([]);
116
+ });
106
117
  test('collectDesignerInputs records the variation group when the product has groups', function () {
107
118
  var _collectDesignerInput = collectDesignerInputs(groupedProduct, drafts()),
108
119
  _collectDesignerInput2 = _slicedToArray(_collectDesignerInput, 1),
@@ -151,4 +162,4 @@ test('packDesignInputNotes hides the checkout payload in the cart marker', funct
151
162
  }
152
163
  }]);
153
164
  });
154
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb2xsZWN0RGVzaWduZXJJbnB1dHMiLCJwYWNrRGVzaWduSW5wdXROb3RlcyIsImdyb3VwZWRQcm9kdWN0IiwiZ3JvdXBWYXJpYXRpb25GaWVsZHMiLCJpZCIsInBsYWluUHJvZHVjdCIsImRyYWZ0cyIsImdyb3VwSW5kZXgiLCJwcm9kdWN0SWQiLCJwcmV2aWV3cyIsInRlbXBsYXRlRGF0YSIsInRlbXBsYXRlSWQiLCJkcmFmdCIsImNhbnZhc1ByZXZpZXciLCJjYW52YXNKc29uIiwid2lkdGgiLCJoZWlnaHQiLCJvYmplY3RzIiwidHlwZSIsIm1lcmNoaUZpZWxkSWQiLCJ0ZXh0IiwieCIsInkiLCJyb3RhdGlvbiIsInNjYWxlWCIsInNjYWxlWSIsImZpbGwiLCJmb250U2l6ZSIsImZvbnRGYW1pbHkiLCJhbGlnbiIsInNyYyIsInRlc3QiLCJleHBlY3QiLCJ0b0VxdWFsIiwia2luZCIsIm5hbWUiLCJ2YWx1ZSIsInRleHRTdHlsZSIsImNvbG91ciIsInRleHRTaXplIiwiZm9udCIsIl9jb2xsZWN0RGVzaWduZXJJbnB1dCIsIl9jb2xsZWN0RGVzaWduZXJJbnB1dDIiLCJfc2xpY2VkVG9BcnJheSIsInRvQmUiLCJub3RlcyIsImZpbGUiLCJzdGFydHNXaXRoIiwiaW5jbHVkZXMiLCJlbmNvZGVkIiwic2xpY2UiLCJsZW5ndGgiLCJwYXJzZWQiLCJKU09OIiwicGFyc2UiLCJUZXh0RGVjb2RlciIsImRlY29kZSIsIlVpbnQ4QXJyYXkiLCJmcm9tIiwiYXRvYiIsImNoYXIiLCJjaGFyQ29kZUF0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2Rlc2lnbmVySW5wdXRzLnRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY29sbGVjdERlc2lnbmVySW5wdXRzLFxuICBwYWNrRGVzaWduSW5wdXROb3Rlcyxcbn0gZnJvbSAnLi9kZXNpZ25lcklucHV0cyc7XG5pbXBvcnQgeyBEcmFmdFRlbXBsYXRlRGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBncm91cGVkUHJvZHVjdCA9IHsgZ3JvdXBWYXJpYXRpb25GaWVsZHM6IFt7IGlkOiA5IH1dIH07XG5jb25zdCBwbGFpblByb2R1Y3QgPSB7IGdyb3VwVmFyaWF0aW9uRmllbGRzOiBbXSB9O1xuXG5mdW5jdGlvbiBkcmFmdHMoKTogRHJhZnRUZW1wbGF0ZURhdGFbXSB7XG4gIHJldHVybiBbe1xuICAgIGdyb3VwSW5kZXg6IDAsXG4gICAgcHJvZHVjdElkOiA0LFxuICAgIHByZXZpZXdzOiBbXSxcbiAgICB0ZW1wbGF0ZURhdGE6IFt7XG4gICAgICB0ZW1wbGF0ZUlkOiAxLFxuICAgICAgZHJhZnQ6ICdkcmFmdCcsXG4gICAgICBjYW52YXNQcmV2aWV3OiAncHJldmlldycsXG4gICAgICBjYW52YXNKc29uOiB7XG4gICAgICAgIHdpZHRoOiAxMDAsXG4gICAgICAgIGhlaWdodDogMTAwLFxuICAgICAgICBvYmplY3RzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdsaW5rZWQnLFxuICAgICAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICAgICAgbWVyY2hpRmllbGRJZDogOSxcbiAgICAgICAgICAgIHRleHQ6ICdGcm9tIHRoZSBmb3JtJyxcbiAgICAgICAgICAgIHg6IDAsIHk6IDAsIHdpZHRoOiAxMCwgaGVpZ2h0OiAxMCwgcm90YXRpb246IDAsIHNjYWxlWDogMSwgc2NhbGVZOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdhZGRlZCcsXG4gICAgICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgICAgICB0ZXh0OiAnVGVhbSBuaWdodCcsXG4gICAgICAgICAgICBmaWxsOiAnIzExMjIzMycsXG4gICAgICAgICAgICBmb250U2l6ZTogNTYsXG4gICAgICAgICAgICBmb250RmFtaWx5OiAnT3N3YWxkJyxcbiAgICAgICAgICAgIGFsaWduOiAnY2VudGVyJyxcbiAgICAgICAgICAgIHg6IDEyLCB5OiAyMCwgd2lkdGg6IDI0MCwgaGVpZ2h0OiA2NCwgcm90YXRpb246IDAsIHNjYWxlWDogMSwgc2NhbGVZOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdsb2dvJyxcbiAgICAgICAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICAgICAgICBzcmM6ICdkYXRhOmltYWdlL3BuZztiYXNlNjQsYWFhJyxcbiAgICAgICAgICAgIHg6IDAsIHk6IDAsIHdpZHRoOiAxMCwgaGVpZ2h0OiAxMCwgcm90YXRpb246IDAsIHNjYWxlWDogMSwgc2NhbGVZOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdmaWxsJyxcbiAgICAgICAgICAgIHR5cGU6ICdyZWN0JyxcbiAgICAgICAgICAgIGZpbGw6ICcjMTExMTExJyxcbiAgICAgICAgICAgIHg6IDAsIHk6IDAsIHdpZHRoOiAxMCwgaGVpZ2h0OiAxMCwgcm90YXRpb246IDAsIHNjYWxlWDogMSwgc2NhbGVZOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH1dLFxuICB9XTtcbn1cblxudGVzdCgnY29sbGVjdERlc2lnbmVySW5wdXRzIGtlZXBzIG9ubHkgdGV4dCBhbmQgaW1hZ2VzIHRoZSBjdXN0b21lciBhZGRlZCcsICgpID0+IHtcbiAgZXhwZWN0KGNvbGxlY3REZXNpZ25lcklucHV0cyhwbGFpblByb2R1Y3QsIGRyYWZ0cygpKSkudG9FcXVhbChbXG4gICAge1xuICAgICAga2luZDogJ3RleHQnLFxuICAgICAgbmFtZTogJ1RlYW0gbmlnaHQnLFxuICAgICAgdmFsdWU6ICdUZWFtIG5pZ2h0JyxcbiAgICAgIHRleHRTdHlsZToge1xuICAgICAgICBjb2xvdXI6ICcjMTEyMjMzJyxcbiAgICAgICAgdGV4dFNpemU6IDU2LFxuICAgICAgICBmb250OiAnT3N3YWxkJyxcbiAgICAgICAgYWxpZ246ICdjZW50ZXInLFxuICAgICAgICB4OiAxMixcbiAgICAgICAgeTogMjAsXG4gICAgICAgIHdpZHRoOiAyNDAsXG4gICAgICAgIGhlaWdodDogNjQsXG4gICAgICAgIHJvdGF0aW9uOiAwLFxuICAgICAgICBzY2FsZVg6IDEsXG4gICAgICAgIHNjYWxlWTogMSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7IGtpbmQ6ICdmaWxlJywgbmFtZTogJ0N1c3RvbSBpbWFnZScsIHNyYzogJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxhYWEnIH0sXG4gIF0pO1xufSk7XG5cbnRlc3QoJ2NvbGxlY3REZXNpZ25lcklucHV0cyByZWNvcmRzIHRoZSB2YXJpYXRpb24gZ3JvdXAgd2hlbiB0aGUgcHJvZHVjdCBoYXMgZ3JvdXBzJywgKCkgPT4ge1xuICBjb25zdCBbdGV4dF0gPSBjb2xsZWN0RGVzaWduZXJJbnB1dHMoZ3JvdXBlZFByb2R1Y3QsIGRyYWZ0cygpKTtcbiAgZXhwZWN0KHRleHQuZ3JvdXBJbmRleCkudG9CZSgwKTtcbn0pO1xuXG50ZXN0KCdwYWNrRGVzaWduSW5wdXROb3RlcyBoaWRlcyB0aGUgY2hlY2tvdXQgcGF5bG9hZCBpbiB0aGUgY2FydCBtYXJrZXInLCAoKSA9PiB7XG4gIGNvbnN0IG5vdGVzID0gcGFja0Rlc2lnbklucHV0Tm90ZXMoW1xuICAgIHtcbiAgICAgIGtpbmQ6ICd0ZXh0JyxcbiAgICAgIG5hbWU6ICdUZWFtIG5pZ2h0JyxcbiAgICAgIHZhbHVlOiAnVGVhbSBuaWdodCcsXG4gICAgICB0ZXh0U3R5bGU6IHtcbiAgICAgICAgY29sb3VyOiAnIzExMjIzMycsXG4gICAgICAgIHRleHRTaXplOiA1NixcbiAgICAgICAgZm9udDogJ09zd2FsZCcsXG4gICAgICAgIGFsaWduOiAnY2VudGVyJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7IGtpbmQ6ICdmaWxlJywgbmFtZTogJ0N1c3RvbSBpbWFnZScsIGZpbGU6IHsgaWQ6ICdmaWxlLTEnIH0gfSxcbiAgXSk7XG4gIGV4cGVjdChub3Rlcz8uc3RhcnRzV2l0aCgnW1tjbGllbnQtZGVzaWduLWlucHV0czonKSkudG9CZSh0cnVlKTtcbiAgZXhwZWN0KG5vdGVzPy5pbmNsdWRlcygnZGF0YTppbWFnZScpKS50b0JlKGZhbHNlKTtcbiAgY29uc3QgZW5jb2RlZCA9IG5vdGVzIS5zbGljZSgnW1tjbGllbnQtZGVzaWduLWlucHV0czonLmxlbmd0aCwgLTIpO1xuICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShcbiAgICBVaW50OEFycmF5LmZyb20oYXRvYihlbmNvZGVkKSwgKGNoYXIpID0+IGNoYXIuY2hhckNvZGVBdCgwKSksXG4gICkpO1xuICBleHBlY3QocGFyc2VkKS50b0VxdWFsKFtcbiAgICB7XG4gICAgICBraW5kOiAndGV4dCcsXG4gICAgICBuYW1lOiAnVGVhbSBuaWdodCcsXG4gICAgICB2YWx1ZTogJ1RlYW0gbmlnaHQnLFxuICAgICAgdGV4dFN0eWxlOiB7XG4gICAgICAgIGNvbG91cjogJyMxMTIyMzMnLFxuICAgICAgICB0ZXh0U2l6ZTogNTYsXG4gICAgICAgIGZvbnQ6ICdPc3dhbGQnLFxuICAgICAgICBhbGlnbjogJ2NlbnRlcicsXG4gICAgICB9LFxuICAgIH0sXG4gICAgeyBraW5kOiAnZmlsZScsIG5hbWU6ICdDdXN0b20gaW1hZ2UnLCBmaWxlOiB7IGlkOiAnZmlsZS0xJyB9IH0sXG4gIF0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLFNBQ0VBLHFCQUFxQixFQUNyQkMsb0JBQW9CLFFBQ2Ysa0JBQWtCO0FBR3pCLElBQU1DLGNBQWMsR0FBRztFQUFFQyxvQkFBb0IsRUFBRSxDQUFDO0lBQUVDLEVBQUUsRUFBRTtFQUFFLENBQUM7QUFBRSxDQUFDO0FBQzVELElBQU1DLFlBQVksR0FBRztFQUFFRixvQkFBb0IsRUFBRTtBQUFHLENBQUM7QUFFakQsU0FBU0csTUFBTUEsQ0FBQSxFQUF3QjtFQUNyQyxPQUFPLENBQUM7SUFDTkMsVUFBVSxFQUFFLENBQUM7SUFDYkMsU0FBUyxFQUFFLENBQUM7SUFDWkMsUUFBUSxFQUFFLEVBQUU7SUFDWkMsWUFBWSxFQUFFLENBQUM7TUFDYkMsVUFBVSxFQUFFLENBQUM7TUFDYkMsS0FBSyxFQUFFLE9BQU87TUFDZEMsYUFBYSxFQUFFLFNBQVM7TUFDeEJDLFVBQVUsRUFBRTtRQUNWQyxLQUFLLEVBQUUsR0FBRztRQUNWQyxNQUFNLEVBQUUsR0FBRztRQUNYQyxPQUFPLEVBQUUsQ0FDUDtVQUNFYixFQUFFLEVBQUUsUUFBUTtVQUNaYyxJQUFJLEVBQUUsTUFBTTtVQUNaQyxhQUFhLEVBQUUsQ0FBQztVQUNoQkMsSUFBSSxFQUFFLGVBQWU7VUFDckJDLENBQUMsRUFBRSxDQUFDO1VBQUVDLENBQUMsRUFBRSxDQUFDO1VBQUVQLEtBQUssRUFBRSxFQUFFO1VBQUVDLE1BQU0sRUFBRSxFQUFFO1VBQUVPLFFBQVEsRUFBRSxDQUFDO1VBQUVDLE1BQU0sRUFBRSxDQUFDO1VBQUVDLE1BQU0sRUFBRTtRQUNyRSxDQUFDLEVBQ0Q7VUFDRXJCLEVBQUUsRUFBRSxPQUFPO1VBQ1hjLElBQUksRUFBRSxNQUFNO1VBQ1pFLElBQUksRUFBRSxZQUFZO1VBQ2xCTSxJQUFJLEVBQUUsU0FBUztVQUNmQyxRQUFRLEVBQUUsRUFBRTtVQUNaQyxVQUFVLEVBQUUsUUFBUTtVQUNwQkMsS0FBSyxFQUFFLFFBQVE7VUFDZlIsQ0FBQyxFQUFFLEVBQUU7VUFBRUMsQ0FBQyxFQUFFLEVBQUU7VUFBRVAsS0FBSyxFQUFFLEdBQUc7VUFBRUMsTUFBTSxFQUFFLEVBQUU7VUFBRU8sUUFBUSxFQUFFLENBQUM7VUFBRUMsTUFBTSxFQUFFLENBQUM7VUFBRUMsTUFBTSxFQUFFO1FBQ3hFLENBQUMsRUFDRDtVQUNFckIsRUFBRSxFQUFFLE1BQU07VUFDVmMsSUFBSSxFQUFFLE9BQU87VUFDYlksR0FBRyxFQUFFLDJCQUEyQjtVQUNoQ1QsQ0FBQyxFQUFFLENBQUM7VUFBRUMsQ0FBQyxFQUFFLENBQUM7VUFBRVAsS0FBSyxFQUFFLEVBQUU7VUFBRUMsTUFBTSxFQUFFLEVBQUU7VUFBRU8sUUFBUSxFQUFFLENBQUM7VUFBRUMsTUFBTSxFQUFFLENBQUM7VUFBRUMsTUFBTSxFQUFFO1FBQ3JFLENBQUMsRUFDRDtVQUNFckIsRUFBRSxFQUFFLE1BQU07VUFDVmMsSUFBSSxFQUFFLE1BQU07VUFDWlEsSUFBSSxFQUFFLFNBQVM7VUFDZkwsQ0FBQyxFQUFFLENBQUM7VUFBRUMsQ0FBQyxFQUFFLENBQUM7VUFBRVAsS0FBSyxFQUFFLEVBQUU7VUFBRUMsTUFBTSxFQUFFLEVBQUU7VUFBRU8sUUFBUSxFQUFFLENBQUM7VUFBRUMsTUFBTSxFQUFFLENBQUM7VUFBRUMsTUFBTSxFQUFFO1FBQ3JFLENBQUM7TUFFTDtJQUNGLENBQUM7RUFDSCxDQUFDLENBQUM7QUFDSjtBQUVBTSxJQUFJLENBQUMscUVBQXFFLEVBQUUsWUFBTTtFQUNoRkMsTUFBTSxDQUFDaEMscUJBQXFCLENBQUNLLFlBQVksRUFBRUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMyQixPQUFPLENBQUMsQ0FDNUQ7SUFDRUMsSUFBSSxFQUFFLE1BQU07SUFDWkMsSUFBSSxFQUFFLFlBQVk7SUFDbEJDLEtBQUssRUFBRSxZQUFZO0lBQ25CQyxTQUFTLEVBQUU7TUFDVEMsTUFBTSxFQUFFLFNBQVM7TUFDakJDLFFBQVEsRUFBRSxFQUFFO01BQ1pDLElBQUksRUFBRSxRQUFRO01BQ2RYLEtBQUssRUFBRSxRQUFRO01BQ2ZSLENBQUMsRUFBRSxFQUFFO01BQ0xDLENBQUMsRUFBRSxFQUFFO01BQ0xQLEtBQUssRUFBRSxHQUFHO01BQ1ZDLE1BQU0sRUFBRSxFQUFFO01BQ1ZPLFFBQVEsRUFBRSxDQUFDO01BQ1hDLE1BQU0sRUFBRSxDQUFDO01BQ1RDLE1BQU0sRUFBRTtJQUNWO0VBQ0YsQ0FBQyxFQUNEO0lBQUVTLElBQUksRUFBRSxNQUFNO0lBQUVDLElBQUksRUFBRSxjQUFjO0lBQUVMLEdBQUcsRUFBRTtFQUE0QixDQUFDLENBQ3pFLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRkMsSUFBSSxDQUFDLCtFQUErRSxFQUFFLFlBQU07RUFDMUYsSUFBQVUscUJBQUEsR0FBZXpDLHFCQUFxQixDQUFDRSxjQUFjLEVBQUVJLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFBQW9DLHNCQUFBLEdBQUFDLGNBQUEsQ0FBQUYscUJBQUE7SUFBdkRyQixJQUFJLEdBQUFzQixzQkFBQTtFQUNYVixNQUFNLENBQUNaLElBQUksQ0FBQ2IsVUFBVSxDQUFDLENBQUNxQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2pDLENBQUMsQ0FBQztBQUVGYixJQUFJLENBQUMsb0VBQW9FLEVBQUUsWUFBTTtFQUMvRSxJQUFNYyxLQUFLLEdBQUc1QyxvQkFBb0IsQ0FBQyxDQUNqQztJQUNFaUMsSUFBSSxFQUFFLE1BQU07SUFDWkMsSUFBSSxFQUFFLFlBQVk7SUFDbEJDLEtBQUssRUFBRSxZQUFZO0lBQ25CQyxTQUFTLEVBQUU7TUFDVEMsTUFBTSxFQUFFLFNBQVM7TUFDakJDLFFBQVEsRUFBRSxFQUFFO01BQ1pDLElBQUksRUFBRSxRQUFRO01BQ2RYLEtBQUssRUFBRTtJQUNUO0VBQ0YsQ0FBQyxFQUNEO0lBQUVLLElBQUksRUFBRSxNQUFNO0lBQUVDLElBQUksRUFBRSxjQUFjO0lBQUVXLElBQUksRUFBRTtNQUFFMUMsRUFBRSxFQUFFO0lBQVM7RUFBRSxDQUFDLENBQy9ELENBQUM7RUFDRjRCLE1BQU0sQ0FBQ2EsS0FBSyxhQUFMQSxLQUFLLHVCQUFMQSxLQUFLLENBQUVFLFVBQVUsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUNILElBQUksQ0FBQyxJQUFJLENBQUM7RUFDL0RaLE1BQU0sQ0FBQ2EsS0FBSyxhQUFMQSxLQUFLLHVCQUFMQSxLQUFLLENBQUVHLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDSixJQUFJLENBQUMsS0FBSyxDQUFDO0VBQ2pELElBQU1LLE9BQU8sR0FBR0osS0FBSyxDQUFFSyxLQUFLLENBQUMseUJBQXlCLENBQUNDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztFQUNsRSxJQUFNQyxNQUFNLEdBQUdDLElBQUksQ0FBQ0MsS0FBSyxDQUFDLElBQUlDLFdBQVcsQ0FBQyxDQUFDLENBQUNDLE1BQU0sQ0FDaERDLFVBQVUsQ0FBQ0MsSUFBSSxDQUFDQyxJQUFJLENBQUNWLE9BQU8sQ0FBQyxFQUFFLFVBQUNXLEtBQUk7SUFBQSxPQUFLQSxLQUFJLENBQUNDLFVBQVUsQ0FBQyxDQUFDLENBQUM7RUFBQSxFQUM3RCxDQUFDLENBQUM7RUFDRjdCLE1BQU0sQ0FBQ29CLE1BQU0sQ0FBQyxDQUFDbkIsT0FBTyxDQUFDLENBQ3JCO0lBQ0VDLElBQUksRUFBRSxNQUFNO0lBQ1pDLElBQUksRUFBRSxZQUFZO0lBQ2xCQyxLQUFLLEVBQUUsWUFBWTtJQUNuQkMsU0FBUyxFQUFFO01BQ1RDLE1BQU0sRUFBRSxTQUFTO01BQ2pCQyxRQUFRLEVBQUUsRUFBRTtNQUNaQyxJQUFJLEVBQUUsUUFBUTtNQUNkWCxLQUFLLEVBQUU7SUFDVDtFQUNGLENBQUMsRUFDRDtJQUFFSyxJQUFJLEVBQUUsTUFBTTtJQUFFQyxJQUFJLEVBQUUsY0FBYztJQUFFVyxJQUFJLEVBQUU7TUFBRTFDLEVBQUUsRUFBRTtJQUFTO0VBQUUsQ0FBQyxDQUMvRCxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
165
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb2xsZWN0RGVzaWduZXJJbnB1dHMiLCJwYWNrRGVzaWduSW5wdXROb3RlcyIsImdyb3VwZWRQcm9kdWN0IiwiZ3JvdXBWYXJpYXRpb25GaWVsZHMiLCJpZCIsInBsYWluUHJvZHVjdCIsImRyYWZ0cyIsImdyb3VwSW5kZXgiLCJwcm9kdWN0SWQiLCJwcmV2aWV3cyIsInRlbXBsYXRlRGF0YSIsInRlbXBsYXRlSWQiLCJkcmFmdCIsImNhbnZhc1ByZXZpZXciLCJjYW52YXNKc29uIiwid2lkdGgiLCJoZWlnaHQiLCJvYmplY3RzIiwidHlwZSIsIm1lcmNoaUZpZWxkSWQiLCJ0ZXh0IiwieCIsInkiLCJyb3RhdGlvbiIsInNjYWxlWCIsInNjYWxlWSIsImZpbGwiLCJmb250U2l6ZSIsImZvbnRGYW1pbHkiLCJhbGlnbiIsInNyYyIsInRlc3QiLCJleHBlY3QiLCJ0b0VxdWFsIiwia2luZCIsIm5hbWUiLCJ2YWx1ZSIsInRleHRTdHlsZSIsImNvbG91ciIsInRleHRTaXplIiwiZm9udCIsIl9vYmplY3RTcHJlYWQiLCJhbGxvd0FkZGl0aW9uYWxEZXNpZ25PYmplY3RzIiwiX2NvbGxlY3REZXNpZ25lcklucHV0IiwiX2NvbGxlY3REZXNpZ25lcklucHV0MiIsIl9zbGljZWRUb0FycmF5IiwidG9CZSIsIm5vdGVzIiwiZmlsZSIsInN0YXJ0c1dpdGgiLCJpbmNsdWRlcyIsImVuY29kZWQiLCJzbGljZSIsImxlbmd0aCIsInBhcnNlZCIsIkpTT04iLCJwYXJzZSIsIlRleHREZWNvZGVyIiwiZGVjb2RlIiwiVWludDhBcnJheSIsImZyb20iLCJhdG9iIiwiY2hhciIsImNoYXJDb2RlQXQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZGVzaWduZXJJbnB1dHMudGVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjb2xsZWN0RGVzaWduZXJJbnB1dHMsXG4gIHBhY2tEZXNpZ25JbnB1dE5vdGVzLFxufSBmcm9tICcuL2Rlc2lnbmVySW5wdXRzJztcbmltcG9ydCB7IERyYWZ0VGVtcGxhdGVEYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IGdyb3VwZWRQcm9kdWN0ID0geyBncm91cFZhcmlhdGlvbkZpZWxkczogW3sgaWQ6IDkgfV0gfTtcbmNvbnN0IHBsYWluUHJvZHVjdCA9IHsgZ3JvdXBWYXJpYXRpb25GaWVsZHM6IFtdIH07XG5cbmZ1bmN0aW9uIGRyYWZ0cygpOiBEcmFmdFRlbXBsYXRlRGF0YVtdIHtcbiAgcmV0dXJuIFt7XG4gICAgZ3JvdXBJbmRleDogMCxcbiAgICBwcm9kdWN0SWQ6IDQsXG4gICAgcHJldmlld3M6IFtdLFxuICAgIHRlbXBsYXRlRGF0YTogW3tcbiAgICAgIHRlbXBsYXRlSWQ6IDEsXG4gICAgICBkcmFmdDogJ2RyYWZ0JyxcbiAgICAgIGNhbnZhc1ByZXZpZXc6ICdwcmV2aWV3JyxcbiAgICAgIGNhbnZhc0pzb246IHtcbiAgICAgICAgd2lkdGg6IDEwMCxcbiAgICAgICAgaGVpZ2h0OiAxMDAsXG4gICAgICAgIG9iamVjdHM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ2xpbmtlZCcsXG4gICAgICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgICAgICBtZXJjaGlGaWVsZElkOiA5LFxuICAgICAgICAgICAgdGV4dDogJ0Zyb20gdGhlIGZvcm0nLFxuICAgICAgICAgICAgeDogMCwgeTogMCwgd2lkdGg6IDEwLCBoZWlnaHQ6IDEwLCByb3RhdGlvbjogMCwgc2NhbGVYOiAxLCBzY2FsZVk6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ2FkZGVkJyxcbiAgICAgICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgICAgIHRleHQ6ICdUZWFtIG5pZ2h0JyxcbiAgICAgICAgICAgIGZpbGw6ICcjMTEyMjMzJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiA1NixcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdPc3dhbGQnLFxuICAgICAgICAgICAgYWxpZ246ICdjZW50ZXInLFxuICAgICAgICAgICAgeDogMTIsIHk6IDIwLCB3aWR0aDogMjQwLCBoZWlnaHQ6IDY0LCByb3RhdGlvbjogMCwgc2NhbGVYOiAxLCBzY2FsZVk6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ2xvZ28nLFxuICAgICAgICAgICAgdHlwZTogJ2ltYWdlJyxcbiAgICAgICAgICAgIHNyYzogJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxhYWEnLFxuICAgICAgICAgICAgeDogMCwgeTogMCwgd2lkdGg6IDEwLCBoZWlnaHQ6IDEwLCByb3RhdGlvbjogMCwgc2NhbGVYOiAxLCBzY2FsZVk6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ2ZpbGwnLFxuICAgICAgICAgICAgdHlwZTogJ3JlY3QnLFxuICAgICAgICAgICAgZmlsbDogJyMxMTExMTEnLFxuICAgICAgICAgICAgeDogMCwgeTogMCwgd2lkdGg6IDEwLCBoZWlnaHQ6IDEwLCByb3RhdGlvbjogMCwgc2NhbGVYOiAxLCBzY2FsZVk6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfV0sXG4gIH1dO1xufVxuXG50ZXN0KCdjb2xsZWN0RGVzaWduZXJJbnB1dHMga2VlcHMgb25seSB0ZXh0IGFuZCBpbWFnZXMgdGhlIGN1c3RvbWVyIGFkZGVkJywgKCkgPT4ge1xuICBleHBlY3QoY29sbGVjdERlc2lnbmVySW5wdXRzKHBsYWluUHJvZHVjdCwgZHJhZnRzKCkpKS50b0VxdWFsKFtcbiAgICB7XG4gICAgICBraW5kOiAndGV4dCcsXG4gICAgICBuYW1lOiAnVGVhbSBuaWdodCcsXG4gICAgICB2YWx1ZTogJ1RlYW0gbmlnaHQnLFxuICAgICAgdGV4dFN0eWxlOiB7XG4gICAgICAgIGNvbG91cjogJyMxMTIyMzMnLFxuICAgICAgICB0ZXh0U2l6ZTogNTYsXG4gICAgICAgIGZvbnQ6ICdPc3dhbGQnLFxuICAgICAgICBhbGlnbjogJ2NlbnRlcicsXG4gICAgICAgIHg6IDEyLFxuICAgICAgICB5OiAyMCxcbiAgICAgICAgd2lkdGg6IDI0MCxcbiAgICAgICAgaGVpZ2h0OiA2NCxcbiAgICAgICAgcm90YXRpb246IDAsXG4gICAgICAgIHNjYWxlWDogMSxcbiAgICAgICAgc2NhbGVZOiAxLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHsga2luZDogJ2ZpbGUnLCBuYW1lOiAnQ3VzdG9tIGltYWdlJywgc3JjOiAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGFhYScgfSxcbiAgXSk7XG59KTtcblxudGVzdCgnY29sbGVjdERlc2lnbmVySW5wdXRzIGRyb3BzIGV4dHJhIHRleHQgYW5kIGltYWdlcyB3aGVuIHRoZSBwcm9kdWN0IGRpc2FsbG93cyB0aGVtJywgKCkgPT4ge1xuICBleHBlY3QoY29sbGVjdERlc2lnbmVySW5wdXRzKFxuICAgIHsgLi4ucGxhaW5Qcm9kdWN0LCBhbGxvd0FkZGl0aW9uYWxEZXNpZ25PYmplY3RzOiBmYWxzZSB9LFxuICAgIGRyYWZ0cygpLFxuICApKS50b0VxdWFsKFtdKTtcbn0pO1xuXG50ZXN0KCdjb2xsZWN0RGVzaWduZXJJbnB1dHMgcmVjb3JkcyB0aGUgdmFyaWF0aW9uIGdyb3VwIHdoZW4gdGhlIHByb2R1Y3QgaGFzIGdyb3VwcycsICgpID0+IHtcbiAgY29uc3QgW3RleHRdID0gY29sbGVjdERlc2lnbmVySW5wdXRzKGdyb3VwZWRQcm9kdWN0LCBkcmFmdHMoKSk7XG4gIGV4cGVjdCh0ZXh0Lmdyb3VwSW5kZXgpLnRvQmUoMCk7XG59KTtcblxudGVzdCgncGFja0Rlc2lnbklucHV0Tm90ZXMgaGlkZXMgdGhlIGNoZWNrb3V0IHBheWxvYWQgaW4gdGhlIGNhcnQgbWFya2VyJywgKCkgPT4ge1xuICBjb25zdCBub3RlcyA9IHBhY2tEZXNpZ25JbnB1dE5vdGVzKFtcbiAgICB7XG4gICAgICBraW5kOiAndGV4dCcsXG4gICAgICBuYW1lOiAnVGVhbSBuaWdodCcsXG4gICAgICB2YWx1ZTogJ1RlYW0gbmlnaHQnLFxuICAgICAgdGV4dFN0eWxlOiB7XG4gICAgICAgIGNvbG91cjogJyMxMTIyMzMnLFxuICAgICAgICB0ZXh0U2l6ZTogNTYsXG4gICAgICAgIGZvbnQ6ICdPc3dhbGQnLFxuICAgICAgICBhbGlnbjogJ2NlbnRlcicsXG4gICAgICB9LFxuICAgIH0sXG4gICAgeyBraW5kOiAnZmlsZScsIG5hbWU6ICdDdXN0b20gaW1hZ2UnLCBmaWxlOiB7IGlkOiAnZmlsZS0xJyB9IH0sXG4gIF0pO1xuICBleHBlY3Qobm90ZXM/LnN0YXJ0c1dpdGgoJ1tbY2xpZW50LWRlc2lnbi1pbnB1dHM6JykpLnRvQmUodHJ1ZSk7XG4gIGV4cGVjdChub3Rlcz8uaW5jbHVkZXMoJ2RhdGE6aW1hZ2UnKSkudG9CZShmYWxzZSk7XG4gIGNvbnN0IGVuY29kZWQgPSBub3RlcyEuc2xpY2UoJ1tbY2xpZW50LWRlc2lnbi1pbnB1dHM6Jy5sZW5ndGgsIC0yKTtcbiAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoXG4gICAgVWludDhBcnJheS5mcm9tKGF0b2IoZW5jb2RlZCksIChjaGFyKSA9PiBjaGFyLmNoYXJDb2RlQXQoMCkpLFxuICApKTtcbiAgZXhwZWN0KHBhcnNlZCkudG9FcXVhbChbXG4gICAge1xuICAgICAga2luZDogJ3RleHQnLFxuICAgICAgbmFtZTogJ1RlYW0gbmlnaHQnLFxuICAgICAgdmFsdWU6ICdUZWFtIG5pZ2h0JyxcbiAgICAgIHRleHRTdHlsZToge1xuICAgICAgICBjb2xvdXI6ICcjMTEyMjMzJyxcbiAgICAgICAgdGV4dFNpemU6IDU2LFxuICAgICAgICBmb250OiAnT3N3YWxkJyxcbiAgICAgICAgYWxpZ246ICdjZW50ZXInLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHsga2luZDogJ2ZpbGUnLCBuYW1lOiAnQ3VzdG9tIGltYWdlJywgZmlsZTogeyBpZDogJ2ZpbGUtMScgfSB9LFxuICBdKTtcbn0pO1xuIl0sIm1hcHBpbmdz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
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Quantity-adjusted once-off and per-unit costs for select options and field labels.
3
+ *
4
+ * The server sets these in Variations.generate_variation_option by pricing each
5
+ * option with get_variation_cost([quantity]) and get_variation_unit_cost([quantity]).
6
+ * One quantity means both restricted and unrestricted discounts use that quantity.
7
+ * Independent fields use the job quantity (the sum of the groups). A group field
8
+ * uses that group's quantity.
9
+ *
10
+ * The discount step matches @merchi/sdk pricing applyDiscount / variationUnitCosts.
11
+ */
12
+ interface DiscountTier {
13
+ lowerLimit: number;
14
+ amount: number;
15
+ }
16
+ interface DiscountGroup {
17
+ discounts?: DiscountTier[];
18
+ }
19
+ interface CostSource {
20
+ variationCost?: number;
21
+ variationUnitCost?: number;
22
+ variationCostDiscountGroup?: DiscountGroup | null;
23
+ variationUnitCostDiscountGroup?: DiscountGroup | null;
24
+ }
25
+ export declare function costsAtQuantity(source: CostSource, quantity: number): {
26
+ onceOffCost: number;
27
+ unitCost: number;
28
+ };
29
+ export declare function groupIndexFromVariationName(name: string): number | null;
30
+ export declare function displayQuantity(options: {
31
+ groupIndex: number | null;
32
+ groupQuantity: unknown;
33
+ groups?: Array<{
34
+ quantity?: unknown;
35
+ }> | null;
36
+ jobQuantity: unknown;
37
+ hasGroups: boolean;
38
+ }): number;
39
+ /** Replace stale base rates on a variation with the costs for `quantity`. */
40
+ export declare function withQuantityAdjustedDisplayCosts(variation: any, rules: any, quantity: number): any;
41
+ export {};
@@ -0,0 +1,141 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
8
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
10
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
11
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
12
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
13
+ import { FieldType } from './types';
14
+
15
+ /**
16
+ * Quantity-adjusted once-off and per-unit costs for select options and field labels.
17
+ *
18
+ * The server sets these in Variations.generate_variation_option by pricing each
19
+ * option with get_variation_cost([quantity]) and get_variation_unit_cost([quantity]).
20
+ * One quantity means both restricted and unrestricted discounts use that quantity.
21
+ * Independent fields use the job quantity (the sum of the groups). A group field
22
+ * uses that group's quantity.
23
+ *
24
+ * The discount step matches @merchi/sdk pricing applyDiscount / variationUnitCosts.
25
+ */
26
+
27
+ function roundHalfEven(value, dp) {
28
+ if (!Number.isFinite(value)) return value;
29
+ var factor = Math.pow(10, dp);
30
+ var scaled = value * factor;
31
+ var floor = Math.floor(scaled);
32
+ var diff = scaled - floor;
33
+ var EPS = 1e-9;
34
+ var rounded;
35
+ if (Math.abs(diff - 0.5) < EPS) {
36
+ rounded = floor % 2 === 0 ? floor : floor + 1;
37
+ } else {
38
+ rounded = Math.round(scaled);
39
+ }
40
+ return rounded / factor;
41
+ }
42
+ function applyDiscount(price, qty, group) {
43
+ var tiers = (group === null || group === void 0 ? void 0 : group.discounts) || [];
44
+ if (!tiers.length) return roundHalfEven(price, 3);
45
+ var applicable = tiers.filter(function (tier) {
46
+ return tier.lowerLimit <= qty;
47
+ }).sort(function (a, b) {
48
+ return b.lowerLimit - a.lowerLimit;
49
+ });
50
+ var amount = applicable.length ? applicable[0].amount : 0;
51
+ return roundHalfEven(price * (1 - amount / 100), 3);
52
+ }
53
+ export function costsAtQuantity(source, quantity) {
54
+ var qty = Number(quantity);
55
+ var safeQty = Number.isFinite(qty) ? qty : 0;
56
+ var setupBase = Number(source.variationCost);
57
+ var unitBase = Number(source.variationUnitCost);
58
+ var onceOffBase = Number.isFinite(setupBase) ? setupBase : 0;
59
+ var unitStart = Number.isFinite(unitBase) ? unitBase : 0;
60
+ var onceOffCost = source.variationCostDiscountGroup ? applyDiscount(onceOffBase, safeQty, source.variationCostDiscountGroup) : roundHalfEven(onceOffBase, 3);
61
+ var unitCost = source.variationUnitCostDiscountGroup ? roundHalfEven(applyDiscount(unitStart, safeQty, source.variationUnitCostDiscountGroup), 3) : roundHalfEven(unitStart, 3);
62
+ return {
63
+ onceOffCost: onceOffCost,
64
+ unitCost: unitCost
65
+ };
66
+ }
67
+ function sameId(left, right) {
68
+ var a = Number(left);
69
+ var b = Number(right);
70
+ return Number.isFinite(a) && a === b;
71
+ }
72
+ function findPricingField(rules, fieldId) {
73
+ var fields = [].concat(_toConsumableArray((rules === null || rules === void 0 ? void 0 : rules.fields) || []), _toConsumableArray((rules === null || rules === void 0 ? void 0 : rules.groupFields) || []));
74
+ return fields.find(function (field) {
75
+ return sameId(field === null || field === void 0 ? void 0 : field.id, fieldId) || sameId(field === null || field === void 0 ? void 0 : field.originalId, fieldId);
76
+ });
77
+ }
78
+ function findPricingOption(field, optionId) {
79
+ return ((field === null || field === void 0 ? void 0 : field.options) || []).find(function (option) {
80
+ return sameId(option === null || option === void 0 ? void 0 : option.id, optionId) || sameId(option === null || option === void 0 ? void 0 : option.originalId, optionId);
81
+ });
82
+ }
83
+ export function groupIndexFromVariationName(name) {
84
+ var match = /^variationsGroups\[(\d+)\]/.exec(name || '');
85
+ return match ? Number(match[1]) : null;
86
+ }
87
+ export function displayQuantity(options) {
88
+ var toQty = function toQty(value) {
89
+ var n = Number(value);
90
+ return Number.isFinite(n) ? n : 0;
91
+ };
92
+ if (options.groupIndex != null) return toQty(options.groupQuantity);
93
+ if (options.hasGroups) {
94
+ return (options.groups || []).reduce(function (sum, group) {
95
+ return sum + toQty(group === null || group === void 0 ? void 0 : group.quantity);
96
+ }, 0);
97
+ }
98
+ return toQty(options.jobQuantity);
99
+ }
100
+
101
+ /** Replace stale base rates on a variation with the costs for `quantity`. */
102
+ export function withQuantityAdjustedDisplayCosts(variation, rules, quantity) {
103
+ var _variation$variationF, _field$fieldType, _variation$variationF2;
104
+ if (!rules || rules.unsupported || !variation) return variation;
105
+ var field = findPricingField(rules, variation === null || variation === void 0 || (_variation$variationF = variation.variationField) === null || _variation$variationF === void 0 ? void 0 : _variation$variationF.id);
106
+ if (!field) return variation;
107
+ var fieldType = Number((_field$fieldType = field.fieldType) !== null && _field$fieldType !== void 0 ? _field$fieldType : variation === null || variation === void 0 || (_variation$variationF2 = variation.variationField) === null || _variation$variationF2 === void 0 ? void 0 : _variation$variationF2.fieldType);
108
+ if (fieldType === FieldType.AREA) return variation;
109
+ if (field.isSelectable && Array.isArray(variation.selectableOptions) && variation.selectableOptions.length) {
110
+ var changed = false;
111
+ var selectableOptions = variation.selectableOptions.map(function (option) {
112
+ var _option$optionId;
113
+ var pricingOption = findPricingOption(field, (_option$optionId = option === null || option === void 0 ? void 0 : option.optionId) !== null && _option$optionId !== void 0 ? _option$optionId : option === null || option === void 0 ? void 0 : option.id);
114
+ if (!pricingOption) return option;
115
+ var costs = costsAtQuantity(pricingOption, quantity);
116
+ if (Number(option.onceOffCost) === costs.onceOffCost && Number(option.unitCost) === costs.unitCost) {
117
+ return option;
118
+ }
119
+ changed = true;
120
+ return _objectSpread(_objectSpread({}, option), {}, {
121
+ onceOffCost: costs.onceOffCost,
122
+ unitCost: costs.unitCost,
123
+ currency: option.currency || rules.currency
124
+ });
125
+ });
126
+ return changed ? _objectSpread(_objectSpread({}, variation), {}, {
127
+ selectableOptions: selectableOptions
128
+ }) : variation;
129
+ }
130
+ if (field.isSelectable) return variation;
131
+ var costs = costsAtQuantity(field, quantity);
132
+ if (Number(variation.onceOffCost) === costs.onceOffCost && Number(variation.unitCost) === costs.unitCost) {
133
+ return variation;
134
+ }
135
+ return _objectSpread(_objectSpread({}, variation), {}, {
136
+ onceOffCost: costs.onceOffCost,
137
+ unitCost: costs.unitCost,
138
+ currency: variation.currency || rules.currency
139
+ });
140
+ }
141
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGaWVsZFR5cGUiLCJyb3VuZEhhbGZFdmVuIiwidmFsdWUiLCJkcCIsIk51bWJlciIsImlzRmluaXRlIiwiZmFjdG9yIiwiTWF0aCIsInBvdyIsInNjYWxlZCIsImZsb29yIiwiZGlmZiIsIkVQUyIsInJvdW5kZWQiLCJhYnMiLCJyb3VuZCIsImFwcGx5RGlzY291bnQiLCJwcmljZSIsInF0eSIsImdyb3VwIiwidGllcnMiLCJkaXNjb3VudHMiLCJsZW5ndGgiLCJhcHBsaWNhYmxlIiwiZmlsdGVyIiwidGllciIsImxvd2VyTGltaXQiLCJzb3J0IiwiYSIsImIiLCJhbW91bnQiLCJjb3N0c0F0UXVhbnRpdHkiLCJzb3VyY2UiLCJxdWFudGl0eSIsInNhZmVRdHkiLCJzZXR1cEJhc2UiLCJ2YXJpYXRpb25Db3N0IiwidW5pdEJhc2UiLCJ2YXJpYXRpb25Vbml0Q29zdCIsIm9uY2VPZmZCYXNlIiwidW5pdFN0YXJ0Iiwib25jZU9mZkNvc3QiLCJ2YXJpYXRpb25Db3N0RGlzY291bnRHcm91cCIsInVuaXRDb3N0IiwidmFyaWF0aW9uVW5pdENvc3REaXNjb3VudEdyb3VwIiwic2FtZUlkIiwibGVmdCIsInJpZ2h0IiwiZmluZFByaWNpbmdGaWVsZCIsInJ1bGVzIiwiZmllbGRJZCIsImZpZWxkcyIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheSIsImdyb3VwRmllbGRzIiwiZmluZCIsImZpZWxkIiwiaWQiLCJvcmlnaW5hbElkIiwiZmluZFByaWNpbmdPcHRpb24iLCJvcHRpb25JZCIsIm9wdGlvbnMiLCJvcHRpb24iLCJncm91cEluZGV4RnJvbVZhcmlhdGlvbk5hbWUiLCJuYW1lIiwibWF0Y2giLCJleGVjIiwiZGlzcGxheVF1YW50aXR5IiwidG9RdHkiLCJuIiwiZ3JvdXBJbmRleCIsImdyb3VwUXVhbnRpdHkiLCJoYXNHcm91cHMiLCJncm91cHMiLCJyZWR1Y2UiLCJzdW0iLCJqb2JRdWFudGl0eSIsIndpdGhRdWFudGl0eUFkanVzdGVkRGlzcGxheUNvc3RzIiwidmFyaWF0aW9uIiwiX3ZhcmlhdGlvbiR2YXJpYXRpb25GIiwiX2ZpZWxkJGZpZWxkVHlwZSIsIl92YXJpYXRpb24kdmFyaWF0aW9uRjIiLCJ1bnN1cHBvcnRlZCIsInZhcmlhdGlvbkZpZWxkIiwiZmllbGRUeXBlIiwiQVJFQSIsImlzU2VsZWN0YWJsZSIsIkFycmF5IiwiaXNBcnJheSIsInNlbGVjdGFibGVPcHRpb25zIiwiY2hhbmdlZCIsIm1hcCIsIl9vcHRpb24kb3B0aW9uSWQiLCJwcmljaW5nT3B0aW9uIiwiY29zdHMiLCJfb2JqZWN0U3ByZWFkIiwiY3VycmVuY3kiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvcXVhbnRpdHlBZGp1c3RlZENvc3RzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIFF1YW50aXR5LWFkanVzdGVkIG9uY2Utb2ZmIGFuZCBwZXItdW5pdCBjb3N0cyBmb3Igc2VsZWN0IG9wdGlvbnMgYW5kIGZpZWxkIGxhYmVscy5cbiAqXG4gKiBUaGUgc2VydmVyIHNldHMgdGhlc2UgaW4gVmFyaWF0aW9ucy5nZW5lcmF0ZV92YXJpYXRpb25fb3B0aW9uIGJ5IHByaWNpbmcgZWFjaFxuICogb3B0aW9uIHdpdGggZ2V0X3ZhcmlhdGlvbl9jb3N0KFtxdWFudGl0eV0pIGFuZCBnZXRfdmFyaWF0aW9uX3VuaXRfY29zdChbcXVhbnRpdHldKS5cbiAqIE9uZSBxdWFudGl0eSBtZWFucyBib3RoIHJlc3RyaWN0ZWQgYW5kIHVucmVzdHJpY3RlZCBkaXNjb3VudHMgdXNlIHRoYXQgcXVhbnRpdHkuXG4gKiBJbmRlcGVuZGVudCBmaWVsZHMgdXNlIHRoZSBqb2IgcXVhbnRpdHkgKHRoZSBzdW0gb2YgdGhlIGdyb3VwcykuIEEgZ3JvdXAgZmllbGRcbiAqIHVzZXMgdGhhdCBncm91cCdzIHF1YW50aXR5LlxuICpcbiAqIFRoZSBkaXNjb3VudCBzdGVwIG1hdGNoZXMgQG1lcmNoaS9zZGsgcHJpY2luZyBhcHBseURpc2NvdW50IC8gdmFyaWF0aW9uVW5pdENvc3RzLlxuICovXG5cbmludGVyZmFjZSBEaXNjb3VudFRpZXIge1xuICBsb3dlckxpbWl0OiBudW1iZXI7XG4gIGFtb3VudDogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgRGlzY291bnRHcm91cCB7XG4gIGRpc2NvdW50cz86IERpc2NvdW50VGllcltdO1xufVxuXG5pbnRlcmZhY2UgQ29zdFNvdXJjZSB7XG4gIHZhcmlhdGlvbkNvc3Q/OiBudW1iZXI7XG4gIHZhcmlhdGlvblVuaXRDb3N0PzogbnVtYmVyO1xuICB2YXJpYXRpb25Db3N0RGlzY291bnRHcm91cD86IERpc2NvdW50R3JvdXAgfCBudWxsO1xuICB2YXJpYXRpb25Vbml0Q29zdERpc2NvdW50R3JvdXA/OiBEaXNjb3VudEdyb3VwIHwgbnVsbDtcbn1cblxuZnVuY3Rpb24gcm91bmRIYWxmRXZlbih2YWx1ZTogbnVtYmVyLCBkcDogbnVtYmVyKTogbnVtYmVyIHtcbiAgaWYgKCFOdW1iZXIuaXNGaW5pdGUodmFsdWUpKSByZXR1cm4gdmFsdWU7XG4gIGNvbnN0IGZhY3RvciA9IE1hdGgucG93KDEwLCBkcCk7XG4gIGNvbnN0IHNjYWxlZCA9IHZhbHVlICogZmFjdG9yO1xuICBjb25zdCBmbG9vciA9IE1hdGguZmxvb3Ioc2NhbGVkKTtcbiAgY29uc3QgZGlmZiA9IHNjYWxlZCAtIGZsb29yO1xuICBjb25zdCBFUFMgPSAxZS05O1xuICBsZXQgcm91bmRlZDogbnVtYmVyO1xuICBpZiAoTWF0aC5hYnMoZGlmZiAtIDAuNSkgPCBFUFMpIHtcbiAgICByb3VuZGVkID0gZmxvb3IgJSAyID09PSAwID8gZmxvb3IgOiBmbG9vciArIDE7XG4gIH0gZWxzZSB7XG4gICAgcm91bmRlZCA9IE1hdGgucm91bmQoc2NhbGVkKTtcbiAgfVxuICByZXR1cm4gcm91bmRlZCAvIGZhY3Rvcjtcbn1cblxuZnVuY3Rpb24gYXBwbHlEaXNjb3VudChcbiAgcHJpY2U6IG51bWJlcixcbiAgcXR5OiBudW1iZXIsXG4gIGdyb3VwOiBEaXNjb3VudEdyb3VwIHwgbnVsbCB8IHVuZGVmaW5lZFxuKTogbnVtYmVyIHtcbiAgY29uc3QgdGllcnMgPSBncm91cD8uZGlzY291bnRzIHx8IFtdO1xuICBpZiAoIXRpZXJzLmxlbmd0aCkgcmV0dXJuIHJvdW5kSGFsZkV2ZW4ocHJpY2UsIDMpO1xuICBjb25zdCBhcHBsaWNhYmxlID0gdGllcnNcbiAgICAuZmlsdGVyKCh0aWVyKSA9PiB0aWVyLmxvd2VyTGltaXQgPD0gcXR5KVxuICAgIC5zb3J0KChhLCBiKSA9PiBiLmxvd2VyTGltaXQgLSBhLmxvd2VyTGltaXQpO1xuICBjb25zdCBhbW91bnQgPSBhcHBsaWNhYmxlLmxlbmd0aCA/IGFwcGxpY2FibGVbMF0uYW1vdW50IDogMDtcbiAgcmV0dXJuIHJvdW5kSGFsZkV2ZW4ocHJpY2UgKiAoMSAtIGFtb3VudCAvIDEwMCksIDMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29zdHNBdFF1YW50aXR5KFxuICBzb3VyY2U6IENvc3RTb3VyY2UsXG4gIHF1YW50aXR5OiBudW1iZXJcbik6IHsgb25jZU9mZkNvc3Q6IG51bWJlcjsgdW5pdENvc3Q6IG51bWJlciB9IHtcbiAgY29uc3QgcXR5ID0gTnVtYmVyKHF1YW50aXR5KTtcbiAgY29uc3Qgc2FmZVF0eSA9IE51bWJlci5pc0Zpbml0ZShxdHkpID8gcXR5IDogMDtcbiAgY29uc3Qgc2V0dXBCYXNlID0gTnVtYmVyKHNvdXJjZS52YXJpYXRpb25Db3N0KTtcbiAgY29uc3QgdW5pdEJhc2UgPSBOdW1iZXIoc291cmNlLnZhcmlhdGlvblVuaXRDb3N0KTtcbiAgY29uc3Qgb25jZU9mZkJhc2UgPSBOdW1iZXIuaXNGaW5pdGUoc2V0dXBCYXNlKSA/IHNldHVwQmFzZSA6IDA7XG4gIGNvbnN0IHVuaXRTdGFydCA9IE51bWJlci5pc0Zpbml0ZSh1bml0QmFzZSkgPyB1bml0QmFzZSA6IDA7XG4gIGNvbnN0IG9uY2VPZmZDb3N0ID0gc291cmNlLnZhcmlhdGlvbkNvc3REaXNjb3VudEdyb3VwXG4gICAgPyBhcHBseURpc2NvdW50KG9uY2VPZmZCYXNlLCBzYWZlUXR5LCBzb3VyY2UudmFyaWF0aW9uQ29zdERpc2NvdW50R3JvdXApXG4gICAgOiByb3VuZEhhbGZFdmVuKG9uY2VPZmZCYXNlLCAzKTtcbiAgY29uc3QgdW5pdENvc3QgPSBzb3VyY2UudmFyaWF0aW9uVW5pdENvc3REaXNjb3VudEdyb3VwXG4gICAgPyByb3VuZEhhbGZFdmVuKFxuICAgICAgICBhcHBseURpc2NvdW50KHVuaXRTdGFydCwgc2FmZVF0eSwgc291cmNlLnZhcmlhdGlvblVuaXRDb3N0RGlzY291bnRHcm91cCksXG4gICAgICAgIDNcbiAgICAgIClcbiAgICA6IHJvdW5kSGFsZkV2ZW4odW5pdFN0YXJ0LCAzKTtcbiAgcmV0dXJuIHsgb25jZU9mZkNvc3QsIHVuaXRDb3N0IH07XG59XG5cbmZ1bmN0aW9uIHNhbWVJZChsZWZ0OiB1bmtub3duLCByaWdodDogdW5rbm93bik6IGJvb2xlYW4ge1xuICBjb25zdCBhID0gTnVtYmVyKGxlZnQpO1xuICBjb25zdCBiID0gTnVtYmVyKHJpZ2h0KTtcbiAgcmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKSAmJiBhID09PSBiO1xufVxuXG5mdW5jdGlvbiBmaW5kUHJpY2luZ0ZpZWxkKHJ1bGVzOiBhbnksIGZpZWxkSWQ6IHVua25vd24pIHtcbiAgY29uc3QgZmllbGRzID0gWy4uLihydWxlcz8uZmllbGRzIHx8IFtdKSwgLi4uKHJ1bGVzPy5ncm91cEZpZWxkcyB8fCBbXSldO1xuICByZXR1cm4gZmllbGRzLmZpbmQoXG4gICAgKGZpZWxkOiBhbnkpID0+IHNhbWVJZChmaWVsZD8uaWQsIGZpZWxkSWQpIHx8IHNhbWVJZChmaWVsZD8ub3JpZ2luYWxJZCwgZmllbGRJZClcbiAgKTtcbn1cblxuZnVuY3Rpb24gZmluZFByaWNpbmdPcHRpb24oZmllbGQ6IGFueSwgb3B0aW9uSWQ6IHVua25vd24pIHtcbiAgcmV0dXJuIChmaWVsZD8ub3B0aW9ucyB8fCBbXSkuZmluZChcbiAgICAob3B0aW9uOiBhbnkpID0+XG4gICAgICBzYW1lSWQob3B0aW9uPy5pZCwgb3B0aW9uSWQpIHx8IHNhbWVJZChvcHRpb24/Lm9yaWdpbmFsSWQsIG9wdGlvbklkKVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3JvdXBJbmRleEZyb21WYXJpYXRpb25OYW1lKG5hbWU6IHN0cmluZyk6IG51bWJlciB8IG51bGwge1xuICBjb25zdCBtYXRjaCA9IC9edmFyaWF0aW9uc0dyb3Vwc1xcWyhcXGQrKVxcXS8uZXhlYyhuYW1lIHx8ICcnKTtcbiAgcmV0dXJuIG1hdGNoID8gTnVtYmVyKG1hdGNoWzFdKSA6IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkaXNwbGF5UXVhbnRpdHkob3B0aW9uczoge1xuICBncm91cEluZGV4OiBudW1iZXIgfCBudWxsO1xuICBncm91cFF1YW50aXR5OiB1bmtub3duO1xuICBncm91cHM/OiBBcnJheTx7IHF1YW50aXR5PzogdW5rbm93biB9PiB8IG51bGw7XG4gIGpvYlF1YW50aXR5OiB1bmtub3duO1xuICBoYXNHcm91cHM6IGJvb2xlYW47XG59KTogbnVtYmVyIHtcbiAgY29uc3QgdG9RdHkgPSAodmFsdWU6IHVua25vd24pID0+IHtcbiAgICBjb25zdCBuID0gTnVtYmVyKHZhbHVlKTtcbiAgICByZXR1cm4gTnVtYmVyLmlzRmluaXRlKG4pID8gbiA6IDA7XG4gIH07XG4gIGlmIChvcHRpb25zLmdyb3VwSW5kZXggIT0gbnVsbCkgcmV0dXJuIHRvUXR5KG9wdGlvbnMuZ3JvdXBRdWFudGl0eSk7XG4gIGlmIChvcHRpb25zLmhhc0dyb3Vwcykge1xuICAgIHJldHVybiAob3B0aW9ucy5ncm91cHMgfHwgW10pLnJlZHVjZShcbiAgICAgIChzdW0sIGdyb3VwKSA9PiBzdW0gKyB0b1F0eShncm91cD8ucXVhbnRpdHkpLFxuICAgICAgMFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHRvUXR5KG9wdGlvbnMuam9iUXVhbnRpdHkpO1xufVxuXG4vKiogUmVwbGFjZSBzdGFsZSBiYXNlIHJhdGVzIG9uIGEgdmFyaWF0aW9uIHdpdGggdGhlIGNvc3RzIGZvciBgcXVhbnRpdHlgLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhRdWFudGl0eUFkanVzdGVkRGlzcGxheUNvc3RzKFxuICB2YXJpYXRpb246IGFueSxcbiAgcnVsZXM6IGFueSxcbiAgcXVhbnRpdHk6IG51bWJlclxuKSB7XG4gIGlmICghcnVsZXMgfHwgcnVsZXMudW5zdXBwb3J0ZWQgfHwgIXZhcmlhdGlvbikgcmV0dXJuIHZhcmlhdGlvbjtcbiAgY29uc3QgZmllbGQgPSBmaW5kUHJpY2luZ0ZpZWxkKHJ1bGVzLCB2YXJpYXRpb24/LnZhcmlhdGlvbkZpZWxkPy5pZCk7XG4gIGlmICghZmllbGQpIHJldHVybiB2YXJpYXRpb247XG4gIGNvbnN0IGZpZWxkVHlwZSA9IE51bWJlcihmaWVsZC5maWVsZFR5cGUgPz8gdmFyaWF0aW9uPy52YXJpYXRpb25GaWVsZD8uZmllbGRUeXBlKTtcbiAgaWYgKGZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLkFSRUEpIHJldHVybiB2YXJpYXRpb247XG5cbiAgaWYgKFxuICAgIGZpZWxkLmlzU2VsZWN0YWJsZSAmJlxuICAgIEFycmF5LmlzQXJyYXkodmFyaWF0aW9uLnNlbGVjdGFibGVPcHRpb25zKSAmJlxuICAgIHZhcmlhdGlvbi5zZWxlY3RhYmxlT3B0aW9ucy5sZW5ndGhcbiAgKSB7XG4gICAgbGV0IGNoYW5nZWQgPSBmYWxzZTtcbiAgICBjb25zdCBzZWxlY3RhYmxlT3B0aW9ucyA9IHZhcmlhdGlvbi5zZWxlY3RhYmxlT3B0aW9ucy5tYXAoKG9wdGlvbjogYW55KSA9PiB7XG4gICAgICBjb25zdCBwcmljaW5nT3B0aW9uID0gZmluZFByaWNpbmdPcHRpb24oZmllbGQsIG9wdGlvbj8ub3B0aW9uSWQgPz8gb3B0aW9uPy5pZCk7XG4gICAgICBpZiAoIXByaWNpbmdPcHRpb24pIHJldHVybiBvcHRpb247XG4gICAgICBjb25zdCBjb3N0cyA9IGNvc3RzQXRRdWFudGl0eShwcmljaW5nT3B0aW9uLCBxdWFudGl0eSk7XG4gICAgICBpZiAoXG4gICAgICAgIE51bWJlcihvcHRpb24ub25jZU9mZkNvc3QpID09PSBjb3N0cy5vbmNlT2ZmQ29zdCAmJlxuICAgICAgICBOdW1iZXIob3B0aW9uLnVuaXRDb3N0KSA9PT0gY29zdHMudW5pdENvc3RcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gb3B0aW9uO1xuICAgICAgfVxuICAgICAgY2hhbmdlZCA9IHRydWU7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5vcHRpb24sXG4gICAgICAgIG9uY2VPZmZDb3N0OiBjb3N0cy5vbmNlT2ZmQ29zdCxcbiAgICAgICAgdW5pdENvc3Q6IGNvc3RzLnVuaXRDb3N0LFxuICAgICAgICBjdXJyZW5jeTogb3B0aW9uLmN1cnJlbmN5IHx8IHJ1bGVzLmN1cnJlbmN5LFxuICAgICAgfTtcbiAgICB9KTtcbiAgICByZXR1cm4gY2hhbmdlZCA/IHsgLi4udmFyaWF0aW9uLCBzZWxlY3RhYmxlT3B0aW9ucyB9IDogdmFyaWF0aW9uO1xuICB9XG5cbiAgaWYgKGZpZWxkLmlzU2VsZWN0YWJsZSkgcmV0dXJuIHZhcmlhdGlvbjtcbiAgY29uc3QgY29zdHMgPSBjb3N0c0F0UXVhbnRpdHkoZmllbGQsIHF1YW50aXR5KTtcbiAgaWYgKFxuICAgIE51bWJlcih2YXJpYXRpb24ub25jZU9mZkNvc3QpID09PSBjb3N0cy5vbmNlT2ZmQ29zdCAmJlxuICAgIE51bWJlcih2YXJpYXRpb24udW5pdENvc3QpID09PSBjb3N0cy51bml0Q29zdFxuICApIHtcbiAgICByZXR1cm4gdmFyaWF0aW9uO1xuICB9XG4gIHJldHVybiB7XG4gICAgLi4udmFyaWF0aW9uLFxuICAgIG9uY2VPZmZDb3N0OiBjb3N0cy5vbmNlT2ZmQ29zdCxcbiAgICB1bml0Q29zdDogY29zdHMudW5pdENvc3QsXG4gICAgY3VycmVuY3k6IHZhcmlhdGlvbi5jdXJyZW5jeSB8fCBydWxlcy5jdXJyZW5jeSxcbiAgfTtcbn1c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
@@ -0,0 +1,159 @@
1
+ import { costsAtQuantity, displayQuantity, groupIndexFromVariationName, withQuantityAdjustedDisplayCosts } from './quantityAdjustedCosts';
2
+ var smallDiscounts = {
3
+ discounts: [{
4
+ amount: 30.25,
5
+ lowerLimit: 20
6
+ }, {
7
+ amount: 33.61,
8
+ lowerLimit: 30
9
+ }, {
10
+ amount: 38.66,
11
+ lowerLimit: 40
12
+ }, {
13
+ amount: 43.7,
14
+ lowerLimit: 50
15
+ }, {
16
+ amount: 45.38,
17
+ lowerLimit: 60
18
+ }]
19
+ };
20
+ var mediumDiscounts = {
21
+ discounts: [{
22
+ amount: 8.33,
23
+ lowerLimit: 10
24
+ }, {
25
+ amount: 27.78,
26
+ lowerLimit: 20
27
+ }, {
28
+ amount: 31.25,
29
+ lowerLimit: 30
30
+ }, {
31
+ amount: 34.72,
32
+ lowerLimit: 40
33
+ }, {
34
+ amount: 38.19,
35
+ lowerLimit: 50
36
+ }, {
37
+ amount: 39.58,
38
+ lowerLimit: 60
39
+ }]
40
+ };
41
+ var embroideryRules = {
42
+ currency: 'AUD',
43
+ fields: [{
44
+ id: 399949,
45
+ fieldType: 2,
46
+ isSelectable: true,
47
+ variationCost: 0,
48
+ variationUnitCost: 0,
49
+ options: [{
50
+ id: 1133340,
51
+ variationCost: 40,
52
+ variationUnitCost: 8.92,
53
+ variationCostDiscountGroup: null,
54
+ variationUnitCostDiscountGroup: smallDiscounts
55
+ }, {
56
+ id: 1133341,
57
+ variationCost: 40,
58
+ variationUnitCost: 10.8,
59
+ variationCostDiscountGroup: null,
60
+ variationUnitCostDiscountGroup: mediumDiscounts
61
+ }]
62
+ }],
63
+ groupFields: []
64
+ };
65
+ test('applies the quantity tier to an option unit cost', function () {
66
+ expect(costsAtQuantity({
67
+ variationCost: 40,
68
+ variationUnitCost: 8.92,
69
+ variationUnitCostDiscountGroup: smallDiscounts
70
+ }, 50)).toEqual({
71
+ onceOffCost: 40,
72
+ unitCost: 5.022
73
+ });
74
+ expect(costsAtQuantity({
75
+ variationCost: 40,
76
+ variationUnitCost: 10.8,
77
+ variationUnitCostDiscountGroup: mediumDiscounts
78
+ }, 50)).toEqual({
79
+ onceOffCost: 40,
80
+ unitCost: 6.675
81
+ });
82
+ });
83
+ test('keeps the base unit cost below the first discount tier', function () {
84
+ expect(costsAtQuantity({
85
+ variationCost: 40,
86
+ variationUnitCost: 8.92,
87
+ variationUnitCostDiscountGroup: smallDiscounts
88
+ }, 1)).toEqual({
89
+ onceOffCost: 40,
90
+ unitCost: 8.92
91
+ });
92
+ });
93
+ test('rewrites select option costs used by labels', function () {
94
+ var variation = {
95
+ variationField: {
96
+ id: 399949,
97
+ fieldType: 2
98
+ },
99
+ selectableOptions: [{
100
+ optionId: 1133340,
101
+ value: 'Small (5 x 5cm)',
102
+ onceOffCost: 40,
103
+ unitCost: 8.92,
104
+ currency: 'AUD'
105
+ }, {
106
+ optionId: 1133341,
107
+ value: 'Medium (7.5 x 5cm)',
108
+ onceOffCost: 40,
109
+ unitCost: 10.8,
110
+ currency: 'AUD'
111
+ }]
112
+ };
113
+ var priced = withQuantityAdjustedDisplayCosts(variation, embroideryRules, 50);
114
+ expect(priced.selectableOptions.map(function (option) {
115
+ return option.unitCost;
116
+ })).toEqual([5.022, 6.675]);
117
+ expect(priced.selectableOptions[0].onceOffCost).toBe(40);
118
+ expect(priced.selectableOptions[0].value).toBe('Small (5 x 5cm)');
119
+ });
120
+ test('leaves options alone when pricing rules are missing', function () {
121
+ var variation = {
122
+ variationField: {
123
+ id: 399949
124
+ },
125
+ selectableOptions: [{
126
+ optionId: 1133340,
127
+ onceOffCost: 40,
128
+ unitCost: 8.92
129
+ }]
130
+ };
131
+ expect(withQuantityAdjustedDisplayCosts(variation, null, 50)).toBe(variation);
132
+ });
133
+ test('prices an independent field from the summed group quantity', function () {
134
+ expect(groupIndexFromVariationName('variations')).toBeNull();
135
+ expect(groupIndexFromVariationName('variationsGroups[1].variations')).toBe(1);
136
+ expect(displayQuantity({
137
+ groupIndex: null,
138
+ groupQuantity: 0,
139
+ groups: [{
140
+ quantity: 20
141
+ }, {
142
+ quantity: '30'
143
+ }],
144
+ jobQuantity: 1,
145
+ hasGroups: true
146
+ })).toBe(50);
147
+ expect(displayQuantity({
148
+ groupIndex: 1,
149
+ groupQuantity: '30',
150
+ groups: [{
151
+ quantity: 20
152
+ }, {
153
+ quantity: 30
154
+ }],
155
+ jobQuantity: 50,
156
+ hasGroups: true
157
+ })).toBe(30);
158
+ });
159
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb3N0c0F0UXVhbnRpdHkiLCJkaXNwbGF5UXVhbnRpdHkiLCJncm91cEluZGV4RnJvbVZhcmlhdGlvbk5hbWUiLCJ3aXRoUXVhbnRpdHlBZGp1c3RlZERpc3BsYXlDb3N0cyIsInNtYWxsRGlzY291bnRzIiwiZGlzY291bnRzIiwiYW1vdW50IiwibG93ZXJMaW1pdCIsIm1lZGl1bURpc2NvdW50cyIsImVtYnJvaWRlcnlSdWxlcyIsImN1cnJlbmN5IiwiZmllbGRzIiwiaWQiLCJmaWVsZFR5cGUiLCJpc1NlbGVjdGFibGUiLCJ2YXJpYXRpb25Db3N0IiwidmFyaWF0aW9uVW5pdENvc3QiLCJvcHRpb25zIiwidmFyaWF0aW9uQ29zdERpc2NvdW50R3JvdXAiLCJ2YXJpYXRpb25Vbml0Q29zdERpc2NvdW50R3JvdXAiLCJncm91cEZpZWxkcyIsInRlc3QiLCJleHBlY3QiLCJ0b0VxdWFsIiwib25jZU9mZkNvc3QiLCJ1bml0Q29zdCIsInZhcmlhdGlvbiIsInZhcmlhdGlvbkZpZWxkIiwic2VsZWN0YWJsZU9wdGlvbnMiLCJvcHRpb25JZCIsInZhbHVlIiwicHJpY2VkIiwibWFwIiwib3B0aW9uIiwidG9CZSIsInRvQmVOdWxsIiwiZ3JvdXBJbmRleCIsImdyb3VwUXVhbnRpdHkiLCJncm91cHMiLCJxdWFudGl0eSIsImpvYlF1YW50aXR5IiwiaGFzR3JvdXBzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3F1YW50aXR5QWRqdXN0ZWRDb3N0cy50ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNvc3RzQXRRdWFudGl0eSxcbiAgZGlzcGxheVF1YW50aXR5LFxuICBncm91cEluZGV4RnJvbVZhcmlhdGlvbk5hbWUsXG4gIHdpdGhRdWFudGl0eUFkanVzdGVkRGlzcGxheUNvc3RzLFxufSBmcm9tICcuL3F1YW50aXR5QWRqdXN0ZWRDb3N0cyc7XG5cbmNvbnN0IHNtYWxsRGlzY291bnRzID0ge1xuICBkaXNjb3VudHM6IFtcbiAgICB7IGFtb3VudDogMzAuMjUsIGxvd2VyTGltaXQ6IDIwIH0sXG4gICAgeyBhbW91bnQ6IDMzLjYxLCBsb3dlckxpbWl0OiAzMCB9LFxuICAgIHsgYW1vdW50OiAzOC42NiwgbG93ZXJMaW1pdDogNDAgfSxcbiAgICB7IGFtb3VudDogNDMuNywgbG93ZXJMaW1pdDogNTAgfSxcbiAgICB7IGFtb3VudDogNDUuMzgsIGxvd2VyTGltaXQ6IDYwIH0sXG4gIF0sXG59O1xuXG5jb25zdCBtZWRpdW1EaXNjb3VudHMgPSB7XG4gIGRpc2NvdW50czogW1xuICAgIHsgYW1vdW50OiA4LjMzLCBsb3dlckxpbWl0OiAxMCB9LFxuICAgIHsgYW1vdW50OiAyNy43OCwgbG93ZXJMaW1pdDogMjAgfSxcbiAgICB7IGFtb3VudDogMzEuMjUsIGxvd2VyTGltaXQ6IDMwIH0sXG4gICAgeyBhbW91bnQ6IDM0LjcyLCBsb3dlckxpbWl0OiA0MCB9LFxuICAgIHsgYW1vdW50OiAzOC4xOSwgbG93ZXJMaW1pdDogNTAgfSxcbiAgICB7IGFtb3VudDogMzkuNTgsIGxvd2VyTGltaXQ6IDYwIH0sXG4gIF0sXG59O1xuXG5jb25zdCBlbWJyb2lkZXJ5UnVsZXMgPSB7XG4gIGN1cnJlbmN5OiAnQVVEJyxcbiAgZmllbGRzOiBbXG4gICAge1xuICAgICAgaWQ6IDM5OTk0OSxcbiAgICAgIGZpZWxkVHlwZTogMixcbiAgICAgIGlzU2VsZWN0YWJsZTogdHJ1ZSxcbiAgICAgIHZhcmlhdGlvbkNvc3Q6IDAsXG4gICAgICB2YXJpYXRpb25Vbml0Q29zdDogMCxcbiAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAxMTMzMzQwLFxuICAgICAgICAgIHZhcmlhdGlvbkNvc3Q6IDQwLFxuICAgICAgICAgIHZhcmlhdGlvblVuaXRDb3N0OiA4LjkyLFxuICAgICAgICAgIHZhcmlhdGlvbkNvc3REaXNjb3VudEdyb3VwOiBudWxsLFxuICAgICAgICAgIHZhcmlhdGlvblVuaXRDb3N0RGlzY291bnRHcm91cDogc21hbGxEaXNjb3VudHMsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogMTEzMzM0MSxcbiAgICAgICAgICB2YXJpYXRpb25Db3N0OiA0MCxcbiAgICAgICAgICB2YXJpYXRpb25Vbml0Q29zdDogMTAuOCxcbiAgICAgICAgICB2YXJpYXRpb25Db3N0RGlzY291bnRHcm91cDogbnVsbCxcbiAgICAgICAgICB2YXJpYXRpb25Vbml0Q29zdERpc2NvdW50R3JvdXA6IG1lZGl1bURpc2NvdW50cyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXSxcbiAgZ3JvdXBGaWVsZHM6IFtdLFxufTtcblxudGVzdCgnYXBwbGllcyB0aGUgcXVhbnRpdHkgdGllciB0byBhbiBvcHRpb24gdW5pdCBjb3N0JywgKCkgPT4ge1xuICBleHBlY3QoXG4gICAgY29zdHNBdFF1YW50aXR5KFxuICAgICAge1xuICAgICAgICB2YXJpYXRpb25Db3N0OiA0MCxcbiAgICAgICAgdmFyaWF0aW9uVW5pdENvc3Q6IDguOTIsXG4gICAgICAgIHZhcmlhdGlvblVuaXRDb3N0RGlzY291bnRHcm91cDogc21hbGxEaXNjb3VudHMsXG4gICAgICB9LFxuICAgICAgNTBcbiAgICApXG4gICkudG9FcXVhbCh7IG9uY2VPZmZDb3N0OiA0MCwgdW5pdENvc3Q6IDUuMDIyIH0pO1xuICBleHBlY3QoXG4gICAgY29zdHNBdFF1YW50aXR5KFxuICAgICAge1xuICAgICAgICB2YXJpYXRpb25Db3N0OiA0MCxcbiAgICAgICAgdmFyaWF0aW9uVW5pdENvc3Q6IDEwLjgsXG4gICAgICAgIHZhcmlhdGlvblVuaXRDb3N0RGlzY291bnRHcm91cDogbWVkaXVtRGlzY291bnRzLFxuICAgICAgfSxcbiAgICAgIDUwXG4gICAgKVxuICApLnRvRXF1YWwoeyBvbmNlT2ZmQ29zdDogNDAsIHVuaXRDb3N0OiA2LjY3NSB9KTtcbn0pO1xuXG50ZXN0KCdrZWVwcyB0aGUgYmFzZSB1bml0IGNvc3QgYmVsb3cgdGhlIGZpcnN0IGRpc2NvdW50IHRpZXInLCAoKSA9PiB7XG4gIGV4cGVjdChcbiAgICBjb3N0c0F0UXVhbnRpdHkoXG4gICAgICB7XG4gICAgICAgIHZhcmlhdGlvbkNvc3Q6IDQwLFxuICAgICAgICB2YXJpYXRpb25Vbml0Q29zdDogOC45MixcbiAgICAgICAgdmFyaWF0aW9uVW5pdENvc3REaXNjb3VudEdyb3VwOiBzbWFsbERpc2NvdW50cyxcbiAgICAgIH0sXG4gICAgICAxXG4gICAgKVxuICApLnRvRXF1YWwoeyBvbmNlT2ZmQ29zdDogNDAsIHVuaXRDb3N0OiA4LjkyIH0pO1xufSk7XG5cbnRlc3QoJ3Jld3JpdGVzIHNlbGVjdCBvcHRpb24gY29zdHMgdXNlZCBieSBsYWJlbHMnLCAoKSA9PiB7XG4gIGNvbnN0IHZhcmlhdGlvbiA9IHtcbiAgICB2YXJpYXRpb25GaWVsZDogeyBpZDogMzk5OTQ5LCBmaWVsZFR5cGU6IDIgfSxcbiAgICBzZWxlY3RhYmxlT3B0aW9uczogW1xuICAgICAgeyBvcHRpb25JZDogMTEzMzM0MCwgdmFsdWU6ICdTbWFsbCAoNSB4IDVjbSknLCBvbmNlT2ZmQ29zdDogNDAsIHVuaXRDb3N0OiA4LjkyLCBjdXJyZW5jeTogJ0FVRCcgfSxcbiAgICAgIHsgb3B0aW9uSWQ6IDExMzMzNDEsIHZhbHVlOiAnTWVkaXVtICg3LjUgeCA1Y20pJywgb25jZU9mZkNvc3Q6IDQwLCB1bml0Q29zdDogMTAuOCwgY3VycmVuY3k6ICdBVUQnIH0sXG4gICAgXSxcbiAgfTtcblxuICBjb25zdCBwcmljZWQgPSB3aXRoUXVhbnRpdHlBZGp1c3RlZERpc3BsYXlDb3N0cyh2YXJpYXRpb24sIGVtYnJvaWRlcnlSdWxlcywgNTApO1xuXG4gIGV4cGVjdChwcmljZWQuc2VsZWN0YWJsZU9wdGlvbnMubWFwKChvcHRpb246IGFueSkgPT4gb3B0aW9uLnVuaXRDb3N0KSkudG9FcXVhbChbXG4gICAgNS4wMjIsXG4gICAgNi42NzUsXG4gIF0pO1xuICBleHBlY3QocHJpY2VkLnNlbGVjdGFibGVPcHRpb25zWzBdLm9uY2VPZmZDb3N0KS50b0JlKDQwKTtcbiAgZXhwZWN0KHByaWNlZC5zZWxlY3RhYmxlT3B0aW9uc1swXS52YWx1ZSkudG9CZSgnU21hbGwgKDUgeCA1Y20pJyk7XG59KTtcblxudGVzdCgnbGVhdmVzIG9wdGlvbnMgYWxvbmUgd2hlbiBwcmljaW5nIHJ1bGVzIGFyZSBtaXNzaW5nJywgKCkgPT4ge1xuICBjb25zdCB2YXJpYXRpb24gPSB7XG4gICAgdmFyaWF0aW9uRmllbGQ6IHsgaWQ6IDM5OTk0OSB9LFxuICAgIHNlbGVjdGFibGVPcHRpb25zOiBbeyBvcHRpb25JZDogMTEzMzM0MCwgb25jZU9mZkNvc3Q6IDQwLCB1bml0Q29zdDogOC45MiB9XSxcbiAgfTtcbiAgZXhwZWN0KHdpdGhRdWFudGl0eUFkanVzdGVkRGlzcGxheUNvc3RzKHZhcmlhdGlvbiwgbnVsbCwgNTApKS50b0JlKHZhcmlhdGlvbik7XG59KTtcblxudGVzdCgncHJpY2VzIGFuIGluZGVwZW5kZW50IGZpZWxkIGZyb20gdGhlIHN1bW1lZCBncm91cCBxdWFudGl0eScsICgpID0+IHtcbiAgZXhwZWN0KGdyb3VwSW5kZXhGcm9tVmFyaWF0aW9uTmFtZSgndmFyaWF0aW9ucycpKS50b0JlTnVsbCgpO1xuICBleHBlY3QoZ3JvdXBJbmRleEZyb21WYXJpYXRpb25OYW1lKCd2YXJpYXRpb25zR3JvdXBzWzFdLnZhcmlhdGlvbnMnKSkudG9CZSgxKTtcbiAgZXhwZWN0KFxuICAgIGRpc3BsYXlRdWFudGl0eSh7XG4gICAgICBncm91cEluZGV4OiBudWxsLFxuICAgICAgZ3JvdXBRdWFudGl0eTogMCxcbiAgICAgIGdyb3VwczogW3sgcXVhbnRpdHk6IDIwIH0sIHsgcXVhbnRpdHk6ICczMCcgfV0sXG4gICAgICBqb2JRdWFudGl0eTogMSxcbiAgICAgIGhhc0dyb3VwczogdHJ1ZSxcbiAgICB9KVxuICApLnRvQmUoNTApO1xuICBleHBlY3QoXG4gICAgZGlzcGxheVF1YW50aXR5KHtcbiAgICAgIGdyb3VwSW5kZXg6IDEsXG4gICAgICBncm91cFF1YW50aXR5OiAnMzAnLFxuICAgICAgZ3JvdXBzOiBbeyBxdWFudGl0eTogMjAgfSwgeyBxdWFudGl0eTogMzAgfV0sXG4gICAgICBqb2JRdWFudGl0eTogNTAsXG4gICAgICBoYXNHcm91cHM6IHRydWUsXG4gICAgfSlcbiAgKS50b0JlKDMwKTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUNFQSxlQUFlLEVBQ2ZDLGVBQWUsRUFDZkMsMkJBQTJCLEVBQzNCQyxnQ0FBZ0MsUUFDM0IseUJBQXlCO0FBRWhDLElBQU1DLGNBQWMsR0FBRztFQUNyQkMsU0FBUyxFQUFFLENBQ1Q7SUFBRUMsTUFBTSxFQUFFLEtBQUs7SUFBRUMsVUFBVSxFQUFFO0VBQUcsQ0FBQyxFQUNqQztJQUFFRCxNQUFNLEVBQUUsS0FBSztJQUFFQyxVQUFVLEVBQUU7RUFBRyxDQUFDLEVBQ2pDO0lBQUVELE1BQU0sRUFBRSxLQUFLO0lBQUVDLFVBQVUsRUFBRTtFQUFHLENBQUMsRUFDakM7SUFBRUQsTUFBTSxFQUFFLElBQUk7SUFBRUMsVUFBVSxFQUFFO0VBQUcsQ0FBQyxFQUNoQztJQUFFRCxNQUFNLEVBQUUsS0FBSztJQUFFQyxVQUFVLEVBQUU7RUFBRyxDQUFDO0FBRXJDLENBQUM7QUFFRCxJQUFNQyxlQUFlLEdBQUc7RUFDdEJILFNBQVMsRUFBRSxDQUNUO0lBQUVDLE1BQU0sRUFBRSxJQUFJO0lBQUVDLFVBQVUsRUFBRTtFQUFHLENBQUMsRUFDaEM7SUFBRUQsTUFBTSxFQUFFLEtBQUs7SUFBRUMsVUFBVSxFQUFFO0VBQUcsQ0FBQyxFQUNqQztJQUFFRCxNQUFNLEVBQUUsS0FBSztJQUFFQyxVQUFVLEVBQUU7RUFBRyxDQUFDLEVBQ2pDO0lBQUVELE1BQU0sRUFBRSxLQUFLO0lBQUVDLFVBQVUsRUFBRTtFQUFHLENBQUMsRUFDakM7SUFBRUQsTUFBTSxFQUFFLEtBQUs7SUFBRUMsVUFBVSxFQUFFO0VBQUcsQ0FBQyxFQUNqQztJQUFFRCxNQUFNLEVBQUUsS0FBSztJQUFFQyxVQUFVLEVBQUU7RUFBRyxDQUFDO0FB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