@solidxai/core-ui 0.1.17 → 0.1.18-beta.1
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/components/core/card/SolidCardView.d.ts +1 -0
- package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
- package/dist/components/core/card/SolidCardView.js +2 -2
- package/dist/components/core/card/SolidCardView.js.map +1 -1
- package/dist/components/core/card/SolidCardView.tsx +3 -0
- package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +342 -114
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +285 -47
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +1 -1
- package/dist/components/core/json/SolidJsonEditor.css +89 -0
- package/dist/components/core/kanban/SolidKanbanView.d.ts +1 -0
- package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.js +3 -1
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +4 -1
- package/dist/components/core/list/SolidListView.d.ts +1 -0
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +2 -1
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +3 -0
- package/dist/components/core/tree/SolidTreeView.d.ts +3 -0
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +7 -1
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +10 -0
- package/dist/constants/error-messages.d.ts +4 -0
- package/dist/constants/error-messages.d.ts.map +1 -1
- package/dist/constants/error-messages.js +4 -0
- package/dist/constants/error-messages.js.map +1 -1
- package/dist/constants/error-messages.ts +4 -0
- package/dist/resources/solid-custom.css +3 -18
- package/dist/resources/themes/solid-dark-enterprise/theme.css +4 -481
- package/dist/resources/themes/solid-dark-modern/theme.css +1 -167
- package/dist/resources/themes/solid-light-enterprise/theme.css +4 -486
- package/dist/resources/themes/solid-light-modern/theme.css +7 -204
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.css +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidRelationOneToManyField.js","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,mDAAmD,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,aAAa,MAAM,mDAAmD,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEjK,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAkB/C;IAGI,qCAAY,YAA6B;QADjC;;;;;WAA8B;QAElC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;;;;;eAED;YAEI,yFAAyF;YACzF,yDAAyD;YACzD,sEAAsE;YACtE,sFAAsF;YAEtF,gFAAgF;YAEhF,OAAO,EAAE,CAAC;QACd,CAAC;;;;;;eAED,UAAe,KAAU,EAAE,QAAkB;YACzC,IAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAChD,qCAAqC;YACrC,wEAAwE;YAExE,IAAI;YACJ,IAAI,KAAK,EAAE;gBACP,QAAQ,CAAC,MAAM,CAAC,UAAG,eAAe,CAAC,KAAK,CAAC,IAAI,OAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;aACnE;QACL,CAAC;;;;;;eAED;;YACI,IAAI,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;YAE1B,IAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;YACtD,IAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAChD,IAAM,UAAU,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;YAE5E,eAAe;YACf,IAAI,aAAa,CAAC,QAAQ,EAAE;gBACxB,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;aACvE;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;;;;;;eAED,UAAO,MAAoB;;YACvB,IAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;YAEtD,IAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAChD,IAAM,UAAU,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;YAC5E,IAAM,SAAS,GAAG,CAAA,MAAA,eAAe,CAAC,KAAK,0CAAE,SAAS,KAAI,wBAAwB,CAAC;YAE/E,IAAM,gBAAgB,GAAG,MAAA,MAAA,aAAa,CAAC,aAAa,0CAAE,YAAY,0CAAE,IAAI,CAAC;YAEzE,IAAI,aAAa,GAAG,qBAAqB,CAAC,sCAAsC,CAAC,CAAC;YAClF,IAAM,WAAW,GAAG;gBAChB,KAAK,EAAE,UAAU;gBACjB,KAAK,EAAE,CAAC,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,IAAI,0CAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,KAAI,EAAE,CAAC,CAAC,GAAG,CACnE,UAAC,IAAS,YAAK,OAAA,CAAC,EAAE,KAAK,EAAE,MAAA,IAAI,CAAC,gBAAgB,CAAC,mCAAI,EAAE,EAAE,CAAC,CAAA,EAAA,CAC3D;gBACD,MAAM,EAAE,eAAe;aAC1B,CAAA;YAED,yCAAyC;YAGzC,IAAI,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;YAClD,IAAI,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;YAClD,IAAI,CAAC,UAAU,EAAE;gBACb,UAAU,GAAG,wCAAwC,CAAC;aACzD;YACD,IAAI,CAAC,UAAU,EAAE;gBACb,UAAU,GAAG,wCAAwC,CAAC;aACzD;YACD,IAAM,QAAQ,GAAW,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;YACpD,OAAO,CACH,4BACI,eAAK,SAAS,EAAE,SAAS,aACpB,QAAQ,KAAK,MAAM;4BAChB,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,MAAM,CAAC,EAErD,QAAQ,KAAK,MAAM,IAAI,CACpB,4BACK,UAAU;gCACP,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,MAAM,CAAC,GAEvD,CACN,IAEC,GACP,CACN,CAAC;QAEN,CAAC;;;;;;eAED,UAA0B,MAAc,EAAE,MAAoB;YAC1D,IAAI,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAClD,IAAM,WAAW,GAA8B;gBAC3C,MAAM,EAAE,MAAM;gBACd,YAAY,EAAE,IAAI,CAAC,YAAY;aAClC,CAAA;YACD,OAAO,CACH,4BACK,aAAa,IAAI,KAAC,aAAa,eAAK,WAAW,EAAI,GACrD,CACN,CAAA;QACL,CAAC;;IAGL,kCAAC;AAAD,CAAC,AA5GD,IA4GC;;AAID,IAAM,yBAAyB,GAAG,UAAC,EAMlC;;;QALG,YAAY,kBAAA,EACZ,eAAe,qBAAA;IAKf,IAAI,CAAC,YAAY,EAAE;QACf,OAAO,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;KAC9B;IACD,IAAM,iBAAiB,GACnB,MAAA,MAAA,YAAY,CAAC,aAAa,0CAAE,wBAAwB,mCACpD,YAAY,CAAC,SAAS,CAAC;IAE3B,IAAM,QAAQ,GAAG,MAAA,MAAA,YAAY,CAAC,IAAI,0CAAE,EAAE,mCAAI,CAAC,CAAC,CAAC;IAG7C,IAAM,UAAU;QACZ,GAAC,iBAAiB,IAAG;YACjB,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE;SACxB;WACJ,CAAC;IAEF,IAAM,WAAW,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,WAAW,CAAC;IAExD,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;IAEhD,IAAI;QACA,IAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAElD,OAAO;YACH,IAAI,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC;SACxC,CAAC;KACL;IAAC,OAAO,KAAK,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;KACjC;AACL,CAAC,CAAC;AAGF,MAAM,CAAC,IAAM,sCAAsC,GAAG,UAAC,EAAmD;;QAAjD,MAAM,YAAA,EAAE,YAAY,kBAAA;IACzE,IAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;IACjD,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,IAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC;IAC3C,IAAM,SAAS,GAAG,CAAA,MAAA,eAAe,CAAC,KAAK,0CAAE,SAAS,KAAI,wBAAwB,CAAC;IAC/E,IAAM,UAAU,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;IAC5E,IAAM,gBAAgB,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,WAAW,mCAAI,aAAa,CAAC,WAAW,CAAC;IACxF,IAAM,qBAAqB,GAAG,YAAY,CAAC,qBAAqB,CAAC;IAC3D,IAAA,KAAgE,QAAQ,CAAC,KAAK,CAAC,EAA9E,2BAA2B,QAAA,EAAE,8BAA8B,QAAmB,CAAC;IAChF,IAAA,KAAsC,QAAQ,EAAO,EAApD,cAAc,QAAA,EAAE,iBAAiB,QAAmB,CAAA;IACrD,IAAA,KAAsC,QAAQ,EAAkB,EAA/D,cAAc,QAAA,EAAE,iBAAiB,QAA8B,CAAA;IAChE,IAAA,KAAgC,QAAQ,CAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC,CAAC,2BAA2B;IAClF,IAAM,cAAc,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,SAAS,CAAC;IACzD,IAAM,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC;IACjD,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAClD,IAAM,YAAY,GAAQ,MAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,UAAC,EAAe;YAAd,CAAC,QAAA,EAAE,KAAK,QAAA;QAAW,OAAA,KAAK,CAAC,SAAS;IAAf,CAAe,CAAC,0CAAG,CAAC,CAAC,CAAC;IAChJ,IAAA,KAAoF,QAAQ,CAAC,KAAK,CAAC,EAAlG,qCAAqC,QAAA,EAAE,wCAAwC,QAAmB,CAAC;IAE1G,SAAS,CAAC;QACN,IAAM,SAAS,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,WAAW,KAAK,eAAe,CAAC,KAAK,CAAC,IAAI,IAAI,eAAe,KAAK,KAAK,EAAE;YACzE,mCAAmC,CAAC,KAAK,CAAC,CAAC;SAC9C;IACL,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,IAAM,mCAAmC,GAAG,UAAC,EAAO;;;QAChD,IAAI,eAAe,KAAK,KAAK,EAAE;YAC3B,wCAAwC,CAAC,IAAI,CAAC,CAAC;SAClD;aAAM;YAEH,IAAM,cAAc,GAAmB;gBACnC,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;gBAC9D,EAAE,EAAE,EAAE;gBACN,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,KAAK;gBACrB,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;gBACxD,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;gBAC5E,eAAe,EAAE,YAAY,CAAC,aAAa,CAAC,wBAAwB;gBACpE,UAAU,EAAE,YAAY,CAAC,CAAC,WAAG,GAAC,YAAY,IAAG,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAG,CAAC,CAAC,EAAE;gBAC1J,kBAAkB,EAAE,YAAY,CAAC,kBAAkB;gBACnD,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;aACrE,CAAA;YACD,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAClC,8BAA8B,CAAC,IAAI,CAAC,CAAC;SACxC;IACL,CAAC,CAAA;IAED,IAAM,gBAAgB,GAAG;;QACrB,8BAA8B,CAAC,KAAK,CAAC,CAAC;QACtC,IAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjD,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnC,cAAc,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,CAAC;QAChC,IAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,UAAG,YAAY,CAAC,SAAS,CAAE,CAAA;QAC5J,IAAM,aAAa,GAAG;YAClB,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,YAAY,EAAE,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YACzD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB;YACtD,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,0CAAE,EAAE,CAAC,CAAC,CAAC,KAAK;YACtD,YAAY,EAAE,yBAAyB,CAAC;gBACpC,YAAY,cAAA;gBACZ,eAAe,iBAAA;aAClB,CAAC;SACL,CAAA;QACD,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACpC,CAAC,CAAA;IAED,gBAAgB;IAChB,SAAS,CAAC;;;QAGN,IAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,UAAG,YAAY,CAAC,SAAS,CAAE,CAAA;QAC5J,IAAM,cAAc,GAAG;YACnB,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,YAAY,EAAE,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YACzD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB;YACtD,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,0CAAE,EAAE,CAAC,CAAC,CAAC,KAAK;YACtD,YAAY,EAAE,yBAAyB,CAAC;gBACpC,YAAY,cAAA;gBACZ,eAAe,iBAAA;aAClB,CAAC;SAEL,CAAA;QACD,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAClC,IAAM,cAAc,GAAmB;YACnC,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,eAAe,EAAE,YAAY,CAAC,aAAa,CAAC,wBAAwB;YACpE,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,KAAK;YACrB,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;YACxD,UAAU,EAAE,YAAY,CAAC,CAAC,WAAG,GAAC,YAAY,IAAG,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAG,CAAC,CAAC,EAAE;YAC1J,kBAAkB,EAAE,YAAY,CAAC,kBAAkB;YACnD,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;SACrE,CAAA;QAID,iBAAiB,CAAC,cAAc,CAAC,CAAA;IAErC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAExB,IAAM,aAAa,GAAG,MAAA,eAAe,CAAC,KAAK,0CAAE,QAAQ,CAAC;IACtD,IAAM,aAAa,GAAG,MAAA,eAAe,CAAC,KAAK,0CAAE,QAAQ,CAAC;IAEtD,IAAM,YAAY,GAAG,MAAA,MAAA,MAAA,qBAAqB,CAAC,IAAI,CAAC,SAAS,0CAAE,MAAM,0CAAE,KAAK,0CAAE,QAAQ,CAAC;IACnF,IAAM,YAAY,GAAG,MAAA,MAAA,MAAA,qBAAqB,CAAC,IAAI,CAAC,SAAS,0CAAE,MAAM,0CAAE,KAAK,0CAAE,QAAQ,CAAC;IACnF,IAAM,gBAAgB,GAAG,UAAC,MAAW,EAAE,SAAiB,IAAK,OAAA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAArD,CAAqD,CAAC;IAEnH,IAAM,gBAAgB,GAAG;;;;;oBACrB,MAAM,CAAC,SAAS,uBACT,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,KACxB,uBAAuB,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,IACrD,CAAC;oBACH,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,8BAA8B,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;;;oBAEtF,qBAAM,MAAM,CAAC,UAAU,EAAE,EAAA;;oBAAzB,SAAyB,CAAC;;;;;;oBAG1B,MAAM,CAAC,SAAS,uBACT,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,KACxB,uBAAuB,EAAE,SAAS,IACpC,CAAC;oBACH,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;;;oBAErE,wCAAwC,CAAC,KAAK,CAAC,CAAC;;;;SACnD,CAAC;IAIF,OAAO,CACH,0BACI,eAAK,SAAS,EAAE,MAAM,CAAC,YAAY,aAC9B,cAAc,IAAI,KAAK;wBACpB,iBAAO,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,UAAG,MAAM,CAAC,UAAU,sBAAmB,aAAG,UAAU,EACtG,aAAa,CAAC,QAAQ,IAAI,eAAM,SAAS,EAAC,cAAc,mBAAU,EACnE,KAAC,iBAAiB,IAAC,YAAY,EAAE,YAAY,GAAI,IAC7C,EAGX,cAAc;wBACX,KAAC,aAAa,eAAmC,cAAc,IAAE,6BAA6B,EAAE,mCAAmC,EAAE,8BAA8B,EAAE,mCAAmC,KAApL,WAAW,CAAC,QAAQ,EAAE,CAAkK,EAE/M,kBAAkB,KAAK,IAAI,IAAI,cAAc;wBAC1C,KAAC,0BAA0B,IAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,GAA+B,IAErS,EAEN,MAAC,WAAW,IACR,IAAI,EAAE,qCAAqC,EAC3C,YAAY,EAAE,wCAAwC,EACtD,SAAS,EAAC,iDAAiD,EAC3D,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,aAElD,MAAC,iBAAiB,IAAC,SAAS,EAAC,4BAA4B,aACrD,KAAC,gBAAgB,gCAAiC,EAClD,KAAC,gBAAgB,KAAG,IACJ,EACpB,KAAC,eAAe,IAAC,SAAS,EAAC,iCAAiC,YACxD,aAAG,SAAS,EAAC,6BAA6B,iCACrB,UAAU,wBAAoB,GAAG,EACjD,CAAA,MAAA,MAAA,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,IAAI,0CAAE,SAAS,0CAAE,KAAK,0CAAE,WAAW;oCACvD,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW;oCACxD,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,oDAExC,GACU,EAClB,eAAK,SAAS,EAAC,uDAAuD,aAClE,KAAC,WAAW,IAAC,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,SAAG,EAC3E,KAAC,WAAW,IACR,KAAK,EAAC,QAAQ,EACd,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,cAAM,OAAA,wCAAwC,CAAC,KAAK,CAAC,EAA/C,CAA+C,EAC9D,OAAO,EAAC,SAAS,GACnB,IACA,IACI,IAEZ,CACT,CAAC;AACN,CAAC,CAAA;AAGD,MAAM,CAAC,IAAM,sCAAsC,GAAG,UAAC,EAAmD;;QAAjD,MAAM,YAAA,EAAE,YAAY,kBAAA;IACzE,IAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;IAEjD,IAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC;IAC3C,IAAM,SAAS,GAAG,CAAA,MAAA,eAAe,CAAC,KAAK,0CAAE,SAAS,KAAI,wBAAwB,CAAC;IAC/E,IAAM,UAAU,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;IAC5E,IAAM,gBAAgB,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,WAAW,mCAAI,aAAa,CAAC,WAAW,CAAC;IACxF,IAAM,qBAAqB,GAAG,YAAY,CAAC,qBAAqB,CAAC;IAC3D,IAAA,KAAgE,QAAQ,CAAC,KAAK,CAAC,EAA9E,2BAA2B,QAAA,EAAE,8BAA8B,QAAmB,CAAC;IAChF,IAAA,KAAsC,QAAQ,EAAO,EAApD,cAAc,QAAA,EAAE,iBAAiB,QAAmB,CAAA;IACrD,IAAA,KAAsC,QAAQ,EAAkB,EAA/D,cAAc,QAAA,EAAE,iBAAiB,QAA8B,CAAA;IAChE,IAAA,KAAgC,QAAQ,CAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC,CAAC,2BAA2B;IAClF,IAAM,cAAc,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,SAAS,CAAC;IACzD,IAAM,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC;IACjD,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAClD,IAAM,YAAY,GAAQ,MAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,UAAC,EAAe;YAAd,CAAC,QAAA,EAAE,KAAK,QAAA;QAAW,OAAA,KAAK,CAAC,SAAS;IAAf,CAAe,CAAC,0CAAG,CAAC,CAAC,CAAC;IAGtJ,IAAM,mCAAmC,GAAG,UAAC,EAAO;;;QAEhD,IAAM,cAAc,GAAmB;YACnC,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,EAAE,EAAE,EAAE;YACN,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,KAAK;YACrB,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;YACxD,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,eAAe,EAAE,YAAY,CAAC,aAAa,CAAC,wBAAwB;YACpE,UAAU,EAAE,YAAY,CAAC,CAAC,WAAG,GAAC,YAAY,IAAG,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAG,CAAC,CAAC,EAAE;YAC1J,kBAAkB,EAAE,YAAY,CAAC,kBAAkB;YACnD,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;SAErE,CAAA;QACD,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAClC,8BAA8B,CAAC,IAAI,CAAC,CAAC;IAGzC,CAAC,CAAA;IAED,IAAM,gBAAgB,GAAG;;QACrB,8BAA8B,CAAC,KAAK,CAAC,CAAC;QACtC,cAAc,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,CAAC;QAChC,IAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,UAAG,YAAY,CAAC,SAAS,CAAE,CAAA;QAC5J,IAAM,aAAa,GAAG;YAClB,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,YAAY,EAAE,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YACzD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB;YACtD,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,0CAAE,EAAE,CAAC,CAAC,CAAC,KAAK;YACtD,YAAY,EAAE,yBAAyB,CAAC;gBACpC,YAAY,cAAA;gBACZ,eAAe,iBAAA;aAClB,CAAC;SACL,CAAA;QACD,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACpC,CAAC,CAAA;IACD,gBAAgB;IAChB,SAAS,CAAC;;;QAEN,IAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,CAAC,UAAG,YAAY,CAAC,SAAS,CAAE,CAAA;QAC5J,IAAM,cAAc,GAAG;YACnB,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,YAAY,EAAE,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YACzD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB;YACtD,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,0CAAE,EAAE,CAAC,CAAC,CAAC,KAAK;YACtD,YAAY,EAAE,yBAAyB,CAAC;gBACpC,YAAY,cAAA;gBACZ,eAAe,iBAAA;aAClB,CAAC;SACL,CAAA;QACD,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAClC,IAAM,cAAc,GAAmB;YACnC,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;YAC9D,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,IAAI;YACb,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;YAClE,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;YACxD,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;YAC5E,eAAe,EAAE,YAAY,CAAC,aAAa,CAAC,wBAAwB;YACpE,UAAU,EAAE,YAAY,CAAC,CAAC,WAAG,GAAC,YAAY,IAAG,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAG,CAAC,CAAC,EAAE;YAC1J,kBAAkB,EAAE,YAAY,CAAC,kBAAkB;YACnD,cAAc,EAAE,KAAK;SAExB,CAAA;QACD,iBAAiB,CAAC,cAAc,CAAC,CAAA;IAErC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAExB,IAAM,aAAa,GAAG,MAAA,eAAe,CAAC,KAAK,0CAAE,QAAQ,CAAC;IACtD,IAAM,aAAa,GAAG,MAAA,eAAe,CAAC,KAAK,0CAAE,QAAQ,CAAC;IAEtD,IAAM,YAAY,GAAG,MAAA,MAAA,MAAA,qBAAqB,CAAC,IAAI,CAAC,SAAS,0CAAE,MAAM,0CAAE,KAAK,0CAAE,QAAQ,CAAC;IACnF,IAAM,YAAY,GAAG,MAAA,MAAA,MAAA,qBAAqB,CAAC,IAAI,CAAC,SAAS,0CAAE,MAAM,0CAAE,KAAK,0CAAE,QAAQ,CAAC;IAGnF,OAAO,CACH,eAAK,SAAS,EAAE,MAAM,CAAC,gBAAgB,aAClC,cAAc,IAAI,KAAK;gBACpB,iBAAO,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,UAAG,MAAM,CAAC,cAAc,sBAAmB,aAAG,UAAU,EAC1G,aAAa,CAAC,QAAQ,IAAI,eAAM,SAAS,EAAC,cAAc,mBAAU,EACnE,KAAC,iBAAiB,IAAC,YAAY,EAAE,YAAY,GAAI,IAC7C,EAGX,cAAc;gBACX,KAAC,aAAa,eAAmC,cAAc,IAAE,6BAA6B,EAAE,mCAAmC,EAAE,8BAA8B,EAAE,mCAAmC,KAApL,WAAW,CAAC,QAAQ,EAAE,CAAkK,EAE/M,kBAAkB,KAAK,IAAI,IAAI,cAAc;gBAC1C,KAAC,0BAA0B,IAAC,eAAe,EAAE,eAAe,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,GAA+B,IAE3R,CACT,CAAC;AACN,CAAC,CAAA;AAGD,MAAM,CAAC,IAAM,0BAA0B,GAAG,UAAC,EAA4I;;QAA1I,eAAe,qBAAA,EAAE,mBAAmB,yBAAA,EAAE,2BAA2B,iCAAA,EAAE,8BAA8B,oCAAA,EAAE,cAAc,oBAAA,EAAE,gBAAgB,sBAAA;IAC5K,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,WAAW,GAAG,UAAG,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE,KAAI,cAAc,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,cAAI,MAAA,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,KAAK,mCAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,mCAAI,gBAAgB,CAAE,CAAC;IACjL,IAAM,iBAAiB,GAAG,qBAAc,MAAA,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,KAAK,mCAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,mCAAI,gBAAgB,0BAAuB,CAAC;IAE9I,IAAM,MAAM,GAAmB;QAC3B,UAAU,EAAE,cAAc,CAAC,UAAU;QACrC,EAAE,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE;QACtB,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC;QAC9C,OAAO,EAAE,cAAc,CAAC,OAAO;QAC/B,YAAY,EAAE,cAAc,CAAC,YAAY;QACzC,mBAAmB,EAAE,CAAC,UAAC,MAAW;YAC9B,8BAA8B,CAAC,KAAK,CAAC,CAAC;YACtC,mBAAmB,CAAC,MAAM,CAAC,CAAA;QAC/B,CAAC,CAAC;QACF,oBAAoB,EAAE,cAAc,CAAC,oBAAoB;QACzD,gBAAgB,EAAE,gBAAgB;QAClC,eAAe,EAAE,cAAc,CAAC,eAAe;QAC/C,UAAU,EAAE,cAAc,CAAC,UAAU;QACrC,kBAAkB,EAAE,cAAc,CAAC,kBAAkB;QACrD,cAAc,EAAE,cAAc,CAAC,cAAc;QAC7C,gCAAgC,EAAE,IAAI;KACzC,CAAA;IAED,OAAO,CACH,cAAK,SAAS,EAAC,kBAAkB,YAQ7B,MAAC,WAAW,IACR,IAAI,EAAE,2BAA2B,EACjC,YAAY,EAAE,8BAA8B,EAC5C,SAAS,EAAC,2CAA2C,EACrD,KAAK,EAAE;gBACH,KAAK,EAAE,MAAA,MAAA,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB,0CAAE,KAAK,0CAAE,KAAK,mCAAI,MAAM;gBACzE,MAAM,EAAE,MAAA,MAAA,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB,0CAAE,KAAK,0CAAE,MAAM,mCAAI,MAAM;aAC9E,EACD,UAAU,EAAE,KAAK,EACjB,WAAW,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAGpE,MAAC,iBAAiB,IAAC,SAAS,EAAC,eAAe,aACxC,KAAC,gBAAgB,cAAE,WAAW,GAAoB,EAClD,KAAC,sBAAsB,cAAE,iBAAiB,GAA0B,IACpD,EACnB,MAAM;oBACH,KAAC,aAAa,eAAK,MAAM,EAAI,IAEvB,GACZ,CACT,CAAA;AACL,CAAC,CAAA;AAGD,MAAM,CAAC,IAAM,iCAAiC,GAAG,UAAC,EAAqF;;QAAnF,QAAQ,cAAA,EAAE,KAAK,WAAA,EAAE,cAAc,oBAAA,EAAE,YAAY,kBAAA,EAAE,YAAY,kBAAA;IAE3G,IAAM,eAAe,GAAG,KAAK,CAAC;IAC9B,IAAM,SAAS,GAAG,CAAA,MAAA,eAAe,CAAC,KAAK,0CAAE,SAAS,KAAI,wBAAwB,CAAC;IAC/E,IAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;IAC/C,IAAM,gBAAgB,GAAG,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC;IACrD,IAAA,KAAgE,QAAQ,CAAC,KAAK,CAAC,EAA9E,2BAA2B,QAAA,EAAE,8BAA8B,QAAmB,CAAC;IAChF,IAAA,KAAsC,QAAQ,EAAO,EAApD,cAAc,QAAA,EAAE,iBAAiB,QAAmB,CAAA;IACrD,IAAA,KAAsC,QAAQ,CAAwB,IAAI,CAAC,EAA1E,cAAc,QAAA,EAAE,iBAAiB,QAAyC,CAAA;IAC3E,IAAA,KAAgC,QAAQ,CAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC,CAAC,2BAA2B;IAClF,IAAM,cAAc,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,SAAS,CAAC;IACzD,IAAM,kBAAkB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IACvF,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,IAAM,eAAe,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,eAAe,CAAC;IAChE,IAAM,cAAc,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,cAAc,CAAC;IAC9D,IAAM,eAAe,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,eAAe,CAAC;IAChE,IAAM,cAAc,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,cAAc,CAAC;IAC9D,IAAM,gBAAgB,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB,CAAC;IAClE,IAAM,eAAe,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,eAAe,CAAA;IAG/D,IAAM,iBAAiB,GAAG,UAAC,EAM1B;;;YAN4B,cAAc,oBAAA,EAAE,eAAe,qBAAA,EAAE,YAAY,kBAAA,EAAE,eAAe,qBAAA;QAOvF,IAAM,UAAU,GACZ,cAAc,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAA;YAChC,CAAC;gBACG,GAAC,cAAc,IAAG;oBACd,GAAG,EAAE,YAAY,CAAC,IAAI,CAAC,eAAyB,CAAC;iBACpD;oBAEL,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAE9B,iCAAiC;QACjC,IAAM,WAAW,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,WAAW,CAAC;QAExD,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;QAEhD,IAAI;YACA,IAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAElD,sCAAsC;YACtC,OAAO;gBACH,IAAI,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC;aACxC,CAAC;SACL;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACrD,OAAO,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;SACjC;IACL,CAAC,CAAC;IAIF,IAAM,mCAAmC,GAAG,UAAC,EAAO;;;QAEhD,IAAM,cAAc,GAAmB;YACnC,UAAU,EAAE,eAAe;YAC3B,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC;YACpC,EAAE,EAAE,EAAE;YACN,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,KAAK;YACrB,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;YAClE,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;YACxD,eAAe,EAAE,eAAe;YAChC,UAAU,EAAE,cAAc,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAA,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAC,eAAe,CAAC,CAAA,CAAC,CAAC,WAAG,GAAC,cAAc,IAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,MAAG,CAAC,CAAC,EAAE;YACvJ,kBAAkB,EAAE,eAAe,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK;SACnF,CAAA;QACD,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAClC,8BAA8B,CAAC,IAAI,CAAC,CAAC;IAGzC,CAAC,CAAA;IAED,IAAM,gBAAgB,GAAG;;QACrB,8BAA8B,CAAC,KAAK,CAAC,CAAC;QACtC,cAAc,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,CAAC;QAChC,IAAM,aAAa,GAAG;YAClB,UAAU,EAAE,eAAe;YAC3B,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC;YACpC,YAAY,EAAE,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YACzD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB;YACtD,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,YAAY,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAA,CAAC,CAAC,CAAC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,0CAAE,EAAE,CAAC,CAAC,CAAC,KAAK;YACvE,YAAY,EAAE,iBAAiB,CAAC;gBAC5B,cAAc,gBAAA;gBACd,eAAe,iBAAA;gBACf,YAAY,cAAA;gBACZ,eAAe,iBAAA;aAClB,CAAC;SACL,CAAA;QACD,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACpC,CAAC,CAAA;IACD,gBAAgB;IAChB,SAAS,CAAC;;;QAEN,IAAM,cAAc,GAAG;YACnB,UAAU,EAAE,eAAe;YAC3B,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC;YACpC,YAAY,EAAE,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YACzD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,gBAAgB;YACtD,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,YAAY,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAA,CAAC,CAAC,CAAC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,0CAAE,EAAE,CAAC,CAAC,CAAC,KAAK;YACvE,YAAY,EAAE,iBAAiB,CAAC;gBAC5B,cAAc,gBAAA;gBACd,eAAe,iBAAA;gBACf,YAAY,cAAA;gBACZ,eAAe,iBAAA;aAClB,CAAC;SACL,CAAA;QACD,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAClC,IAAM,cAAc,GAAmB;YACnC,UAAU,EAAE,eAAe;YAC3B,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC;YACpC,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,KAAK;YACrB,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;YAClE,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;YACxD,eAAe,EAAE,eAAe;YAChC,UAAU,EAAE,cAAc,IAAI,YAAY,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAA,KAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAC,eAAe,CAAC,CAAA,CAAC,CAAC,WAAG,GAAC,cAAc,IAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,MAAG,CAAC,CAAC,EAAE;YACvK,kBAAkB,EAAE,YAAY,IAAI,YAAY,CAAC,kBAAkB;SAEtE,CAAA;QAED,iBAAiB,CAAC,cAAc,CAAC,CAAA;IAGrC,CAAC,EAAE,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAA;IAEtC,OAAO,CACH,0BACK,cAAc,IAAI,KAAK;gBACpB,gBAAO,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,UAAG,MAAM,CAAC,UAAU,sBAAmB,YAAG,UAAU,GAGnG,EAIX,cAAc;gBACX,KAAC,aAAa,eAAmC,cAAc,IAAE,6BAA6B,EAAE,mCAAmC,EAAE,8BAA8B,EAAE,mCAAmC,KAApL,WAAW,CAAC,QAAQ,EAAE,CAAkK,EAE/M,kBAAkB,KAAK,IAAI,IAAI,cAAc;gBAC1C,KAAC,0BAA0B,IAAC,eAAe,EAAE,eAAe,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,GAA+B,IAG3R,CACT,CAAC;AACN,CAAC,CAAA","sourcesContent":["\nimport { SolidListView } from \"../../../../../components/core/list/SolidListView\";\nimport { camelCase, capitalize } from \"lodash\";\nimport { useEffect, useState } from \"react\";\nimport * as Yup from 'yup';\nimport SolidFormView from '../../../../../components/core/form/SolidFormView';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"../ISolidField\";\nimport { usePathname } from \"../../../../../hooks/usePathname\";\nimport { useRouter } from \"../../../../../hooks/useRouter\";\nimport { getExtensionComponent } from \"../../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps, SolidFormWidgetProps } from \"../../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../../components/common/SolidFieldTooltip\";\nimport { SolidButton } from \"../../../../shad-cn-ui/SolidButton\";\nimport { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogDescription, SolidDialogHeader, SolidDialogTitle } from \"../../../../shad-cn-ui/SolidDialog\";\nimport { SolidMessage } from \"../../../../shad-cn-ui/SolidMessage\";\nimport { ERROR_MESSAGES } from \"../../../../../constants/error-messages\";\nimport styles from \"../solidFields.module.css\";\n\nexport type FormViewParams = {\n moduleName: any;\n id: any;\n embeded: any;\n isCustomCreate: any;\n customLayout: any;\n modelName: any;\n parentFieldName?: any;\n parentData: any;\n onEmbeddedFormSave: any;\n inlineCreateAutoSave: any;\n customCreateHandler?: any;\n handlePopupClose?: any;\n enableEmbeddedRelationSaveAndNew?: boolean;\n}\n\nexport class SolidRelationOneToManyField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n initialValue(): any {\n\n // const manyToOneFieldData = this.fieldContext.data[this.fieldContext.field.attrs.name];\n // const fieldMetadata = this.fieldContext.fieldMetadata;\n // const userKeyField = fieldMetadata.relationModel.userKeyField.name;\n // const manyToOneColVal = manyToOneFieldData ? manyToOneFieldData[userKeyField] : '';\n\n // return { label: manyToOneColVal || '', value: manyToOneFieldData?.id || '' };\n\n return '';\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n // if(!value || value.length === 0) {\n // formData.append(`${fieldLayoutInfo.attrs.name}Command`, \"clear\");\n\n // }\n if (value) {\n formData.append(`${fieldLayoutInfo.attrs.name}Id`, value.value);\n }\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.object();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n\n const userKeyFieldName = fieldMetadata.relationModel?.userKeyField?.name;\n\n let DynamicWidget = getExtensionComponent(\"SolidFormFieldRelationViewModeWidget\");\n const widgetProps = {\n label: fieldLabel,\n value: (this.fieldContext.data?.[fieldLayoutInfo.attrs.name] || []).map(\n (item: any) => ({ label: item[userKeyFieldName] ?? '' })\n ),\n layout: fieldLayoutInfo\n }\n\n // DefaultRelationOneToManyFormEditWidget\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultRelationOneToManyFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultRelationOneToManyFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n\n}\n\n\n\nconst buildRelationCustomFilter = ({\n fieldContext,\n fieldLayoutInfo,\n}: {\n fieldContext: any;\n fieldLayoutInfo?: any;\n}) => {\n if (!fieldContext) {\n return { id: { $eq: -1 } };\n }\n const relationFieldName =\n fieldContext.fieldMetadata?.relationCoModelFieldName ??\n fieldContext.modelName;\n\n const parentId = fieldContext.data?.id ?? -1;\n\n\n const baseFilter = {\n [relationFieldName]: {\n id: { $eq: parentId },\n },\n };\n\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n return {\n $and: [baseFilter, parsedWhereClause],\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n};\n\n\nexport const DefaultRelationOneToManyFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const router = useRouter();\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n const [showSaveParentEntityConfirmationPopup, setShowSaveParentEntityConfirmationPopup] = useState(false);\n\n useEffect(() => {\n const urlParams = new URLSearchParams(window.location.search);\n const childEntity = urlParams.get('childEntity');\n if (childEntity === fieldLayoutInfo.attrs.name && lastPathSegment !== \"new\") {\n handleAddOrEditClickForEmbeddedView('new');\n }\n }, [])\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n if (lastPathSegment === \"new\") {\n setShowSaveParentEntityConfirmationPopup(true);\n } else {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n }\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.delete('childEntity');\n router.push(currentUrl.toString());\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n\n //Intial Params \n useEffect(() => {\n\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n\n\n\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const saveParentEntity = async () => {\n formik.setStatus({\n ...(formik.status || {}),\n saveParentRelationField: fieldLayoutInfo.attrs.name,\n });\n window.sessionStorage.setItem(\"solidSaveParentRelationField\", fieldLayoutInfo.attrs.name);\n try {\n await formik.submitForm();\n } catch {\n } finally {\n formik.setStatus({\n ...(formik.status || {}),\n saveParentRelationField: undefined,\n });\n window.sessionStorage.removeItem(\"solidSaveParentRelationField\");\n }\n setShowSaveParentEntityConfirmationPopup(false);\n };\n\n\n\n return (\n <div>\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView formik={formik} fieldContext={fieldContext} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n </div>\n\n <SolidDialog\n open={showSaveParentEntityConfirmationPopup}\n onOpenChange={setShowSaveParentEntityConfirmationPopup}\n className=\"solid-confirm-dialog solid-field-confirm-dialog\"\n style={{ width: \"min(420px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-field-confirm-header\">\n <SolidDialogTitle>Save Required</SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogBody className=\"solid-field-confirm-dialog-body\">\n <p className=\"solid-field-confirm-message\">\n Before creating {fieldLabel}, you need to save{\" \"}\n {solidFormViewMetaData?.data?.solidView?.model?.displayName\n ? solidFormViewMetaData.data.solidView.model.displayName\n : capitalize(fieldContext.modelName)}\n . Please save first if you want to continue.\n </p>\n </SolidDialogBody>\n <div className=\"solid-radix-dialog-footer solid-field-confirm-actions\">\n <SolidButton label=\"Save\" size=\"sm\" onClick={saveParentEntity} autoFocus />\n <SolidButton\n label=\"Cancel\"\n size=\"sm\"\n onClick={() => setShowSaveParentEntityConfirmationPopup(false)}\n variant=\"outline\"\n />\n </div>\n </SolidDialog>\n\n </div>\n );\n}\n\n\nexport const DefaultRelationOneToManyFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: \"new\",\n embeded: true,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n isCustomCreate: false\n\n }\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n </div>\n );\n}\n\n\nexport const RenderSolidFormEmbededView = ({ fieldLayoutInfo, customCreateHandler, visibleCreateRelationEntity, setvisibleCreateRelationEntity, formViewParams, handlePopupClose }: any) => {\n const router = useRouter();\n const dialogTitle = `${formViewParams?.id && formViewParams.id !== \"new\" ? \"Edit\" : \"Create\"} ${fieldLayoutInfo?.attrs?.label ?? formViewParams?.modelName ?? \"related record\"}`;\n const dialogDescription = `Manage the ${fieldLayoutInfo?.attrs?.label ?? formViewParams?.modelName ?? \"related record\"} form in this dialog.`;\n\n const params: FormViewParams = {\n moduleName: formViewParams.moduleName,\n id: formViewParams?.id,\n modelName: camelCase(formViewParams.modelName),\n embeded: formViewParams.embeded,\n customLayout: formViewParams.customLayout,\n customCreateHandler: ((values: any) => {\n setvisibleCreateRelationEntity(false);\n customCreateHandler(values)\n }),\n inlineCreateAutoSave: formViewParams.inlineCreateAutoSave,\n handlePopupClose: handlePopupClose,\n parentFieldName: formViewParams.parentFieldName,\n parentData: formViewParams.parentData,\n onEmbeddedFormSave: formViewParams.onEmbeddedFormSave,\n isCustomCreate: formViewParams.isCustomCreate,\n enableEmbeddedRelationSaveAndNew: true,\n }\n\n return (\n <div className=\"many-to-many-add\" >\n {/* <Button icon=\"si si-plus\"\n rounded\n outlined\n aria-label=\"Filter\"\n type=\"button\"\n onClick={() => setvisibleCreateRelationEntity(true)}\n /> */}\n <SolidDialog\n open={visibleCreateRelationEntity}\n onOpenChange={setvisibleCreateRelationEntity}\n className=\"solid-dialog solid-inline-relation-dialog\"\n style={{\n width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? \"60vw\",\n height: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? \"auto\"\n }}\n showHeader={false}\n breakpoints={{ '1199px': '35rem', \"767px\": '85vw', \"550px\": '90vw' }}\n\n >\n <SolidDialogHeader className=\"solid-sr-only\">\n <SolidDialogTitle>{dialogTitle}</SolidDialogTitle>\n <SolidDialogDescription>{dialogDescription}</SolidDialogDescription>\n </SolidDialogHeader>\n {params &&\n <SolidFormView {...params} />\n }\n </SolidDialog>\n </div>\n )\n}\n\n\nexport const PseudoRelationOneToManyFormWidget = ({ formData, field, fieldsMetadata, viewMetadata, formViewData }: SolidFormWidgetProps) => {\n\n const fieldLayoutInfo = field;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n const fieldLabel = fieldLayoutInfo.attrs.label;\n const fieldDescription = fieldLayoutInfo.attrs.description;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams | null>(null)\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldLayoutInfo.readOnly ? fieldLayoutInfo.readOnly : false;\n const pathname = usePathname();\n\n const parentModelName = fieldLayoutInfo?.attrs?.parentModelName;\n const childModelName = fieldLayoutInfo?.attrs?.childModelName;\n const parentFieldName = fieldLayoutInfo?.attrs?.parentFieldName;\n const childFieldName = fieldLayoutInfo?.attrs?.childFieldName;\n const parentModuleName = fieldLayoutInfo?.attrs?.parentModuleName;\n const childModuleName = fieldLayoutInfo?.attrs?.childModuleName\n\n\n const buildCustomFilter = ({ childFieldName, parentFieldName, formViewData, fieldLayoutInfo,\n }: {\n childFieldName?: string;\n parentFieldName?: string;\n formViewData?: any;\n fieldLayoutInfo?: any;\n }) => {\n const baseFilter =\n childFieldName && formViewData?.data\n ? {\n [childFieldName]: {\n $eq: formViewData.data[parentFieldName as string],\n },\n }\n : { id: { $eq: -1 } };\n\n // 2️⃣ Optional whereClause merge\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n // If both filters exist, merge safely\n return {\n $and: [baseFilter, parsedWhereClause]\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n };\n\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: id,\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: fieldLayoutInfo.onEmbeddedFormSave ? fieldLayoutInfo : false\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const lisviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const listviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: formViewData && formViewData.onEmbeddedFormSave\n\n }\n\n setformViewParams(formviewparams)\n\n\n }, [readOnlyPermission, formViewData])\n\n return (\n <div>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {/* {fieldMetadata.required && <span className=\"text-red-500\"> *</span>} */}\n {/* <SolidFieldTooltip fieldContext={fieldContext} /> */}\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SolidRelationOneToManyField.js","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/relations/SolidRelationOneToManyField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidListView } from \"../../../../../components/core/list/SolidListView\";\nimport { camelCase, capitalize } from \"lodash\";\nimport { useEffect, useState } from \"react\";\nimport * as Yup from 'yup';\nimport SolidFormView from '../../../../../components/core/form/SolidFormView';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"../ISolidField\";\nimport { usePathname } from \"../../../../../hooks/usePathname\";\nimport { useRouter } from \"../../../../../hooks/useRouter\";\nimport { getExtensionComponent } from \"../../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps, SolidFormWidgetProps } from \"../../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../../components/common/SolidFieldTooltip\";\nimport { SolidButton } from \"../../../../shad-cn-ui/SolidButton\";\nimport { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogDescription, SolidDialogHeader, SolidDialogTitle } from \"../../../../shad-cn-ui/SolidDialog\";\nimport { SolidMessage } from \"../../../../shad-cn-ui/SolidMessage\";\nimport { ERROR_MESSAGES } from \"../../../../../constants/error-messages\";\nimport styles from \"../solidFields.module.css\";\n\nexport type FormViewParams = {\n moduleName: any;\n id: any;\n embeded: any;\n isCustomCreate: any;\n customLayout: any;\n modelName: any;\n parentFieldName?: any;\n parentData: any;\n onEmbeddedFormSave: any;\n inlineCreateAutoSave: any;\n customCreateHandler?: any;\n handlePopupClose?: any;\n enableEmbeddedRelationSaveAndNew?: boolean;\n}\n\nexport class SolidRelationOneToManyField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n initialValue(): any {\n\n // const manyToOneFieldData = this.fieldContext.data[this.fieldContext.field.attrs.name];\n // const fieldMetadata = this.fieldContext.fieldMetadata;\n // const userKeyField = fieldMetadata.relationModel.userKeyField.name;\n // const manyToOneColVal = manyToOneFieldData ? manyToOneFieldData[userKeyField] : '';\n\n // return { label: manyToOneColVal || '', value: manyToOneFieldData?.id || '' };\n\n return '';\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n // if(!value || value.length === 0) {\n // formData.append(`${fieldLayoutInfo.attrs.name}Command`, \"clear\");\n\n // }\n if (value) {\n formData.append(`${fieldLayoutInfo.attrs.name}Id`, value.value);\n }\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.object();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n\n const userKeyFieldName = fieldMetadata.relationModel?.userKeyField?.name;\n\n let DynamicWidget = getExtensionComponent(\"SolidFormFieldRelationViewModeWidget\");\n const widgetProps = {\n label: fieldLabel,\n value: (this.fieldContext.data?.[fieldLayoutInfo.attrs.name] || []).map(\n (item: any) => ({ label: item[userKeyFieldName] ?? '' })\n ),\n layout: fieldLayoutInfo\n }\n\n // DefaultRelationOneToManyFormEditWidget\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultRelationOneToManyFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultRelationOneToManyFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n\n}\n\n\n\nconst buildRelationCustomFilter = ({\n fieldContext,\n fieldLayoutInfo,\n}: {\n fieldContext: any;\n fieldLayoutInfo?: any;\n}) => {\n if (!fieldContext) {\n return { id: { $eq: -1 } };\n }\n const relationFieldName =\n fieldContext.fieldMetadata?.relationCoModelFieldName ??\n fieldContext.modelName;\n\n const parentId = fieldContext.data?.id ?? -1;\n\n\n const baseFilter = {\n [relationFieldName]: {\n id: { $eq: parentId },\n },\n };\n\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n return {\n $and: [baseFilter, parsedWhereClause],\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n};\n\n\nexport const DefaultRelationOneToManyFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const router = useRouter();\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n const [showSaveParentEntityConfirmationPopup, setShowSaveParentEntityConfirmationPopup] = useState(false);\n\n useEffect(() => {\n const urlParams = new URLSearchParams(window.location.search);\n const childEntity = urlParams.get('childEntity');\n if (childEntity === fieldLayoutInfo.attrs.name && lastPathSegment !== \"new\") {\n handleAddOrEditClickForEmbeddedView('new');\n }\n }, [])\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n if (lastPathSegment === \"new\") {\n setShowSaveParentEntityConfirmationPopup(true);\n } else {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n }\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.delete('childEntity');\n router.push(currentUrl.toString());\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n\n //Intial Params \n useEffect(() => {\n\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n }\n\n\n\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const saveParentEntity = async () => {\n formik.setStatus({\n ...(formik.status || {}),\n saveParentRelationField: fieldLayoutInfo.attrs.name,\n });\n window.sessionStorage.setItem(\"solidSaveParentRelationField\", fieldLayoutInfo.attrs.name);\n try {\n await formik.submitForm();\n } catch {\n } finally {\n formik.setStatus({\n ...(formik.status || {}),\n saveParentRelationField: undefined,\n });\n window.sessionStorage.removeItem(\"solidSaveParentRelationField\");\n }\n setShowSaveParentEntityConfirmationPopup(false);\n };\n\n\n\n return (\n <div>\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView formik={formik} fieldContext={fieldContext} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n </div>\n\n <SolidDialog\n open={showSaveParentEntityConfirmationPopup}\n onOpenChange={setShowSaveParentEntityConfirmationPopup}\n className=\"solid-confirm-dialog solid-field-confirm-dialog\"\n style={{ width: \"min(420px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-field-confirm-header\">\n <SolidDialogTitle>Save Required</SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogBody className=\"solid-field-confirm-dialog-body\">\n <p className=\"solid-field-confirm-message\">\n Before creating {fieldLabel}, you need to save{\" \"}\n {solidFormViewMetaData?.data?.solidView?.model?.displayName\n ? solidFormViewMetaData.data.solidView.model.displayName\n : capitalize(fieldContext.modelName)}\n . Please save first if you want to continue.\n </p>\n </SolidDialogBody>\n <div className=\"solid-radix-dialog-footer solid-field-confirm-actions\">\n <SolidButton label=\"Save\" size=\"sm\" onClick={saveParentEntity} autoFocus />\n <SolidButton\n label=\"Cancel\"\n size=\"sm\"\n onClick={() => setShowSaveParentEntityConfirmationPopup(false)}\n variant=\"outline\"\n />\n </div>\n </SolidDialog>\n\n </div>\n );\n}\n\n\nexport const DefaultRelationOneToManyFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams>()\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const pathname = usePathname();\n const lastPathSegment = pathname.split('/').pop();\n const userKeyField: any = Object.entries(fieldContext.solidFormViewMetaData.data.solidFieldsMetadata).find(([_, value]: any) => value.isUserKey)?.[0];\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: id,\n embeded: true,\n isCustomCreate: false,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const lisviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const customFilter = fieldContext.fieldMetadata.relationCoModelFieldName ? fieldContext.fieldMetadata.relationCoModelFieldName : `${fieldContext.modelName}`\n const listviewparams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: fieldContext.data ? fieldContext?.data?.id : 'new',\n customFilter: buildRelationCustomFilter({\n fieldContext,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: \"new\",\n embeded: true,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName),\n parentFieldName: fieldContext.fieldMetadata.relationCoModelFieldName,\n parentData: userKeyField ? { [userKeyField]: { solidManyToOneLabel: fieldContext.data[userKeyField], solidManyToOneValue: fieldContext.data['id'] } } : {},\n onEmbeddedFormSave: fieldContext.onEmbeddedFormSave,\n isCustomCreate: false\n\n }\n setformViewParams(formviewparams)\n\n }, [readOnlyPermission])\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n </div>\n );\n}\n\n\nexport const RenderSolidFormEmbededView = ({ fieldLayoutInfo, customCreateHandler, visibleCreateRelationEntity, setvisibleCreateRelationEntity, formViewParams, handlePopupClose }: any) => {\n const router = useRouter();\n const dialogTitle = `${formViewParams?.id && formViewParams.id !== \"new\" ? \"Edit\" : \"Create\"} ${fieldLayoutInfo?.attrs?.label ?? formViewParams?.modelName ?? \"related record\"}`;\n const dialogDescription = `Manage the ${fieldLayoutInfo?.attrs?.label ?? formViewParams?.modelName ?? \"related record\"} form in this dialog.`;\n\n const params: FormViewParams = {\n moduleName: formViewParams.moduleName,\n id: formViewParams?.id,\n modelName: camelCase(formViewParams.modelName),\n embeded: formViewParams.embeded,\n customLayout: formViewParams.customLayout,\n customCreateHandler: ((values: any) => {\n setvisibleCreateRelationEntity(false);\n customCreateHandler(values)\n }),\n inlineCreateAutoSave: formViewParams.inlineCreateAutoSave,\n handlePopupClose: handlePopupClose,\n parentFieldName: formViewParams.parentFieldName,\n parentData: formViewParams.parentData,\n onEmbeddedFormSave: formViewParams.onEmbeddedFormSave,\n isCustomCreate: formViewParams.isCustomCreate,\n enableEmbeddedRelationSaveAndNew: true,\n }\n\n return (\n <div className=\"many-to-many-add\" >\n {/* <Button icon=\"si si-plus\"\n rounded\n outlined\n aria-label=\"Filter\"\n type=\"button\"\n onClick={() => setvisibleCreateRelationEntity(true)}\n /> */}\n <SolidDialog\n open={visibleCreateRelationEntity}\n onOpenChange={setvisibleCreateRelationEntity}\n className=\"solid-dialog solid-inline-relation-dialog\"\n style={{\n width: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? \"60vw\",\n height: fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? \"auto\"\n }}\n showHeader={false}\n breakpoints={{ '1199px': '35rem', \"767px\": '85vw', \"550px\": '90vw' }}\n\n >\n <SolidDialogHeader className=\"solid-sr-only\">\n <SolidDialogTitle>{dialogTitle}</SolidDialogTitle>\n <SolidDialogDescription>{dialogDescription}</SolidDialogDescription>\n </SolidDialogHeader>\n {params &&\n <SolidFormView {...params} />\n }\n </SolidDialog>\n </div>\n )\n}\n\n\nexport const PseudoRelationOneToManyFormWidget = ({ formData, field, fieldsMetadata, viewMetadata, formViewData }: SolidFormWidgetProps) => {\n\n const fieldLayoutInfo = field;\n const className = fieldLayoutInfo.attrs?.className || 'field w-full px-2 pt-2';\n const fieldLabel = fieldLayoutInfo.attrs.label;\n const fieldDescription = fieldLayoutInfo.attrs.description;\n const [visibleCreateRelationEntity, setvisibleCreateRelationEntity] = useState(false);\n const [listViewParams, setListViewParams] = useState<any>()\n const [formViewParams, setformViewParams] = useState<FormViewParams | null>(null)\n const [refreshList, setRefreshList] = useState(false); // Added state for rerender\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldLayoutInfo.readOnly ? fieldLayoutInfo.readOnly : false;\n const pathname = usePathname();\n\n const parentModelName = fieldLayoutInfo?.attrs?.parentModelName;\n const childModelName = fieldLayoutInfo?.attrs?.childModelName;\n const parentFieldName = fieldLayoutInfo?.attrs?.parentFieldName;\n const childFieldName = fieldLayoutInfo?.attrs?.childFieldName;\n const parentModuleName = fieldLayoutInfo?.attrs?.parentModuleName;\n const childModuleName = fieldLayoutInfo?.attrs?.childModuleName\n\n\n const buildCustomFilter = ({ childFieldName, parentFieldName, formViewData, fieldLayoutInfo,\n }: {\n childFieldName?: string;\n parentFieldName?: string;\n formViewData?: any;\n fieldLayoutInfo?: any;\n }) => {\n const baseFilter =\n childFieldName && formViewData?.data\n ? {\n [childFieldName]: {\n $eq: formViewData.data[parentFieldName as string],\n },\n }\n : { id: { $eq: -1 } };\n\n // 2️⃣ Optional whereClause merge\n const whereClause = fieldLayoutInfo?.attrs?.whereClause;\n\n if (!whereClause) return { $and: [baseFilter] };\n\n try {\n const parsedWhereClause = JSON.parse(whereClause);\n\n // If both filters exist, merge safely\n return {\n $and: [baseFilter, parsedWhereClause]\n };\n } catch (error) {\n console.error(\"Failed to parse whereClause:\", error);\n return { $and: [baseFilter] };\n }\n };\n\n\n\n const handleAddOrEditClickForEmbeddedView = (id: any) => {\n\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: id,\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: fieldLayoutInfo.onEmbeddedFormSave ? fieldLayoutInfo : false\n }\n setformViewParams(formviewparams);\n setvisibleCreateRelationEntity(true);\n\n\n }\n\n const handlePopupClose = () => {\n setvisibleCreateRelationEntity(false);\n setRefreshList((prev) => !prev);\n const lisviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(lisviewparams)\n }\n //Intial Params \n useEffect(() => {\n\n const listviewparams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n inlineCreate: readOnlyPermission === false ? true : false,\n customLayout: fieldLayoutInfo?.attrs?.inlineListLayout,\n embeded: true,\n id: formViewData && formViewData?.data ? formViewData?.data?.id : 'new',\n customFilter: buildCustomFilter({\n childFieldName,\n parentFieldName,\n formViewData,\n fieldLayoutInfo,\n })\n }\n setListViewParams(listviewparams);\n const formviewparams: FormViewParams = {\n moduleName: childModuleName,\n modelName: camelCase(childModelName),\n id: \"new\",\n embeded: true,\n isCustomCreate: false,\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n parentFieldName: parentFieldName,\n parentData: childFieldName && formViewData && formViewData?.data && formViewData?.data[parentFieldName] ? { [childFieldName]: formViewData.data[parentFieldName] } : {},\n onEmbeddedFormSave: formViewData && formViewData.onEmbeddedFormSave\n\n }\n\n setformViewParams(formviewparams)\n\n\n }, [readOnlyPermission, formViewData])\n\n return (\n <div>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {/* {fieldMetadata.required && <span className=\"text-red-500\"> *</span>} */}\n {/* <SolidFieldTooltip fieldContext={fieldContext} /> */}\n </label>\n }\n\n {/* {lastPathSegment === 'new' && <p>Please save the {solidFormViewMetaData.data.solidView.model.displayName} to be able to save {fieldMetadata.displayName}</p>} */}\n {listViewParams &&\n <SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />\n }\n {readOnlyPermission !== true && formViewParams &&\n <RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>\n }\n\n </div>\n );\n}\n"]}
|
|
@@ -486,7 +486,7 @@ export const DefaultRelationOneToManyFormViewWidget = ({ formik, fieldContext }:
|
|
|
486
486
|
{listViewParams &&
|
|
487
487
|
<SolidListView key={refreshList.toString()} {...listViewParams} handleAddClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} handleEditClickForEmbeddedView={handleAddOrEditClickForEmbeddedView} />
|
|
488
488
|
}
|
|
489
|
-
{
|
|
489
|
+
{formViewParams &&
|
|
490
490
|
<RenderSolidFormEmbededView fieldLayoutInfo={fieldLayoutInfo} visibleCreateRelationEntity={visibleCreateRelationEntity} setvisibleCreateRelationEntity={setvisibleCreateRelationEntity} formViewParams={formViewParams} handlePopupClose={handlePopupClose}></RenderSolidFormEmbededView>
|
|
491
491
|
}
|
|
492
492
|
</div>
|
|
@@ -200,3 +200,92 @@
|
|
|
200
200
|
.solid-json-editor.is-readonly .ace-jsoneditor .ace_cursor {
|
|
201
201
|
opacity: 0.45;
|
|
202
202
|
}
|
|
203
|
+
|
|
204
|
+
/* Keep the code editor surface aligned with the application theme. The
|
|
205
|
+
datasource introspection Review Mapping tab shares this editor with the
|
|
206
|
+
model and module explorers. */
|
|
207
|
+
html.dark .solid-json-editor .ace-jsoneditor,
|
|
208
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_gutter,
|
|
209
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_scroller,
|
|
210
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_content,
|
|
211
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor,
|
|
212
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_gutter,
|
|
213
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_scroller,
|
|
214
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_content {
|
|
215
|
+
background: var(--surface-ground, var(--background)) !important;
|
|
216
|
+
color: var(--foreground) !important;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_gutter,
|
|
220
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_gutter {
|
|
221
|
+
color: var(--muted-foreground) !important;
|
|
222
|
+
border-right: 1px solid var(--border);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_gutter-active-line,
|
|
226
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_active-line,
|
|
227
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_marker-layer .ace_active-line,
|
|
228
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_gutter-active-line,
|
|
229
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_active-line,
|
|
230
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_marker-layer .ace_active-line {
|
|
231
|
+
background: color-mix(in srgb, var(--foreground) 10%, transparent) !important;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_marker-layer .ace_selection,
|
|
235
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_marker-layer .ace_selection {
|
|
236
|
+
background: color-mix(in srgb, var(--primary) 28%, transparent) !important;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_marker-layer .ace_bracket,
|
|
240
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_marker-layer .ace_bracket {
|
|
241
|
+
border: 1px solid color-mix(in srgb, var(--foreground) 58%, transparent) !important;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_cursor,
|
|
245
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_cursor {
|
|
246
|
+
border-left-color: var(--foreground) !important;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_print-margin,
|
|
250
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_print-margin {
|
|
251
|
+
background: color-mix(in srgb, var(--foreground) 10%, transparent) !important;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_constant,
|
|
255
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_constant.ace_numeric,
|
|
256
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_constant.ace_language,
|
|
257
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_constant,
|
|
258
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_constant.ace_numeric,
|
|
259
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_constant.ace_language {
|
|
260
|
+
color: var(--primary) !important;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_string,
|
|
264
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_string {
|
|
265
|
+
color: color-mix(in srgb, var(--primary) 68%, var(--foreground)) !important;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_keyword,
|
|
269
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_meta,
|
|
270
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_keyword,
|
|
271
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_meta {
|
|
272
|
+
color: color-mix(in srgb, var(--primary) 72%, var(--foreground)) !important;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_variable,
|
|
276
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_variable.ace_parameter,
|
|
277
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_variable,
|
|
278
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_variable.ace_parameter {
|
|
279
|
+
color: color-mix(in srgb, var(--destructive) 72%, var(--foreground)) !important;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_comment,
|
|
283
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_comment {
|
|
284
|
+
color: var(--muted-foreground) !important;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
html.dark .solid-json-editor .ace-jsoneditor .ace_invalid,
|
|
288
|
+
[data-theme="dark"] .solid-json-editor .ace-jsoneditor .ace_invalid {
|
|
289
|
+
color: var(--destructive) !important;
|
|
290
|
+
background: color-mix(in srgb, var(--destructive) 28%, transparent) !important;
|
|
291
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidKanbanView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanView.tsx"],"names":[],"mappings":";AAkDA,KAAK,qBAAqB,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,uBAAuB,CAAC,EAAE,GAAG,CAAC;IAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,sBAAsB,CAAC,EAAE,GAAG,CAAC;IAC7B,2BAA2B,CAAC,EAAE,GAAG,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,MAAM,GAAG,EAAE,CAAC;IAC7B,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC;IAC7E,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM;QACd,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC;QACb,gBAAgB,EAAE,GAAG,CAAC;QACtB,UAAU,EAAE,GAAG,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAqEF,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"SolidKanbanView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanView.tsx"],"names":[],"mappings":";AAkDA,KAAK,qBAAqB,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,uBAAuB,CAAC,EAAE,GAAG,CAAC;IAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,sBAAsB,CAAC,EAAE,GAAG,CAAC;IAC7B,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,2BAA2B,CAAC,EAAE,GAAG,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,MAAM,GAAG,EAAE,CAAC;IAC7B,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC;IAC7E,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM;QACd,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC;QACb,gBAAgB,EAAE,GAAG,CAAC;QACtB,UAAU,EAAE,GAAG,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAqEF,eAAO,MAAM,eAAe,yHAupC1B,CAAC"}
|
|
@@ -1012,6 +1012,8 @@ export var SolidKanbanView = forwardRef(function (params, ref) {
|
|
|
1012
1012
|
// @ts-ignore
|
|
1013
1013
|
urlData.saved_filter_name = customFilter.saved_filter_name || null;
|
|
1014
1014
|
// @ts-ignore
|
|
1015
|
+
urlData.saved_filter_items = customFilter.saved_filter_items || [];
|
|
1016
|
+
// @ts-ignore
|
|
1015
1017
|
urlData.predefined_search_predicate = customFilter.predefined_search_predicate || {};
|
|
1016
1018
|
// @ts-ignore
|
|
1017
1019
|
urlData.predefined_search_chip = customFilter.predefined_search_chip || null;
|
|
@@ -1108,7 +1110,7 @@ export var SolidKanbanView = forwardRef(function (params, ref) {
|
|
|
1108
1110
|
}
|
|
1109
1111
|
};
|
|
1110
1112
|
console.log("Logging kanban data: ", solidKanbanViewMetaData);
|
|
1111
|
-
return (_jsxs("div", { className: "page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden", children: [_jsx("div", { className: "solid-list-content flex flex-col flex-grow-1", children: _jsxs("div", { className: "solid-list-surface solid-kanban-surface flex flex-col flex-1 min-h-0", children: [_jsx("div", { className: "page-header solid-list-toolbar solid-kanban-toolbar flex-col lg:flex-row", children: _jsxs("div", { className: "flex w-full flex-col-reverse lg:flex-row lg:items-center items-end", children: [_jsx("div", { className: "solid-list-toolbar-left flex w-full items-center gap-3 lg:min-w-0 lg:flex-1", children: _jsx("div", { className: "".concat(showGlobalSearchElement ? "flex" : "max-lg:hidden lg:flex", " w-full mt-3 lg:mt-0 lg:min-w-0"), children: _jsx(SolidGlobalSearchElement, { viewType: "kanban", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidKanbanViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter, filterPredicates: filterPredicates }) }) }), _jsxs("div", { className: "flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions lg:ml-auto", children: [_jsx(SolidHeaderRequestStatus, { label: headerRequestStatusLabel }), _jsx("div", { className: "solid-list-search-toggle", children: _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", className: "solid-icon-button", onClick: function () { return setShowGlobalSearchElement(!showGlobalSearchElement); }, "aria-label": "Toggle search", leftIcon: _jsx(SolidIcon, { name: "si-search", "aria-hidden": true }) }) }), _jsx("div", { className: "solid-header-buttons-wrapper max-lg:hidden items-center lg:flex", children: (_q = visibleHeaderButtons === null || visibleHeaderButtons === void 0 ? void 0 : visibleHeaderButtons.filter(function (button) { var _a; return ((_a = button === null || button === void 0 ? void 0 : button.attrs) === null || _a === void 0 ? void 0 : _a.actionInContextMenu) !== true; })) === null || _q === void 0 ? void 0 : _q.map(function (button, index) { return (_jsx(SolidListViewHeaderButton, { button: button, params: params, solidListViewMetaData: solidKanbanViewMetaData, handleCustomButtonClick: handleCustomButtonClick, selectedRecords: selectedRecords, filters: filters }, index)); }) }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'create'))) && ((_t = (_s = (_r = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _r === void 0 ? void 0 : _r.solidView) === null || _s === void 0 ? void 0 : _s.layout) === null || _t === void 0 ? void 0 : _t.attrs.create) !== false &&
|
|
1113
|
+
return (_jsxs("div", { className: "page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden", children: [_jsx("div", { className: "solid-list-content flex flex-col flex-grow-1", children: _jsxs("div", { className: "solid-list-surface solid-kanban-surface flex flex-col flex-1 min-h-0", children: [_jsx("div", { className: "page-header solid-list-toolbar solid-kanban-toolbar flex-col lg:flex-row", children: _jsxs("div", { className: "flex w-full flex-col-reverse lg:flex-row lg:items-center items-end", children: [_jsx("div", { className: "solid-list-toolbar-left flex w-full items-center gap-3 lg:min-w-0 lg:flex-1", children: _jsx("div", { className: "".concat(showGlobalSearchElement ? "flex" : "max-lg:hidden lg:flex", " w-full mt-3 lg:mt-0 lg:min-w-0"), children: _jsx(SolidGlobalSearchElement, { viewType: "kanban", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidKanbanViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter, filterPredicates: filterPredicates, allowMultipleSavedFilters: true }) }) }), _jsxs("div", { className: "flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions lg:ml-auto", children: [_jsx(SolidHeaderRequestStatus, { label: headerRequestStatusLabel }), _jsx("div", { className: "solid-list-search-toggle", children: _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", className: "solid-icon-button", onClick: function () { return setShowGlobalSearchElement(!showGlobalSearchElement); }, "aria-label": "Toggle search", leftIcon: _jsx(SolidIcon, { name: "si-search", "aria-hidden": true }) }) }), _jsx("div", { className: "solid-header-buttons-wrapper max-lg:hidden items-center lg:flex", children: (_q = visibleHeaderButtons === null || visibleHeaderButtons === void 0 ? void 0 : visibleHeaderButtons.filter(function (button) { var _a; return ((_a = button === null || button === void 0 ? void 0 : button.attrs) === null || _a === void 0 ? void 0 : _a.actionInContextMenu) !== true; })) === null || _q === void 0 ? void 0 : _q.map(function (button, index) { return (_jsx(SolidListViewHeaderButton, { button: button, params: params, solidListViewMetaData: solidKanbanViewMetaData, handleCustomButtonClick: handleCustomButtonClick, selectedRecords: selectedRecords, filters: filters }, index)); }) }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'create'))) && ((_t = (_s = (_r = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _r === void 0 ? void 0 : _r.solidView) === null || _s === void 0 ? void 0 : _s.layout) === null || _t === void 0 ? void 0 : _t.attrs.create) !== false &&
|
|
1112
1114
|
_jsx(SolidCreateButton, { createButtonUrl: createButtonUrl, createActionQueryParams: createActionQueryParams, responsiveIconOnly: true }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'delete'))) && ((_w = (_v = (_u = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _u === void 0 ? void 0 : _u.solidView) === null || _v === void 0 ? void 0 : _v.layout) === null || _w === void 0 ? void 0 : _w.attrs.delete) !== false && selectedRecords.length > 0 && _jsx(SolidButton, { type: "button", variant: "destructive", size: "sm", onClick: function () { return setDialogVisible(true); }, children: "Delete" }), _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", className: "solid-icon-button", onClick: handleRefreshView, "aria-label": "Refresh board", leftIcon: _jsx(SolidIcon, { name: "si-refresh", "aria-hidden": true }) }), _jsx(SolidKanbanViewConfigure, { solidKanbanViewMetaData: solidKanbanViewMetaData, params: params, modelName: params.modelName, actionsAllowed: actionsAllowed, headerButtons: visibleHeaderButtons, handleCustomButtonClick: handleCustomButtonClick, selectedRecords: selectedRecords, filters: filters, viewModes: viewModes, setShowArchived: setShowArchived, showArchived: showArchived, setLayoutDialogVisible: setLayoutDialogVisible, setShowSaveFilterPopup: setShowSaveFilterPopup, hasAnyActiveFilters: hasAnyActiveFilters, handleRefreshView: handleRefreshView })] })] }) }), solidKanbanViewMetaData && kanbanViewData &&
|
|
1113
1115
|
_jsx(KanbanBoard, { groupByFieldName: groupByFieldName, kanbanViewData: kanbanViewData, maxSwimLanesCount: maxSwimLanesCount, solidKanbanViewMetaData: solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data, setKanbanViewData: setKanbanViewData, handleLoadMore: handleLoadMore, onDragEnd: onDragEnd, handleSwimLanePagination: handleSwimLanePagination, onDelete: actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'delete'))) && ((_z = (_y = (_x = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _x === void 0 ? void 0 : _x.solidView) === null || _y === void 0 ? void 0 : _y.layout) === null || _z === void 0 ? void 0 : _z.attrs.delete) !== false ? openDeleteDialogForRecord : undefined, onRecover: handleRecoverRecord, setLightboxUrls: setLightboxUrls, setOpenLightbox: setOpenLightbox, editButtonUrl: editBaseUrl, recordClickAction: recordClickAction, showArchived: showArchived, params: params, handleCustomButtonClick: handleCustomButtonClick })] }) }), _jsx(SolidConfirmDialog, { open: isDialogVisible, onCancel: onDeleteClose, onConfirm: deleteBulk, className: "solid-shadcn-confirm-dialog solid-delete-confirm-dialog", headerClassName: "solid-shadcn-dialog-head", bodyClassName: "solid-shadcn-dialog-body", footerClassName: "solid-shadcn-dialog-actions", separatorClassName: "solid-shadcn-dialog-sep", showSeparator: true, title: "Delete ".concat(entityDisplayName), message: _jsx("p", { className: "solid-shadcn-dialog-text", children: selectedRecords.length === 1
|
|
1114
1116
|
? "Are you sure you want to delete this ".concat(entityDisplayName, " record?")
|