@stamhoofd/structures 2.109.0 → 2.111.0
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.
- package/dist/src/billing/Invoice.d.ts +8 -2
- package/dist/src/billing/Invoice.d.ts.map +1 -1
- package/dist/src/billing/Invoice.js +44 -9
- package/dist/src/billing/Invoice.js.map +1 -1
- package/dist/src/billing/Invoice.test.d.ts +2 -0
- package/dist/src/billing/Invoice.test.d.ts.map +1 -0
- package/dist/src/billing/Invoice.test.js +188 -0
- package/dist/src/billing/Invoice.test.js.map +1 -0
- package/dist/src/billing/InvoicedBalanceItem.d.ts +5 -3
- package/dist/src/billing/InvoicedBalanceItem.d.ts.map +1 -1
- package/dist/src/billing/InvoicedBalanceItem.js +15 -6
- package/dist/src/billing/InvoicedBalanceItem.js.map +1 -1
- package/dist/src/billing/InvoicedBalanceItem.test.js +31 -12
- package/dist/src/billing/InvoicedBalanceItem.test.js.map +1 -1
- package/dist/src/filters/PropertyFilter.d.ts +1 -0
- package/dist/src/filters/PropertyFilter.d.ts.map +1 -1
- package/dist/src/filters/PropertyFilter.js +97 -0
- package/dist/src/filters/PropertyFilter.js.map +1 -1
- package/dist/src/members/OrganizationRecordsConfiguration.d.ts.map +1 -1
- package/dist/src/members/OrganizationRecordsConfiguration.js +54 -9
- package/dist/src/members/OrganizationRecordsConfiguration.js.map +1 -1
- package/dist/src/members/PlatformMember.d.ts +4 -0
- package/dist/src/members/PlatformMember.d.ts.map +1 -1
- package/dist/src/members/PlatformMember.js +26 -2
- package/dist/src/members/PlatformMember.js.map +1 -1
- package/esm/dist/src/billing/Invoice.d.ts +8 -2
- package/esm/dist/src/billing/Invoice.d.ts.map +1 -1
- package/esm/dist/src/billing/Invoice.js +45 -10
- package/esm/dist/src/billing/Invoice.js.map +1 -1
- package/esm/dist/src/billing/InvoicedBalanceItem.d.ts +5 -3
- package/esm/dist/src/billing/InvoicedBalanceItem.d.ts.map +1 -1
- package/esm/dist/src/billing/InvoicedBalanceItem.js +15 -6
- package/esm/dist/src/billing/InvoicedBalanceItem.js.map +1 -1
- package/esm/dist/src/filters/PropertyFilter.d.ts +1 -0
- package/esm/dist/src/filters/PropertyFilter.d.ts.map +1 -1
- package/esm/dist/src/filters/PropertyFilter.js +98 -1
- package/esm/dist/src/filters/PropertyFilter.js.map +1 -1
- package/esm/dist/src/members/OrganizationRecordsConfiguration.d.ts.map +1 -1
- package/esm/dist/src/members/OrganizationRecordsConfiguration.js +54 -9
- package/esm/dist/src/members/OrganizationRecordsConfiguration.js.map +1 -1
- package/esm/dist/src/members/PlatformMember.d.ts +4 -0
- package/esm/dist/src/members/PlatformMember.d.ts.map +1 -1
- package/esm/dist/src/members/PlatformMember.js +26 -2
- package/esm/dist/src/members/PlatformMember.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformMember.js","sourceRoot":"","sources":["../../../src/members/PlatformMember.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlatformMember.js","sourceRoot":"","sources":["../../../src/members/PlatformMember.ts"],"names":[],"mappings":";;;AAAA,iEAAmJ;AAEnJ,sDAAgD;AAEhD,kDAA4C;AAG5C,8DAAwD;AACxD,8EAAwE;AAGxE,gDAA0C;AAK1C,oGAA8F;AAE9F,2CAAqC;AACrC,yDAAmE;AACnE,qFAA4F;AAE5F,uFAAiF;AAEjF,+FAAyF;AAEzF,uDAAiD;AAEjD,wEAAkE;AAClE,gEAA0D;AAI1D,gEAA4D;AAE5D,MAAa,cAAc;IAyBvB,YAAY,OAA0E;QAxBtF,YAAO,GAAqB,EAAE,CAAC;QAC/B,cAAS,GAAqB,EAAE,CAAC;QAEjC;;WAEG;QACH,aAAQ,GAAG,IAAI,sCAAgB,EAAE,CAAC;QAElC;;WAEG;QACH,yBAAoB,GAAmB,EAAE,CAAC;QAG1C,kBAAa,GAAmB,EAAE,CAAC;QAEnC;;;;;WAKG;QACH,cAAS,GAAG,KAAK,CAAC;QAGd,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACJ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC;QACd,CAAC;QAED,mDAAmD;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QACxG,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxB,CAAC;IAED,kBAAkB,CAAC,YAA0B;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,QAAQ,EAAE,CAAC;YACX,2DAA2D;YAC3D,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC5B,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACnC,CAAC;YACD,OAAO;QACX,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAED,eAAe,CAAC,EAAU;;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE,CAAC;YACJ,OAAO,CAAC,CAAC;QACb,CAAC;QACD,yBAAyB;QACzB,IAAI,CAAA,MAAA,IAAI,CAAC,QAAQ,CAAC,kBAAkB,0CAAE,EAAE,MAAK,EAAE,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAC5C,CAAC;QACD,MAAM,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,EAAE,CAAC;YACJ,OAAO,CAAC,CAAC,YAAY,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,IAAiB,EAAE,OAA0E;QACvG,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC5B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,cAAc,CAAC,IAAiB,EAAE,aAAa,GAAG,KAAK;QACnD,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5C,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,QAAQ,EAAE,CAAC;gBACX,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChC,SAAS;YACb,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;gBACtC,MAAM;gBACN,MAAM,EAAE,IAAI;aACf,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAChB,4BAA4B;YAC5B,IAAA,8BAAY,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAyB,EAAE,IAAiB;QAC9D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,SAAS;YACb,CAAC;YACD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACnC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAiB;QAC5B,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5C,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,QAAQ,EAAE,CAAC;gBACX,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;QACL,CAAC;IACL,CAAC;IAED,SAAS;QACL,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;YAC9B,MAAM,EAAE,4DAA2B,CAAC,MAAM,CAAC;gBACvC,OAAO,EAAE,gCAAa,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,EAAE;aACpB,CAAC;YACF,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,IAAI;SACd,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,IAAiB,EAAE,OAA0E;QAC9G,MAAM,UAAU,GAAqB,EAAE,CAAC;QAExC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;YAExB,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC5C,wDAAwD;gBACxD,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;oBAChO,MAAM,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;gBAC5C,CAAC;YACL,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;gBACtC,MAAM;gBACN,MAAM;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACpC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK;QACD,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SAC1B,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAC1C,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACxD,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,KAAqB;;QAC/B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,WAAW,GAAG,MAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,mCACxD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAE3H,IAAI,WAAW,EAAE,CAAC;gBACd,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC1C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;gBAC5B,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;gBAEjC,IAAI,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;oBACtD,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;gBAC5D,CAAC;YACL,CAAC;iBACI,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;YACxF,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,CAAC;QACL,CAAC;QAED,2CAA2C;QAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhF,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YAClC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,OAAgB,EAAE,IAA+C;QACnF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QAEtC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAExC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACvC,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAA,IAAI,MAAM,CAAC,EAAE,MAAK,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAA,EAAE,CAAC;oBAClD,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,YAAY,EAAE,CAAC;wBACnE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACvD,CAAC;gBACL,CAAC;YACL,CAAC;YAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAA,IAAI,MAAM,CAAC,EAAE,MAAK,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAA,EAAE,CAAC;wBAClD,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,YAAY,EAAE,CAAC;4BAC7C,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACjC,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,0BAA0B,CAAC,IAA8C;QACrE,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC7C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3F,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChD,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBACvC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACzG,CAAC;YACL,CAAC;YAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACjD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC7D,CAAC;YACL,CAAC;YAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACjB,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC7D,CAAC;gBACL,CAAC;YACL,CAAC;YAED,KAAK,MAAM,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBACxE,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,SAAS;QACT,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC7C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3F,CAAC;YAED,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACvC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACzG,CAAC;YAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACjD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC7D,CAAC;YACL,CAAC;YAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC7D,CAAC;YACL,CAAC;YAED,KAAK,MAAM,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBACxE,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO;QACP,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,QAAiB,EAAE,QAAiB;QAC9C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAClF,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACL,CAAC;IACL,CAAC;IAED,uDAAuD;IACvD,WAAW,CAAC,MAAoC;QAC5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;QACL,CAAC;IACL,CAAC;IAED,mBAAmB,CAAC,MAAc;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACnG,CAAC;IAED,qBAAqB,CAAC,gBAAwD;QAC1E,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC;gBACzF,MAAM,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;YACnD,CAAC;QACL,CAAC;IACL,CAAC;IAED,0BAA0B;QACtB,MAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;QACjC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAA,wCAAkB,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,IAAA,wCAAkB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC1C,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACnB,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtB,CAAC;QACL,CAAC;QACD,MAAM,cAAc,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;QAEtC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CAAC,wBAAS,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC1H,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACrB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBAC1B,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACjD,CAAC;gBACD,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAE1C,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAChE,IAAI,YAAY,EAAE,CAAC;oBACf,KAAK,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;wBACvC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC9B,CAAC;gBACL,CAAC;gBAED,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;oBACnC,MAAM,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;oBACnF,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;wBACb,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAChB,CAAC;oBAED,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oBAC7H,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;wBACd,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACjB,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,CAAC,IAAI,CAAC;YACR,QAAQ,EAAE;gBACN,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;aAClC;YACD,kBAAkB,EAAE;gBAChB,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;aAC3C;YACD,cAAc,EAAE;gBACZ,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;aAC3C;YACD,kBAAkB,EAAE;gBAChB,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC;aAC5C;SACJ,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC;gBACR,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9B,IAAI,EAAE;wBACF;4BACI,GAAG,EAAE;gCACD,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;6BAC5B;yBACJ;wBACD;4BACI,GAAG,EAAE;gCACD,EAAE,MAAM,EAAE,IAAI,EAAE;gCAChB,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;6BAC5B;yBACJ;qBACJ;iBACJ,CAAC,CAAC;aACN,CAAC,CAAC;QACP,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,YAAY,CAAC,EAAU;QACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,YAAY,CAAC,SAA2B;QACpC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,MAAmC;QAC/C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAErF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,GAAG,CAAC,cAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,cAAc,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACjC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC;QACjC,CAAC;IACL,CAAC;CACJ;AA1dD,wCA0dC;AAED,MAAa,oBAAqB,SAAQ,8BAAY;IAGlD,MAAM,CAAC,aAAa,CAAC,IAAuB,EAAE,OAA0E;QACpH,MAAM,OAAO,GAA2B,EAAE,CAAC;QAE3C,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;YAEnC,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC5C,wDAAwD;gBACxD,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;oBAChO,MAAM,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;gBAC5C,CAAC;YACL,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;gBACtC,MAAM;gBACN,MAAM;aACT,CAAC,CAAC;YAEH,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,CAAC;gBACrD,GAAG,YAAY;gBACf,MAAM,EAAE,cAAc;aACzB,CAAC,CAAC;YAEH,0BAA0B;YAC1B,oBAAoB,CAAC,MAAM,GAAG,cAAc,CAAC;YAE7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AApCD,oDAoCC;AAED,MAAa,cAAc;IAiBvB,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IAC1B,CAAC;IAED,YAAY,IAMX;;QAvBD,oBAAoB;QACpB,iBAAY,GAA6D,IAAI,CAAC;QAC9E,gBAAW,GAAmB,IAAI,CAAC;QAGnC,UAAK,GAAG,KAAK,CAAC;QAEd;;;WAGG;QACH,kBAAa,GAAG,KAAK,CAAC;QAalB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,KAAK,mCAAI,4DAA2B,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,KAAK,mCAAI,KAAK,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,CAAC,MAAA,IAAI,CAAC,aAAa,mCAAI,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;IACrE,CAAC;IAED,KAAK;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACnC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAE,CAAC;IACvD,CAAC;IAED,gBAAgB,CAAC,MAAsB;QACnC,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YAC3B,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;SAC5B,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC;IACb,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;IACrC,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;IACnE,CAAC;IAED,IAAI,mBAAmB;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;IACzH,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,kEAA8B,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,mBAAmB;QACnB,OAAO,kEAA8B,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,uBAAuB;QACvB,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,uBAAuB,CAAC;IAC9D,CAAC;IAED,6BAA6B,CAAC,EAAE,KAAK,EAAE,GAAG,EAA8B;QACpE,OAAO,kEAA8B,CAAC,6BAA6B,CAAC;YAChE,WAAW,EAAE,IAAI,CAAC,mBAAmB;YACrC,KAAK;YACL,GAAG;SACN,CAAC,CAAC;IACP,CAAC;IAED,QAAQ,CAAC,CAA2E;QAChF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,4DAA2B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,mBAAmB,CAAC,gBAAkC;QAClD,MAAM,GAAG,GAAG,IAAI,gCAAc,EAAiD,CAAC;QAChF,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,CAAC;YACjB,iBAAiB,EAAE,GAAG;SACzB,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CAAC,gBAAwD;QAC1E,MAAM,GAAG,GAAG,IAAI,gCAAc,EAAiD,CAAC;QAChF,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC/B,IAAI,CAAC,eAAe,CAAC;YACjB,iBAAiB,EAAE,GAAG;SACzB,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CAAC,MAAc;QACpB,MAAM,GAAG,GAAG,IAAI,gCAAc,EAAuC,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,eAAe,CAAC;YACjB,OAAO,EAAE,GAAG;SACf,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,MAAoC;QAC5C,MAAM,GAAG,GAAG,IAAI,gCAAc,EAAuC,CAAC;QACtE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,eAAe,CAAC;YACjB,OAAO,EAAE,GAAG;SACf,CAAC,CAAC;IACP,CAAC;IAED,eAAe,CAAC,CAA6D;QACzE,IAAI,CAAC,QAAQ,CAAC;YACV,OAAO,EAAE,gCAAa,CAAC,KAAK,CAAC,CAAC,CAAC;SAClC,CAAC,CAAC;IACP,CAAC;IAED,4BAA4B,CAAC,QAAwB;;QACjD,IAAI,CAAC,QAAQ,KAAK,kBAAkB,IAAI,QAAQ,KAAK,cAAc,CAAC;eAC7D,CAAA,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,0CAAE,KAAK,MAAK,KAAK,EAAE,CAAC;YACjE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,QAAQ,KAAK,gBAAgB,IAAI,QAAQ,KAAK,kBAAkB,EAAE,CAAC;YACnE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtD,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,QAAQ,KAAK,gCAAgC,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,sBAAsB,KAAK,8DAA4B,EAAE,CAAC;gBACrF,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,QAAQ,GAAG,wBAAwB,CAAC;QACxC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAChE,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,iBAAiB,CAAC,QAAwB,EAAE,OAAgH;;QACxJ,IAAI,QAAQ,KAAK,gCAAgC,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,sBAAsB,KAAK,8DAA4B,EAAE,CAAC;gBACrF,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,QAAQ,GAAG,wBAAwB,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,QAAQ,KAAK,kBAAkB,IAAI,QAAQ,KAAK,cAAc,CAAC;eAC7D,CAAA,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,0CAAE,KAAK,MAAK,KAAK,EAAE,CAAC;YACjE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,KAAI,CAAC,QAAQ,KAAK,kBAAkB,IAAI,QAAQ,KAAK,cAAc,CAAC,EAAE,CAAC;YAChG,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YAChG,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjB,4CAA4C;gBAC5C,IAAI,gBAAgB,GAAG,KAAK,CAAC;gBAC7B,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAE,CAAC,EAAE,CAAC;oBAC5I,IAAI,MAAA,MAAA,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,0CAAE,eAAe,CAAC,YAAY,EAAE,sBAAQ,CAAC,MAAM,CAAC,0CAAE,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,KAAK,oCAAe,CAAC,IAAI,CAAC,CAAC,CAAC,4BAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC,4BAAW,CAAC,wBAAwB,CAAC,EAAE,CAAC;wBAClP,gBAAgB,GAAG,IAAI,CAAC;wBACxB,MAAM;oBACV,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,KAAI,CAAC,QAAQ,KAAK,wBAAwB,CAAC,EAAE,CAAC;YACvE,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YAChG,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjB,4CAA4C;gBAC5C,IAAI,gBAAgB,GAAG,KAAK,CAAC;gBAC7B,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAE,CAAC,EAAE,CAAC;oBAC5I,IAAI,MAAA,MAAA,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,0CAAE,eAAe,CAAC,YAAY,EAAE,sBAAQ,CAAC,MAAM,CAAC,0CAAE,cAAc,CAAC,4BAAW,CAAC,eAAe,CAAC,EAAE,CAAC;wBACzI,gBAAgB,GAAG,IAAI,CAAC;wBACxB,MAAM;oBACV,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,2BAA2B,CAAC;YAC3D,aAAa,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YACtD,mIAAmI;YACnI,iCAAiC;YACjC,cAAc,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YACvD,MAAM,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW;SAC/B,CAAC,CAAC;QAEH,KAAK,MAAM,oBAAoB,IAAI,qBAAqB,EAAE,CAAC;YACvD,IAAI,QAAQ,KAAK,gBAAgB,IAAI,QAAQ,KAAK,kBAAkB,EAAE,CAAC;gBACnE,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjC,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,SAAS;YACb,CAAC;YAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAA0B,CAAC;YACpE,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACf,SAAS;YACb,CAAC;YACD,IAAI,GAAG,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,6BAA6B,CAAC,QAAwB;QAClD,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,QAAQ,KAAK,gCAAgC,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,sBAAsB,KAAK,8DAA4B,EAAE,CAAC;gBACrF,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,QAAQ,GAAG,wBAAwB,CAAC;QACxC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAEhE,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC;QACf,CAAC;QAED,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,kBAAkB,CAAC,QAAwB,EAAE,OAAgH;QACzJ,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,QAAQ,KAAK,gCAAgC,EAAE,CAAC;YAChD,QAAQ,GAAG,wBAAwB,CAAC;QACxC,CAAC;QAED,IAAI,QAAQ,KAAK,wBAAwB,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,sBAAsB,KAAK,8DAA4B,EAAE,CAAC;YAC9H,4CAA4C;YAC5C,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,2BAA2B,CAAC,EAAE,aAAa,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAE,CAAC,CAAC;QAEzJ,KAAK,MAAM,oBAAoB,IAAI,qBAAqB,EAAE,CAAC;YACvD,MAAM,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE,CAAC;gBAC3B,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACf,OAAO,GAAG,CAAC;gBACf,CAAC;gBACD,SAAS;YACb,CAAC;YAED,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACf,SAAS;YACb,CAAC;YACD,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,WAAW;QACP,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,4DAA2B,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAEvE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC5B,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CAAC,OAYnB;QACG,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;;YACjD,IAAI,CAAC,CAAC,YAAY,KAAK,IAAI,IAAI,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBACtD,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC;gBACxE,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxC,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClE,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5D,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,kBAAkB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;gBAChI,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;gBACnE,MAAM,eAAe,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAE7F,IAAI,eAAe,KAAK,OAAO,CAAC,aAAa,EAAE,CAAC;oBAC5C,IAAI,CAAC,CAAC,MAAA,OAAO,CAAC,aAAa,mCAAI,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;wBAC5E,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;4BACzB,+BAA+B;4BAC/B,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;4BAC5G,IAAI,CAAC,gBAAgB,EAAE,CAAC;gCACpB,OAAO,KAAK,CAAC;4BACjB,CAAC;wBACL,CAAC;6BACI,CAAC;4BACF,OAAO,KAAK,CAAC;wBACjB,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;iBACI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;gBAEnE,+BAA+B;gBAC/B,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;gBAC5G,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;YAED,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC5D,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrE,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC7E,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,YAAY,CAAC,OAWZ;QACG,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,IAAI,GAAY,EAAE,CAAC;QAEzB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,SAAS;YACb,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QAED,gBAAgB;QAChB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAC3F,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;oBAC7B,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;wBAClC,SAAS;oBACb,CAAC;oBAED,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;wBAC/D,SAAS;oBACb,CAAC;oBAED,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACxE,SAAS;oBACb,CAAC;oBAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;wBACpC,SAAS;oBACb,CAAC;oBAED,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;wBACvC,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC;4BAClD,SAAS;wBACb,CAAC;oBACL,CAAC;oBAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC1B,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,2BAA2B,CAAC,OAQ3B;QACG,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QACvE,MAAM,cAAc,GAAuC,EAAE,CAAC;QAE9D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACvE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,SAAS;YACb,CAAC;YAED,cAAc,CAAC,IAAI,CACf,sEAAgC,CAAC,KAAK,CAAC;gBACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,YAAY;gBACZ,KAAK;gBACL,YAAY,EAAE,IAAI;aACrB,CAAC,CACL,CAAC;QACN,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,cAAc,CAAC,IAAI,CACf,sEAAgC,CAAC,KAAK,CAAC;gBACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;aAC1B,CAAC,CACL,CAAC;QACN,CAAC;QAED,OAAO,cAAc,CAAC;IAC1B,CAAC;IAED,mBAAmB,CAAC,OAQnB;QACG,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,IAAI,GAAmB,EAAE,CAAC;QAEhC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;gBACvD,SAAS;YACb,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YAC9E,IAAI,YAAY,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5B,CAAC;QACL,CAAC;QAED,gBAAgB;QAChB,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC3F,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;oBAClC,SAAS;gBACb,CAAC;gBAED,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;oBAC/D,SAAS;gBACb,CAAC;gBAED,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACxE,SAAS;gBACb,CAAC;gBAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACpC,SAAS;gBACb,CAAC;gBAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC3C,SAAS;oBACb,CAAC;gBACL,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC;QACL,CAAC;QAED,wBAAwB;QACxB,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC/B,KAAK,MAAM,cAAc,IAAI,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;gBAC/D,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;oBAC3B,SAAS;gBACb,CAAC;gBAED,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;oBACjC,SAAS;gBACb,CAAC;gBAED,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC;oBACzD,SAAS;gBACb,CAAC;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;gBAChF,IAAI,YAAY,EAAE,CAAC;oBACf,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,wBAAS,CAAC,UAAU,EAAE,wBAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACzJ,CAAC;IAED,IAAI,uBAAuB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,kBAAkB,CAAC,YAA0B;QACzC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjD,CAAC;IAED,WAAW,CAAC,KAAY,EAAE,YAA0B;QAChD,MAAM,IAAI,GAAG,8BAAY,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QAEhE,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC;QACnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,yBAAyB,CAAC,KAAY,EAAE,YAA0B;QAC9D,MAAM,IAAI,GAAG,8BAAY,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QAEhE,MAAM,KAAK,GAAG,IAAI,CAAC,6BAA6B,CAAC;QACjD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,aAAa;QACb,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,eAAe,CAAC,MAAuB;QACnC,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,sBAAsB;QAClB,oBAAoB;QACpB,MAAM,UAAU,GAAqB,EAAE,CAAC;QACxC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;QAE/E,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5C,UAAU,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,0BAA0B,CAAC,OAI1B;;QACG,MAAM,UAAU,GAAqB,EAAE,CAAC;QACxC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAmB,CAAC;QAEvD,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAClD,MAAM,aAAa,GAAG,MAAA,MAAA,OAAO,CAAC,gBAAgB,0CAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,mCAAI,KAAK,CAAC;QAC1G,IAAI,CAAC,aAAa,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7E,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC;QAC/C,CAAC;QAED,oBAAoB;QACpB,MAAM,mBAAmB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACxI,MAAM,qBAAqB,GAAG,IAAI,CAAC,2BAA2B,CAAC;YAC3D,aAAa,EAAE,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YAC7E,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACtG,cAAc,EAAE,MAAA,MAAA,OAAO,CAAC,iBAAiB,0CAAE,EAAE,mCAAI,SAAS;SAC7D,CAAC,CAAC;QAEH,KAAK,MAAM,oBAAoB,IAAI,qBAAqB,EAAE,CAAC;YACvD,KAAK,MAAM,cAAc,IAAI,oBAAoB,CAAC,gBAAgB,EAAE,CAAC;gBACjE,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC;oBACnD,gBAAgB;oBAChB,SAAS;gBACb,CAAC;gBAED,IAAI,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,IAAI,gBAAgB,EAAE,CAAC;wBACnB,IAAI,yBAAyB,GAAG,KAAK,CAAC;wBACtC,IAAI,mBAAmB,GAAG,KAAK,CAAC;wBAChC,IAAI,aAAa,EAAE,CAAC;4BAChB,yBAAyB,GAAG,cAAc,CAAC,6BAA6B,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;wBACrG,CAAC;wBACD,IAAI,CAAC,yBAAyB,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BAClE,oBAAoB;4BACpB,kFAAkF;4BAClF,KAAK,MAAM,YAAY,IAAI,mBAAmB,EAAE,CAAC;gCAC7C,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,YAAY,EAAE,sBAAQ,CAAC,MAAM,CAAC,CAAC;gCAEjH,IAAI,CAAC,uBAAuB,EAAE,CAAC;oCAC3B,SAAS;gCACb,CAAC;gCAED,IAAI,uBAAuB,CAAC,iBAAiB,CAAC,oDAAuB,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;oCACjI,mBAAmB,GAAG,IAAI,CAAC;oCAC3B,MAAM;gCACV,CAAC;4BACL,CAAC;wBACL,CAAC;wBAED,IAAI,CAAC,yBAAyB,IAAI,CAAC,mBAAmB,EAAE,CAAC;4BACrD,SAAS;wBACb,CAAC;wBACD,IAAI,mBAAmB,EAAE,CAAC;4BACtB;;;;+BAIG;4BACH,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;wBACrD,CAAC;oBACL,CAAC;oBAED,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACpC,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO;YACH,UAAU;YACV,mBAAmB;SACtB,CAAC;IACN,CAAC;IAED,gBAAgB,CAAC,YAA0B;QACvC,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YACnD,IAAI,YAAY,CAAC,cAAc,KAAK,YAAY,CAAC,EAAE,EAAE,CAAC;gBAClD,SAAS;YACb,CAAC;YACD,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBAC1N,SAAS;YACb,CAAC;YACD,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,wBAAS,CAAC,UAAU,IAAI,YAAY,CAAC,YAAY,KAAK,IAAI,IAAI,YAAY,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBAChI,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,eAAe,CAAC,MAAsB;;QAClC,IAAI,MAAM,CAAC,SAAS,IAAI,CAAA,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,0CAAE,KAAK,MAAK,KAAK,EAAE,CAAC;YAClF,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC;IACpD,CAAC;IAED,kBAAkB,CAAC,KAAmB;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,CAAC,eAAe,CAClB,gCAAa,CAAC,KAAK,CAAC;YAChB,aAAa,EAAE,KAAK;SACvB,CAAC,CACL,CAAC;QACF,OAAO,MAAc,CAAC;IAC1B,CAAC;IAED,mBAAmB,CAAC,MAA2D;QAC3E,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB;aACrC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,MAAK,SAAS,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5K,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,aAAa,GAAG,KAAK;QACrC,MAAM,YAAY,GAAG,kBAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACxD,OAAO,CAAC,CAAiB,EAAE,CAAiB,EAAE,EAAE;YAC5C,OAAO,YAAY,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC,CAAC;IACN,CAAC;CACJ;AAtxBD,wCAsxBC"}
|
|
@@ -6,9 +6,9 @@ import { InvoicedBalanceItem } from './InvoicedBalanceItem.js';
|
|
|
6
6
|
import { VATExcemptReason } from '../BalanceItem.js';
|
|
7
7
|
export declare class VATSubtotal extends AutoEncoder {
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* For tax ecempt items, this should be zero but it is ignored anyway
|
|
10
10
|
*/
|
|
11
|
-
VATPercentage: number
|
|
11
|
+
VATPercentage: number;
|
|
12
12
|
VATExcempt: VATExcemptReason | null;
|
|
13
13
|
/**
|
|
14
14
|
* Value on which the VAT is calculated (taxable amount)
|
|
@@ -67,6 +67,9 @@ export declare class Invoice extends AutoEncoder {
|
|
|
67
67
|
/**
|
|
68
68
|
* The difference between the totalWithVAT of the invoice and the sum of all balanceInvoicedAmount of the invoiced balance items.
|
|
69
69
|
* totalBalanceInvoicedAmount + balanceRoundingAmount = totalWithVAT
|
|
70
|
+
*
|
|
71
|
+
* Best viewed as a virtual extra balance item linked to the invoice to compensate.
|
|
72
|
+
*
|
|
70
73
|
* This is used to explain and report why there is a difference between the sum of the balance item's prices and the actually invoiced price, comparable with roundingAmount on payments.
|
|
71
74
|
* - Say we invoice 3 items of 0,242 euro. The sum would be 0,726. The invoice total price might be 0,73 because of rounding rules. Then the balanceRoundingAmount would be -0,004.
|
|
72
75
|
*/
|
|
@@ -93,6 +96,9 @@ export declare class Invoice extends AutoEncoder {
|
|
|
93
96
|
reference: string | null;
|
|
94
97
|
pdf: File | null;
|
|
95
98
|
xml: File | null;
|
|
99
|
+
negativeInvoiceId: string | null;
|
|
100
|
+
didSendPeppol: boolean;
|
|
96
101
|
calculateVAT(): void;
|
|
102
|
+
addItem(item: InvoicedBalanceItem): void;
|
|
97
103
|
}
|
|
98
104
|
//# sourceMappingURL=Invoice.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../../../src/billing/Invoice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,
|
|
1
|
+
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../../../src/billing/Invoice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAqE,MAAM,6BAA6B,CAAC;AAE3I,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,qBAAa,WAAY,SAAQ,WAAW;IACxC;;OAEG;IAEH,aAAa,EAAE,MAAM,CAAK;IAG1B,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE3C;;OAEG;IAEH,YAAY,EAAE,MAAM,CAAK;IAGzB,GAAG,EAAE,MAAM,CAAK;CACnB;AAED,qBAAa,OAAQ,SAAQ,WAAW;IAEpC,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IAEH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B;;OAEG;IAEH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;OAKG;IAEH,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE3C;;;OAGG;IAEH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IAEH,QAAQ,EAAE,eAAe,CAAC;IAE1B;;OAEG;IAEH,KAAK,EAAE,mBAAmB,EAAE,CAAM;IAElC,IAAI,eAAe,WAElB;IAED,IAAI,0BAA0B,WAE7B;IAED;;;;;;;;;;;;;;OAcG;IAEH,qBAAqB,EAAE,MAAM,CAAK;IAElC;;;;;;;;OAQG;IACH,IAAI,qBAAqB,WAExB;IAED;;OAEG;IAEH,QAAQ,EAAE,WAAW,EAAE,CAAM;IAE7B,IAAI,cAAc,WAEjB;IAED;;;;;;OAMG;IACH,IAAI,YAAY,WAEf;IAGD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhC;;OAEG;IAEH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGtC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,GAAG,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGxB,GAAG,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGxC,aAAa,UAAS;IAEtB,YAAY;IAoCZ,OAAO,CAAC,IAAI,EAAE,mBAAmB;CAIpC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { ArrayDecoder, AutoEncoder, EnumDecoder, field, IntegerDecoder, StringDecoder } from '@simonbackx/simple-encoding';
|
|
2
|
+
import { ArrayDecoder, AutoEncoder, BooleanDecoder, EnumDecoder, field, IntegerDecoder, StringDecoder } from '@simonbackx/simple-encoding';
|
|
3
3
|
import { v4 as uuidv4 } from 'uuid';
|
|
4
4
|
import { Company } from '../Company.js';
|
|
5
5
|
import { PaymentCustomer } from '../PaymentCustomer.js';
|
|
@@ -10,9 +10,9 @@ export class VATSubtotal extends AutoEncoder {
|
|
|
10
10
|
constructor() {
|
|
11
11
|
super(...arguments);
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* For tax ecempt items, this should be zero but it is ignored anyway
|
|
14
14
|
*/
|
|
15
|
-
this.VATPercentage =
|
|
15
|
+
this.VATPercentage = 0;
|
|
16
16
|
this.VATExcempt = null;
|
|
17
17
|
/**
|
|
18
18
|
* Value on which the VAT is calculated (taxable amount)
|
|
@@ -22,7 +22,7 @@ export class VATSubtotal extends AutoEncoder {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
__decorate([
|
|
25
|
-
field({ decoder: IntegerDecoder
|
|
25
|
+
field({ decoder: IntegerDecoder })
|
|
26
26
|
], VATSubtotal.prototype, "VATPercentage", void 0);
|
|
27
27
|
__decorate([
|
|
28
28
|
field({ decoder: new EnumDecoder(VATExcemptReason), nullable: true })
|
|
@@ -36,6 +36,17 @@ __decorate([
|
|
|
36
36
|
export class Invoice extends AutoEncoder {
|
|
37
37
|
constructor() {
|
|
38
38
|
super(...arguments);
|
|
39
|
+
/**
|
|
40
|
+
* Set if the invoice number is official. This number is unique per seller
|
|
41
|
+
*/
|
|
42
|
+
this.number = null;
|
|
43
|
+
/**
|
|
44
|
+
* Can be null if it is not linked to an organization.
|
|
45
|
+
* This is only used to allow the payer to list their (incoming) invoices.
|
|
46
|
+
*
|
|
47
|
+
* In the future we could expand this with members, users, and/or orders
|
|
48
|
+
*/
|
|
49
|
+
this.payingOrganizationId = null;
|
|
39
50
|
/**
|
|
40
51
|
* The balance items that are invoiced, with their original price. This does not always correspond to the total price of the invoice, or the item prices on the invoice because prices are converted to prices excluding VAT and with PEPPOL rounding rules.
|
|
41
52
|
*/
|
|
@@ -69,6 +80,8 @@ export class Invoice extends AutoEncoder {
|
|
|
69
80
|
this.reference = null;
|
|
70
81
|
this.pdf = null;
|
|
71
82
|
this.xml = null;
|
|
83
|
+
this.negativeInvoiceId = null;
|
|
84
|
+
this.didSendPeppol = false;
|
|
72
85
|
}
|
|
73
86
|
get totalWithoutVAT() {
|
|
74
87
|
return this.items.reduce((sum, item) => sum + item.totalWithoutVAT, 0);
|
|
@@ -79,6 +92,9 @@ export class Invoice extends AutoEncoder {
|
|
|
79
92
|
/**
|
|
80
93
|
* The difference between the totalWithVAT of the invoice and the sum of all balanceInvoicedAmount of the invoiced balance items.
|
|
81
94
|
* totalBalanceInvoicedAmount + balanceRoundingAmount = totalWithVAT
|
|
95
|
+
*
|
|
96
|
+
* Best viewed as a virtual extra balance item linked to the invoice to compensate.
|
|
97
|
+
*
|
|
82
98
|
* This is used to explain and report why there is a difference between the sum of the balance item's prices and the actually invoiced price, comparable with roundingAmount on payments.
|
|
83
99
|
* - Say we invoice 3 items of 0,242 euro. The sum would be 0,726. The invoice total price might be 0,73 because of rounding rules. Then the balanceRoundingAmount would be -0,004.
|
|
84
100
|
*/
|
|
@@ -103,16 +119,16 @@ export class Invoice extends AutoEncoder {
|
|
|
103
119
|
const categories = new Map();
|
|
104
120
|
for (const item of this.items) {
|
|
105
121
|
let key;
|
|
106
|
-
if (item.
|
|
122
|
+
if (item.VATExcempt === null) {
|
|
107
123
|
key = `vat_${item.VATPercentage}`;
|
|
108
124
|
}
|
|
109
125
|
else {
|
|
110
|
-
key = `excempt_${item.VATExcempt}`;
|
|
126
|
+
key = `excempt_${item.VATExcempt}_${item.VATExcempt}`;
|
|
111
127
|
}
|
|
112
128
|
let category = categories.get(key);
|
|
113
129
|
if (!category) {
|
|
114
130
|
category = new VATSubtotal();
|
|
115
|
-
category.VATPercentage = item.VATPercentage;
|
|
131
|
+
category.VATPercentage = item.VATExcempt === null ? item.VATPercentage : 0;
|
|
116
132
|
category.VATExcempt = item.VATExcempt;
|
|
117
133
|
categories.set(key, category);
|
|
118
134
|
}
|
|
@@ -120,7 +136,7 @@ export class Invoice extends AutoEncoder {
|
|
|
120
136
|
}
|
|
121
137
|
// Calculate VAT amount for each category and round to 1 cent
|
|
122
138
|
for (const category of categories.values()) {
|
|
123
|
-
if (category.
|
|
139
|
+
if (!category.VATExcempt) {
|
|
124
140
|
category.VAT = Math.round(category.taxablePrice * category.VATPercentage / 10000) * 100;
|
|
125
141
|
}
|
|
126
142
|
else {
|
|
@@ -129,15 +145,28 @@ export class Invoice extends AutoEncoder {
|
|
|
129
145
|
}
|
|
130
146
|
this.VATTotal = Array.from(categories.values());
|
|
131
147
|
}
|
|
148
|
+
addItem(item) {
|
|
149
|
+
this.items.push(item);
|
|
150
|
+
this.calculateVAT();
|
|
151
|
+
}
|
|
132
152
|
}
|
|
133
153
|
__decorate([
|
|
134
154
|
field({ decoder: StringDecoder, defaultValue: () => uuidv4() })
|
|
135
155
|
], Invoice.prototype, "id", void 0);
|
|
136
156
|
__decorate([
|
|
137
|
-
field({ decoder:
|
|
157
|
+
field({ decoder: StringDecoder, nullable: true })
|
|
158
|
+
], Invoice.prototype, "number", void 0);
|
|
159
|
+
__decorate([
|
|
160
|
+
field({ decoder: StringDecoder })
|
|
161
|
+
], Invoice.prototype, "organizationId", void 0);
|
|
162
|
+
__decorate([
|
|
163
|
+
field({ decoder: StringDecoder, nullable: true })
|
|
164
|
+
], Invoice.prototype, "payingOrganizationId", void 0);
|
|
165
|
+
__decorate([
|
|
166
|
+
field({ decoder: Company, defaultValue: () => Company.create({}) })
|
|
138
167
|
], Invoice.prototype, "seller", void 0);
|
|
139
168
|
__decorate([
|
|
140
|
-
field({ decoder: PaymentCustomer })
|
|
169
|
+
field({ decoder: PaymentCustomer, defaultValue: () => PaymentCustomer.create({}) })
|
|
141
170
|
], Invoice.prototype, "customer", void 0);
|
|
142
171
|
__decorate([
|
|
143
172
|
field({ decoder: new ArrayDecoder(InvoicedBalanceItem) })
|
|
@@ -166,4 +195,10 @@ __decorate([
|
|
|
166
195
|
__decorate([
|
|
167
196
|
field({ decoder: File, nullable: true })
|
|
168
197
|
], Invoice.prototype, "xml", void 0);
|
|
198
|
+
__decorate([
|
|
199
|
+
field({ decoder: StringDecoder, nullable: true })
|
|
200
|
+
], Invoice.prototype, "negativeInvoiceId", void 0);
|
|
201
|
+
__decorate([
|
|
202
|
+
field({ decoder: BooleanDecoder, optional: true })
|
|
203
|
+
], Invoice.prototype, "didSendPeppol", void 0);
|
|
169
204
|
//# sourceMappingURL=Invoice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoice.js","sourceRoot":"","sources":["../../../../src/billing/Invoice.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"Invoice.js","sourceRoot":"","sources":["../../../../src/billing/Invoice.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { AutoEncoder } from '@simonbackx/simple-encoding';
|
|
|
2
2
|
import { BalanceItem, VATExcemptReason } from '../BalanceItem.js';
|
|
3
3
|
export declare class InvoicedBalanceItem extends AutoEncoder {
|
|
4
4
|
id: string;
|
|
5
|
+
balanceItemId: string;
|
|
5
6
|
name: string;
|
|
6
7
|
description: string;
|
|
7
8
|
/**
|
|
@@ -17,9 +18,9 @@ export declare class InvoicedBalanceItem extends AutoEncoder {
|
|
|
17
18
|
*/
|
|
18
19
|
balanceInvoicedAmount: number;
|
|
19
20
|
/**
|
|
20
|
-
* quantity per ten thousand
|
|
21
|
+
* quantity per ten thousand
|
|
21
22
|
* We need to support 4 decimals in case of partial payments.
|
|
22
|
-
* E.g.
|
|
23
|
+
* E.g. 10 euro of 30 euro was paid and is invoiced, then the amount would be 0.3333, stored as 3333
|
|
23
24
|
* Mostly for legal reasons, to be able to say wat was actually bought without faking an amount
|
|
24
25
|
*/
|
|
25
26
|
quantity: number;
|
|
@@ -51,7 +52,8 @@ export declare class InvoicedBalanceItem extends AutoEncoder {
|
|
|
51
52
|
* Creates a default configuration for a balance item that needs to be invoiced. The result can still be adjusted to correct rounding issues, because
|
|
52
53
|
* a balanace item cannot always be perfectly represented on an invoice (on an invoice rounding happens on invoice level, while balance items can have any price that is not really rounded at any time unless when paid).
|
|
53
54
|
*
|
|
54
|
-
*
|
|
55
|
+
* @param balanceItem
|
|
56
|
+
* @param amount paid (or to be paid) price, should always include VAT if there is VAT
|
|
55
57
|
*/
|
|
56
58
|
static createFor(balanceItem: BalanceItem, amount: number): InvoicedBalanceItem;
|
|
57
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoicedBalanceItem.d.ts","sourceRoot":"","sources":["../../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqE,MAAM,6BAA6B,CAAC;AAE7H,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGlE,qBAAa,mBAAoB,SAAQ,WAAW;IAEhD,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,SAAM;IAGV,WAAW,SAAM;IAEjB;;;;;;;;;;OAUG;IAEH,qBAAqB,SAAK;IAE1B;;;;;OAKG;IAEH,QAAQ,SAAW;IAEnB;;;OAGG;IAEH,SAAS,SAAK;IAEd;;;OAGG;IAEH,aAAa,EAAE,MAAM,CAAK;IAE1B;;OAEG;IAEH,WAAW,UAAS;IAEpB;;;OAGG;IAEH,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE3C;;;OAGG;IACH,IAAI,eAAe,WAElB;IAED
|
|
1
|
+
{"version":3,"file":"InvoicedBalanceItem.d.ts","sourceRoot":"","sources":["../../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqE,MAAM,6BAA6B,CAAC;AAE7H,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGlE,qBAAa,mBAAoB,SAAQ,WAAW;IAEhD,EAAE,EAAE,MAAM,CAAC;IAGX,aAAa,SAAM;IAGnB,IAAI,SAAM;IAGV,WAAW,SAAM;IAEjB;;;;;;;;;;OAUG;IAEH,qBAAqB,SAAK;IAE1B;;;;;OAKG;IAEH,QAAQ,SAAW;IAEnB;;;OAGG;IAEH,SAAS,SAAK;IAEd;;;OAGG;IAEH,aAAa,EAAE,MAAM,CAAK;IAE1B;;OAEG;IAEH,WAAW,UAAS;IAEpB;;;OAGG;IAEH,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE3C;;;OAGG;IACH,IAAI,eAAe,WAElB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;CA2C5D"}
|
|
@@ -6,6 +6,7 @@ import { SimpleError } from '@simonbackx/simple-errors';
|
|
|
6
6
|
export class InvoicedBalanceItem extends AutoEncoder {
|
|
7
7
|
constructor() {
|
|
8
8
|
super(...arguments);
|
|
9
|
+
this.balanceItemId = '';
|
|
9
10
|
this.name = '';
|
|
10
11
|
this.description = '';
|
|
11
12
|
/**
|
|
@@ -19,11 +20,11 @@ export class InvoicedBalanceItem extends AutoEncoder {
|
|
|
19
20
|
*
|
|
20
21
|
* Any rounding issues are fixed on the invoice level.
|
|
21
22
|
*/
|
|
22
|
-
this.balanceInvoicedAmount =
|
|
23
|
+
this.balanceInvoicedAmount = 0;
|
|
23
24
|
/**
|
|
24
|
-
* quantity per ten thousand
|
|
25
|
+
* quantity per ten thousand
|
|
25
26
|
* We need to support 4 decimals in case of partial payments.
|
|
26
|
-
* E.g.
|
|
27
|
+
* E.g. 10 euro of 30 euro was paid and is invoiced, then the amount would be 0.3333, stored as 3333
|
|
27
28
|
* Mostly for legal reasons, to be able to say wat was actually bought without faking an amount
|
|
28
29
|
*/
|
|
29
30
|
this.quantity = 10000;
|
|
@@ -58,7 +59,8 @@ export class InvoicedBalanceItem extends AutoEncoder {
|
|
|
58
59
|
* Creates a default configuration for a balance item that needs to be invoiced. The result can still be adjusted to correct rounding issues, because
|
|
59
60
|
* a balanace item cannot always be perfectly represented on an invoice (on an invoice rounding happens on invoice level, while balance items can have any price that is not really rounded at any time unless when paid).
|
|
60
61
|
*
|
|
61
|
-
*
|
|
62
|
+
* @param balanceItem
|
|
63
|
+
* @param amount paid (or to be paid) price, should always include VAT if there is VAT
|
|
62
64
|
*/
|
|
63
65
|
static createFor(balanceItem, amount) {
|
|
64
66
|
var _a;
|
|
@@ -70,6 +72,7 @@ export class InvoicedBalanceItem extends AutoEncoder {
|
|
|
70
72
|
});
|
|
71
73
|
}
|
|
72
74
|
const item = new InvoicedBalanceItem();
|
|
75
|
+
item.balanceItemId = balanceItem.id;
|
|
73
76
|
item.name = balanceItem.itemTitle;
|
|
74
77
|
item.description = (_a = balanceItem.itemDescription) !== null && _a !== void 0 ? _a : '';
|
|
75
78
|
item.balanceInvoicedAmount = amount;
|
|
@@ -92,14 +95,20 @@ export class InvoicedBalanceItem extends AutoEncoder {
|
|
|
92
95
|
if (!balanceItem.VATExcempt) {
|
|
93
96
|
item.unitPrice = item.unitPrice * 100 / (100 + balanceItem.VATPercentage);
|
|
94
97
|
}
|
|
95
|
-
//
|
|
96
|
-
|
|
98
|
+
// Rounding the unit price is not a peppol requirement normally,
|
|
99
|
+
// so this is disabled for now. Rounding will happen on line level though
|
|
100
|
+
// item.unitPrice = Math.round(item.unitPrice / 100) * 100;
|
|
101
|
+
// round as integer instead (0.0001):
|
|
102
|
+
item.unitPrice = Math.round(item.unitPrice);
|
|
97
103
|
return item;
|
|
98
104
|
}
|
|
99
105
|
}
|
|
100
106
|
__decorate([
|
|
101
107
|
field({ decoder: StringDecoder, defaultValue: () => uuidv4() })
|
|
102
108
|
], InvoicedBalanceItem.prototype, "id", void 0);
|
|
109
|
+
__decorate([
|
|
110
|
+
field({ decoder: StringDecoder })
|
|
111
|
+
], InvoicedBalanceItem.prototype, "balanceItemId", void 0);
|
|
103
112
|
__decorate([
|
|
104
113
|
field({ decoder: StringDecoder })
|
|
105
114
|
], InvoicedBalanceItem.prototype, "name", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoicedBalanceItem.js","sourceRoot":"","sources":["../../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC7H,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAe,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,OAAO,mBAAoB,SAAQ,WAAW;IAApD;;QAKI,SAAI,GAAG,EAAE,CAAC;QAGV,gBAAW,GAAG,EAAE,CAAC;QAEjB;;;;;;;;;;WAUG;QAEH,0BAAqB,GAAG,CAAC,CAAC;QAE1B;;;;;WAKG;QAEH,aAAQ,GAAG,KAAO,CAAC;QAEnB;;;WAGG;QAEH,cAAS,GAAG,CAAC,CAAC;QAEd;;;WAGG;QAEH,kBAAa,GAAW,CAAC,CAAC;QAE1B;;WAEG;QAEH,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;WAGG;QAEH,eAAU,GAA4B,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"InvoicedBalanceItem.js","sourceRoot":"","sources":["../../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,5 +23,6 @@ export declare class PropertyFilter implements Encodeable {
|
|
|
23
23
|
static decode<T>(data: Data): PropertyFilter;
|
|
24
24
|
clone(): PropertyFilter;
|
|
25
25
|
getDiffValue(): AuditLogReplacement;
|
|
26
|
+
merge(other: PropertyFilter): PropertyFilter;
|
|
26
27
|
}
|
|
27
28
|
//# sourceMappingURL=PropertyFilter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropertyFilter.d.ts","sourceRoot":"","sources":["../../../../src/filters/PropertyFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAExG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAElE,OAAO,
|
|
1
|
+
{"version":3,"file":"PropertyFilter.d.ts","sourceRoot":"","sources":["../../../../src/filters/PropertyFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAExG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAElE,OAAO,EAA8C,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGnG,qBAAa,cAAe,YAAW,UAAU;gBACjC,WAAW,EAAE,eAAe,GAAG,IAAI,EAAE,YAAY,EAAE,eAAe,GAAG,IAAI;IAKrF,MAAM,CAAC,aAAa;IAIpB;;;OAGG;IACH,WAAW,EAAE,eAAe,GAAG,IAAI,CAAQ;IAE3C;;;;OAIG;IACH,YAAY,EAAE,eAAe,GAAG,IAAI,CAAQ;IAE5C,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAOtC,IAAI,0BAA0B,YAE7B;IAED,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAOvC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,WAAW;IAO3C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,cAAc;IAY5C,KAAK;IAOL,YAAY;IAmBZ,KAAK,CAAC,KAAK,EAAE,cAAc;CAuG9B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { cloneObject } from '@simonbackx/simple-encoding';
|
|
2
2
|
import { AuditLogReplacement } from '../AuditLogReplacement.js';
|
|
3
3
|
import { StamhoofdFilterDecoder } from './FilteredRequest.js';
|
|
4
|
-
import { isEmptyFilter } from './StamhoofdFilter.js';
|
|
4
|
+
import { isEmptyFilter, isEqualFilter, mergeFilters } from './StamhoofdFilter.js';
|
|
5
5
|
import { convertOldPropertyFilter } from './convertOldPropertyFilter.js';
|
|
6
6
|
export class PropertyFilter {
|
|
7
7
|
constructor(enabledWhen, requiredWhen) {
|
|
@@ -71,5 +71,102 @@ export class PropertyFilter {
|
|
|
71
71
|
}
|
|
72
72
|
return AuditLogReplacement.key('sometimesEnabledAndSometimesRequired');
|
|
73
73
|
}
|
|
74
|
+
merge(other) {
|
|
75
|
+
const base = new PropertyFilter(null, {});
|
|
76
|
+
// Merge enabled when
|
|
77
|
+
if (other.enabledWhen === null || this.enabledWhen === null) {
|
|
78
|
+
base.enabledWhen = null;
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
// Merge both filters if different
|
|
82
|
+
if (isEqualFilter(this.enabledWhen, other.enabledWhen)) {
|
|
83
|
+
base.enabledWhen = this.enabledWhen;
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
base.enabledWhen = mergeFilters([
|
|
87
|
+
this.enabledWhen,
|
|
88
|
+
other.enabledWhen,
|
|
89
|
+
], '$or');
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
// The rquired filters are always 1:1 linked to the enabled filter of the same property filter. So we need to
|
|
93
|
+
// transform them first to include the enabled when filter
|
|
94
|
+
let thisRequired = this.requiredWhen;
|
|
95
|
+
// Required when the other is enabled and required
|
|
96
|
+
if (this.enabledWhen !== null && !isEmptyFilter(this.enabledWhen)) {
|
|
97
|
+
// Make sure to include the enabled when restriction
|
|
98
|
+
if (this.requiredWhen === null) {
|
|
99
|
+
// Always skipable
|
|
100
|
+
thisRequired = null;
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
if (isEmptyFilter(this.requiredWhen)) {
|
|
104
|
+
// Simplify without $and
|
|
105
|
+
thisRequired = this.enabledWhen;
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
if (isEqualFilter(this.enabledWhen, this.requiredWhen)) {
|
|
109
|
+
thisRequired = this.requiredWhen;
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
thisRequired = mergeFilters([
|
|
113
|
+
this.enabledWhen,
|
|
114
|
+
this.requiredWhen,
|
|
115
|
+
], '$and');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
let otherRequired = other.requiredWhen;
|
|
121
|
+
// Required when the other is enabled and required
|
|
122
|
+
if (other.enabledWhen !== null && !isEmptyFilter(other.enabledWhen)) {
|
|
123
|
+
// Make sure to include the enabled when restriction
|
|
124
|
+
if (other.requiredWhen === null) {
|
|
125
|
+
// Always skipable
|
|
126
|
+
otherRequired = null;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
if (isEmptyFilter(other.requiredWhen)) {
|
|
130
|
+
// Simplify without $and
|
|
131
|
+
otherRequired = other.enabledWhen;
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
if (isEqualFilter(other.enabledWhen, other.requiredWhen)) {
|
|
135
|
+
otherRequired = other.requiredWhen;
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
otherRequired = mergeFilters([
|
|
139
|
+
other.enabledWhen,
|
|
140
|
+
other.requiredWhen,
|
|
141
|
+
], '$and');
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
// Merge required when
|
|
147
|
+
if (thisRequired === null) {
|
|
148
|
+
base.requiredWhen = otherRequired;
|
|
149
|
+
}
|
|
150
|
+
else if (otherRequired === null) {
|
|
151
|
+
base.requiredWhen = thisRequired;
|
|
152
|
+
}
|
|
153
|
+
else if (isEmptyFilter(thisRequired) || isEmptyFilter(otherRequired)) {
|
|
154
|
+
// Always required
|
|
155
|
+
base.requiredWhen = {};
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
// Merge both filters ($or). It is required when any matches
|
|
159
|
+
if (isEqualFilter(thisRequired, otherRequired)) {
|
|
160
|
+
base.requiredWhen = thisRequired;
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
base.requiredWhen = mergeFilters([
|
|
164
|
+
thisRequired,
|
|
165
|
+
otherRequired,
|
|
166
|
+
], '$or');
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return base;
|
|
170
|
+
}
|
|
74
171
|
}
|
|
75
172
|
//# sourceMappingURL=PropertyFilter.js.map
|