@memberjunction/ng-base-forms 4.0.0 → 4.1.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.
Files changed (77) hide show
  1. package/dist/lib/base-form-component.d.ts +103 -215
  2. package/dist/lib/base-form-component.d.ts.map +1 -1
  3. package/dist/lib/base-form-component.js +384 -541
  4. package/dist/lib/base-form-component.js.map +1 -1
  5. package/dist/lib/container/record-form-container.component.d.ts +165 -0
  6. package/dist/lib/container/record-form-container.component.d.ts.map +1 -0
  7. package/dist/lib/container/record-form-container.component.js +534 -0
  8. package/dist/lib/container/record-form-container.component.js.map +1 -0
  9. package/dist/lib/explorer-entity-data-grid.component.d.ts +7 -5
  10. package/dist/lib/explorer-entity-data-grid.component.d.ts.map +1 -1
  11. package/dist/lib/explorer-entity-data-grid.component.js +15 -9
  12. package/dist/lib/explorer-entity-data-grid.component.js.map +1 -1
  13. package/dist/lib/field/form-field.component.d.ts +268 -0
  14. package/dist/lib/field/form-field.component.d.ts.map +1 -0
  15. package/dist/lib/field/form-field.component.js +1194 -0
  16. package/dist/lib/field/form-field.component.js.map +1 -0
  17. package/dist/lib/form-state.interface.d.ts +2 -0
  18. package/dist/lib/form-state.interface.d.ts.map +1 -1
  19. package/dist/lib/form-state.interface.js.map +1 -1
  20. package/dist/lib/form-state.service.d.ts +14 -0
  21. package/dist/lib/form-state.service.d.ts.map +1 -1
  22. package/dist/lib/form-state.service.js +19 -0
  23. package/dist/lib/form-state.service.js.map +1 -1
  24. package/dist/lib/panel/collapsible-panel.component.d.ts +139 -0
  25. package/dist/lib/panel/collapsible-panel.component.d.ts.map +1 -0
  26. package/dist/lib/panel/collapsible-panel.component.js +468 -0
  27. package/dist/lib/panel/collapsible-panel.component.js.map +1 -0
  28. package/dist/lib/toolbar/form-toolbar.component.d.ts +170 -0
  29. package/dist/lib/toolbar/form-toolbar.component.d.ts.map +1 -0
  30. package/dist/lib/toolbar/form-toolbar.component.js +830 -0
  31. package/dist/lib/toolbar/form-toolbar.component.js.map +1 -0
  32. package/dist/lib/types/form-events.d.ts +90 -0
  33. package/dist/lib/types/form-events.d.ts.map +1 -0
  34. package/dist/lib/types/form-events.js +45 -0
  35. package/dist/lib/types/form-events.js.map +1 -0
  36. package/dist/lib/types/form-types.d.ts +150 -0
  37. package/dist/lib/types/form-types.d.ts.map +1 -0
  38. package/dist/lib/types/form-types.js +12 -0
  39. package/dist/lib/types/form-types.js.map +1 -0
  40. package/dist/lib/types/navigation-events.d.ts +88 -0
  41. package/dist/lib/types/navigation-events.d.ts.map +1 -0
  42. package/dist/lib/types/navigation-events.js +2 -0
  43. package/dist/lib/types/navigation-events.js.map +1 -0
  44. package/dist/lib/types/toolbar-config.d.ts +66 -0
  45. package/dist/lib/types/toolbar-config.d.ts.map +1 -0
  46. package/dist/lib/types/toolbar-config.js +38 -0
  47. package/dist/lib/types/toolbar-config.js.map +1 -0
  48. package/dist/module.d.ts +28 -20
  49. package/dist/module.d.ts.map +1 -1
  50. package/dist/module.js +47 -74
  51. package/dist/module.js.map +1 -1
  52. package/dist/public-api.d.ts +20 -8
  53. package/dist/public-api.d.ts.map +1 -1
  54. package/dist/public-api.js +24 -9
  55. package/dist/public-api.js.map +1 -1
  56. package/package.json +20 -23
  57. package/README.md +0 -449
  58. package/dist/lib/base-field-component.d.ts +0 -152
  59. package/dist/lib/base-field-component.d.ts.map +0 -1
  60. package/dist/lib/base-field-component.js +0 -669
  61. package/dist/lib/base-field-component.js.map +0 -1
  62. package/dist/lib/base-form-context.d.ts +0 -23
  63. package/dist/lib/base-form-context.d.ts.map +0 -1
  64. package/dist/lib/base-form-context.js +0 -10
  65. package/dist/lib/base-form-context.js.map +0 -1
  66. package/dist/lib/collapsible-panel.component.d.ts +0 -68
  67. package/dist/lib/collapsible-panel.component.d.ts.map +0 -1
  68. package/dist/lib/collapsible-panel.component.js +0 -330
  69. package/dist/lib/collapsible-panel.component.js.map +0 -1
  70. package/dist/lib/form-section-controls.component.d.ts +0 -35
  71. package/dist/lib/form-section-controls.component.d.ts.map +0 -1
  72. package/dist/lib/form-section-controls.component.js +0 -273
  73. package/dist/lib/form-section-controls.component.js.map +0 -1
  74. package/dist/lib/link-field.component.d.ts +0 -62
  75. package/dist/lib/link-field.component.d.ts.map +0 -1
  76. package/dist/lib/link-field.component.js +0 -392
  77. package/dist/lib/link-field.component.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-field-component.js","sourceRoot":"","sources":["../../src/lib/base-field-component.ts","../../src/lib/base-field-component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAA4B,MAAM,eAAe,CAAC;AAC5G,OAAO,EAA4C,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;;;;;;;;;;;;ICG7D,2BAAoD;;;IAA7C,4EAAoC;;;IAQrC,+BAAuC;IAAA,YAAS;IAAA,iBAAO;;;IAAhB,cAAS;IAAT,kCAAS;;;IAGlD,+BAA8B;IAC5B,uBAA+C;IAC/C,YACF;IAAA,iBAAO;;;IADL,eACF;IADE,4DACF;;;;IARF,+BAAwC;IAItC,AAHA,sIAAgC,gHAGzB;IAMT,iCAGmE;IADjE,0NAAS,uCAAgC,KAAC;IAE1C,uBAAmH;IAEvH,AADE,iBAAS,EACJ;;;IAfH,cAQD;IARC,yDAQD;IAIC,eAAgE;IAAhE,qFAAgE;IAC5C,cAA0C;IAAC,AAA3C,0DAA0C,iDAAgD;;;IAMpH,+BAA4E;IAC1E,uBAA+C;IAC/C,YACF;IAAA,iBAAO;;;IADL,eACF;IADE,4DACF;;;IAIF,uBAAa;;;IAFb,AAPE,AApBE,wHAA+B,kGAoBJ,+FAOxB;;;IA3BH,sFA8BL;;;IAMG,qCAAqI;;;IAA3C,AAAxB,AAAlB,AAAhC,2DAA+B,kBAAkB,+BAAwB,0BAA0B;;;IAIrH,4BAAkE;;;IAA3C,sCAAiB;;;IAI1C,qCAAoE;;;IAA7C,0DAA8B;;;IAIvD,4BAAM;IAAA,YAA6B;IAAA,iBAAO;;;IAApC,cAA6B;IAA7B,6DAA6B;;;IADnC,AALE,AAJE,AAHA,0IAA+B,2GAGC,iHAIE,sGAK/B;;;IAZH,8HAcH;;;IAGC,gCAA+D;IAAA,YAA6B;IAAA,iBAAO;;;IAAjF,sEAA2C;IAAE,cAA6B;IAA7B,6DAA6B;;;IAG5F,gCAA6D;IAAA,YAA6B;IAAA,iBAAO;;;IAAjF,sEAA2C;IAAE,cAA6B;IAA7B,6DAA6B;;;IAG1F,gCAA6D;IAAA,YAA6B;IAAA,iBAAO;;;IAA7D,AAAlB,sCAAiB,+BAAwB;IAAE,cAA6B;IAA7B,6DAA6B;;;IAD5F,AAHA,AAHA,AAjBE,sGAAgB,4FAiBD,4FAGF,4FAGG;;;;IAxBlB,iDAAA,MAAM,mBAAN,OAAO,mBAAP,KAAK,mBAAL,QAAQ,UA2BP;;;IAlEG,8BAA6B;IAC3B,2GAAiB;IAqCvB,AAlCM,+FAAwB,yEAkCvB;IA8BP,iBAAM;;;IAnEA,cAEC;IAFD,2CAEC;IACD,cA+DL;IA/DK,iDA+DL;;;IAMK,2BAAoD;;;IAA7C,4EAAoC;;;;IAKzC,AADF,+BAAkC,eAC8D;IAC5F,uBAA+C;IAC/C,YACF;IAAA,iBAAO;IAEL,AADF,+BAAuC,wBAKe;IAHlD,4VAAgC;IAIlC,iBAAgB;IAChB,iCAG6D;IAD3D,4MAAS,iCAA0B,KAAC;IAEpC,uBAAuG;IAE3G,AADE,iBAAS,EACL;IACN,gCAA6B;IAAA,8GAA8F;IAC7H,AAD6H,iBAAO,EAC9H;;;IAjBF,eACF;IADE,4DACF;IAGI,eAAgC;IAAhC,yDAAgC;IAGhC,AAFA,yEAA2D,yDAEV;IAKjD,cAA0D;IAA1D,+EAA0D;IACtC,cAAoC;IAAC,AAArC,oDAAoC,2CAA0C;;;;IAUtG,AADF,AADF,+BAA0C,cACD,wBAIqB;IAFxD,kUAAmB;IAGrB,iBAAgB;IAChB,iCAGmE;IADjE,4MAAS,uCAAgC,KAAC;IAE1C,uBAAmH;IAGzH,AADE,AADE,iBAAS,EACL,EACF;;;IAXA,eAAmB;IAAnB,4CAAmB;IAEnB,4EAAuD;IAKvD,cAAgE;IAAhE,qFAAgE;IAC5C,cAA0C;IAAC,AAA3C,0DAA0C,iDAAgD;;;IAOtH,oCAAiH;;;IAAxD,AAAxB,AAAlB,sCAAiB,+BAAwB,+CAAwC;;;;IAM9F,0CAAsF;IAAtE,0UAAmB;IAAmD,iBAAiB;;;IAAvF,4CAAmB;IAAyB,AAAxB,4CAAuB,0BAA0B;;;;IAGrF,yCAAqC;IAAtB,yUAAmB;IAAlC,iBAAqC;;;IAAtB,4CAAmB;;;;IAGlC,0CAAoC;IAApB,0UAAmB;IAAC,iBAAiB;;;IAArC,4CAAmB;;;;IAGnC,gDAAqE;IAA/C,4UAAiB;IAAvC,iBAAqE;;;IAA/C,0CAAiB;;;;IAGvC,4CAA+D;IAA7C,wUAAiB;IAA4B,iBAAmB;;;IAAhE,0CAAiB;;;;IAGnC,iCAA2D;IAApC,kUAAmB;IAA1C,iBAA2D;;;IAApC,4CAAmB;;;;IAG1C,8CAAgE;IAApB,+UAAmB;IAAC,iBAAqB;;;IAAjE,4CAAuB;IAAC,4CAAmB;;;;IAG/D,0CAAiF;IAApB,2UAAmB;IAAC,iBAAiB;;;IAA1D,AAAxB,4CAAuB,qBAAqB;IAAC,4CAAmB;;;IADlF,AAHA,AAHA,AAHA,AAHA,AAHA,AAHA,AAHA,4HAAgB,qGAGG,sGAGC,4GAGM,wGAGJ,6FAGF,0GAGI,sGAGJ;;;;IAtBtB,6CAAA,MAAM,mBAAN,SAAS,mBAAT,UAAU,mBAAV,gBAAgB,mBAAhB,YAAY,mBAAZ,UAAU,mBAAV,cAAc,mBAAd,UAAU,UAyBT;;;IA7EC,8BAA6B;IAC3B,2GAAiB;IAiDrB,AAJE,AAlBE,AAxBA,2GAA4B,oFAwBC,8FAkBwD,yEAIlF;IA6BP,iBAAM;;;IA9EF,cAEC;IAFD,2CAEC;IACD,cA0EH;IA1EG,yLA0EH;;;IAtJC,2FAA0D;IAuE5D,2FAAoC;;;IAvElC,kGAsED;IACD,cAiFC;IAjFD,qEAiFC;;ADtJD;;;;;GAKG;AAOH,MAAM,OAAO,WAAY,SAAQ,mBAAmB;IAySxC;IAxSV;;OAEG;IACM,MAAM,CAAc;IAC7B;;OAEG;IACM,QAAQ,GAAY,KAAK,CAAC;IACnC;;OAEG;IACM,SAAS,GAAW,EAAE,CAAC;IAChC;;OAEG;IACM,IAAI,GAAiH,SAAS,CAAC;IACxI;;;OAGG;IACM,QAAQ,GAAwC,MAAM,CAAC;IAEhE;;OAEG;IACM,iBAAiB,GAA0B,UAAU,CAAC;IAE/D;;OAEG;IACM,SAAS,GAAY,IAAI,CAAC;IAEnC;;OAEG;IACM,WAAW,CAAmB;IAEvC;;;OAGG;IACM,2BAA2B,GAAY,IAAI,CAAC;IAErD,SAAS,GAAG,SAAS,CAAC;IAEd,YAAY,GAAkB,IAAI,CAAC;IAC3C;;OAEG;IACH,IACW,WAAW;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;YACzF,IAAI,EAAE;gBAAE,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,iBAAiB,CAAC;;gBAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,uBAAuB;IACvB,IAAW,WAAW,CAAC,QAAgB;QACrC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,IAAW,sBAAsB;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9B,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACpD,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,kCAAkC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,0CAA0C,CAAC,CAAC;IAChF,CAAC;IAEO,WAAW,CAAC,IAAY;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,IAAW,YAAY;QACrB,MAAM,WAAW,GAAuB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnF,IAAI,CAAC,WAAW,EAAC,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,WAAW,CAAC,eAAe,CAAC,YAAY,CAAC;IAClD,CAAC;IAEO,eAAe,GAAoB,IAAI,CAAC;IAChD;;;OAGG;IACH,IAAa,cAAc;QACzB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;YACzF,IAAI,EAAE,IAAI,EAAE,CAAC,aAAa,KAAK,MAAM;gBAAE,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;;gBAClG,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IACD,mCAAmC;IACnC,IAAI,cAAc,CAAC,QAAkB;QACnC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED,IACW,KAAK;QACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YAClC,+CAA+C;YAC/C,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;QACxE,CAAC;QAED,sCAAsC;QACtC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAW,KAAK,CAAC,QAAa;QAC5B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QACD,iCAAiC;IACnC,CAAC;IACS,WAAW,GAAG,IAAI,YAAY,EAAO,CAAC;IAEhD;;OAEG;IACH,IAAW,eAAe;QACxB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QACvE,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,QAAQ,CAAC;;YACpB,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,wBAAwB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACrG,CAAC;IAED,IAAW,SAAS;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,eAAe,CAAC;;YAC3B,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,wBAAwB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACrG,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACxB,2DAA2D;QAC3D,IAAI,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,8DAA8D;QAC9D,IAAI,CAAC,IAAI,CAAC,2BAA2B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,iCAAiC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,IAAW,wBAAwB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,IAAW,gBAAgB;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,EAAE,eAAe,EAAE,OAAO,IAAI,CAAC,EAAE,eAAe,CAAC,eAAe,EAAE,CAAC;YACtE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE9C,+DAA+D;YAC/D,MAAM,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,CAAA;YACvF,IAAI,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;gBACzC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,4FAA4F;YAC5F,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBACvD,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC;YAC/D,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,IAAW,uBAAuB;QAChC,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO,KAAK,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC;IAC/D,CAAC;IAED;;OAEG;IACI,wBAAwB,GAAG,KAAK,CAAC;IAExC;;OAEG;IACI,kBAAkB,GAAG,KAAK,CAAC;IAElC;;OAEG;IACI,8BAA8B;QACnC,IAAI,CAAC,wBAAwB,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC;IACjE,CAAC;IAED;;OAEG;IACI,wBAAwB;QAC7B,IAAI,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC;IACrD,CAAC;IAED;;;OAGG;IACK,mBAAmB,GAAW,EAAE,CAAC;IAEzC;;;;OAIG;IACH,IAAW,kBAAkB;QAC3B,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAW,kBAAkB,CAAC,QAAgB;QAC5C,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;QACpC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,uDAAuD;YACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAW,oBAAoB;QAC7B,OAAO,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,gBAAgB,CAAC;IACnF,CAAC;IAED;;OAEG;IACa,oBAAoB,GAAG,UAAU,CAAC;IAET,QAAQ,CAAgC;IAEjF,YACU,QAAmB;QAE3B,KAAK,EAAE,CAAC;QAFA,aAAQ,GAAR,QAAQ,CAAW;IAG7B,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,2EAA2E;YAC3E,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,SAAS,EAAE,EAAE;gBAClD,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;oBAC7B,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpE,4DAA4D;wBAC5D,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,UAAyB,CAAC;wBAC1E,IAAI,EAAE,EAAE,CAAC;4BACP,+BAA+B;4BAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;4BAC9C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;4BACjD,qDAAqD;4BACrD,IAAI,EAAE,CAAC,OAAO,KAAK,GAAG;gCAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;wBAC1E,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,kEAAkE;YAClE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;qGApUU,WAAW;6DAAX,WAAW;;;;;;YChBxB,mEAA0C;;YAA1C,qEA2JC;;;iFD3IY,WAAW;cANvB,SAAS;6BACI,KAAK,YACP,eAAe;;kBAQxB,KAAK;;kBAIL,KAAK;;kBAIL,KAAK;;kBAIL,KAAK;;kBAKL,KAAK;;kBAKL,KAAK;;kBAKL,KAAK;;kBAKL,KAAK;;kBAML,KAAK;;kBAQL,KAAK;;kBAqDL,KAAK;;kBAaL,KAAK;;kBAmBL,MAAM;;kBA+JN,SAAS;mBAAC,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAC;;kFAtS5B,WAAW"}
@@ -1,23 +0,0 @@
1
- /**
2
- * Context object that carries form-level state down to child components.
3
- * This pattern avoids the need to add individual @Input properties for every form-level setting,
4
- * making it easier to extend functionality without changing component plumbing.
5
- */
6
- export interface BaseFormContext {
7
- /**
8
- * Current search filter text for filtering sections and highlighting field labels.
9
- * When set, sections and fields that match the filter will be highlighted.
10
- */
11
- sectionFilter?: string;
12
- /**
13
- * Controls whether empty fields should be shown in read-only mode.
14
- * When true, all fields are shown regardless of value.
15
- * When false (default), empty fields are hidden to reduce visual clutter.
16
- */
17
- showEmptyFields?: boolean;
18
- }
19
- /**
20
- * Creates a default BaseFormContext with sensible defaults.
21
- */
22
- export declare function createDefaultFormContext(): BaseFormContext;
23
- //# sourceMappingURL=base-form-context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-form-context.d.ts","sourceRoot":"","sources":["../../src/lib/base-form-context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAM7B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,eAAe,CAK1D"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Creates a default BaseFormContext with sensible defaults.
3
- */
4
- export function createDefaultFormContext() {
5
- return {
6
- sectionFilter: '',
7
- showEmptyFields: false
8
- };
9
- }
10
- //# sourceMappingURL=base-form-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-form-context.js","sourceRoot":"","sources":["../../src/lib/base-form-context.ts"],"names":[],"mappings":"AAyBA;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACpC,OAAO;QACH,aAAa,EAAE,EAAE;QACjB,eAAe,EAAE,KAAK;KACzB,CAAC;AACN,CAAC"}
@@ -1,68 +0,0 @@
1
- import { OnChanges, SimpleChanges, ChangeDetectorRef, AfterContentInit, QueryList, OnInit, EventEmitter, ElementRef } from '@angular/core';
2
- import { MJFormField } from './base-field-component';
3
- import { BaseFormContext } from './base-form-context';
4
- import * as i0 from "@angular/core";
5
- /** Event emitted when a panel drag operation starts */
6
- export interface PanelDragStartEvent {
7
- sectionKey: string;
8
- event: DragEvent;
9
- }
10
- /** Event emitted when a panel is dropped */
11
- export interface PanelDropEvent {
12
- sourceSectionKey: string;
13
- targetSectionKey: string;
14
- }
15
- /**
16
- * Reusable collapsible panel component for form sections
17
- * Handles:
18
- * - Expand/collapse state
19
- * - Search filtering with case-insensitive matching
20
- * - Yellow highlighting of matched section names
21
- * - Visibility management based on section name or field name matches
22
- * - Passes sectionFilter down to child mj-form-field components for their own label highlighting
23
- */
24
- export declare class CollapsiblePanelComponent implements OnChanges, AfterContentInit, OnInit {
25
- private cdr;
26
- private elementRef;
27
- sectionKey: string;
28
- sectionName: string;
29
- icon: string;
30
- form: unknown;
31
- formContext?: BaseFormContext;
32
- variant: 'default' | 'related-entity';
33
- badgeCount: number | undefined;
34
- entityName: string;
35
- defaultExpanded: boolean | undefined;
36
- dragStarted: EventEmitter<PanelDragStartEvent>;
37
- dragEnded: EventEmitter<void>;
38
- panelDrop: EventEmitter<PanelDropEvent>;
39
- fieldComponents: QueryList<MJFormField>;
40
- get isHidden(): boolean;
41
- get cssOrder(): number;
42
- isDragging: boolean;
43
- isDragOver: boolean;
44
- constructor(cdr: ChangeDetectorRef, elementRef: ElementRef);
45
- onDragOver(event: DragEvent): void;
46
- onDragLeave(event: DragEvent): void;
47
- onDrop(event: DragEvent): void;
48
- /**
49
- * Reorders sections by moving the source section to the position of the target section.
50
- */
51
- private reorderSections;
52
- onDragStart(event: DragEvent): void;
53
- onDragEnd(event: DragEvent): void;
54
- get expanded(): boolean;
55
- displayName: string;
56
- fieldNames: string;
57
- isVisible: boolean;
58
- ngOnInit(): void;
59
- ngAfterContentInit(): void;
60
- ngOnChanges(changes: SimpleChanges): void;
61
- toggle(): void;
62
- private updateFieldNames;
63
- private updateVisibilityAndHighlighting;
64
- private escapeRegex;
65
- static ɵfac: i0.ɵɵFactoryDeclaration<CollapsiblePanelComponent, never>;
66
- static ɵcmp: i0.ɵɵComponentDeclaration<CollapsiblePanelComponent, "mj-collapsible-panel", never, { "sectionKey": { "alias": "sectionKey"; "required": false; }; "sectionName": { "alias": "sectionName"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "form": { "alias": "form"; "required": false; }; "formContext": { "alias": "formContext"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "badgeCount": { "alias": "badgeCount"; "required": false; }; "entityName": { "alias": "entityName"; "required": false; }; "defaultExpanded": { "alias": "defaultExpanded"; "required": false; }; }, { "dragStarted": "dragStarted"; "dragEnded": "dragEnded"; "panelDrop": "panelDrop"; }, ["fieldComponents"], ["*"], false, never>;
67
- }
68
- //# sourceMappingURL=collapsible-panel.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collapsible-panel.component.d.ts","sourceRoot":"","sources":["../../src/lib/collapsible-panel.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAmB,SAAS,EAAe,MAAM,EAAU,YAAY,EAAgB,UAAU,EAAE,MAAM,eAAe,CAAC;AACjN,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;;AAEtD,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,SAAS,CAAC;CACpB;AAED,4CAA4C;AAC5C,MAAM,WAAW,cAAc;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,qBAkPa,yBAA0B,YAAW,SAAS,EAAE,gBAAgB,EAAE,MAAM;IAkCrE,OAAO,CAAC,GAAG;IAAqB,OAAO,CAAC,UAAU;IAjCrD,UAAU,EAAE,MAAM,CAAM;IACxB,WAAW,EAAE,MAAM,CAAM;IACzB,IAAI,EAAE,MAAM,CAAkB;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,OAAO,EAAE,SAAS,GAAG,gBAAgB,CAAa;IAClD,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAM;IACxB,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC;IAEpC,WAAW,oCAA2C;IACtD,SAAS,qBAA4B;IACrC,SAAS,+BAAsC;IAEJ,eAAe,EAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IAE9F,IACI,QAAQ,IAAI,OAAO,CAEtB;IAED,IACI,QAAQ,IAAI,MAAM,CAGrB;IAGD,UAAU,UAAS;IAGnB,UAAU,UAAS;gBAEC,GAAG,EAAE,iBAAiB,EAAU,UAAU,EAAE,UAAU;IAG1E,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAUlC,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAMnC,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAiB9B;;OAEG;IACH,OAAO,CAAC,eAAe;IA8BvB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IASnC,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKjC,IAAI,QAAQ,IAAI,OAAO,CAGtB;IAED,WAAW,EAAE,MAAM,CAAM;IACzB,UAAU,EAAE,MAAM,CAAM;IACxB,SAAS,EAAE,OAAO,CAAQ;IAE1B,QAAQ,IAAI,IAAI;IAKhB,kBAAkB,IAAI,IAAI;IAQ1B,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAiBzC,MAAM,IAAI,IAAI;IAQd,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,+BAA+B;IA4BvC,OAAO,CAAC,WAAW;yCA9MV,yBAAyB;2CAAzB,yBAAyB;CAiNrC"}
@@ -1,330 +0,0 @@
1
- import { Component, Input, ContentChildren, HostBinding, Output, EventEmitter, HostListener } from '@angular/core';
2
- import { MJFormField } from './base-field-component';
3
- import * as i0 from "@angular/core";
4
- const _c0 = ["*"];
5
- function CollapsiblePanelComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
6
- i0.ɵɵelementStart(0, "span", 10);
7
- i0.ɵɵtext(1);
8
- i0.ɵɵelementEnd();
9
- } if (rf & 2) {
10
- const ctx_r0 = i0.ɵɵnextContext();
11
- i0.ɵɵclassProp("zero-rows", ctx_r0.badgeCount === 0);
12
- i0.ɵɵadvance();
13
- i0.ɵɵtextInterpolate1(" ", ctx_r0.badgeCount, " ");
14
- } }
15
- /**
16
- * Reusable collapsible panel component for form sections
17
- * Handles:
18
- * - Expand/collapse state
19
- * - Search filtering with case-insensitive matching
20
- * - Yellow highlighting of matched section names
21
- * - Visibility management based on section name or field name matches
22
- * - Passes sectionFilter down to child mj-form-field components for their own label highlighting
23
- */
24
- export class CollapsiblePanelComponent {
25
- cdr;
26
- elementRef;
27
- sectionKey = '';
28
- sectionName = '';
29
- icon = 'fa fa-folder';
30
- form; // Reference to the form component for method calls
31
- formContext; // Contains all form-level state
32
- variant = 'default';
33
- badgeCount;
34
- entityName = ''; // For display/reference purposes
35
- defaultExpanded; // Default expanded state when no persisted state exists
36
- dragStarted = new EventEmitter();
37
- dragEnded = new EventEmitter();
38
- panelDrop = new EventEmitter();
39
- fieldComponents;
40
- get isHidden() {
41
- return !this.isVisible;
42
- }
43
- get cssOrder() {
44
- const formRef = this.form;
45
- return formRef?.getSectionDisplayOrder ? formRef.getSectionDisplayOrder(this.sectionKey) : 0;
46
- }
47
- isDragging = false;
48
- isDragOver = false;
49
- constructor(cdr, elementRef) {
50
- this.cdr = cdr;
51
- this.elementRef = elementRef;
52
- }
53
- onDragOver(event) {
54
- event.preventDefault();
55
- event.stopPropagation();
56
- // Check if this is a panel drag (not a file drag)
57
- if (event.dataTransfer?.types.includes('text/plain')) {
58
- this.isDragOver = true;
59
- }
60
- }
61
- onDragLeave(event) {
62
- event.preventDefault();
63
- this.isDragOver = false;
64
- }
65
- onDrop(event) {
66
- event.preventDefault();
67
- event.stopPropagation();
68
- this.isDragOver = false;
69
- const sourceSectionKey = event.dataTransfer?.getData('text/plain');
70
- if (sourceSectionKey && sourceSectionKey !== this.sectionKey) {
71
- this.panelDrop.emit({
72
- sourceSectionKey,
73
- targetSectionKey: this.sectionKey
74
- });
75
- // Reorder sections via the form component
76
- this.reorderSections(sourceSectionKey, this.sectionKey);
77
- }
78
- }
79
- /**
80
- * Reorders sections by moving the source section to the position of the target section.
81
- */
82
- reorderSections(sourceSectionKey, targetSectionKey) {
83
- const formRef = this.form;
84
- if (!formRef?.getSectionOrder || !formRef?.setSectionOrder) {
85
- return;
86
- }
87
- const currentOrder = formRef.getSectionOrder();
88
- const sourceIndex = currentOrder.indexOf(sourceSectionKey);
89
- const targetIndex = currentOrder.indexOf(targetSectionKey);
90
- if (sourceIndex === -1 || targetIndex === -1) {
91
- return;
92
- }
93
- // Remove source from current position
94
- const newOrder = [...currentOrder];
95
- newOrder.splice(sourceIndex, 1);
96
- // Insert at target position
97
- newOrder.splice(targetIndex, 0, sourceSectionKey);
98
- // Save the new order
99
- formRef.setSectionOrder(newOrder);
100
- this.cdr.markForCheck();
101
- }
102
- onDragStart(event) {
103
- this.isDragging = true;
104
- event.dataTransfer?.setData('text/plain', this.sectionKey);
105
- if (event.dataTransfer) {
106
- event.dataTransfer.effectAllowed = 'move';
107
- }
108
- this.dragStarted.emit({ sectionKey: this.sectionKey, event });
109
- }
110
- onDragEnd(event) {
111
- this.isDragging = false;
112
- this.dragEnded.emit();
113
- }
114
- get expanded() {
115
- const formRef = this.form;
116
- return formRef?.IsSectionExpanded ? formRef.IsSectionExpanded(this.sectionKey, this.defaultExpanded) : true;
117
- }
118
- displayName = '';
119
- fieldNames = '';
120
- isVisible = true;
121
- ngOnInit() {
122
- // Initialize display name
123
- this.displayName = this.sectionName;
124
- }
125
- ngAfterContentInit() {
126
- // Extract field names from projected field components
127
- this.updateFieldNames();
128
- this.fieldComponents.changes.subscribe(() => {
129
- this.updateFieldNames();
130
- });
131
- }
132
- ngOnChanges(changes) {
133
- if (changes['sectionName']) {
134
- this.displayName = this.sectionName;
135
- }
136
- if (changes['sectionName'] || changes['formContext']) {
137
- this.updateVisibilityAndHighlighting();
138
- }
139
- // Update context on all child field components when it changes
140
- if (changes['formContext'] && this.fieldComponents) {
141
- this.fieldComponents.forEach(field => {
142
- field.formContext = this.formContext;
143
- });
144
- }
145
- }
146
- toggle() {
147
- const formRef = this.form;
148
- if (formRef?.SetSectionExpanded) {
149
- formRef.SetSectionExpanded(this.sectionKey, !this.expanded);
150
- this.cdr.markForCheck();
151
- }
152
- }
153
- updateFieldNames() {
154
- if (this.fieldComponents) {
155
- // Extract field display names from all mj-form-field components
156
- const names = [];
157
- this.fieldComponents.forEach(field => {
158
- if (field.DisplayName) {
159
- names.push(field.DisplayName.toLowerCase());
160
- }
161
- });
162
- this.fieldNames = names.join(' ');
163
- this.updateVisibilityAndHighlighting();
164
- }
165
- }
166
- updateVisibilityAndHighlighting() {
167
- const searchTerm = (this.formContext?.sectionFilter || '').toLowerCase().trim();
168
- if (!searchTerm) {
169
- // No filter - show everything, clear highlights
170
- this.isVisible = true;
171
- this.displayName = this.sectionName;
172
- this.cdr.markForCheck();
173
- return;
174
- }
175
- // Check if this section matches the filter (section name or any field name)
176
- const sectionMatches = this.sectionName.toLowerCase().includes(searchTerm);
177
- const fieldsMatch = this.fieldNames.includes(searchTerm);
178
- this.isVisible = sectionMatches || fieldsMatch;
179
- if (this.isVisible && sectionMatches) {
180
- // Highlight section name if it matches
181
- const escapedTerm = this.escapeRegex(searchTerm);
182
- const regex = new RegExp(escapedTerm, 'gi');
183
- this.displayName = this.sectionName.replace(regex, '<mark class="search-highlight">$&</mark>');
184
- }
185
- else {
186
- this.displayName = this.sectionName;
187
- }
188
- this.cdr.markForCheck();
189
- }
190
- escapeRegex(term) {
191
- return term.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
192
- }
193
- static ɵfac = function CollapsiblePanelComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CollapsiblePanelComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.ElementRef)); };
194
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CollapsiblePanelComponent, selectors: [["mj-collapsible-panel"]], contentQueries: function CollapsiblePanelComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
195
- i0.ɵɵcontentQuery(dirIndex, MJFormField, 5);
196
- } if (rf & 2) {
197
- let _t;
198
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.fieldComponents = _t);
199
- } }, hostVars: 8, hostBindings: function CollapsiblePanelComponent_HostBindings(rf, ctx) { if (rf & 1) {
200
- i0.ɵɵlistener("dragover", function CollapsiblePanelComponent_dragover_HostBindingHandler($event) { return ctx.onDragOver($event); })("dragleave", function CollapsiblePanelComponent_dragleave_HostBindingHandler($event) { return ctx.onDragLeave($event); })("drop", function CollapsiblePanelComponent_drop_HostBindingHandler($event) { return ctx.onDrop($event); });
201
- } if (rf & 2) {
202
- i0.ɵɵstyleProp("order", ctx.cssOrder);
203
- i0.ɵɵclassProp("search-hidden", ctx.isHidden)("dragging", ctx.isDragging)("drag-over", ctx.isDragOver);
204
- } }, inputs: { sectionKey: "sectionKey", sectionName: "sectionName", icon: "icon", form: "form", formContext: "formContext", variant: "variant", badgeCount: "badgeCount", entityName: "entityName", defaultExpanded: "defaultExpanded" }, outputs: { dragStarted: "dragStarted", dragEnded: "dragEnded", panelDrop: "panelDrop" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 14, vars: 13, consts: [[1, "form-card", "collapsible-card"], ["role", "button", "tabindex", "0", 1, "collapsible-header", 3, "click"], ["title", "Drag to reorder sections", "draggable", "true", 1, "drag-handle", 3, "dragstart", "dragend", "click"], [1, "fa-solid", "fa-grip-vertical"], [1, "collapsible-title"], [1, "section-name", 3, "innerHTML"], [1, "row-count-badge", 3, "zero-rows"], [1, "collapse-icon"], [1, "collapsible-body"], [1, "form-body"], [1, "row-count-badge"]], template: function CollapsiblePanelComponent_Template(rf, ctx) { if (rf & 1) {
205
- i0.ɵɵprojectionDef();
206
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
207
- i0.ɵɵlistener("click", function CollapsiblePanelComponent_Template_div_click_1_listener() { return ctx.toggle(); });
208
- i0.ɵɵelementStart(2, "div", 2);
209
- i0.ɵɵlistener("dragstart", function CollapsiblePanelComponent_Template_div_dragstart_2_listener($event) { return ctx.onDragStart($event); })("dragend", function CollapsiblePanelComponent_Template_div_dragend_2_listener($event) { return ctx.onDragEnd($event); })("click", function CollapsiblePanelComponent_Template_div_click_2_listener($event) { return $event.stopPropagation(); });
210
- i0.ɵɵelement(3, "i", 3);
211
- i0.ɵɵelementEnd();
212
- i0.ɵɵelementStart(4, "div", 4);
213
- i0.ɵɵelement(5, "i");
214
- i0.ɵɵelementStart(6, "h3");
215
- i0.ɵɵelement(7, "span", 5);
216
- i0.ɵɵconditionalCreate(8, CollapsiblePanelComponent_Conditional_8_Template, 2, 3, "span", 6);
217
- i0.ɵɵelementEnd()();
218
- i0.ɵɵelementStart(9, "div", 7);
219
- i0.ɵɵelement(10, "i");
220
- i0.ɵɵelementEnd()();
221
- i0.ɵɵelementStart(11, "div", 8)(12, "div", 9);
222
- i0.ɵɵprojection(13);
223
- i0.ɵɵelementEnd()()();
224
- } if (rf & 2) {
225
- i0.ɵɵclassProp("related-entity", ctx.variant === "related-entity");
226
- i0.ɵɵattribute("data-section-name", ctx.sectionName)("data-field-names", ctx.fieldNames)("data-section-key", ctx.sectionKey);
227
- i0.ɵɵadvance(5);
228
- i0.ɵɵclassMap(ctx.icon);
229
- i0.ɵɵadvance(2);
230
- i0.ɵɵproperty("innerHTML", ctx.displayName, i0.ɵɵsanitizeHtml);
231
- i0.ɵɵadvance();
232
- i0.ɵɵconditional(ctx.badgeCount !== undefined ? 8 : -1);
233
- i0.ɵɵadvance(2);
234
- i0.ɵɵclassMap(ctx.expanded ? "fa fa-chevron-up" : "fa fa-chevron-down");
235
- i0.ɵɵadvance();
236
- i0.ɵɵclassProp("collapsed", !ctx.expanded);
237
- } }, styles: ["[_nghost-%COMP%] {\n display: block;\n }\n\n .search-hidden[_nghost-%COMP%] {\n display: none;\n }\n\n .form-card[_ngcontent-%COMP%] {\n background: white;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n transition: all 0.3s ease;\n }\n\n .collapsible-card[_ngcontent-%COMP%] {\n overflow: hidden;\n }\n\n .collapsible-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n padding: 20px 24px;\n background: linear-gradient(135deg, #f9fafb 0%, #ffffff 100%);\n border-bottom: 2px solid #e5e7eb;\n user-select: none;\n transition: all 0.3s ease;\n cursor: pointer;\n }\n\n .drag-handle[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 0;\n height: 24px;\n color: #9ca3af;\n cursor: grab;\n opacity: 0;\n overflow: hidden;\n transition: width 0.2s ease, opacity 0.2s ease, color 0.2s ease;\n flex-shrink: 0;\n }\n\n .collapsible-header[_ngcontent-%COMP%]:hover .drag-handle[_ngcontent-%COMP%] {\n width: 24px;\n opacity: 1;\n }\n\n .drag-handle[_ngcontent-%COMP%]:hover {\n color: #667eea;\n }\n\n .drag-handle[_ngcontent-%COMP%]:active {\n cursor: grabbing;\n }\n\n .dragging[_nghost-%COMP%] .drag-handle[_ngcontent-%COMP%] {\n width: 24px;\n opacity: 1;\n color: #667eea;\n }\n\n .drag-over[_nghost-%COMP%] {\n border: 2px dashed #667eea;\n border-radius: 8px;\n }\n\n .collapsible-header[_ngcontent-%COMP%]:hover {\n background: linear-gradient(135deg, #f3f4f6 0%, #f9fafb 100%);\n border-bottom-color: #667eea;\n }\n\n .collapsible-title[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n }\n\n .collapsible-title[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 20px;\n color: #667eea;\n }\n\n .collapsible-title[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: #1f2937;\n }\n\n .collapsible-header[_ngcontent-%COMP%] .collapse-icon[_ngcontent-%COMP%] {\n color: #6b7280;\n transition: transform 0.3s ease;\n padding: 4px;\n }\n\n .collapsible-body[_ngcontent-%COMP%] {\n max-height: 2000px;\n overflow: hidden;\n transition: max-height 0.4s ease, padding 0.4s ease, opacity 0.3s ease;\n opacity: 1;\n }\n\n .collapsible-body.collapsed[_ngcontent-%COMP%] {\n max-height: 0;\n padding: 0;\n opacity: 0;\n }\n\n .form-body[_ngcontent-%COMP%] {\n padding: 24px;\n overflow: auto;\n max-height: 600px;\n }\n\n \n\n .form-card.related-entity[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 100%);\n border-left: 3px solid #3b82f6;\n }\n\n \n\n .form-card.related-entity[_ngcontent-%COMP%] .form-body[_ngcontent-%COMP%] {\n max-height: none;\n min-height: 300px;\n height: 400px;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n }\n\n \n\n .form-card.related-entity[_ngcontent-%COMP%] .form-body[_ngcontent-%COMP%] > div {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n }\n\n .form-card.related-entity[_ngcontent-%COMP%] .form-body[_ngcontent-%COMP%] mj-entity-data-grid, \n .form-card.related-entity[_ngcontent-%COMP%] .form-body[_ngcontent-%COMP%] mj-explorer-entity-data-grid {\n flex: 1;\n display: block;\n min-height: 0;\n }\n\n .form-card.related-entity[_ngcontent-%COMP%] .collapsible-header[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #e0f2fe 0%, #f0f9ff 100%);\n }\n\n .form-card.related-entity[_ngcontent-%COMP%] .collapsible-header[_ngcontent-%COMP%]:hover {\n background: linear-gradient(135deg, #bfdbfe 0%, #e0f2fe 100%);\n border-bottom-color: #3b82f6;\n }\n\n .form-card.related-entity[_ngcontent-%COMP%] .collapsible-title[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #3b82f6;\n }\n\n \n\n .collapsible-title[_ngcontent-%COMP%] .row-count-badge[_ngcontent-%COMP%] {\n background: #10b981;\n color: white;\n padding: 3px 8px 2px 9px;\n border-radius: 12px;\n font-size: 12px;\n font-weight: 600;\n margin-left: 8px;\n vertical-align: middle;\n position: relative;\n top: -2px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 24px;\n line-height: 1;\n }\n\n \n\n .collapsible-title[_ngcontent-%COMP%] .row-count-badge.zero-rows[_ngcontent-%COMP%] {\n background: #9ca3af;\n }\n\n \n\n .collapsible-title[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] .search-highlight {\n background-color: #fef08a;\n color: #854d0e;\n padding: 0;\n border-radius: 2px;\n font-weight: 700;\n box-shadow: 0 0 0 2px #fef08a;\n }"] });
238
- }
239
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CollapsiblePanelComponent, [{
240
- type: Component,
241
- args: [{ standalone: false, selector: 'mj-collapsible-panel', template: `
242
- <div
243
- class="form-card collapsible-card"
244
- [class.related-entity]="variant === 'related-entity'"
245
- [attr.data-section-name]="sectionName"
246
- [attr.data-field-names]="fieldNames"
247
- [attr.data-section-key]="sectionKey">
248
- <div class="collapsible-header" role="button" tabindex="0" (click)="toggle()">
249
- <div class="drag-handle"
250
- title="Drag to reorder sections"
251
- draggable="true"
252
- (dragstart)="onDragStart($event)"
253
- (dragend)="onDragEnd($event)"
254
- (click)="$event.stopPropagation()">
255
- <i class="fa-solid fa-grip-vertical"></i>
256
- </div>
257
- <div class="collapsible-title">
258
- <i [class]="icon"></i>
259
- <h3>
260
- <span class="section-name" [innerHTML]="displayName"></span>
261
- @if (badgeCount !== undefined) {
262
- <span class="row-count-badge"
263
- [class.zero-rows]="badgeCount === 0">
264
- {{badgeCount}}
265
- </span>
266
- }
267
- </h3>
268
- </div>
269
- <div class="collapse-icon">
270
- <i [class]="expanded ? 'fa fa-chevron-up' : 'fa fa-chevron-down'"></i>
271
- </div>
272
- </div>
273
- <div class="collapsible-body" [class.collapsed]="!expanded">
274
- <div class="form-body">
275
- <ng-content></ng-content>
276
- </div>
277
- </div>
278
- </div>
279
- `, styles: ["\n :host {\n display: block;\n }\n\n :host(.search-hidden) {\n display: none;\n }\n\n .form-card {\n background: white;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n transition: all 0.3s ease;\n }\n\n .collapsible-card {\n overflow: hidden;\n }\n\n .collapsible-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n padding: 20px 24px;\n background: linear-gradient(135deg, #f9fafb 0%, #ffffff 100%);\n border-bottom: 2px solid #e5e7eb;\n user-select: none;\n transition: all 0.3s ease;\n cursor: pointer;\n }\n\n .drag-handle {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 0;\n height: 24px;\n color: #9ca3af;\n cursor: grab;\n opacity: 0;\n overflow: hidden;\n transition: width 0.2s ease, opacity 0.2s ease, color 0.2s ease;\n flex-shrink: 0;\n }\n\n .collapsible-header:hover .drag-handle {\n width: 24px;\n opacity: 1;\n }\n\n .drag-handle:hover {\n color: #667eea;\n }\n\n .drag-handle:active {\n cursor: grabbing;\n }\n\n :host(.dragging) .drag-handle {\n width: 24px;\n opacity: 1;\n color: #667eea;\n }\n\n :host(.drag-over) {\n border: 2px dashed #667eea;\n border-radius: 8px;\n }\n\n .collapsible-header:hover {\n background: linear-gradient(135deg, #f3f4f6 0%, #f9fafb 100%);\n border-bottom-color: #667eea;\n }\n\n .collapsible-title {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n }\n\n .collapsible-title i {\n font-size: 20px;\n color: #667eea;\n }\n\n .collapsible-title h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: #1f2937;\n }\n\n .collapsible-header .collapse-icon {\n color: #6b7280;\n transition: transform 0.3s ease;\n padding: 4px;\n }\n\n .collapsible-body {\n max-height: 2000px;\n overflow: hidden;\n transition: max-height 0.4s ease, padding 0.4s ease, opacity 0.3s ease;\n opacity: 1;\n }\n\n .collapsible-body.collapsed {\n max-height: 0;\n padding: 0;\n opacity: 0;\n }\n\n .form-body {\n padding: 24px;\n overflow: auto;\n max-height: 600px;\n }\n\n /* Related Entity Sections - Visual Distinction */\n .form-card.related-entity {\n background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 100%);\n border-left: 3px solid #3b82f6;\n }\n\n /* Related entity sections contain grids that need more vertical space */\n .form-card.related-entity .form-body {\n max-height: none;\n min-height: 300px;\n height: 400px;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n }\n\n /* Ensure wrapper div and grid inside take full height */\n .form-card.related-entity .form-body > ::ng-deep div {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n }\n\n .form-card.related-entity .form-body ::ng-deep mj-entity-data-grid,\n .form-card.related-entity .form-body ::ng-deep mj-explorer-entity-data-grid {\n flex: 1;\n display: block;\n min-height: 0;\n }\n\n .form-card.related-entity .collapsible-header {\n background: linear-gradient(135deg, #e0f2fe 0%, #f0f9ff 100%);\n }\n\n .form-card.related-entity .collapsible-header:hover {\n background: linear-gradient(135deg, #bfdbfe 0%, #e0f2fe 100%);\n border-bottom-color: #3b82f6;\n }\n\n .form-card.related-entity .collapsible-title i {\n color: #3b82f6;\n }\n\n /* Row count badge for related entity sections */\n .collapsible-title .row-count-badge {\n background: #10b981;\n color: white;\n padding: 3px 8px 2px 9px;\n border-radius: 12px;\n font-size: 12px;\n font-weight: 600;\n margin-left: 8px;\n vertical-align: middle;\n position: relative;\n top: -2px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 24px;\n line-height: 1;\n }\n\n /* Gray badge for zero rows (loaded but empty) */\n .collapsible-title .row-count-badge.zero-rows {\n background: #9ca3af;\n }\n\n /* Search highlighting */\n .collapsible-title h3 ::ng-deep .search-highlight {\n background-color: #fef08a;\n color: #854d0e;\n padding: 0;\n border-radius: 2px;\n font-weight: 700;\n box-shadow: 0 0 0 2px #fef08a;\n }\n "] }]
280
- }], () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], { sectionKey: [{
281
- type: Input
282
- }], sectionName: [{
283
- type: Input
284
- }], icon: [{
285
- type: Input
286
- }], form: [{
287
- type: Input
288
- }], formContext: [{
289
- type: Input
290
- }], variant: [{
291
- type: Input
292
- }], badgeCount: [{
293
- type: Input
294
- }], entityName: [{
295
- type: Input
296
- }], defaultExpanded: [{
297
- type: Input
298
- }], dragStarted: [{
299
- type: Output
300
- }], dragEnded: [{
301
- type: Output
302
- }], panelDrop: [{
303
- type: Output
304
- }], fieldComponents: [{
305
- type: ContentChildren,
306
- args: [MJFormField, { descendants: true }]
307
- }], isHidden: [{
308
- type: HostBinding,
309
- args: ['class.search-hidden']
310
- }], cssOrder: [{
311
- type: HostBinding,
312
- args: ['style.order']
313
- }], isDragging: [{
314
- type: HostBinding,
315
- args: ['class.dragging']
316
- }], isDragOver: [{
317
- type: HostBinding,
318
- args: ['class.drag-over']
319
- }], onDragOver: [{
320
- type: HostListener,
321
- args: ['dragover', ['$event']]
322
- }], onDragLeave: [{
323
- type: HostListener,
324
- args: ['dragleave', ['$event']]
325
- }], onDrop: [{
326
- type: HostListener,
327
- args: ['drop', ['$event']]
328
- }] }); })();
329
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CollapsiblePanelComponent, { className: "CollapsiblePanelComponent", filePath: "src/lib/collapsible-panel.component.ts", lineNumber: 268 }); })();
330
- //# sourceMappingURL=collapsible-panel.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collapsible-panel.component.js","sourceRoot":"","sources":["../../src/lib/collapsible-panel.component.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /** Form width mode - 'centered' uses max-width constraint, 'full-width' uses all available space */
4
- export type FormWidthMode = 'centered' | 'full-width';
5
- /**
6
- * Reusable component for form section controls (Expand All, Collapse All, Filter, Counter, Width Toggle)
7
- * Designed to be projected into form toolbars via ng-content with [toolbar-additional-controls] selector
8
- */
9
- export declare class FormSectionControlsComponent {
10
- visibleCount: number;
11
- totalCount: number;
12
- searchFilter: string;
13
- expandedCount: number;
14
- showEmptyFields: boolean;
15
- widthMode: FormWidthMode;
16
- hasCustomOrder: boolean;
17
- expandAll: EventEmitter<void>;
18
- collapseAll: EventEmitter<void>;
19
- filterChange: EventEmitter<string>;
20
- showEmptyFieldsChange: EventEmitter<boolean>;
21
- widthModeChange: EventEmitter<FormWidthMode>;
22
- resetOrder: EventEmitter<void>;
23
- searchTerm: string;
24
- showResetConfirmDialog: boolean;
25
- get allExpanded(): boolean;
26
- get allCollapsed(): boolean;
27
- clearFilter(): void;
28
- toggleWidthMode(): void;
29
- confirmResetOrder(): void;
30
- doResetOrder(): void;
31
- cancelResetOrder(): void;
32
- static ɵfac: i0.ɵɵFactoryDeclaration<FormSectionControlsComponent, never>;
33
- static ɵcmp: i0.ɵɵComponentDeclaration<FormSectionControlsComponent, "mj-form-section-controls[toolbar-additional-controls]", never, { "visibleCount": { "alias": "visibleCount"; "required": false; }; "totalCount": { "alias": "totalCount"; "required": false; }; "searchFilter": { "alias": "searchFilter"; "required": false; }; "expandedCount": { "alias": "expandedCount"; "required": false; }; "showEmptyFields": { "alias": "showEmptyFields"; "required": false; }; "widthMode": { "alias": "widthMode"; "required": false; }; "hasCustomOrder": { "alias": "hasCustomOrder"; "required": false; }; }, { "expandAll": "expandAll"; "collapseAll": "collapseAll"; "filterChange": "filterChange"; "showEmptyFieldsChange": "showEmptyFieldsChange"; "widthModeChange": "widthModeChange"; "resetOrder": "resetOrder"; }, never, never, false, never>;
34
- }
35
- //# sourceMappingURL=form-section-controls.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-section-controls.component.d.ts","sourceRoot":"","sources":["../../src/lib/form-section-controls.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAA0C,MAAM,eAAe,CAAC;;AAEhG,oGAAoG;AACpG,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC;AAEtD;;;GAGG;AACH,qBAsXa,4BAA4B;IAC5B,YAAY,EAAE,MAAM,CAAK;IACzB,UAAU,EAAE,MAAM,CAAK;IACvB,YAAY,EAAE,MAAM,CAAM;IAC1B,aAAa,EAAE,MAAM,CAAK;IAC1B,eAAe,EAAE,OAAO,CAAS;IACjC,SAAS,EAAE,aAAa,CAAc;IACtC,cAAc,EAAE,OAAO,CAAS;IAC/B,SAAS,qBAA4B;IACrC,WAAW,qBAA4B;IACvC,YAAY,uBAA8B;IAC1C,qBAAqB,wBAA+B;IACpD,eAAe,8BAAqC;IACpD,UAAU,qBAA4B;IAEhD,UAAU,SAAM;IAChB,sBAAsB,UAAS;IAE/B,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,WAAW,IAAI,IAAI;IAKnB,eAAe,IAAI,IAAI;IAKvB,iBAAiB,IAAI,IAAI;IAIzB,YAAY,IAAI,IAAI;IAKpB,gBAAgB,IAAI,IAAI;yCA7Cf,4BAA4B;2CAA5B,4BAA4B;CAgDxC"}