diff --git a/src/frontend/packages/activitypub-components/dist/index.cjs.js b/src/frontend/packages/activitypub-components/dist/index.cjs.js
index 05942193a..d9e2e8b10 100644
--- a/src/frontend/packages/activitypub-components/dist/index.cjs.js
+++ b/src/frontend/packages/activitypub-components/dist/index.cjs.js
@@ -14,9 +14,11 @@ var $jwOeV$semappsfieldcomponents = require("@semapps/field-components");
var $jwOeV$tiptapreact = require("@tiptap/react");
var $jwOeV$tippyjs = require("tippy.js");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
@@ -503,7 +505,7 @@ const $d68cd57b2d06b6d5$var$CommentsList = ({ comments: comments, userResource:
className: classes.label
})
}),
- "\xa0•\xa0",
+ "\xa0\u2022\xa0",
/*#__PURE__*/ (0, $jwOeV$reactjsxruntime.jsx)((0, $jwOeV$reactadmin.DateField), {
record: comment,
variant: "body2",
diff --git a/src/frontend/packages/activitypub-components/dist/index.cjs.js.map b/src/frontend/packages/activitypub-components/dist/index.cjs.js.map
index 3c4072191..bd204dc37 100644
--- a/src/frontend/packages/activitypub-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/activitypub-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,aAAa;;;;;;;;;;;;;;AGAN,MAAM,4CAAiB;IAC5B,QAAQ;IACR,KAAK;IACL,UAAU;IACV,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,MAAM;IACN,OAAO;IACP,UAAU;IACV,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,kBAAkB;IAClB,kBAAkB;IAClB,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,MAAM;AACR;AAEO,MAAM,4CAAc;IACzB,aAAa;IACb,OAAO;IACP,cAAc;IACd,QAAQ;IACR,SAAS;AACX;AAEO,MAAM,4CAAe;IAC1B,SAAS;IACT,OAAO;IACP,UAAU;IACV,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,SAAS;IACT,cAAc;IACd,WAAW;IACX,OAAO;AACT;AAEO,MAAM,4CAAa;;;;;;AClD1B,MAAM,kCAAY;IAChB,MAAM,YAAE,QAAQ,EAAE,GAAG,CAAA,GAAA,gCAAa;IAElC,MAAM,YAAY,CAAA,GAAA,oBAAM,EAAE;QACxB,IAAI,UAAU,WACZ,OAAO,UAAU,WAAW;IAEhC,GAAG;QAAC;KAAS;IAEb,MAAM,iBAAiB,CAAA,GAAA,oBAAM,EAAE;QAC7B,IAAI,UAAU,WACZ,OAAO,UAAU,WAAW,WAAW,CAAC,sBAAsB,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAE9F,GAAG;QAAC;KAAS;IAEb,kEAAkE;IAClE,MAAM,OAAO,CAAA,GAAA,wBAAU,EACrB,OAAM;QACJ,IAAI,CAAC,WACH,MAAM,IAAI,MACR;QAEJ,MAAM,QAAQ,aAAa,QAAQ;QACnC,MAAM,WAAE,OAAO,EAAE,GAAG,MAAM,CAAA,GAAA,4BAAS,EAAE,UAAU,WAAW;YACxD,QAAQ;YACR,MAAM,KAAK,UAAU;gBACnB,YAAY;gBACZ,GAAG,QAAQ;YACb;YACA,SAAS,IAAI,QAAQ;gBACnB,gBAAgB;gBAChB,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC;YAClC;QACF;QACA,OAAO,QAAQ,IAAI;IACrB,GACA;QAAC;KAAU;IAGb,MAAM,QAAQ,CAAA,GAAA,wBAAU,EAAE;QACxB,IAAI,CAAC,kBAAkB,CAAC,WAAW;QAEnC,MAAM,QAAQ,aAAa,QAAQ;QACnC,MAAM,kBAAkB,CAAA,GAAA,uDAAmB,EAAE;YAAC;SAAY;QAE1D,MAAM,QAAQ,CAAC;;;;QAIX,EAAE,gBAAgB,UAAU;;;SAG3B,EAAE,UAAU;;QAEb,EAAE,gBAAgB,MAAM;;IAE5B,CAAC;QAED,MAAM,QAAE,IAAI,EAAE,GAAG,MAAM,CAAA,GAAA,4BAAS,EAAE,UAAU,gBAAgB;YAC1D,QAAQ;YACR,MAAM;YACN,SAAS,IAAI,QAAQ;gBACnB,QAAQ;gBACR,eAAe,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG;YAC7C;QACF;QAEA,IAAI,IAAI,CAAC,SAAS,EAChB,OAAO,IAAI,CAAC,SAAS;QAEvB,OAAO;IACT,GAAG;QAAC;QAAgB;KAAU;IAE9B,OAAO;cAAE;eAAM;QAAO,KAAK;QAAW,QAAQ,CAAC,CAAC;QAAW,OAAO,UAAU;IAAG;AACjF;IAEA,2CAAe;;;;;AC7Ef,4DAA4D;AAC5D,+DAA+D;AAC/D,qDAAqD;AACrD,MAAM,sCAAgB,CAAA,GAAA,uDAAM,EAAE,OAAO;IACnC,YAAW,QAAE,IAAI,kBAAE,cAAc,EAAE;QACjC,OAAO;YAAC;YAAQ,CAAA,GAAA,iCAAc,EAAE,IAAI,CAAC,QAAQ,gBAAgB;YAAiB,CAAC,CAAC,EAAE,KAAK,MAAM,GAAG,MAAM,CAAC;SAAC;IAC1G;IACA;QACE,OAAO;YACL,OAAO;gBACL,SAAS;gBACT,WAAW,CAAA;oBACT,OAAO;wBACL,OAAO,QAAQ,aAAa;oBAC9B;gBACF;gBACA,YAAY,CAAA;oBACV,IAAI,CAAC,WAAW,GAAG,OACjB,OAAO,CAAC;oBAEV,OAAO;wBACL,sBAAsB,WAAW,GAAG;oBACtC;gBACF;YACF;YACA,IAAI;gBACF,SAAS;gBACT,WAAW,CAAA;oBACT,OAAO;wBACL,IAAI,QAAQ,aAAa;oBAC3B;gBACF;gBACA,YAAY,CAAA;oBACV,IAAI,CAAC,WAAW,GAAG,IACjB,OAAO,CAAC;oBAEV,OAAO;wBACL,mBAAmB,WAAW,GAAG;oBACnC;gBACF;YACF;QACF;IACF;AACF;IAEA,2CAAe;;;AHnCf,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,CAAA,QAAU,CAAA;QACrC,MAAM;YACJ,WAAW,IAAI,sDAAsD;QACvE;QACA,WAAW;YACT,aAAa;YACb,UAAU;QACZ;QACA,QAAQ;YACN,UAAU;YACV,KAAK;YACL,MAAM;YACN,QAAQ;YACR,OAAO;YACP,QAAQ;QACV;QACA,eAAe;YACb,WAAW;gBACT,iBAAiB;gBACjB,SAAS;gBACT,aAAa;gBACb,cAAc;gBACd,cAAc;gBACd,WAAW;gBACX,SAAS;YACX;YACA,eAAe;gBACb,WAAW;gBACX,cAAc;gBACd,YAAY,MAAM,WAAW,MAAM;gBACnC,kBAAkB;gBAClB,gBAAgB;YAClB;YACA,mDAAmD;gBACjD,OAAO;gBACP,SAAS;gBACT,OAAO;gBACP,QAAQ;gBACR,eAAe;YACjB;QACF;QACA,QAAQ;YACN,WAAW;YACX,cAAc;QAChB;IACF,CAAA;AAEA,MAAM,qCAAe,IAAM;AAE3B,MAAM,wCAAkB,CAAC,WAAE,OAAO,eAAE,WAAW,cAAE,UAAU,YAAE,QAAQ,gBAAE,YAAY,WAAE,OAAO,cAAE,UAAU,EAAE;IACxG,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,MAAM,YAAE,QAAQ,aAAE,SAAS,EAAE,GAAG,CAAA,GAAA,gCAAa;IAC7C,MAAM,gBAAgB,CAAA,GAAA,+CAAW,EAAE;IACnC,MAAM,UAAU;IAChB,MAAM,SAAS,CAAA,GAAA,2BAAQ;IACvB,MAAM,SAAS,CAAA,GAAA,wCAAQ;IACvB,MAAM,CAAC,UAAU,YAAY,GAAG,CAAA,GAAA,qBAAO,EAAE;IACzC,MAAM,CAAC,UAAU,YAAY,GAAG,CAAA,GAAA,qBAAO,EAAE;IAEzC,MAAM,WAAW,CAAA,GAAA,wBAAU,EACzB,OAAM;QACJ,MAAM,WAAW,IAAI,YAAY,gBAAgB,OAAO,SAAS;QACjE,MAAM,WAAW,MAAM,KAAK,SAAS,KAAK,uBAAuB;QACjE,MAAM,qBAAqB,EAAE;QAE7B,SAAS,QAAQ,CAAA;YACf,MAAM,UAAU,KAAK,UAAU,CAAC,kBAAkB,CAAC;YACnD,MAAM,YAAY,KAAK,UAAU,CAAC,qBAAqB,CAAC;YACxD,MAAM,OAAO,SAAS,cAAc;YACpC,KAAK,aACH,QACA,CAAC,EAAE,IAAI,IAAI,OAAO,SAAS,MAAM,OAAO,CAAC,EAAE,aAAa,CAAC,EAAE,mBAAmB,SAAS,KAAK,CAAC;YAE/F,KAAK,cAAc,CAAC,CAAC,EAAE,UAAU,CAAC;YAClC,KAAK,WAAW,aAAa,MAAM;YACnC,mBAAmB,KAAK;QAC1B;QAEA,IAAI,SAAS,KAAK,cAAc,aAC9B,OAAO,8BAA8B;YAAE,MAAM;QAAQ;aAChD;YACL,MAAM,SAAS,KAAK;YAEpB,MAAM,OAAO;gBACX,MAAM,CAAA,GAAA,yCAAW,EAAE;gBACnB,cAAc,OAAO;gBACrB,SAAS,SAAS,KAAK;gBACvB,WAAW,MAAM,CAAC,QAAQ;gBAC1B,WAAW,IAAI,OAAO;YACxB;YAEA,IAAI;gBACF,QAAQ;oBAAE,IAAI;oBAAQ,GAAG,IAAI;gBAAC;gBAC9B,sBAAsB;gBACtB,YAAY;gBACZ,MAAM,OAAO,KAAK;oBAAE,GAAG,IAAI;oBAAE,IAAI;2BAAI;wBAAoB,CAAA,GAAA,yCAAS;qBAAE;gBAAC;gBACrE,OAAO,uCAAiC;oBAAE,MAAM;gBAAU;YAC5D,EAAE,OAAO,GAAG;gBACV,QAAQ,MAAM;gBACd,WAAW;gBACX,OAAO,EAAE,SAAS;oBAAE,MAAM;gBAAQ;YACpC;QACF;IACF,GACA;QAAC;QAAQ;QAAQ;QAAa;QAAS;KAAW;IAGpD,MAAM,yBAAyB,CAAA,GAAA,wBAAU,EAAE;QACzC,IAAI,CAAC,UAAU,IACb,YAAY;IAEhB,GAAG;QAAC;QAAU;KAAY;IAE1B,6GAA6G;IAC7G,IAAI,AAAC,YAAY,CAAC,SAAS,SAAU,WAAW,OAAO;IAEvD,qBACE;;0BACE,gCAAC,CAAA,GAAA,sBAAG;gBAAE,UAAU;gBAAU,WAAW,QAAQ;0BAC3C,cAAA,iCAAC,CAAA,GAAA,sBAAE;oBAAE,WAAW,QAAQ;oBAAW,SAAS;;sCAC1C,gCAAC,CAAA,GAAA,yBAAK;4BACJ,KACE,UAAU,WAAW,CAAC,eAAe,eAAe,MAAM,IAC1D,UAAU,aAAa,CAAC,eAAe,eAAe,MAAM;4BAE9D,WAAW,QAAQ;;sCAErB,gCAAC,CAAA,GAAA,oCAAY;4BACX,QAAO;4BACP,OAAM;4BACN,uBAAS,gCAAC;4BACV,SAAS;4BACT,SAAS;gCAAE,eAAe,QAAQ;4BAAc;4BAChD,eAAe;gCACb,GAAG,CAAA,GAAA,2CAAmB,CAAC;gCACvB;oCACE,YAAY;gCACd;gCACA,YAAY;uCACP,CAAA,GAAA,2CAAmB,EAAE;oCACxB,cAAc,CAAA,GAAA,2DAAU,EAAE,UAAU;qDAAE;oCAAY,KAAK;oCACvD,WACI,CAAA,GAAA,wCAAY,EAAE,UAAU;wCACtB,gBAAgB;4CACd,OAAO;wCACT;wCACA,YAAY;oCACd,KACA;iCACL;gCACD,0CAA0C;gCAC1C,UAAU,CAAC,CAAC,UAAU;4BACxB;4BACA,YAAY;;wBAEb,0BACC,gCAAC,CAAA,GAAA,yBAAK;4BACJ,MAAK;4BACL,MAAK;4BACL,SAAQ;4BACR,OAAM;4BACN,uBAAS,gCAAC,CAAA,GAAA,qDAAO;4BACjB,WAAW,QAAQ;sCACpB;;;;;0BAMP,gCAAC,CAAA,GAAA,qCAAS;gBACR,MAAM;gBACN,SAAS,IAAM,YAAY;gBAC3B,SAAQ;;;;AAIhB;IAEA,2CAAe;;;;;;;;;;AIxLf,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,IAAO,CAAA;QAClC,WAAW;YACT,aAAa;YACb,WAAW;YACX,WAAW;YACX,UAAU;QACZ;QACA,QAAQ;YACN,UAAU;YACV,KAAK;YACL,MAAM;YACN,QAAQ;YACR,OAAO;YACP,QAAQ;QACV;QACA,MAAM;YACJ,YAAY;YACZ,eAAe;QACjB;QACA,OAAO;YACL,YAAY;QACd;QACA,SAAS;YACP,OAAO;gBACL,kBAAkB;gBAClB,gBAAgB;YAClB;QACF;QACA,SAAS;YACP,QAAQ;YACR,iBAAiB;YACjB,SAAS;YACT,UAAU;YACV,KAAK;YACL,MAAM;YACN,OAAO;YACP,QAAQ;YACR,SAAS;YACT,YAAY;YACZ,gBAAgB;YAChB,WAAW;YACX,WAAW;QACb;IACF,CAAA;AAEA,MAAM,qCAAe,CAAC,YAAE,QAAQ,gBAAE,YAAY,WAAE,OAAO,EAAE;IACvD,MAAM,UAAU;IAChB,MAAM,gBAAgB,CAAA,GAAA,+CAAW,EAAE;IACnC,qBACE,iCAAC,CAAA,GAAA,sBAAE;QAAE,UAAS;;YACX,YACC,SACG,KAAK,CAAC,GAAG,IAAM,IAAI,KAAK,EAAE,aAAa,IAAI,KAAK,EAAE,YAClD,IAAI,CAAA,wBACH,iCAAC,CAAA,GAAA,sBAAE;oBAAE,WAAW,QAAQ;;sCACtB,gCAAC,CAAA,GAAA,sBAAE;4BAAE,WAAW,QAAQ;sCACtB,cAAA,gCAAC,CAAA,GAAA,4CAAa;gCAAE,QAAQ;gCAAS,WAAW;gCAAc,QAAO;gCAAe,UAAS;0CACvF,cAAA,gCAAC,CAAA,GAAA,kDAAmB;oCAAE,OAAO,eAAe,eAAe;;;;sCAG/D,iCAAC,CAAA,GAAA,sBAAE;4BAAE,WAAW,QAAQ;;8CACtB,iCAAC,CAAA,GAAA,6BAAS;oCAAE,SAAQ;;sDAClB,gCAAC,CAAA,GAAA,4CAAa;4CAAE,QAAQ;4CAAS,WAAW;4CAAc,QAAO;4CAAe,UAAS;sDACvF,cAAA,gCAAC,CAAA,GAAA,2BAAQ;gDAAE,SAAQ;gDAAQ,QAAQ,eAAe,eAAe;gDAAO,WAAW,QAAQ;;;wCAC5E;sDAEjB,gCAAC,CAAA,GAAA,2BAAQ;4CAAE,QAAQ;4CAAS,SAAQ;4CAAQ,QAAO;4CAAY,QAAQ;;;;8CAEzE,gCAAC,CAAA,GAAA,+BAAY;oCAAE,QAAQ;oCAAS,SAAQ;oCAAQ,QAAO;oCAAU,WAAW,QAAQ;;;;;mBAdhD,QAAQ;YAkBrD,yBACC,gCAAC,CAAA,GAAA,sBAAE;gBAAE,WAAW;0BACd,cAAA,gCAAC,CAAA,GAAA,sBAAE;oBAAE,YAAW;oBAAS,WAAW,QAAQ;8BAC1C,cAAA,gCAAC,CAAA,GAAA,mCAAe;wBAAE,MAAM;wBAAI,WAAW;;;;;;AAMnD;IAEA,2CAAe;;;;;ACvFf,MAAM,sCAAgB,CAAA;IACpB,MAAM,YAAE,QAAQ,EAAE,WAAW,eAAe,EAAE,GAAG,CAAA,GAAA,gCAAa;IAC9D,MAAM,CAAC,OAAO,SAAS,GAAG,CAAA,GAAA,qBAAO,EAAE,EAAE;IACrC,MAAM,CAAC,SAAS,WAAW,GAAG,CAAA,GAAA,qBAAO,EAAE;IACvC,MAAM,CAAC,QAAQ,UAAU,GAAG,CAAA,GAAA,qBAAO,EAAE;IACrC,MAAM,CAAC,OAAO,SAAS,GAAG,CAAA,GAAA,qBAAO,EAAE;IAEnC,MAAM,gBAAgB,CAAA,GAAA,oBAAM,EAAE;QAC5B,IAAI,gBAAgB;YAClB,IAAI,eAAe,WAAW,SAC5B,OAAO;YAET,IAAI,UAAU,WACZ,OAAO,UAAU,WAAW,CAAC,eAAe;QAEhD;IACF,GAAG;QAAC;QAAU;KAAe;IAE7B,MAAM,QAAQ,CAAA,GAAA,wBAAU,EAAE;QACxB,IAAI,CAAC,eAAe;QAEpB,WAAW;QAEX,MAAM,UAAU,IAAI,QAAQ;YAAE,QAAQ;QAAsB;QAE5D,+FAA+F;QAC/F,MAAM,iBAAiB,SAAS,MAAM,IAAI,IAAI,SAAS,IAAI;QAC3D,MAAM,mBAAmB,IAAI,IAAI,eAAe;QAChD,MAAM,QAAQ,aAAa,QAAQ;QACnC,IAAI,mBAAmB,oBAAoB,OACzC,QAAQ,IAAI,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC;QAGhD,CAAA,GAAA,4BAAS,EACN,UAAU,eAAe;qBAAE;QAAQ,GACnC,KAAK,CAAC,QAAE,IAAI,EAAE;YACb,IAAI,QAAQ,KAAK,OACf,SAAS,KAAK;iBACT,IAAI,QAAQ,KAAK,cACtB,SAAS,KAAK;iBAEd,SAAS,EAAE;YAEb,SAAS;YACT,UAAU;YACV,WAAW;QACb,GACC,MAAM;YACL,SAAS;YACT,UAAU;YACV,WAAW;QACb;IACJ,GAAG;QAAC;QAAU;QAAW;QAAY;QAAU;QAAe;KAAS;IAEvE,CAAA,GAAA,sBAAQ,EAAE;QACR,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,OAC9C;IAEJ,GAAG;QAAC;QAAO;QAAiB;QAAS;QAAQ;KAAM;IAEnD,MAAM,UAAU,CAAA,GAAA,wBAAU,EACxB,CAAA;QACE,SAAS,CAAA,WAAY;mBAAI;gBAAU;aAAK;IAC1C,GACA;QAAC;KAAS;IAGZ,MAAM,aAAa,CAAA,GAAA,wBAAU,EAC3B,CAAA;QACE,SAAS,CAAA,WAAY,SAAS,OAAO,CAAA,OAAS,OAAO,SAAS,WAAW,SAAS,SAAS,KAAK,OAAO;IACzG,GACA;QAAC;KAAS;IAGZ,OAAO;eAAE;iBAAO;gBAAS;eAAQ;QAAO,SAAS;iBAAO;oBAAS;QAAY,KAAK;IAAc;AAClG;IAEA,2CAAe;;;AN1Ef,MAAM,sCAAgB,CAAC,UAAE,MAAM,WAAE,OAAO,cAAE,UAAU,eAAE,WAAW,gBAAE,YAAY,YAAE,QAAQ,EAAE;IACzF,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,MAAM,EAAE,OAAO,QAAQ,WAAE,OAAO,WAAE,OAAO,cAAE,UAAU,EAAE,GAAG,CAAA,GAAA,wCAAY,EAAE,OAAO;IAC/E,IAAI,CAAC,cAAc,MAAM,IAAI,MAAM;IACnC,qBACE;;0BACE,gCAAC,CAAA,GAAA,wCAAc;gBACb,SAAS;gBACT,YAAY;gBACZ,cAAc;gBACd,aAAa;gBACb,UAAU;gBACV,SAAS;gBACT,YAAY;;0BAEd,gCAAC,CAAA,GAAA,wCAAW;gBAAE,UAAU;gBAAU,SAAS;gBAAS,cAAc;;;;AAGxE;AAEA,oCAAc,eAAe;IAC3B,OAAO;IACP,aAAa;IACb,QAAQ;IACR,SAAS;AACX;IAEA,2CAAe;;;;;;;AO7Bf,MAAM,uCAAiB,CAAC,iBAAE,aAAa,YAAE,QAAQ,YAAE,QAAQ,EAAE,GAAG,MAAM;IACpE,IAAI,CAAA,GAAA,sCAAI,EAAE,SAAS,MAAM,cAAc,GACrC,MAAM,IAAI,MAAM;IAGlB,8EAA8E;IAC9E,MAAM,EAAE,MAAM,UAAU,aAAE,SAAS,EAAE,GAAG,CAAA,GAAA,2BAAQ,EAAE,UAAU,eAAe;QAAE,SAAS,CAAC,CAAC;IAAc;IAEtG,IAAI,WACF,qBACE,gCAAC;QAAI,OAAO;YAAE,WAAW;QAAE;kBACzB,cAAA,gCAAC,CAAA,GAAA,gCAAa;;IAIpB,IAAI,CAAC,YACH,OAAO;IAGT,qBACE,gCAAC,CAAA,GAAA,iDAAkB;QAAE,WAAW;QAAU,QAAQ;QAAY,QAAO;QAAS,GAAG,IAAI;kBAClF;;AAGP;IAEA,2CAAe;;;;;;AC3Bf,MAAM,iDAA2B,CAAC,UAAE,MAAM,UAAE,MAAM,aAAE,SAAS,YAAE,QAAQ,EAAE,GAAG,MAAM;IAChF,IAAI,CAAA,GAAA,sCAAI,EAAE,SAAS,MAAM,cAAc,GACrC,MAAM,IAAI,MAAM;IAGlB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO;IAEvC,qBACE,gCAAC,CAAA,GAAA,wCAAa;QAAE,UAAU;QAAW,eAAe,MAAM,CAAC,OAAO;QAAG,GAAG,IAAI;kBACzE;;AAGP;IAEA,2CAAe;;;;;;;ACbf,MAAM,iCAAW;IACf,MAAM,YAAE,QAAQ,EAAE,GAAG,CAAA,GAAA,gCAAa;IAElC,MAAM,WAAW,CAAA,GAAA,oBAAM,EAAE;QACvB,IAAI,UAAU,WACZ,OAAO,UAAU,WAAW;IAEhC,GAAG;QAAC;KAAS;IAEb,MAAM,iBAAiB,CAAA,GAAA,oBAAM,EAAE;QAC7B,IAAI,UAAU,WACZ,OAAO,UAAU,WAAW,WAAW,CAAC,sBAAsB,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAE9F,GAAG;QAAC;KAAS;IAEb,MAAM,QAAQ,CAAA,GAAA,wBAAU,EACtB,OAAO,WAAE,OAAO,EAAE;QAChB,IAAI,CAAC,kBAAkB,CAAC,UAAU;QAElC,MAAM,QAAQ,aAAa,QAAQ;QACnC,MAAM,kBAAkB,CAAA,GAAA,uDAAmB,EAAE;YAAC;SAAY;QAE1D,IAAI,oBAAoB;QACxB,IAAI,SACF,OAAO,KAAK,SAAS,QAAQ,CAAA;YAC3B,IAAI,OAAO,CAAC,UAAU,EAAE;gBACtB,MAAM,SAAS,OAAO,CAAC,UAAU,CAAC,WAAW,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU;gBACrG,qBAAqB,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;YACrD;QACF;QAGF,MAAM,QAAQ,CAAC;;;;UAIX,EAAE,gBAAgB,UAAU;;;WAG3B,EAAE,SAAS;;;UAGZ,EAAE,kBAAkB;UACpB,EAAE,gBAAgB,MAAM;;MAE5B,CAAC;QAED,MAAM,QAAE,IAAI,EAAE,GAAG,MAAM,CAAA,GAAA,4BAAS,EAAE,UAAU,gBAAgB;YAC1D,QAAQ;YACR,MAAM;YACN,SAAS,IAAI,QAAQ;gBACnB,QAAQ;gBACR,eAAe,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG;YAC7C;QACF;QAEA,IAAI,IAAI,CAAC,SAAS,EAChB,OAAO,IAAI,CAAC,SAAS;QAEvB,OAAO;IACT,GACA;QAAC;QAAgB;KAAS;IAG5B,OAAO;eAAE;QAAO,KAAK;QAAU,OAAO,UAAU;IAAG;AACrD;IAEA,2CAAe;;;;;;ACpEf,MAAM,qCAAe;IACnB,kEAAkE;IAClE,MAAM,QAAQ,CAAA,GAAA,wBAAU,EAAE,OAAM;QAC9B,2BAA2B;QAC3B,MAAM,CAAC,GAAG,UAAU,KAAK,GAAG,GAAG,MAAM;QACrC,IAAI,MAAM;YACR,MAAM,WAAW,KAAK,SAAS,OAAO,SAAS,SAAS,0DAA0D;YAClH,MAAM,eAAe,CAAC,EAAE,SAAS,GAAG,EAAE,KAAK,qCAAqC,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC;YAEpG,IAAI;gBACF,MAAM,QAAE,IAAI,EAAE,GAAG,MAAM,CAAA,GAAA,4BAAS,EAAE,UAAU;gBAE5C,MAAM,OAAO,KAAK,MAAM,KAAK,CAAA,IAAK,EAAE,SAAS;gBAE7C,OAAO,OAAO,KAAK,OAAO;YAC5B,EAAE,OAAO,GAAG;gBACV,OAAO;YACT;QACF,OACE,OAAO;IAEX,GAAG,EAAE;IAEL,OAAO;eAAE;IAAM;AACjB;IAEA,2CAAe;;;;;;;;;;;AG1Bf,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,CAAA,QAAU,CAAA;QACrC,OAAO;YACL,YAAY;YACZ,cAAc;YACd,WAAW;YACX,OAAO;YACP,UAAU;YACV,UAAU;YACV,SAAS;YACT,UAAU;QACZ;QACA,MAAM;YACJ,YAAY;YACZ,QAAQ;YACR,cAAc;YACd,SAAS;YACT,QAAQ;YACR,SAAS;YACT,WAAW;YACX,OAAO;YACP,cAAc;gBACZ,aAAa;YACf;QACF;IACF,CAAA;IAEA,yDAAe,CAAA,GAAA,uBAAS,EAAE,CAAC,OAAO;IAChC,MAAM,CAAC,eAAe,iBAAiB,GAAG,CAAA,GAAA,qBAAO,EAAE;IACnD,MAAM,UAAU;IAEhB,MAAM,aAAa,CAAA;QACjB,MAAM,OAAO,MAAM,KAAK,CAAC,MAAM;QAE/B,IAAI,MACF,MAAM,QAAQ;YAAE,IAAI;QAAK;IAE7B;IAEA,MAAM,YAAY;QAChB,iBAAiB,AAAC,CAAA,gBAAgB,MAAM,MAAM,SAAS,CAAA,IAAK,MAAM,MAAM;IAC1E;IAEA,MAAM,cAAc;QAClB,iBAAiB,AAAC,CAAA,gBAAgB,CAAA,IAAK,MAAM,MAAM;IACrD;IAEA,MAAM,eAAe;QACnB,WAAW;IACb;IAEA,CAAA,GAAA,sBAAQ,EAAE,IAAM,iBAAiB,IAAI;QAAC,MAAM;KAAM;IAElD,CAAA,GAAA,gCAAkB,EAAE,KAAK,IAAO,CAAA;YAC9B,WAAW,CAAC,SAAE,KAAK,EAAE;gBACnB,IAAI,MAAM,QAAQ,WAAW;oBAC3B;oBACA,OAAO;gBACT;gBAEA,IAAI,MAAM,QAAQ,aAAa;oBAC7B;oBACA,OAAO;gBACT;gBAEA,IAAI,MAAM,QAAQ,SAAS;oBACzB;oBACA,OAAO;gBACT;gBAEA,OAAO;YACT;QACF,CAAA;IAEA,qBACE,gCAAC;QAAI,WAAW,QAAQ;kBACrB,MAAM,MAAM,SACX,MAAM,MAAM,IAAI,CAAC,MAAM,sBACrB,gCAAC;gBACC,WAAW,QAAQ,OAAQ,CAAA,UAAU,gBAAgB,cAAc,EAAC;gBAEpE,SAAS,IAAM,WAAW;0BAEzB,KAAK;eAHD,wBAOT,gCAAC;YAAI,WAAW,QAAQ;sBAAM;;;AAItC;;;ADzFA,MAAM,uCAAiB;IACrB,IAAI;IACJ,IAAI;IAEJ,OAAO;QACL,SAAS,CAAA;YACP,YAAY,IAAI,CAAA,GAAA,gCAAY,EAAE,CAAA,GAAA,wCAAW,GAAG;uBAC1C;gBACA,QAAQ,MAAM;YAChB;YAEA,QAAQ,CAAA,GAAA,wCAAI,EAAE,QAAQ;gBACpB,wBAAwB,MAAM;gBAC9B,UAAU,IAAM,SAAS;gBACzB,SAAS,UAAU;gBACnB,cAAc;gBACd,aAAa;gBACb,SAAS;gBACT,WAAW;YACb;QACF;QAEA,UAAS,KAAK;YACZ,UAAU,YAAY;YAEtB,KAAK,CAAC,EAAE,CAAC,SAAS;gBAChB,wBAAwB,MAAM;YAChC;QACF;QAEA,WAAU,KAAK;YACb,IAAI,MAAM,MAAM,QAAQ,UAAU;gBAChC,KAAK,CAAC,EAAE,CAAC;gBAET,OAAO;YACT;YAEA,OAAO,UAAU,KAAK,UAAU;QAClC;QAEA;YACE,KAAK,CAAC,EAAE,CAAC;YACT,UAAU;QACZ;IACF;AACF;IAEA,2CAAe;;;AD9Cf,MAAM,oCAAc,CAAA;IAClB,MAAM,gBAAgB,CAAA,GAAA,+CAAW,EAAE;IAEnC,MAAM,QAAE,IAAI,EAAE,GAAG,CAAA,GAAA,4BAAS,EACxB,cACA;QACE,QAAQ;YACN,aAAa;gBAAC,eAAe,eAAe;aAAM;YAClD,YAAY,EAAE;QAChB;IACF,GACA;QACE,SAAS,CAAC,CAAC,eAAe,eAAe;IAC3C;IAGF,MAAM,oBAAoB,CAAA,GAAA,oBAAM,EAAE;QAChC,IAAI,MACF,OAAO,KAAK,IAAI,CAAA,OAAS,CAAA;gBAAE,IAAI,KAAK;gBAAI,OAAO,IAAI,CAAC,eAAe,eAAe,MAAM;YAAC,CAAA;IAE7F,GAAG;QAAC;KAAK;IAET,MAAM,QAAQ,CAAA,GAAA,oBAAM,EAAE;QACpB,IAAI,mBACF,OAAO,CAAC,SAAE,KAAK,EAAE;YACf,OAAO,kBAAkB,OAAO,CAAC,SAAE,KAAK,EAAE,GAAK,MAAM,cAAc,WAAW,MAAM,gBAAgB,MAAM,GAAG;QAC/G;IAEJ,GAAG;QAAC;KAAkB;IAEtB,OAAO;eACL;QACA,QAAQ,CAAA,GAAA,wCAAa;IACvB;AACF;IAEA,2CAAe;","sources":["packages/activitypub-components/src/index.js","packages/activitypub-components/src/components/CommentsField/CommentsField.js","packages/activitypub-components/src/components/CommentsField/PostCommentForm.js","packages/activitypub-components/src/constants.js","packages/activitypub-components/src/hooks/useOutbox.js","packages/activitypub-components/src/components/CommentsField/CustomMention.js","packages/activitypub-components/src/components/CommentsField/CommentsList.js","packages/activitypub-components/src/hooks/useCollection.js","packages/activitypub-components/src/components/CollectionList.js","packages/activitypub-components/src/components/ReferenceCollectionField.js","packages/activitypub-components/src/hooks/useInbox.js","packages/activitypub-components/src/hooks/useWebfinger.js","packages/activitypub-components/src/hooks/useMentions/useMentions.js","packages/activitypub-components/src/hooks/useMentions/renderMentions.js","packages/activitypub-components/src/hooks/useMentions/MentionsList.js"],"sourcesContent":["// Components\nexport { default as CommentsField } from './components/CommentsField/CommentsField';\nexport { default as CollectionList } from './components/CollectionList';\nexport { default as ReferenceCollectionField } from './components/ReferenceCollectionField';\n\n// Hooks\nexport { default as useCollection } from './hooks/useCollection';\nexport { default as useInbox } from './hooks/useInbox';\nexport { default as useOutbox } from './hooks/useOutbox';\nexport { default as useWebfinger } from './hooks/useWebfinger';\nexport { default as useMentions } from './hooks/useMentions/useMentions';\n\n// Constants\nexport { ACTIVITY_TYPES, ACTOR_TYPES, OBJECT_TYPES, PUBLIC_URI } from './constants';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport PostCommentForm from './PostCommentForm';\nimport CommentsList from './CommentsList';\nimport useCollection from '../../hooks/useCollection';\n\nconst CommentsField = ({ source, context, helperText, placeholder, userResource, mentions }) => {\n const record = useRecordContext();\n const { items: comments, loading, addItem, removeItem } = useCollection(record.replies);\n if (!userResource) throw new Error('No userResource defined for CommentsField');\n return (\n <>\n \n \n >\n );\n};\n\nCommentsField.defaultProps = {\n label: 'Commentaires',\n placeholder: 'Commencez à taper votre commentaire...',\n source: 'id', // Ensure the field is always displayed\n context: 'id'\n};\n\nexport default CommentsField;\n","import React, { useState, useCallback } from 'react';\nimport { Form, useGetIdentity, useNotify, useRecordContext } from 'react-admin';\nimport { RichTextInput, DefaultEditorOptions } from 'ra-input-rich-text';\nimport Placeholder from '@tiptap/extension-placeholder';\nimport { Button, Box, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SendIcon from '@mui/icons-material/Send';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AuthDialog } from '@semapps/auth-provider';\nimport { OBJECT_TYPES, PUBLIC_URI } from '../../constants';\nimport useOutbox from '../../hooks/useOutbox';\nimport CustomMention from './CustomMention';\n\nconst useStyles = makeStyles(theme => ({\n form: {\n marginTop: -12 // Negative margin to keep the form close to the label\n },\n container: {\n paddingLeft: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 16,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n editorContent: {\n '& > div': {\n backgroundColor: 'rgba(0, 0, 0, 0.09)',\n padding: '2px 12px',\n borderWidth: '0px !important',\n borderRadius: 0,\n borderBottom: '1px solid #FFF',\n minHeight: 60,\n outline: 'unset !important'\n },\n '& > div > p': {\n marginTop: 12,\n marginBottom: 12,\n fontFamily: theme.typography.body1.fontFamily,\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n },\n '& > div > p.is-editor-empty:first-child::before': {\n color: 'grey',\n content: 'attr(data-placeholder)',\n float: 'left',\n height: 0,\n pointerEvents: 'none'\n }\n },\n button: {\n marginTop: -10, // To go over helper text block\n marginBottom: 15\n }\n}));\n\nconst EmptyToolbar = () => null;\n\nconst PostCommentForm = ({ context, placeholder, helperText, mentions, userResource, addItem, removeItem }) => {\n const record = useRecordContext();\n const { identity, isLoading } = useGetIdentity();\n const userDataModel = useDataModel(userResource);\n const classes = useStyles();\n const notify = useNotify();\n const outbox = useOutbox();\n const [expanded, setExpanded] = useState(false);\n const [openAuth, setOpenAuth] = useState(false);\n\n const onSubmit = useCallback(\n async values => {\n const document = new DOMParser().parseFromString(values.comment, 'text/html');\n const mentions = Array.from(document.body.getElementsByClassName('mention'));\n const mentionedUsersUris = [];\n\n mentions.forEach(node => {\n const userUri = node.attributes['data-mention-id'].value;\n const userLabel = node.attributes['data-mention-label'].value;\n const link = document.createElement('a');\n link.setAttribute(\n 'href',\n `${new URL(window.location.href).origin}/${userResource}/${encodeURIComponent(userUri)}/show`\n );\n link.textContent = `@${userLabel}`;\n node.parentNode.replaceChild(link, node);\n mentionedUsersUris.push(userUri);\n });\n\n if (document.body.innerHTML === 'undefined') {\n notify('Votre commentaire est vide', { type: 'error' });\n } else {\n const tempId = Date.now();\n\n const note = {\n type: OBJECT_TYPES.NOTE,\n attributedTo: outbox.owner,\n content: document.body.innerHTML,\n inReplyTo: record[context],\n published: new Date().toISOString()\n };\n\n try {\n addItem({ id: tempId, ...note });\n // TODO reset the form\n setExpanded(false);\n await outbox.post({ ...note, to: [...mentionedUsersUris, PUBLIC_URI] });\n notify('Commentaire posté avec succès', { type: 'success' });\n } catch (e) {\n console.error(e);\n removeItem(tempId);\n notify(e.message, { type: 'error' });\n }\n }\n },\n [outbox, notify, setExpanded, addItem, removeItem]\n );\n\n const openAuthIfDisconnected = useCallback(() => {\n if (!identity?.id) {\n setOpenAuth(true);\n }\n }, [identity, setOpenAuth]);\n\n // Don't init the editor options until mentions and identity are loaded, as they can only be initialized once\n if ((mentions && !mentions.items) || isLoading) return null;\n\n return (\n <>\n
\n setOpenAuth(false)}\n message=\"Pour poster un commentaire, vous devez être connecté.\"\n />\n >\n );\n};\n\nexport default PostCommentForm;\n","export const ACTIVITY_TYPES = {\n ACCEPT: 'Accept',\n ADD: 'Add',\n ANNOUNCE: 'Announce',\n ARRIVE: 'Arrive',\n BLOCK: 'Block',\n CREATE: 'Create',\n DELETE: 'Delete',\n DISLIKE: 'Dislike',\n FLAG: 'Flag',\n FOLLOW: 'Follow',\n IGNORE: 'Ignore',\n INVITE: 'Invite',\n JOIN: 'Join',\n LEAVE: 'Leave',\n LIKE: 'Like',\n LISTEN: 'Listen',\n MOVE: 'Move',\n OFFER: 'Offer',\n QUESTION: 'Question',\n REJECT: 'Reject',\n READ: 'Read',\n REMOVE: 'Remove',\n TENTATIVE_REJECT: 'TentativeReject',\n TENTATIVE_ACCEPT: 'TentativeAccept',\n TRAVAL: 'Travel',\n UNDO: 'Undo',\n UPDATE: 'Update',\n VIEW: 'View'\n};\n\nexport const ACTOR_TYPES = {\n APPLICATION: 'Application',\n GROUP: 'Group',\n ORGANIZATION: 'Organization',\n PERSON: 'Person',\n SERVICE: 'Service'\n};\n\nexport const OBJECT_TYPES = {\n ARTICLE: 'Article',\n AUDIO: 'Audio',\n DOCUMENT: 'Document',\n EVENT: 'Event',\n IMAGE: 'Image',\n NOTE: 'Note',\n PAGE: 'Page',\n PLACE: 'Place',\n PROFILE: 'Profile',\n RELATIONSHIP: 'Relationship',\n TOMBSTONE: 'Tombstone',\n VIDEO: 'Video'\n};\n\nexport const PUBLIC_URI = 'https://www.w3.org/ns/activitystreams#Public';\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useOutbox = () => {\n const { identity } = useGetIdentity();\n\n const outboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.outbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n // Post an activity to the logged user's outbox and return its URI\n const post = useCallback(\n async activity => {\n if (!outboxUrl)\n throw new Error(\n 'Cannot post to outbox before user identity is loaded. Please use the loaded argument of useOutbox'\n );\n const token = localStorage.getItem('token');\n const { headers } = await fetchUtils.fetchJson(outboxUrl, {\n method: 'POST',\n body: JSON.stringify({\n '@context': 'https://www.w3.org/ns/activitystreams',\n ...activity\n }),\n headers: new Headers({\n 'Content-Type': 'application/ld+json',\n Authorization: `Bearer ${token}`\n })\n });\n return headers.get('Location');\n },\n [outboxUrl]\n );\n\n const fetch = useCallback(async () => {\n if (!sparqlEndpoint || !outboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${outboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n }, [sparqlEndpoint, outboxUrl]);\n\n return { post, fetch, url: outboxUrl, loaded: !!outboxUrl, owner: identity?.id };\n};\n\nexport default useOutbox;\n","import { mergeAttributes } from '@tiptap/core';\nimport Mention from '@tiptap/extension-mention';\n\n// Fix a bug in the current version of the mention extension\n// (The { id, label } object is located inside the id property)\n// See https://github.com/ueberdosis/tiptap/pull/1322\nconst CustomMention = Mention.extend({\n renderHTML({ node, HTMLAttributes }) {\n return ['span', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), `@${node.attrs.id.label}`];\n },\n addAttributes() {\n return {\n label: {\n default: null,\n parseHTML: element => {\n return {\n label: element.getAttribute('data-mention-label')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.label) {\n return {};\n }\n return {\n 'data-mention-label': attributes.id.label\n };\n }\n },\n id: {\n default: null,\n parseHTML: element => {\n return {\n id: element.getAttribute('data-mention-id')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.id) {\n return {};\n }\n return {\n 'data-mention-id': attributes.id.id\n };\n }\n }\n };\n }\n});\n\nexport default CustomMention;\n","import React from 'react';\nimport { TextField, RichTextField, DateField } from 'react-admin';\nimport { Box, Typography, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AvatarWithLabelField, ReferenceField } from '@semapps/field-components';\n\nconst useStyles = makeStyles(() => ({\n container: {\n paddingLeft: 80,\n marginTop: 8,\n minHeight: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n text: {\n paddingTop: 2,\n paddingBottom: 8\n },\n label: {\n fontWeight: 'bold'\n },\n content: {\n '& p': {\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n }\n },\n loading: {\n zIndex: 1000,\n backgroundColor: 'white',\n opacity: 0.5,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 200,\n marginTop: 5\n }\n}));\n\nconst CommentsList = ({ comments, userResource, loading }) => {\n const classes = useStyles();\n const userDataModel = useDataModel(userResource);\n return (\n \n {comments &&\n comments\n .sort((a, b) => new Date(b.published) - new Date(a.published))\n .map(comment => (\n \n \n \n \n \n \n \n \n \n \n \n • \n \n \n \n \n \n ))}\n {loading && (\n \n \n \n \n \n )}\n \n );\n};\n\nexport default CommentsList;\n","import { useCallback, useMemo, useState, useEffect } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\n\nconst useCollection = predicateOrUrl => {\n const { identity, isLoading: identityLoading } = useGetIdentity();\n const [items, setItems] = useState([]);\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [error, setError] = useState(false);\n\n const collectionUrl = useMemo(() => {\n if (predicateOrUrl) {\n if (predicateOrUrl.startsWith('http')) {\n return predicateOrUrl;\n }\n if (identity?.webIdData) {\n return identity?.webIdData?.[predicateOrUrl];\n }\n }\n }, [identity, predicateOrUrl]);\n\n const fetch = useCallback(async () => {\n if (!collectionUrl) return;\n\n setLoading(true);\n\n const headers = new Headers({ Accept: 'application/ld+json' });\n\n // Add authorization token if it is set and if the user is on the same server as the collection\n const identityOrigin = identity.id && new URL(identity.id).origin;\n const collectionOrigin = new URL(collectionUrl).origin;\n const token = localStorage.getItem('token');\n if (identityOrigin === collectionOrigin && token) {\n headers.set('Authorization', `Bearer ${token}`);\n }\n\n fetchUtils\n .fetchJson(collectionUrl, { headers })\n .then(({ json }) => {\n if (json && json.items) {\n setItems(json.items);\n } else if (json && json.orderedItems) {\n setItems(json.orderedItems);\n } else {\n setItems([]);\n }\n setError(false);\n setLoaded(true);\n setLoading(false);\n })\n .catch(() => {\n setError(true);\n setLoaded(true);\n setLoading(false);\n });\n }, [setItems, setLoaded, setLoading, setError, collectionUrl, identity]);\n\n useEffect(() => {\n if (!identityLoading && !loading && !loaded && !error) {\n fetch();\n }\n }, [fetch, identityLoading, loading, loaded, error]);\n\n const addItem = useCallback(\n item => {\n setItems(oldItems => [...oldItems, item]);\n },\n [setItems]\n );\n\n const removeItem = useCallback(\n itemId => {\n setItems(oldItems => oldItems.filter(item => (typeof item === 'string' ? item !== itemId : item.id !== itemId)));\n },\n [setItems]\n );\n\n return { items, loading, loaded, error, refetch: fetch, addItem, removeItem, url: collectionUrl };\n};\n\nexport default useCollection;\n","import React from 'react';\nimport { useGetOne, LinearProgress } from 'react-admin';\nimport { ReferenceArrayField } from '@semapps/field-components';\n\nconst CollectionList = ({ collectionUrl, resource, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n // TODO use a simple fetch call, as the resource is not good and it is useless\n const { data: collection, isLoading } = useGetOne(resource, collectionUrl, { enabled: !!collectionUrl });\n\n if (isLoading) {\n return (\n \n \n
\n );\n }\n if (!collection) {\n return null;\n }\n\n return (\n \n {children}\n \n );\n};\n\nexport default CollectionList;\n","import React from 'react';\nimport CollectionList from './CollectionList';\n\nconst ReferenceCollectionField = ({ source, record, reference, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n if (!record || !record[source]) return null;\n\n return (\n \n {children}\n \n );\n};\n\nexport default ReferenceCollectionField;\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useInbox = () => {\n const { identity } = useGetIdentity();\n\n const inboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.inbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n const fetch = useCallback(\n async ({ filters }) => {\n if (!sparqlEndpoint || !inboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n let filtersWhereQuery = '';\n if (filters) {\n Object.keys(filters).forEach(predicate => {\n if (filters[predicate]) {\n const object = filters[predicate].startsWith('http') ? `<${filters[predicate]}>` : filters[predicate];\n filtersWhereQuery += `?s1 ${predicate} ${object} .`;\n }\n });\n }\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${inboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n FILTER( (isIRI(?s1)) ) .\n ${filtersWhereQuery}\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n },\n [sparqlEndpoint, inboxUrl]\n );\n\n return { fetch, url: inboxUrl, owner: identity?.id };\n};\n\nexport default useInbox;\n","import { useCallback } from 'react';\nimport { fetchUtils } from 'react-admin';\n\nconst useWebfinger = () => {\n // Post an activity to the logged user's outbox and return its URI\n const fetch = useCallback(async id => {\n // eslint-disable-next-line\n const [_, username, host] = id.split('@');\n if (host) {\n const protocol = host.includes(':') ? 'http' : 'https'; // If the host has a port, we are most likely on localhost\n const webfingerUrl = `${protocol}://${host}/.well-known/webfinger?resource=acct:${username}@${host}`;\n\n try {\n const { json } = await fetchUtils.fetchJson(webfingerUrl);\n\n const link = json.links.find(l => l.type === 'application/activity+json');\n\n return link ? link.href : null;\n } catch (e) {\n return null;\n }\n } else {\n return null;\n }\n }, []);\n\n return { fetch };\n};\n\nexport default useWebfinger;\n","import { useMemo } from 'react';\nimport { useGetList } from 'react-admin';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport renderMentions from './renderMentions';\n\nconst useMentions = userResource => {\n const userDataModel = useDataModel(userResource);\n\n const { data } = useGetList(\n userResource,\n {\n filter: {\n _predicates: [userDataModel?.fieldsMapping?.title],\n blankNodes: []\n }\n },\n {\n enabled: !!userDataModel?.fieldsMapping?.title\n }\n );\n\n const availableMentions = useMemo(() => {\n if (data) {\n return data.map(item => ({ id: item.id, label: item[userDataModel?.fieldsMapping?.title] }));\n }\n }, [data]);\n\n const items = useMemo(() => {\n if (availableMentions) {\n return ({ query }) => {\n return availableMentions.filter(({ label }) => label.toLowerCase().startsWith(query.toLowerCase())).slice(0, 5);\n };\n }\n }, [availableMentions]);\n\n return {\n items,\n render: renderMentions\n };\n};\n\nexport default useMentions;\n","import { ReactRenderer } from '@tiptap/react';\nimport tippy from 'tippy.js';\nimport MentionsList from './MentionsList';\n\nconst renderMentions = () => {\n let component;\n let popup;\n\n return {\n onStart: props => {\n component = new ReactRenderer(MentionsList, {\n props,\n editor: props.editor\n });\n\n popup = tippy('body', {\n getReferenceClientRect: props.clientRect,\n appendTo: () => document.body,\n content: component.element,\n showOnCreate: true,\n interactive: true,\n trigger: 'manual',\n placement: 'bottom-start'\n });\n },\n\n onUpdate(props) {\n component.updateProps(props);\n\n popup[0].setProps({\n getReferenceClientRect: props.clientRect\n });\n },\n\n onKeyDown(props) {\n if (props.event.key === 'Escape') {\n popup[0].hide();\n\n return true;\n }\n\n return component.ref?.onKeyDown(props);\n },\n\n onExit() {\n popup[0].destroy();\n component.destroy();\n }\n };\n};\n\nexport default renderMentions;\n","import React, { useState, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n items: {\n background: '#fff',\n borderRadius: '0.5rem',\n boxShadow: '0 0 0 1px rgba(0, 0, 0, 0.05), 0px 10px 20px rgba(0, 0, 0, 0.1)',\n color: 'rgba(0, 0, 0, 0.8)',\n fontSize: '0.9rem',\n overflow: 'hidden',\n padding: '0.2rem',\n position: 'relative'\n },\n item: {\n background: 'transparent',\n border: '1px solid transparent',\n borderRadius: '0.4rem',\n display: 'block',\n margin: 0,\n padding: '0.2rem 0.4rem',\n textAlign: 'left',\n width: '100%',\n '&.selected': {\n borderColor: '#000'\n }\n }\n}));\n\nexport default forwardRef((props, ref) => {\n const [selectedIndex, setSelectedIndex] = useState(0);\n const classes = useStyles();\n\n const selectItem = index => {\n const item = props.items[index];\n\n if (item) {\n props.command({ id: item });\n }\n };\n\n const upHandler = () => {\n setSelectedIndex((selectedIndex + props.items.length - 1) % props.items.length);\n };\n\n const downHandler = () => {\n setSelectedIndex((selectedIndex + 1) % props.items.length);\n };\n\n const enterHandler = () => {\n selectItem(selectedIndex);\n };\n\n useEffect(() => setSelectedIndex(0), [props.items]);\n\n useImperativeHandle(ref, () => ({\n onKeyDown: ({ event }) => {\n if (event.key === 'ArrowUp') {\n upHandler();\n return true;\n }\n\n if (event.key === 'ArrowDown') {\n downHandler();\n return true;\n }\n\n if (event.key === 'Enter') {\n enterHandler();\n return true;\n }\n\n return false;\n }\n }));\n\n return (\n \n {props.items.length ? (\n props.items.map((item, index) => (\n
\n ))\n ) : (\n
Aucun résultat
\n )}\n
\n );\n});\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/activitypub-components/src/index.js","packages/activitypub-components/src/components/CommentsField/CommentsField.js","packages/activitypub-components/src/components/CommentsField/PostCommentForm.js","packages/activitypub-components/src/constants.js","packages/activitypub-components/src/hooks/useOutbox.js","packages/activitypub-components/src/components/CommentsField/CustomMention.js","packages/activitypub-components/src/components/CommentsField/CommentsList.js","packages/activitypub-components/src/hooks/useCollection.js","packages/activitypub-components/src/components/CollectionList.js","packages/activitypub-components/src/components/ReferenceCollectionField.js","packages/activitypub-components/src/hooks/useInbox.js","packages/activitypub-components/src/hooks/useWebfinger.js","packages/activitypub-components/src/hooks/useMentions/useMentions.js","packages/activitypub-components/src/hooks/useMentions/renderMentions.js","packages/activitypub-components/src/hooks/useMentions/MentionsList.js"],"sourcesContent":["// Components\nexport { default as CommentsField } from './components/CommentsField/CommentsField';\nexport { default as CollectionList } from './components/CollectionList';\nexport { default as ReferenceCollectionField } from './components/ReferenceCollectionField';\n\n// Hooks\nexport { default as useCollection } from './hooks/useCollection';\nexport { default as useInbox } from './hooks/useInbox';\nexport { default as useOutbox } from './hooks/useOutbox';\nexport { default as useWebfinger } from './hooks/useWebfinger';\nexport { default as useMentions } from './hooks/useMentions/useMentions';\n\n// Constants\nexport { ACTIVITY_TYPES, ACTOR_TYPES, OBJECT_TYPES, PUBLIC_URI } from './constants';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport PostCommentForm from './PostCommentForm';\nimport CommentsList from './CommentsList';\nimport useCollection from '../../hooks/useCollection';\n\nconst CommentsField = ({ source, context, helperText, placeholder, userResource, mentions }) => {\n const record = useRecordContext();\n const { items: comments, loading, addItem, removeItem } = useCollection(record.replies);\n if (!userResource) throw new Error('No userResource defined for CommentsField');\n return (\n <>\n \n \n >\n );\n};\n\nCommentsField.defaultProps = {\n label: 'Commentaires',\n placeholder: 'Commencez à taper votre commentaire...',\n source: 'id', // Ensure the field is always displayed\n context: 'id'\n};\n\nexport default CommentsField;\n","import React, { useState, useCallback } from 'react';\nimport { Form, useGetIdentity, useNotify, useRecordContext } from 'react-admin';\nimport { RichTextInput, DefaultEditorOptions } from 'ra-input-rich-text';\nimport Placeholder from '@tiptap/extension-placeholder';\nimport { Button, Box, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SendIcon from '@mui/icons-material/Send';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AuthDialog } from '@semapps/auth-provider';\nimport { OBJECT_TYPES, PUBLIC_URI } from '../../constants';\nimport useOutbox from '../../hooks/useOutbox';\nimport CustomMention from './CustomMention';\n\nconst useStyles = makeStyles(theme => ({\n form: {\n marginTop: -12 // Negative margin to keep the form close to the label\n },\n container: {\n paddingLeft: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 16,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n editorContent: {\n '& > div': {\n backgroundColor: 'rgba(0, 0, 0, 0.09)',\n padding: '2px 12px',\n borderWidth: '0px !important',\n borderRadius: 0,\n borderBottom: '1px solid #FFF',\n minHeight: 60,\n outline: 'unset !important'\n },\n '& > div > p': {\n marginTop: 12,\n marginBottom: 12,\n fontFamily: theme.typography.body1.fontFamily,\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n },\n '& > div > p.is-editor-empty:first-child::before': {\n color: 'grey',\n content: 'attr(data-placeholder)',\n float: 'left',\n height: 0,\n pointerEvents: 'none'\n }\n },\n button: {\n marginTop: -10, // To go over helper text block\n marginBottom: 15\n }\n}));\n\nconst EmptyToolbar = () => null;\n\nconst PostCommentForm = ({ context, placeholder, helperText, mentions, userResource, addItem, removeItem }) => {\n const record = useRecordContext();\n const { identity, isLoading } = useGetIdentity();\n const userDataModel = useDataModel(userResource);\n const classes = useStyles();\n const notify = useNotify();\n const outbox = useOutbox();\n const [expanded, setExpanded] = useState(false);\n const [openAuth, setOpenAuth] = useState(false);\n\n const onSubmit = useCallback(\n async values => {\n const document = new DOMParser().parseFromString(values.comment, 'text/html');\n const mentions = Array.from(document.body.getElementsByClassName('mention'));\n const mentionedUsersUris = [];\n\n mentions.forEach(node => {\n const userUri = node.attributes['data-mention-id'].value;\n const userLabel = node.attributes['data-mention-label'].value;\n const link = document.createElement('a');\n link.setAttribute(\n 'href',\n `${new URL(window.location.href).origin}/${userResource}/${encodeURIComponent(userUri)}/show`\n );\n link.textContent = `@${userLabel}`;\n node.parentNode.replaceChild(link, node);\n mentionedUsersUris.push(userUri);\n });\n\n if (document.body.innerHTML === 'undefined') {\n notify('Votre commentaire est vide', { type: 'error' });\n } else {\n const tempId = Date.now();\n\n const note = {\n type: OBJECT_TYPES.NOTE,\n attributedTo: outbox.owner,\n content: document.body.innerHTML,\n inReplyTo: record[context],\n published: new Date().toISOString()\n };\n\n try {\n addItem({ id: tempId, ...note });\n // TODO reset the form\n setExpanded(false);\n await outbox.post({ ...note, to: [...mentionedUsersUris, PUBLIC_URI] });\n notify('Commentaire posté avec succès', { type: 'success' });\n } catch (e) {\n console.error(e);\n removeItem(tempId);\n notify(e.message, { type: 'error' });\n }\n }\n },\n [outbox, notify, setExpanded, addItem, removeItem]\n );\n\n const openAuthIfDisconnected = useCallback(() => {\n if (!identity?.id) {\n setOpenAuth(true);\n }\n }, [identity, setOpenAuth]);\n\n // Don't init the editor options until mentions and identity are loaded, as they can only be initialized once\n if ((mentions && !mentions.items) || isLoading) return null;\n\n return (\n <>\n \n setOpenAuth(false)}\n message=\"Pour poster un commentaire, vous devez être connecté.\"\n />\n >\n );\n};\n\nexport default PostCommentForm;\n","export const ACTIVITY_TYPES = {\n ACCEPT: 'Accept',\n ADD: 'Add',\n ANNOUNCE: 'Announce',\n ARRIVE: 'Arrive',\n BLOCK: 'Block',\n CREATE: 'Create',\n DELETE: 'Delete',\n DISLIKE: 'Dislike',\n FLAG: 'Flag',\n FOLLOW: 'Follow',\n IGNORE: 'Ignore',\n INVITE: 'Invite',\n JOIN: 'Join',\n LEAVE: 'Leave',\n LIKE: 'Like',\n LISTEN: 'Listen',\n MOVE: 'Move',\n OFFER: 'Offer',\n QUESTION: 'Question',\n REJECT: 'Reject',\n READ: 'Read',\n REMOVE: 'Remove',\n TENTATIVE_REJECT: 'TentativeReject',\n TENTATIVE_ACCEPT: 'TentativeAccept',\n TRAVAL: 'Travel',\n UNDO: 'Undo',\n UPDATE: 'Update',\n VIEW: 'View'\n};\n\nexport const ACTOR_TYPES = {\n APPLICATION: 'Application',\n GROUP: 'Group',\n ORGANIZATION: 'Organization',\n PERSON: 'Person',\n SERVICE: 'Service'\n};\n\nexport const OBJECT_TYPES = {\n ARTICLE: 'Article',\n AUDIO: 'Audio',\n DOCUMENT: 'Document',\n EVENT: 'Event',\n IMAGE: 'Image',\n NOTE: 'Note',\n PAGE: 'Page',\n PLACE: 'Place',\n PROFILE: 'Profile',\n RELATIONSHIP: 'Relationship',\n TOMBSTONE: 'Tombstone',\n VIDEO: 'Video'\n};\n\nexport const PUBLIC_URI = 'https://www.w3.org/ns/activitystreams#Public';\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useOutbox = () => {\n const { identity } = useGetIdentity();\n\n const outboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.outbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n // Post an activity to the logged user's outbox and return its URI\n const post = useCallback(\n async activity => {\n if (!outboxUrl)\n throw new Error(\n 'Cannot post to outbox before user identity is loaded. Please use the loaded argument of useOutbox'\n );\n const token = localStorage.getItem('token');\n const { headers } = await fetchUtils.fetchJson(outboxUrl, {\n method: 'POST',\n body: JSON.stringify({\n '@context': 'https://www.w3.org/ns/activitystreams',\n ...activity\n }),\n headers: new Headers({\n 'Content-Type': 'application/ld+json',\n Authorization: `Bearer ${token}`\n })\n });\n return headers.get('Location');\n },\n [outboxUrl]\n );\n\n const fetch = useCallback(async () => {\n if (!sparqlEndpoint || !outboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${outboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n }, [sparqlEndpoint, outboxUrl]);\n\n return { post, fetch, url: outboxUrl, loaded: !!outboxUrl, owner: identity?.id };\n};\n\nexport default useOutbox;\n","import { mergeAttributes } from '@tiptap/core';\nimport Mention from '@tiptap/extension-mention';\n\n// Fix a bug in the current version of the mention extension\n// (The { id, label } object is located inside the id property)\n// See https://github.com/ueberdosis/tiptap/pull/1322\nconst CustomMention = Mention.extend({\n renderHTML({ node, HTMLAttributes }) {\n return ['span', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), `@${node.attrs.id.label}`];\n },\n addAttributes() {\n return {\n label: {\n default: null,\n parseHTML: element => {\n return {\n label: element.getAttribute('data-mention-label')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.label) {\n return {};\n }\n return {\n 'data-mention-label': attributes.id.label\n };\n }\n },\n id: {\n default: null,\n parseHTML: element => {\n return {\n id: element.getAttribute('data-mention-id')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.id) {\n return {};\n }\n return {\n 'data-mention-id': attributes.id.id\n };\n }\n }\n };\n }\n});\n\nexport default CustomMention;\n","import React from 'react';\nimport { TextField, RichTextField, DateField } from 'react-admin';\nimport { Box, Typography, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AvatarWithLabelField, ReferenceField } from '@semapps/field-components';\n\nconst useStyles = makeStyles(() => ({\n container: {\n paddingLeft: 80,\n marginTop: 8,\n minHeight: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n text: {\n paddingTop: 2,\n paddingBottom: 8\n },\n label: {\n fontWeight: 'bold'\n },\n content: {\n '& p': {\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n }\n },\n loading: {\n zIndex: 1000,\n backgroundColor: 'white',\n opacity: 0.5,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 200,\n marginTop: 5\n }\n}));\n\nconst CommentsList = ({ comments, userResource, loading }) => {\n const classes = useStyles();\n const userDataModel = useDataModel(userResource);\n return (\n \n {comments &&\n comments\n .sort((a, b) => new Date(b.published) - new Date(a.published))\n .map(comment => (\n \n \n \n \n \n \n \n \n \n \n \n • \n \n \n \n \n \n ))}\n {loading && (\n \n \n \n \n \n )}\n \n );\n};\n\nexport default CommentsList;\n","import { useCallback, useMemo, useState, useEffect } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\n\nconst useCollection = predicateOrUrl => {\n const { identity, isLoading: identityLoading } = useGetIdentity();\n const [items, setItems] = useState([]);\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [error, setError] = useState(false);\n\n const collectionUrl = useMemo(() => {\n if (predicateOrUrl) {\n if (predicateOrUrl.startsWith('http')) {\n return predicateOrUrl;\n }\n if (identity?.webIdData) {\n return identity?.webIdData?.[predicateOrUrl];\n }\n }\n }, [identity, predicateOrUrl]);\n\n const fetch = useCallback(async () => {\n if (!collectionUrl) return;\n\n setLoading(true);\n\n const headers = new Headers({ Accept: 'application/ld+json' });\n\n // Add authorization token if it is set and if the user is on the same server as the collection\n const identityOrigin = identity.id && new URL(identity.id).origin;\n const collectionOrigin = new URL(collectionUrl).origin;\n const token = localStorage.getItem('token');\n if (identityOrigin === collectionOrigin && token) {\n headers.set('Authorization', `Bearer ${token}`);\n }\n\n fetchUtils\n .fetchJson(collectionUrl, { headers })\n .then(({ json }) => {\n if (json && json.items) {\n setItems(json.items);\n } else if (json && json.orderedItems) {\n setItems(json.orderedItems);\n } else {\n setItems([]);\n }\n setError(false);\n setLoaded(true);\n setLoading(false);\n })\n .catch(() => {\n setError(true);\n setLoaded(true);\n setLoading(false);\n });\n }, [setItems, setLoaded, setLoading, setError, collectionUrl, identity]);\n\n useEffect(() => {\n if (!identityLoading && !loading && !loaded && !error) {\n fetch();\n }\n }, [fetch, identityLoading, loading, loaded, error]);\n\n const addItem = useCallback(\n item => {\n setItems(oldItems => [...oldItems, item]);\n },\n [setItems]\n );\n\n const removeItem = useCallback(\n itemId => {\n setItems(oldItems => oldItems.filter(item => (typeof item === 'string' ? item !== itemId : item.id !== itemId)));\n },\n [setItems]\n );\n\n return { items, loading, loaded, error, refetch: fetch, addItem, removeItem, url: collectionUrl };\n};\n\nexport default useCollection;\n","import React from 'react';\nimport { useGetOne, LinearProgress } from 'react-admin';\nimport { ReferenceArrayField } from '@semapps/field-components';\n\nconst CollectionList = ({ collectionUrl, resource, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n // TODO use a simple fetch call, as the resource is not good and it is useless\n const { data: collection, isLoading } = useGetOne(resource, collectionUrl, { enabled: !!collectionUrl });\n\n if (isLoading) {\n return (\n \n \n
\n );\n }\n if (!collection) {\n return null;\n }\n\n return (\n \n {children}\n \n );\n};\n\nexport default CollectionList;\n","import React from 'react';\nimport CollectionList from './CollectionList';\n\nconst ReferenceCollectionField = ({ source, record, reference, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n if (!record || !record[source]) return null;\n\n return (\n \n {children}\n \n );\n};\n\nexport default ReferenceCollectionField;\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useInbox = () => {\n const { identity } = useGetIdentity();\n\n const inboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.inbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n const fetch = useCallback(\n async ({ filters }) => {\n if (!sparqlEndpoint || !inboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n let filtersWhereQuery = '';\n if (filters) {\n Object.keys(filters).forEach(predicate => {\n if (filters[predicate]) {\n const object = filters[predicate].startsWith('http') ? `<${filters[predicate]}>` : filters[predicate];\n filtersWhereQuery += `?s1 ${predicate} ${object} .`;\n }\n });\n }\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${inboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n FILTER( (isIRI(?s1)) ) .\n ${filtersWhereQuery}\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n },\n [sparqlEndpoint, inboxUrl]\n );\n\n return { fetch, url: inboxUrl, owner: identity?.id };\n};\n\nexport default useInbox;\n","import { useCallback } from 'react';\nimport { fetchUtils } from 'react-admin';\n\nconst useWebfinger = () => {\n // Post an activity to the logged user's outbox and return its URI\n const fetch = useCallback(async id => {\n // eslint-disable-next-line\n const [_, username, host] = id.split('@');\n if (host) {\n const protocol = host.includes(':') ? 'http' : 'https'; // If the host has a port, we are most likely on localhost\n const webfingerUrl = `${protocol}://${host}/.well-known/webfinger?resource=acct:${username}@${host}`;\n\n try {\n const { json } = await fetchUtils.fetchJson(webfingerUrl);\n\n const link = json.links.find(l => l.type === 'application/activity+json');\n\n return link ? link.href : null;\n } catch (e) {\n return null;\n }\n } else {\n return null;\n }\n }, []);\n\n return { fetch };\n};\n\nexport default useWebfinger;\n","import { useMemo } from 'react';\nimport { useGetList } from 'react-admin';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport renderMentions from './renderMentions';\n\nconst useMentions = userResource => {\n const userDataModel = useDataModel(userResource);\n\n const { data } = useGetList(\n userResource,\n {\n filter: {\n _predicates: [userDataModel?.fieldsMapping?.title],\n blankNodes: []\n }\n },\n {\n enabled: !!userDataModel?.fieldsMapping?.title\n }\n );\n\n const availableMentions = useMemo(() => {\n if (data) {\n return data.map(item => ({ id: item.id, label: item[userDataModel?.fieldsMapping?.title] }));\n }\n }, [data]);\n\n const items = useMemo(() => {\n if (availableMentions) {\n return ({ query }) => {\n return availableMentions.filter(({ label }) => label.toLowerCase().startsWith(query.toLowerCase())).slice(0, 5);\n };\n }\n }, [availableMentions]);\n\n return {\n items,\n render: renderMentions\n };\n};\n\nexport default useMentions;\n","import { ReactRenderer } from '@tiptap/react';\nimport tippy from 'tippy.js';\nimport MentionsList from './MentionsList';\n\nconst renderMentions = () => {\n let component;\n let popup;\n\n return {\n onStart: props => {\n component = new ReactRenderer(MentionsList, {\n props,\n editor: props.editor\n });\n\n popup = tippy('body', {\n getReferenceClientRect: props.clientRect,\n appendTo: () => document.body,\n content: component.element,\n showOnCreate: true,\n interactive: true,\n trigger: 'manual',\n placement: 'bottom-start'\n });\n },\n\n onUpdate(props) {\n component.updateProps(props);\n\n popup[0].setProps({\n getReferenceClientRect: props.clientRect\n });\n },\n\n onKeyDown(props) {\n if (props.event.key === 'Escape') {\n popup[0].hide();\n\n return true;\n }\n\n return component.ref?.onKeyDown(props);\n },\n\n onExit() {\n popup[0].destroy();\n component.destroy();\n }\n };\n};\n\nexport default renderMentions;\n","import React, { useState, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n items: {\n background: '#fff',\n borderRadius: '0.5rem',\n boxShadow: '0 0 0 1px rgba(0, 0, 0, 0.05), 0px 10px 20px rgba(0, 0, 0, 0.1)',\n color: 'rgba(0, 0, 0, 0.8)',\n fontSize: '0.9rem',\n overflow: 'hidden',\n padding: '0.2rem',\n position: 'relative'\n },\n item: {\n background: 'transparent',\n border: '1px solid transparent',\n borderRadius: '0.4rem',\n display: 'block',\n margin: 0,\n padding: '0.2rem 0.4rem',\n textAlign: 'left',\n width: '100%',\n '&.selected': {\n borderColor: '#000'\n }\n }\n}));\n\nexport default forwardRef((props, ref) => {\n const [selectedIndex, setSelectedIndex] = useState(0);\n const classes = useStyles();\n\n const selectItem = index => {\n const item = props.items[index];\n\n if (item) {\n props.command({ id: item });\n }\n };\n\n const upHandler = () => {\n setSelectedIndex((selectedIndex + props.items.length - 1) % props.items.length);\n };\n\n const downHandler = () => {\n setSelectedIndex((selectedIndex + 1) % props.items.length);\n };\n\n const enterHandler = () => {\n selectItem(selectedIndex);\n };\n\n useEffect(() => setSelectedIndex(0), [props.items]);\n\n useImperativeHandle(ref, () => ({\n onKeyDown: ({ event }) => {\n if (event.key === 'ArrowUp') {\n upHandler();\n return true;\n }\n\n if (event.key === 'ArrowDown') {\n downHandler();\n return true;\n }\n\n if (event.key === 'Enter') {\n enterHandler();\n return true;\n }\n\n return false;\n }\n }));\n\n return (\n \n {props.items.length ? (\n props.items.map((item, index) => (\n
\n ))\n ) : (\n
Aucun résultat
\n )}\n
\n );\n});\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/activitypub-components/dist/index.es.js b/src/frontend/packages/activitypub-components/dist/index.es.js
index d24201259..d31079169 100644
--- a/src/frontend/packages/activitypub-components/dist/index.es.js
+++ b/src/frontend/packages/activitypub-components/dist/index.es.js
@@ -484,7 +484,7 @@ const $be88b298220210d1$var$CommentsList = ({ comments: comments, userResource:
className: classes.label
})
}),
- "\xa0•\xa0",
+ "\xa0\u2022\xa0",
/*#__PURE__*/ (0, $2hSwr$jsx)((0, $2hSwr$DateField), {
record: comment,
variant: "body2",
diff --git a/src/frontend/packages/activitypub-components/dist/index.es.js.map b/src/frontend/packages/activitypub-components/dist/index.es.js.map
index 85ffca387..8098573ce 100644
--- a/src/frontend/packages/activitypub-components/dist/index.es.js.map
+++ b/src/frontend/packages/activitypub-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/activitypub-components/src/index.js","packages/activitypub-components/src/components/CommentsField/CommentsField.js","packages/activitypub-components/src/components/CommentsField/PostCommentForm.js","packages/activitypub-components/src/constants.js","packages/activitypub-components/src/hooks/useOutbox.js","packages/activitypub-components/src/components/CommentsField/CustomMention.js","packages/activitypub-components/src/components/CommentsField/CommentsList.js","packages/activitypub-components/src/hooks/useCollection.js","packages/activitypub-components/src/components/CollectionList.js","packages/activitypub-components/src/components/ReferenceCollectionField.js","packages/activitypub-components/src/hooks/useInbox.js","packages/activitypub-components/src/hooks/useWebfinger.js","packages/activitypub-components/src/hooks/useMentions/useMentions.js","packages/activitypub-components/src/hooks/useMentions/renderMentions.js","packages/activitypub-components/src/hooks/useMentions/MentionsList.js"],"sourcesContent":["// Components\nexport { default as CommentsField } from './components/CommentsField/CommentsField';\nexport { default as CollectionList } from './components/CollectionList';\nexport { default as ReferenceCollectionField } from './components/ReferenceCollectionField';\n\n// Hooks\nexport { default as useCollection } from './hooks/useCollection';\nexport { default as useInbox } from './hooks/useInbox';\nexport { default as useOutbox } from './hooks/useOutbox';\nexport { default as useWebfinger } from './hooks/useWebfinger';\nexport { default as useMentions } from './hooks/useMentions/useMentions';\n\n// Constants\nexport { ACTIVITY_TYPES, ACTOR_TYPES, OBJECT_TYPES, PUBLIC_URI } from './constants';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport PostCommentForm from './PostCommentForm';\nimport CommentsList from './CommentsList';\nimport useCollection from '../../hooks/useCollection';\n\nconst CommentsField = ({ source, context, helperText, placeholder, userResource, mentions }) => {\n const record = useRecordContext();\n const { items: comments, loading, addItem, removeItem } = useCollection(record.replies);\n if (!userResource) throw new Error('No userResource defined for CommentsField');\n return (\n <>\n \n \n >\n );\n};\n\nCommentsField.defaultProps = {\n label: 'Commentaires',\n placeholder: 'Commencez à taper votre commentaire...',\n source: 'id', // Ensure the field is always displayed\n context: 'id'\n};\n\nexport default CommentsField;\n","import React, { useState, useCallback } from 'react';\nimport { Form, useGetIdentity, useNotify, useRecordContext } from 'react-admin';\nimport { RichTextInput, DefaultEditorOptions } from 'ra-input-rich-text';\nimport Placeholder from '@tiptap/extension-placeholder';\nimport { Button, Box, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SendIcon from '@mui/icons-material/Send';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AuthDialog } from '@semapps/auth-provider';\nimport { OBJECT_TYPES, PUBLIC_URI } from '../../constants';\nimport useOutbox from '../../hooks/useOutbox';\nimport CustomMention from './CustomMention';\n\nconst useStyles = makeStyles(theme => ({\n form: {\n marginTop: -12 // Negative margin to keep the form close to the label\n },\n container: {\n paddingLeft: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 16,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n editorContent: {\n '& > div': {\n backgroundColor: 'rgba(0, 0, 0, 0.09)',\n padding: '2px 12px',\n borderWidth: '0px !important',\n borderRadius: 0,\n borderBottom: '1px solid #FFF',\n minHeight: 60,\n outline: 'unset !important'\n },\n '& > div > p': {\n marginTop: 12,\n marginBottom: 12,\n fontFamily: theme.typography.body1.fontFamily,\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n },\n '& > div > p.is-editor-empty:first-child::before': {\n color: 'grey',\n content: 'attr(data-placeholder)',\n float: 'left',\n height: 0,\n pointerEvents: 'none'\n }\n },\n button: {\n marginTop: -10, // To go over helper text block\n marginBottom: 15\n }\n}));\n\nconst EmptyToolbar = () => null;\n\nconst PostCommentForm = ({ context, placeholder, helperText, mentions, userResource, addItem, removeItem }) => {\n const record = useRecordContext();\n const { identity, isLoading } = useGetIdentity();\n const userDataModel = useDataModel(userResource);\n const classes = useStyles();\n const notify = useNotify();\n const outbox = useOutbox();\n const [expanded, setExpanded] = useState(false);\n const [openAuth, setOpenAuth] = useState(false);\n\n const onSubmit = useCallback(\n async values => {\n const document = new DOMParser().parseFromString(values.comment, 'text/html');\n const mentions = Array.from(document.body.getElementsByClassName('mention'));\n const mentionedUsersUris = [];\n\n mentions.forEach(node => {\n const userUri = node.attributes['data-mention-id'].value;\n const userLabel = node.attributes['data-mention-label'].value;\n const link = document.createElement('a');\n link.setAttribute(\n 'href',\n `${new URL(window.location.href).origin}/${userResource}/${encodeURIComponent(userUri)}/show`\n );\n link.textContent = `@${userLabel}`;\n node.parentNode.replaceChild(link, node);\n mentionedUsersUris.push(userUri);\n });\n\n if (document.body.innerHTML === 'undefined') {\n notify('Votre commentaire est vide', { type: 'error' });\n } else {\n const tempId = Date.now();\n\n const note = {\n type: OBJECT_TYPES.NOTE,\n attributedTo: outbox.owner,\n content: document.body.innerHTML,\n inReplyTo: record[context],\n published: new Date().toISOString()\n };\n\n try {\n addItem({ id: tempId, ...note });\n // TODO reset the form\n setExpanded(false);\n await outbox.post({ ...note, to: [...mentionedUsersUris, PUBLIC_URI] });\n notify('Commentaire posté avec succès', { type: 'success' });\n } catch (e) {\n console.error(e);\n removeItem(tempId);\n notify(e.message, { type: 'error' });\n }\n }\n },\n [outbox, notify, setExpanded, addItem, removeItem]\n );\n\n const openAuthIfDisconnected = useCallback(() => {\n if (!identity?.id) {\n setOpenAuth(true);\n }\n }, [identity, setOpenAuth]);\n\n // Don't init the editor options until mentions and identity are loaded, as they can only be initialized once\n if ((mentions && !mentions.items) || isLoading) return null;\n\n return (\n <>\n \n setOpenAuth(false)}\n message=\"Pour poster un commentaire, vous devez être connecté.\"\n />\n >\n );\n};\n\nexport default PostCommentForm;\n","export const ACTIVITY_TYPES = {\n ACCEPT: 'Accept',\n ADD: 'Add',\n ANNOUNCE: 'Announce',\n ARRIVE: 'Arrive',\n BLOCK: 'Block',\n CREATE: 'Create',\n DELETE: 'Delete',\n DISLIKE: 'Dislike',\n FLAG: 'Flag',\n FOLLOW: 'Follow',\n IGNORE: 'Ignore',\n INVITE: 'Invite',\n JOIN: 'Join',\n LEAVE: 'Leave',\n LIKE: 'Like',\n LISTEN: 'Listen',\n MOVE: 'Move',\n OFFER: 'Offer',\n QUESTION: 'Question',\n REJECT: 'Reject',\n READ: 'Read',\n REMOVE: 'Remove',\n TENTATIVE_REJECT: 'TentativeReject',\n TENTATIVE_ACCEPT: 'TentativeAccept',\n TRAVAL: 'Travel',\n UNDO: 'Undo',\n UPDATE: 'Update',\n VIEW: 'View'\n};\n\nexport const ACTOR_TYPES = {\n APPLICATION: 'Application',\n GROUP: 'Group',\n ORGANIZATION: 'Organization',\n PERSON: 'Person',\n SERVICE: 'Service'\n};\n\nexport const OBJECT_TYPES = {\n ARTICLE: 'Article',\n AUDIO: 'Audio',\n DOCUMENT: 'Document',\n EVENT: 'Event',\n IMAGE: 'Image',\n NOTE: 'Note',\n PAGE: 'Page',\n PLACE: 'Place',\n PROFILE: 'Profile',\n RELATIONSHIP: 'Relationship',\n TOMBSTONE: 'Tombstone',\n VIDEO: 'Video'\n};\n\nexport const PUBLIC_URI = 'https://www.w3.org/ns/activitystreams#Public';\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useOutbox = () => {\n const { identity } = useGetIdentity();\n\n const outboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.outbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n // Post an activity to the logged user's outbox and return its URI\n const post = useCallback(\n async activity => {\n if (!outboxUrl)\n throw new Error(\n 'Cannot post to outbox before user identity is loaded. Please use the loaded argument of useOutbox'\n );\n const token = localStorage.getItem('token');\n const { headers } = await fetchUtils.fetchJson(outboxUrl, {\n method: 'POST',\n body: JSON.stringify({\n '@context': 'https://www.w3.org/ns/activitystreams',\n ...activity\n }),\n headers: new Headers({\n 'Content-Type': 'application/ld+json',\n Authorization: `Bearer ${token}`\n })\n });\n return headers.get('Location');\n },\n [outboxUrl]\n );\n\n const fetch = useCallback(async () => {\n if (!sparqlEndpoint || !outboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${outboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n }, [sparqlEndpoint, outboxUrl]);\n\n return { post, fetch, url: outboxUrl, loaded: !!outboxUrl, owner: identity?.id };\n};\n\nexport default useOutbox;\n","import { mergeAttributes } from '@tiptap/core';\nimport Mention from '@tiptap/extension-mention';\n\n// Fix a bug in the current version of the mention extension\n// (The { id, label } object is located inside the id property)\n// See https://github.com/ueberdosis/tiptap/pull/1322\nconst CustomMention = Mention.extend({\n renderHTML({ node, HTMLAttributes }) {\n return ['span', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), `@${node.attrs.id.label}`];\n },\n addAttributes() {\n return {\n label: {\n default: null,\n parseHTML: element => {\n return {\n label: element.getAttribute('data-mention-label')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.label) {\n return {};\n }\n return {\n 'data-mention-label': attributes.id.label\n };\n }\n },\n id: {\n default: null,\n parseHTML: element => {\n return {\n id: element.getAttribute('data-mention-id')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.id) {\n return {};\n }\n return {\n 'data-mention-id': attributes.id.id\n };\n }\n }\n };\n }\n});\n\nexport default CustomMention;\n","import React from 'react';\nimport { TextField, RichTextField, DateField } from 'react-admin';\nimport { Box, Typography, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AvatarWithLabelField, ReferenceField } from '@semapps/field-components';\n\nconst useStyles = makeStyles(() => ({\n container: {\n paddingLeft: 80,\n marginTop: 8,\n minHeight: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n text: {\n paddingTop: 2,\n paddingBottom: 8\n },\n label: {\n fontWeight: 'bold'\n },\n content: {\n '& p': {\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n }\n },\n loading: {\n zIndex: 1000,\n backgroundColor: 'white',\n opacity: 0.5,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 200,\n marginTop: 5\n }\n}));\n\nconst CommentsList = ({ comments, userResource, loading }) => {\n const classes = useStyles();\n const userDataModel = useDataModel(userResource);\n return (\n \n {comments &&\n comments\n .sort((a, b) => new Date(b.published) - new Date(a.published))\n .map(comment => (\n \n \n \n \n \n \n \n \n \n \n \n • \n \n \n \n \n \n ))}\n {loading && (\n \n \n \n \n \n )}\n \n );\n};\n\nexport default CommentsList;\n","import { useCallback, useMemo, useState, useEffect } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\n\nconst useCollection = predicateOrUrl => {\n const { identity, isLoading: identityLoading } = useGetIdentity();\n const [items, setItems] = useState([]);\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [error, setError] = useState(false);\n\n const collectionUrl = useMemo(() => {\n if (predicateOrUrl) {\n if (predicateOrUrl.startsWith('http')) {\n return predicateOrUrl;\n }\n if (identity?.webIdData) {\n return identity?.webIdData?.[predicateOrUrl];\n }\n }\n }, [identity, predicateOrUrl]);\n\n const fetch = useCallback(async () => {\n if (!collectionUrl) return;\n\n setLoading(true);\n\n const headers = new Headers({ Accept: 'application/ld+json' });\n\n // Add authorization token if it is set and if the user is on the same server as the collection\n const identityOrigin = identity.id && new URL(identity.id).origin;\n const collectionOrigin = new URL(collectionUrl).origin;\n const token = localStorage.getItem('token');\n if (identityOrigin === collectionOrigin && token) {\n headers.set('Authorization', `Bearer ${token}`);\n }\n\n fetchUtils\n .fetchJson(collectionUrl, { headers })\n .then(({ json }) => {\n if (json && json.items) {\n setItems(json.items);\n } else if (json && json.orderedItems) {\n setItems(json.orderedItems);\n } else {\n setItems([]);\n }\n setError(false);\n setLoaded(true);\n setLoading(false);\n })\n .catch(() => {\n setError(true);\n setLoaded(true);\n setLoading(false);\n });\n }, [setItems, setLoaded, setLoading, setError, collectionUrl, identity]);\n\n useEffect(() => {\n if (!identityLoading && !loading && !loaded && !error) {\n fetch();\n }\n }, [fetch, identityLoading, loading, loaded, error]);\n\n const addItem = useCallback(\n item => {\n setItems(oldItems => [...oldItems, item]);\n },\n [setItems]\n );\n\n const removeItem = useCallback(\n itemId => {\n setItems(oldItems => oldItems.filter(item => (typeof item === 'string' ? item !== itemId : item.id !== itemId)));\n },\n [setItems]\n );\n\n return { items, loading, loaded, error, refetch: fetch, addItem, removeItem, url: collectionUrl };\n};\n\nexport default useCollection;\n","import React from 'react';\nimport { useGetOne, LinearProgress } from 'react-admin';\nimport { ReferenceArrayField } from '@semapps/field-components';\n\nconst CollectionList = ({ collectionUrl, resource, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n // TODO use a simple fetch call, as the resource is not good and it is useless\n const { data: collection, isLoading } = useGetOne(resource, collectionUrl, { enabled: !!collectionUrl });\n\n if (isLoading) {\n return (\n \n \n
\n );\n }\n if (!collection) {\n return null;\n }\n\n return (\n \n {children}\n \n );\n};\n\nexport default CollectionList;\n","import React from 'react';\nimport CollectionList from './CollectionList';\n\nconst ReferenceCollectionField = ({ source, record, reference, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n if (!record || !record[source]) return null;\n\n return (\n \n {children}\n \n );\n};\n\nexport default ReferenceCollectionField;\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useInbox = () => {\n const { identity } = useGetIdentity();\n\n const inboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.inbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n const fetch = useCallback(\n async ({ filters }) => {\n if (!sparqlEndpoint || !inboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n let filtersWhereQuery = '';\n if (filters) {\n Object.keys(filters).forEach(predicate => {\n if (filters[predicate]) {\n const object = filters[predicate].startsWith('http') ? `<${filters[predicate]}>` : filters[predicate];\n filtersWhereQuery += `?s1 ${predicate} ${object} .`;\n }\n });\n }\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${inboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n FILTER( (isIRI(?s1)) ) .\n ${filtersWhereQuery}\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n },\n [sparqlEndpoint, inboxUrl]\n );\n\n return { fetch, url: inboxUrl, owner: identity?.id };\n};\n\nexport default useInbox;\n","import { useCallback } from 'react';\nimport { fetchUtils } from 'react-admin';\n\nconst useWebfinger = () => {\n // Post an activity to the logged user's outbox and return its URI\n const fetch = useCallback(async id => {\n // eslint-disable-next-line\n const [_, username, host] = id.split('@');\n if (host) {\n const protocol = host.includes(':') ? 'http' : 'https'; // If the host has a port, we are most likely on localhost\n const webfingerUrl = `${protocol}://${host}/.well-known/webfinger?resource=acct:${username}@${host}`;\n\n try {\n const { json } = await fetchUtils.fetchJson(webfingerUrl);\n\n const link = json.links.find(l => l.type === 'application/activity+json');\n\n return link ? link.href : null;\n } catch (e) {\n return null;\n }\n } else {\n return null;\n }\n }, []);\n\n return { fetch };\n};\n\nexport default useWebfinger;\n","import { useMemo } from 'react';\nimport { useGetList } from 'react-admin';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport renderMentions from './renderMentions';\n\nconst useMentions = userResource => {\n const userDataModel = useDataModel(userResource);\n\n const { data } = useGetList(\n userResource,\n {\n filter: {\n _predicates: [userDataModel?.fieldsMapping?.title],\n blankNodes: []\n }\n },\n {\n enabled: !!userDataModel?.fieldsMapping?.title\n }\n );\n\n const availableMentions = useMemo(() => {\n if (data) {\n return data.map(item => ({ id: item.id, label: item[userDataModel?.fieldsMapping?.title] }));\n }\n }, [data]);\n\n const items = useMemo(() => {\n if (availableMentions) {\n return ({ query }) => {\n return availableMentions.filter(({ label }) => label.toLowerCase().startsWith(query.toLowerCase())).slice(0, 5);\n };\n }\n }, [availableMentions]);\n\n return {\n items,\n render: renderMentions\n };\n};\n\nexport default useMentions;\n","import { ReactRenderer } from '@tiptap/react';\nimport tippy from 'tippy.js';\nimport MentionsList from './MentionsList';\n\nconst renderMentions = () => {\n let component;\n let popup;\n\n return {\n onStart: props => {\n component = new ReactRenderer(MentionsList, {\n props,\n editor: props.editor\n });\n\n popup = tippy('body', {\n getReferenceClientRect: props.clientRect,\n appendTo: () => document.body,\n content: component.element,\n showOnCreate: true,\n interactive: true,\n trigger: 'manual',\n placement: 'bottom-start'\n });\n },\n\n onUpdate(props) {\n component.updateProps(props);\n\n popup[0].setProps({\n getReferenceClientRect: props.clientRect\n });\n },\n\n onKeyDown(props) {\n if (props.event.key === 'Escape') {\n popup[0].hide();\n\n return true;\n }\n\n return component.ref?.onKeyDown(props);\n },\n\n onExit() {\n popup[0].destroy();\n component.destroy();\n }\n };\n};\n\nexport default renderMentions;\n","import React, { useState, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n items: {\n background: '#fff',\n borderRadius: '0.5rem',\n boxShadow: '0 0 0 1px rgba(0, 0, 0, 0.05), 0px 10px 20px rgba(0, 0, 0, 0.1)',\n color: 'rgba(0, 0, 0, 0.8)',\n fontSize: '0.9rem',\n overflow: 'hidden',\n padding: '0.2rem',\n position: 'relative'\n },\n item: {\n background: 'transparent',\n border: '1px solid transparent',\n borderRadius: '0.4rem',\n display: 'block',\n margin: 0,\n padding: '0.2rem 0.4rem',\n textAlign: 'left',\n width: '100%',\n '&.selected': {\n borderColor: '#000'\n }\n }\n}));\n\nexport default forwardRef((props, ref) => {\n const [selectedIndex, setSelectedIndex] = useState(0);\n const classes = useStyles();\n\n const selectItem = index => {\n const item = props.items[index];\n\n if (item) {\n props.command({ id: item });\n }\n };\n\n const upHandler = () => {\n setSelectedIndex((selectedIndex + props.items.length - 1) % props.items.length);\n };\n\n const downHandler = () => {\n setSelectedIndex((selectedIndex + 1) % props.items.length);\n };\n\n const enterHandler = () => {\n selectItem(selectedIndex);\n };\n\n useEffect(() => setSelectedIndex(0), [props.items]);\n\n useImperativeHandle(ref, () => ({\n onKeyDown: ({ event }) => {\n if (event.key === 'ArrowUp') {\n upHandler();\n return true;\n }\n\n if (event.key === 'ArrowDown') {\n downHandler();\n return true;\n }\n\n if (event.key === 'Enter') {\n enterHandler();\n return true;\n }\n\n return false;\n }\n }));\n\n return (\n \n {props.items.length ? (\n props.items.map((item, index) => (\n
\n ))\n ) : (\n
Aucun résultat
\n )}\n
\n );\n});\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/activitypub-components/src/index.js","packages/activitypub-components/src/components/CommentsField/CommentsField.js","packages/activitypub-components/src/components/CommentsField/PostCommentForm.js","packages/activitypub-components/src/constants.js","packages/activitypub-components/src/hooks/useOutbox.js","packages/activitypub-components/src/components/CommentsField/CustomMention.js","packages/activitypub-components/src/components/CommentsField/CommentsList.js","packages/activitypub-components/src/hooks/useCollection.js","packages/activitypub-components/src/components/CollectionList.js","packages/activitypub-components/src/components/ReferenceCollectionField.js","packages/activitypub-components/src/hooks/useInbox.js","packages/activitypub-components/src/hooks/useWebfinger.js","packages/activitypub-components/src/hooks/useMentions/useMentions.js","packages/activitypub-components/src/hooks/useMentions/renderMentions.js","packages/activitypub-components/src/hooks/useMentions/MentionsList.js"],"sourcesContent":["// Components\nexport { default as CommentsField } from './components/CommentsField/CommentsField';\nexport { default as CollectionList } from './components/CollectionList';\nexport { default as ReferenceCollectionField } from './components/ReferenceCollectionField';\n\n// Hooks\nexport { default as useCollection } from './hooks/useCollection';\nexport { default as useInbox } from './hooks/useInbox';\nexport { default as useOutbox } from './hooks/useOutbox';\nexport { default as useWebfinger } from './hooks/useWebfinger';\nexport { default as useMentions } from './hooks/useMentions/useMentions';\n\n// Constants\nexport { ACTIVITY_TYPES, ACTOR_TYPES, OBJECT_TYPES, PUBLIC_URI } from './constants';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport PostCommentForm from './PostCommentForm';\nimport CommentsList from './CommentsList';\nimport useCollection from '../../hooks/useCollection';\n\nconst CommentsField = ({ source, context, helperText, placeholder, userResource, mentions }) => {\n const record = useRecordContext();\n const { items: comments, loading, addItem, removeItem } = useCollection(record.replies);\n if (!userResource) throw new Error('No userResource defined for CommentsField');\n return (\n <>\n \n \n >\n );\n};\n\nCommentsField.defaultProps = {\n label: 'Commentaires',\n placeholder: 'Commencez à taper votre commentaire...',\n source: 'id', // Ensure the field is always displayed\n context: 'id'\n};\n\nexport default CommentsField;\n","import React, { useState, useCallback } from 'react';\nimport { Form, useGetIdentity, useNotify, useRecordContext } from 'react-admin';\nimport { RichTextInput, DefaultEditorOptions } from 'ra-input-rich-text';\nimport Placeholder from '@tiptap/extension-placeholder';\nimport { Button, Box, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SendIcon from '@mui/icons-material/Send';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AuthDialog } from '@semapps/auth-provider';\nimport { OBJECT_TYPES, PUBLIC_URI } from '../../constants';\nimport useOutbox from '../../hooks/useOutbox';\nimport CustomMention from './CustomMention';\n\nconst useStyles = makeStyles(theme => ({\n form: {\n marginTop: -12 // Negative margin to keep the form close to the label\n },\n container: {\n paddingLeft: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 16,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n editorContent: {\n '& > div': {\n backgroundColor: 'rgba(0, 0, 0, 0.09)',\n padding: '2px 12px',\n borderWidth: '0px !important',\n borderRadius: 0,\n borderBottom: '1px solid #FFF',\n minHeight: 60,\n outline: 'unset !important'\n },\n '& > div > p': {\n marginTop: 12,\n marginBottom: 12,\n fontFamily: theme.typography.body1.fontFamily,\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n },\n '& > div > p.is-editor-empty:first-child::before': {\n color: 'grey',\n content: 'attr(data-placeholder)',\n float: 'left',\n height: 0,\n pointerEvents: 'none'\n }\n },\n button: {\n marginTop: -10, // To go over helper text block\n marginBottom: 15\n }\n}));\n\nconst EmptyToolbar = () => null;\n\nconst PostCommentForm = ({ context, placeholder, helperText, mentions, userResource, addItem, removeItem }) => {\n const record = useRecordContext();\n const { identity, isLoading } = useGetIdentity();\n const userDataModel = useDataModel(userResource);\n const classes = useStyles();\n const notify = useNotify();\n const outbox = useOutbox();\n const [expanded, setExpanded] = useState(false);\n const [openAuth, setOpenAuth] = useState(false);\n\n const onSubmit = useCallback(\n async values => {\n const document = new DOMParser().parseFromString(values.comment, 'text/html');\n const mentions = Array.from(document.body.getElementsByClassName('mention'));\n const mentionedUsersUris = [];\n\n mentions.forEach(node => {\n const userUri = node.attributes['data-mention-id'].value;\n const userLabel = node.attributes['data-mention-label'].value;\n const link = document.createElement('a');\n link.setAttribute(\n 'href',\n `${new URL(window.location.href).origin}/${userResource}/${encodeURIComponent(userUri)}/show`\n );\n link.textContent = `@${userLabel}`;\n node.parentNode.replaceChild(link, node);\n mentionedUsersUris.push(userUri);\n });\n\n if (document.body.innerHTML === 'undefined') {\n notify('Votre commentaire est vide', { type: 'error' });\n } else {\n const tempId = Date.now();\n\n const note = {\n type: OBJECT_TYPES.NOTE,\n attributedTo: outbox.owner,\n content: document.body.innerHTML,\n inReplyTo: record[context],\n published: new Date().toISOString()\n };\n\n try {\n addItem({ id: tempId, ...note });\n // TODO reset the form\n setExpanded(false);\n await outbox.post({ ...note, to: [...mentionedUsersUris, PUBLIC_URI] });\n notify('Commentaire posté avec succès', { type: 'success' });\n } catch (e) {\n console.error(e);\n removeItem(tempId);\n notify(e.message, { type: 'error' });\n }\n }\n },\n [outbox, notify, setExpanded, addItem, removeItem]\n );\n\n const openAuthIfDisconnected = useCallback(() => {\n if (!identity?.id) {\n setOpenAuth(true);\n }\n }, [identity, setOpenAuth]);\n\n // Don't init the editor options until mentions and identity are loaded, as they can only be initialized once\n if ((mentions && !mentions.items) || isLoading) return null;\n\n return (\n <>\n \n setOpenAuth(false)}\n message=\"Pour poster un commentaire, vous devez être connecté.\"\n />\n >\n );\n};\n\nexport default PostCommentForm;\n","export const ACTIVITY_TYPES = {\n ACCEPT: 'Accept',\n ADD: 'Add',\n ANNOUNCE: 'Announce',\n ARRIVE: 'Arrive',\n BLOCK: 'Block',\n CREATE: 'Create',\n DELETE: 'Delete',\n DISLIKE: 'Dislike',\n FLAG: 'Flag',\n FOLLOW: 'Follow',\n IGNORE: 'Ignore',\n INVITE: 'Invite',\n JOIN: 'Join',\n LEAVE: 'Leave',\n LIKE: 'Like',\n LISTEN: 'Listen',\n MOVE: 'Move',\n OFFER: 'Offer',\n QUESTION: 'Question',\n REJECT: 'Reject',\n READ: 'Read',\n REMOVE: 'Remove',\n TENTATIVE_REJECT: 'TentativeReject',\n TENTATIVE_ACCEPT: 'TentativeAccept',\n TRAVAL: 'Travel',\n UNDO: 'Undo',\n UPDATE: 'Update',\n VIEW: 'View'\n};\n\nexport const ACTOR_TYPES = {\n APPLICATION: 'Application',\n GROUP: 'Group',\n ORGANIZATION: 'Organization',\n PERSON: 'Person',\n SERVICE: 'Service'\n};\n\nexport const OBJECT_TYPES = {\n ARTICLE: 'Article',\n AUDIO: 'Audio',\n DOCUMENT: 'Document',\n EVENT: 'Event',\n IMAGE: 'Image',\n NOTE: 'Note',\n PAGE: 'Page',\n PLACE: 'Place',\n PROFILE: 'Profile',\n RELATIONSHIP: 'Relationship',\n TOMBSTONE: 'Tombstone',\n VIDEO: 'Video'\n};\n\nexport const PUBLIC_URI = 'https://www.w3.org/ns/activitystreams#Public';\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useOutbox = () => {\n const { identity } = useGetIdentity();\n\n const outboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.outbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n // Post an activity to the logged user's outbox and return its URI\n const post = useCallback(\n async activity => {\n if (!outboxUrl)\n throw new Error(\n 'Cannot post to outbox before user identity is loaded. Please use the loaded argument of useOutbox'\n );\n const token = localStorage.getItem('token');\n const { headers } = await fetchUtils.fetchJson(outboxUrl, {\n method: 'POST',\n body: JSON.stringify({\n '@context': 'https://www.w3.org/ns/activitystreams',\n ...activity\n }),\n headers: new Headers({\n 'Content-Type': 'application/ld+json',\n Authorization: `Bearer ${token}`\n })\n });\n return headers.get('Location');\n },\n [outboxUrl]\n );\n\n const fetch = useCallback(async () => {\n if (!sparqlEndpoint || !outboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${outboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n }, [sparqlEndpoint, outboxUrl]);\n\n return { post, fetch, url: outboxUrl, loaded: !!outboxUrl, owner: identity?.id };\n};\n\nexport default useOutbox;\n","import { mergeAttributes } from '@tiptap/core';\nimport Mention from '@tiptap/extension-mention';\n\n// Fix a bug in the current version of the mention extension\n// (The { id, label } object is located inside the id property)\n// See https://github.com/ueberdosis/tiptap/pull/1322\nconst CustomMention = Mention.extend({\n renderHTML({ node, HTMLAttributes }) {\n return ['span', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), `@${node.attrs.id.label}`];\n },\n addAttributes() {\n return {\n label: {\n default: null,\n parseHTML: element => {\n return {\n label: element.getAttribute('data-mention-label')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.label) {\n return {};\n }\n return {\n 'data-mention-label': attributes.id.label\n };\n }\n },\n id: {\n default: null,\n parseHTML: element => {\n return {\n id: element.getAttribute('data-mention-id')\n };\n },\n renderHTML: attributes => {\n if (!attributes.id.id) {\n return {};\n }\n return {\n 'data-mention-id': attributes.id.id\n };\n }\n }\n };\n }\n});\n\nexport default CustomMention;\n","import React from 'react';\nimport { TextField, RichTextField, DateField } from 'react-admin';\nimport { Box, Typography, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport { AvatarWithLabelField, ReferenceField } from '@semapps/field-components';\n\nconst useStyles = makeStyles(() => ({\n container: {\n paddingLeft: 80,\n marginTop: 8,\n minHeight: 80,\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n width: 64,\n height: 64\n },\n text: {\n paddingTop: 2,\n paddingBottom: 8\n },\n label: {\n fontWeight: 'bold'\n },\n content: {\n '& p': {\n marginBlockStart: '0.5em',\n marginBlockEnd: '0.5em'\n }\n },\n loading: {\n zIndex: 1000,\n backgroundColor: 'white',\n opacity: 0.5,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 200,\n marginTop: 5\n }\n}));\n\nconst CommentsList = ({ comments, userResource, loading }) => {\n const classes = useStyles();\n const userDataModel = useDataModel(userResource);\n return (\n \n {comments &&\n comments\n .sort((a, b) => new Date(b.published) - new Date(a.published))\n .map(comment => (\n \n \n \n \n \n \n \n \n \n \n \n • \n \n \n \n \n \n ))}\n {loading && (\n \n \n \n \n \n )}\n \n );\n};\n\nexport default CommentsList;\n","import { useCallback, useMemo, useState, useEffect } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\n\nconst useCollection = predicateOrUrl => {\n const { identity, isLoading: identityLoading } = useGetIdentity();\n const [items, setItems] = useState([]);\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [error, setError] = useState(false);\n\n const collectionUrl = useMemo(() => {\n if (predicateOrUrl) {\n if (predicateOrUrl.startsWith('http')) {\n return predicateOrUrl;\n }\n if (identity?.webIdData) {\n return identity?.webIdData?.[predicateOrUrl];\n }\n }\n }, [identity, predicateOrUrl]);\n\n const fetch = useCallback(async () => {\n if (!collectionUrl) return;\n\n setLoading(true);\n\n const headers = new Headers({ Accept: 'application/ld+json' });\n\n // Add authorization token if it is set and if the user is on the same server as the collection\n const identityOrigin = identity.id && new URL(identity.id).origin;\n const collectionOrigin = new URL(collectionUrl).origin;\n const token = localStorage.getItem('token');\n if (identityOrigin === collectionOrigin && token) {\n headers.set('Authorization', `Bearer ${token}`);\n }\n\n fetchUtils\n .fetchJson(collectionUrl, { headers })\n .then(({ json }) => {\n if (json && json.items) {\n setItems(json.items);\n } else if (json && json.orderedItems) {\n setItems(json.orderedItems);\n } else {\n setItems([]);\n }\n setError(false);\n setLoaded(true);\n setLoading(false);\n })\n .catch(() => {\n setError(true);\n setLoaded(true);\n setLoading(false);\n });\n }, [setItems, setLoaded, setLoading, setError, collectionUrl, identity]);\n\n useEffect(() => {\n if (!identityLoading && !loading && !loaded && !error) {\n fetch();\n }\n }, [fetch, identityLoading, loading, loaded, error]);\n\n const addItem = useCallback(\n item => {\n setItems(oldItems => [...oldItems, item]);\n },\n [setItems]\n );\n\n const removeItem = useCallback(\n itemId => {\n setItems(oldItems => oldItems.filter(item => (typeof item === 'string' ? item !== itemId : item.id !== itemId)));\n },\n [setItems]\n );\n\n return { items, loading, loaded, error, refetch: fetch, addItem, removeItem, url: collectionUrl };\n};\n\nexport default useCollection;\n","import React from 'react';\nimport { useGetOne, LinearProgress } from 'react-admin';\nimport { ReferenceArrayField } from '@semapps/field-components';\n\nconst CollectionList = ({ collectionUrl, resource, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n // TODO use a simple fetch call, as the resource is not good and it is useless\n const { data: collection, isLoading } = useGetOne(resource, collectionUrl, { enabled: !!collectionUrl });\n\n if (isLoading) {\n return (\n \n \n
\n );\n }\n if (!collection) {\n return null;\n }\n\n return (\n \n {children}\n \n );\n};\n\nexport default CollectionList;\n","import React from 'react';\nimport CollectionList from './CollectionList';\n\nconst ReferenceCollectionField = ({ source, record, reference, children, ...rest }) => {\n if (React.Children.count(children) !== 1) {\n throw new Error(' only accepts a single child');\n }\n\n if (!record || !record[source]) return null;\n\n return (\n \n {children}\n \n );\n};\n\nexport default ReferenceCollectionField;\n","import { useCallback, useMemo } from 'react';\nimport { useGetIdentity, fetchUtils } from 'react-admin';\nimport { buildBlankNodesQuery } from '@semapps/semantic-data-provider';\n\nconst useInbox = () => {\n const { identity } = useGetIdentity();\n\n const inboxUrl = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.inbox;\n }\n }, [identity]);\n\n const sparqlEndpoint = useMemo(() => {\n if (identity?.webIdData) {\n return identity?.webIdData?.endpoints?.['void:sparqlEndpoint'] || `${identity?.id}/sparql`;\n }\n }, [identity]);\n\n const fetch = useCallback(\n async ({ filters }) => {\n if (!sparqlEndpoint || !inboxUrl) return;\n\n const token = localStorage.getItem('token');\n const blankNodesQuery = buildBlankNodesQuery(['as:object']);\n\n let filtersWhereQuery = '';\n if (filters) {\n Object.keys(filters).forEach(predicate => {\n if (filters[predicate]) {\n const object = filters[predicate].startsWith('http') ? `<${filters[predicate]}>` : filters[predicate];\n filtersWhereQuery += `?s1 ${predicate} ${object} .`;\n }\n });\n }\n\n const query = `\n PREFIX as: \n CONSTRUCT {\n ?s1 ?p1 ?o1 .\n ${blankNodesQuery.construct}\n }\n WHERE {\n <${inboxUrl}> as:items ?s1 .\n ?s1 ?p1 ?o1 .\n FILTER( (isIRI(?s1)) ) .\n ${filtersWhereQuery}\n ${blankNodesQuery.where}\n }\n `;\n\n const { json } = await fetchUtils.fetchJson(sparqlEndpoint, {\n method: 'POST',\n body: query,\n headers: new Headers({\n Accept: 'application/ld+json',\n Authorization: token ? `Bearer ${token}` : undefined\n })\n });\n\n if (json['@graph']) {\n return json['@graph'];\n }\n return null;\n },\n [sparqlEndpoint, inboxUrl]\n );\n\n return { fetch, url: inboxUrl, owner: identity?.id };\n};\n\nexport default useInbox;\n","import { useCallback } from 'react';\nimport { fetchUtils } from 'react-admin';\n\nconst useWebfinger = () => {\n // Post an activity to the logged user's outbox and return its URI\n const fetch = useCallback(async id => {\n // eslint-disable-next-line\n const [_, username, host] = id.split('@');\n if (host) {\n const protocol = host.includes(':') ? 'http' : 'https'; // If the host has a port, we are most likely on localhost\n const webfingerUrl = `${protocol}://${host}/.well-known/webfinger?resource=acct:${username}@${host}`;\n\n try {\n const { json } = await fetchUtils.fetchJson(webfingerUrl);\n\n const link = json.links.find(l => l.type === 'application/activity+json');\n\n return link ? link.href : null;\n } catch (e) {\n return null;\n }\n } else {\n return null;\n }\n }, []);\n\n return { fetch };\n};\n\nexport default useWebfinger;\n","import { useMemo } from 'react';\nimport { useGetList } from 'react-admin';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport renderMentions from './renderMentions';\n\nconst useMentions = userResource => {\n const userDataModel = useDataModel(userResource);\n\n const { data } = useGetList(\n userResource,\n {\n filter: {\n _predicates: [userDataModel?.fieldsMapping?.title],\n blankNodes: []\n }\n },\n {\n enabled: !!userDataModel?.fieldsMapping?.title\n }\n );\n\n const availableMentions = useMemo(() => {\n if (data) {\n return data.map(item => ({ id: item.id, label: item[userDataModel?.fieldsMapping?.title] }));\n }\n }, [data]);\n\n const items = useMemo(() => {\n if (availableMentions) {\n return ({ query }) => {\n return availableMentions.filter(({ label }) => label.toLowerCase().startsWith(query.toLowerCase())).slice(0, 5);\n };\n }\n }, [availableMentions]);\n\n return {\n items,\n render: renderMentions\n };\n};\n\nexport default useMentions;\n","import { ReactRenderer } from '@tiptap/react';\nimport tippy from 'tippy.js';\nimport MentionsList from './MentionsList';\n\nconst renderMentions = () => {\n let component;\n let popup;\n\n return {\n onStart: props => {\n component = new ReactRenderer(MentionsList, {\n props,\n editor: props.editor\n });\n\n popup = tippy('body', {\n getReferenceClientRect: props.clientRect,\n appendTo: () => document.body,\n content: component.element,\n showOnCreate: true,\n interactive: true,\n trigger: 'manual',\n placement: 'bottom-start'\n });\n },\n\n onUpdate(props) {\n component.updateProps(props);\n\n popup[0].setProps({\n getReferenceClientRect: props.clientRect\n });\n },\n\n onKeyDown(props) {\n if (props.event.key === 'Escape') {\n popup[0].hide();\n\n return true;\n }\n\n return component.ref?.onKeyDown(props);\n },\n\n onExit() {\n popup[0].destroy();\n component.destroy();\n }\n };\n};\n\nexport default renderMentions;\n","import React, { useState, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n items: {\n background: '#fff',\n borderRadius: '0.5rem',\n boxShadow: '0 0 0 1px rgba(0, 0, 0, 0.05), 0px 10px 20px rgba(0, 0, 0, 0.1)',\n color: 'rgba(0, 0, 0, 0.8)',\n fontSize: '0.9rem',\n overflow: 'hidden',\n padding: '0.2rem',\n position: 'relative'\n },\n item: {\n background: 'transparent',\n border: '1px solid transparent',\n borderRadius: '0.4rem',\n display: 'block',\n margin: 0,\n padding: '0.2rem 0.4rem',\n textAlign: 'left',\n width: '100%',\n '&.selected': {\n borderColor: '#000'\n }\n }\n}));\n\nexport default forwardRef((props, ref) => {\n const [selectedIndex, setSelectedIndex] = useState(0);\n const classes = useStyles();\n\n const selectItem = index => {\n const item = props.items[index];\n\n if (item) {\n props.command({ id: item });\n }\n };\n\n const upHandler = () => {\n setSelectedIndex((selectedIndex + props.items.length - 1) % props.items.length);\n };\n\n const downHandler = () => {\n setSelectedIndex((selectedIndex + 1) % props.items.length);\n };\n\n const enterHandler = () => {\n selectItem(selectedIndex);\n };\n\n useEffect(() => setSelectedIndex(0), [props.items]);\n\n useImperativeHandle(ref, () => ({\n onKeyDown: ({ event }) => {\n if (event.key === 'ArrowUp') {\n upHandler();\n return true;\n }\n\n if (event.key === 'ArrowDown') {\n downHandler();\n return true;\n }\n\n if (event.key === 'Enter') {\n enterHandler();\n return true;\n }\n\n return false;\n }\n }));\n\n return (\n \n {props.items.length ? (\n props.items.map((item, index) => (\n
\n ))\n ) : (\n
Aucun résultat
\n )}\n
\n );\n});\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/auth-provider/dist/index.cjs.js b/src/frontend/packages/auth-provider/dist/index.cjs.js
index 629b77ef6..dc98848e4 100644
--- a/src/frontend/packages/auth-provider/dist/index.cjs.js
+++ b/src/frontend/packages/auth-provider/dist/index.cjs.js
@@ -24,9 +24,11 @@ var $2O4Ek$muistyles = require("@mui/styles");
var $2O4Ek$muiiconsmaterialAccountCircle = require("@mui/icons-material/AccountCircle");
var $2O4Ek$lodashisEqual = require("lodash/isEqual");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
diff --git a/src/frontend/packages/auth-provider/dist/index.cjs.js.map b/src/frontend/packages/auth-provider/dist/index.cjs.js.map
index 4faf2a2ca..45731d180 100644
--- a/src/frontend/packages/auth-provider/dist/index.cjs.js.map
+++ b/src/frontend/packages/auth-provider/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/auth-provider/src/index.js","packages/auth-provider/src/authProvider.js","packages/auth-provider/src/utils.js","packages/auth-provider/src/crud/create/CreateWithPermissions.js","packages/auth-provider/src/hooks/useCheckPermissions.js","packages/auth-provider/src/constants.js","packages/auth-provider/src/crud/edit/EditWithPermissions.js","packages/auth-provider/src/crud/edit/EditActionsWithPermissions.js","packages/auth-provider/src/components/PermissionsButton/PermissionsButton.js","packages/auth-provider/src/components/PermissionsButton/PermissionsDialog.js","packages/auth-provider/src/components/PermissionsButton/AddPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/EditPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/AgentItem.js","packages/auth-provider/src/components/PermissionsButton/AgentIcon.js","packages/auth-provider/src/hooks/useAgents.js","packages/auth-provider/src/crud/edit/EditToolbarWithPermissions.js","packages/auth-provider/src/crud/edit/DeleteButtonWithPermissions.js","packages/auth-provider/src/crud/edit/EditButtonWithPermissions.js","packages/auth-provider/src/crud/list/ListWithPermissions.js","packages/auth-provider/src/crud/list/ListActionsWithPermissions.js","packages/auth-provider/src/crud/show/ShowWithPermissions.js","packages/auth-provider/src/crud/show/ShowActionsWithPermissions.js","packages/auth-provider/src/components/AuthDialog.js","packages/auth-provider/src/components/SsoLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPageView.js","packages/auth-provider/src/components/LocalLoginPage/LocalLoginPage.js","packages/auth-provider/src/components/LocalLoginPage/SignupForm.js","packages/auth-provider/src/hooks/useSignup.js","packages/auth-provider/src/components/LocalLoginPage/validatePasswordStrength.js","packages/auth-provider/src/passwordScorer.js","packages/auth-provider/src/components/LocalLoginPage/PasswordStrengthIndicator.js","packages/auth-provider/src/components/LocalLoginPage/ColorGradientProgressBar.js","packages/auth-provider/src/components/LocalLoginPage/LoginForm.js","packages/auth-provider/src/components/LocalLoginPage/NewPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/ResetPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/SimpleBox.js","packages/auth-provider/src/components/ResourceWithPermissions.js","packages/auth-provider/src/components/UserMenu.js","packages/auth-provider/src/hooks/useCheckAuthenticated.js","packages/auth-provider/src/hooks/usePermissionsWithRefetch.js","packages/auth-provider/src/messages/english.js","packages/auth-provider/src/messages/french.js"],"sourcesContent":["export { default as authProvider } from './authProvider';\n\n// Create\nexport { default as CreateWithPermissions } from './crud/create/CreateWithPermissions';\n\n// Edit\nexport { default as EditWithPermissions } from './crud/edit/EditWithPermissions';\nexport { default as EditActionsWithPermissions } from './crud/edit/EditActionsWithPermissions';\nexport { default as EditToolbarWithPermissions } from './crud/edit/EditToolbarWithPermissions';\nexport { default as EditButtonWithPermissions } from './crud/edit/EditButtonWithPermissions';\nexport { default as DeleteButtonWithPermissions } from './crud/edit/DeleteButtonWithPermissions';\n\n// List\nexport { default as ListWithPermissions } from './crud/list/ListWithPermissions';\nexport { default as ListActionsWithPermissions } from './crud/list/ListActionsWithPermissions';\n\n// Show\nexport { default as ShowWithPermissions } from './crud/show/ShowWithPermissions';\nexport { default as ShowActionsWithPermissions } from './crud/show/ShowActionsWithPermissions';\n\nexport { default as PermissionsButton } from './components/PermissionsButton/PermissionsButton';\nexport { default as AuthDialog } from './components/AuthDialog';\nexport { default as SsoLoginPage, default as LoginPage } from './components/SsoLoginPage';\nexport { default as PodLoginPage } from './components/PodLoginPage/PodLoginPage';\nexport { default as LocalLoginPage } from './components/LocalLoginPage/LocalLoginPage';\nexport { default as ResourceWithPermissions } from './components/ResourceWithPermissions';\nexport { default as UserMenu } from './components/UserMenu';\n\nexport { default as useAgents } from './hooks/useAgents';\nexport { default as useCheckAuthenticated } from './hooks/useCheckAuthenticated';\nexport { default as useCheckPermissions } from './hooks/useCheckPermissions';\nexport { default as usePermissionsWithRefetch } from './hooks/usePermissionsWithRefetch';\nexport { default as useSignup } from './hooks/useSignup';\n\n// Password scoring\nexport { default as PasswordStrengthIndicator } from './components/LocalLoginPage/PasswordStrengthIndicator';\nexport { default as validatePasswordStrength } from './components/LocalLoginPage/validatePasswordStrength';\nexport {\n defaultScorer as defaultPasswordScorer,\n defaultOptions as defaultPasswordScorerOptions,\n createPasswordScorer\n} from './passwordScorer';\n\nexport { default as englishMessages } from './messages/english';\nexport { default as frenchMessages } from './messages/french';\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport { defaultToArray, getAclUri, getAclContext, getAuthServerUrl } from './utils';\n\nconst AUTH_TYPE_SSO = 'sso';\nconst AUTH_TYPE_LOCAL = 'local';\nconst AUTH_TYPE_POD = 'pod';\n\nconst authProvider = ({ dataProvider, authType, allowAnonymous = true, checkUser, checkPermissions = false }) => {\n if (![AUTH_TYPE_SSO, AUTH_TYPE_LOCAL, AUTH_TYPE_POD].includes(authType))\n throw new Error('The authType parameter is missing from the auth provider');\n return {\n login: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, password } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/login'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n password: password.trim()\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n } catch (e) {\n throw new Error('ra.auth.sign_in_error');\n }\n } else {\n let redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n if (params.redirect) redirectUrl += `&redirect=${encodeURIComponent(params.redirect)}`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n signup: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, email, password, domain, ...profileData } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/signup'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n email: email.trim(),\n password: password.trim(),\n ...profileData\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n const { webId } = jwtDecode(token);\n return webId;\n } catch (e) {\n if (e.message === 'email.already.exists') {\n throw new Error('auth.message.user_email_exist');\n } else if (e.message === 'username.already.exists') {\n throw new Error('auth.message.username_exist');\n } else if (e.message === 'username.invalid') {\n throw new Error('auth.message.username_invalid');\n } else {\n throw new Error(e.message || 'ra.auth.sign_in_error');\n }\n }\n } else {\n const redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n logout: async () => {\n switch (authType) {\n case AUTH_TYPE_LOCAL:\n // Delete token but also any other value in local storage\n localStorage.clear();\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = '/';\n break;\n\n case AUTH_TYPE_SSO:\n const authServerUrl = await getAuthServerUrl(dataProvider);\n const baseUrl = new URL(window.location.href).origin;\n window.location.href = urlJoin(\n authServerUrl,\n `auth/logout?redirectUrl=${encodeURIComponent(`${urlJoin(baseUrl, 'login')}?logout=true`)}`\n );\n break;\n\n case AUTH_TYPE_POD:\n const token = localStorage.getItem('token');\n const { webId } = jwtDecode(token);\n // Delete token but also any other value in local storage\n localStorage.clear();\n window.location.href =\n urlJoin(webId, 'openApp') +\n '?type=' +\n encodeURIComponent('http://activitypods.org/ns/core#FrontAppRegistration');\n break;\n }\n\n // Avoid displaying immediately the login page\n return '/';\n },\n checkAuth: async () => {\n const token = localStorage.getItem('token');\n if (!token && !allowAnonymous) throw new Error();\n },\n checkUser: userData => {\n if (checkUser) {\n return checkUser(userData);\n }\n return true;\n },\n checkError: error => Promise.resolve(),\n getPermissions: async uri => {\n if (!checkPermissions) return;\n\n // React-admin calls getPermissions with an empty object on every page refresh\n // It also passes an object `{ params: { route: 'dashboard' } }` on the Dashboard\n // Ignore all this until we found a way to bypass these redundant calls\n if (typeof uri === 'object') return;\n\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to getPermissions must be an URL');\n\n const aclUri = getAclUri(uri);\n\n try {\n const { json } = await dataProvider.fetch(aclUri);\n return json['@graph'];\n } catch (e) {\n console.warn(`Could not fetch ACL URI ${uri}`);\n return [];\n }\n },\n addPermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to addPermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n const authorization = {\n '@id': `#${mode.replace('acl:', '')}`,\n '@type': 'acl:Authorization',\n [predicate]: agentId,\n 'acl:accessTo': uri,\n 'acl:mode': mode\n };\n\n await dataProvider.fetch(aclUri, {\n method: 'PATCH',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': [authorization]\n })\n });\n },\n removePermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to removePermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n // Fetch current permissions\n const { json } = await dataProvider.fetch(aclUri);\n\n const updatedPermissions = json['@graph']\n .filter(authorization => !authorization['@id'].includes('#Default'))\n .map(authorization => {\n const modes = defaultToArray(authorization['acl:mode']);\n let agents = defaultToArray(authorization[predicate]);\n if (mode && modes.includes(mode) && agents && agents.includes(agentId)) {\n agents = agents.filter(agent => agent !== agentId);\n }\n return { ...authorization, [predicate]: agents };\n });\n\n await dataProvider.fetch(aclUri, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': updatedPermissions\n })\n });\n },\n getIdentity: async () => {\n const token = localStorage.getItem('token');\n if (token) {\n const { webId } = jwtDecode(token);\n\n const { json: webIdData } = await dataProvider.fetch(webId);\n const { json: profileData } = webIdData.url ? await dataProvider.fetch(webIdData.url) : {};\n\n return {\n id: webId,\n fullName:\n profileData?.['vcard:given-name'] ||\n profileData?.['pair:label'] ||\n webIdData['foaf:name'] ||\n webIdData['pair:label'],\n profileData,\n webIdData\n };\n }\n },\n resetPassword: async params => {\n const { email } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/reset_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim() }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.reset_password_error');\n }\n },\n setNewPassword: async params => {\n const { email, token, password } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/new_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim(), token, password }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.new_password_error');\n }\n },\n getAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'));\n return json;\n } catch (e) {\n throw new Error('auth.notification.get_settings_error');\n }\n },\n updateAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { email, currentPassword, newPassword } = params;\n\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'), {\n method: 'POST',\n body: JSON.stringify({\n currentPassword,\n email: email?.trim(),\n newPassword\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n if (e.message === 'auth.account.invalid_password') {\n throw new Error('auth.notification.invalid_password');\n }\n\n throw new Error('auth.notification.update_settings_error');\n }\n }\n };\n};\n\nexport default authProvider;\n","import urlJoin from 'url-join';\n\nexport const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\n// Transform the URI to the one used to find the ACL\n// To be compatible with all servers, we should do a HEAD request to the resource URI\nexport const getAclUri = resourceUri => {\n const parsedUrl = new URL(resourceUri);\n return urlJoin(parsedUrl.origin, '_acl', parsedUrl.pathname);\n};\n\nexport const getAclContext = baseUri => ({\n '@base': baseUri,\n acl: 'http://www.w3.org/ns/auth/acl#',\n foaf: 'http://xmlns.com/foaf/0.1/',\n 'acl:agent': { '@type': '@id' },\n 'acl:agentGroup': { '@type': '@id' },\n 'acl:agentClass': { '@type': '@id' },\n 'acl:mode': { '@type': '@id' },\n 'acl:accessTo': { '@type': '@id' }\n});\n\nexport const getAuthServerUrl = async dataProvider => {\n const dataServers = await dataProvider.getDataServers();\n const authServer = Object.values(dataServers).find(server => server.authServer === true);\n if (!authServer) throw new Error('Could not find a server with authServer: true. Check your dataServers config.');\n // If the server is a POD, return the root URL instead of https://domain.com/user/data\n return authServer.pod ? new URL(authServer.baseUrl).origin : authServer.baseUrl;\n};\n","import React from 'react';\nimport { Create, CreateActions, useResourceContext } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst CreateWithPermissions = props => {\n const resource = useResourceContext();\n const createContainerUri = useCreateContainer(resource);\n useCheckPermissions(createContainerUri, 'create');\n return ;\n};\n\nCreateWithPermissions.defaultProps = {\n actions: \n};\n\nexport default CreateWithPermissions;\n","import React, { useEffect } from 'react';\nimport { usePermissions, useRedirect, useNotify, useGetIdentity } from 'react-admin';\nimport { rights, forbiddenErrors } from '../constants';\n\nconst useCheckPermissions = (uri, mode, redirectUrl = '/') => {\n const { identity, isLoading } = useGetIdentity();\n const { permissions } = usePermissions(uri);\n const notify = useNotify();\n const redirect = useRedirect();\n\n useEffect(() => {\n if (!isLoading && identity && permissions && !permissions.some(p => rights[mode].includes(p['acl:mode']))) {\n notify(forbiddenErrors[mode], { type: 'error' });\n redirect(redirectUrl);\n }\n }, [permissions, identity, redirect, notify, isLoading]);\n\n return permissions;\n};\n\nexport default useCheckPermissions;\n","export const ACL_READ = 'acl:Read';\nexport const ACL_APPEND = 'acl:Append';\nexport const ACL_WRITE = 'acl:Write';\nexport const ACL_CONTROL = 'acl:Control';\n\nexport const USER_AGENT = 'acl:agent';\nexport const GROUP_AGENT = 'acl:agentGroup';\nexport const CLASS_AGENT = 'acl:agentClass';\n\nexport const ANONYMOUS_AGENT = 'foaf:Agent';\nexport const AUTHENTICATED_AGENT = 'acl:AuthenticatedAgent';\n\nexport const rightsToShow = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToList = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToCreate = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToEdit = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToDelete = [ACL_WRITE, ACL_CONTROL];\nexport const rightsToControl = [ACL_CONTROL];\n\nexport const rights = {\n show: rightsToShow,\n list: rightsToList,\n create: rightsToCreate,\n edit: rightsToEdit,\n delete: rightsToDelete,\n control: rightsToControl\n};\n\nexport const forbiddenErrors = {\n show: 'auth.message.resource_show_forbidden',\n edit: 'auth.message.resource_edit_forbidden',\n delete: 'auth.message.resource_delete_forbidden',\n control: 'auth.message.resource_control_forbidden',\n list: 'auth.message.container_list_forbidden',\n create: 'auth.message.container_create_forbidden'\n};\n\nexport const resourceRightsLabels = {\n [ACL_READ]: 'auth.right.resource.read',\n [ACL_APPEND]: 'auth.right.resource.append',\n [ACL_WRITE]: 'auth.right.resource.write',\n [ACL_CONTROL]: 'auth.right.resource.control'\n};\n\nexport const containerRightsLabels = {\n [ACL_READ]: 'auth.right.container.read',\n [ACL_WRITE]: 'auth.right.container.write',\n [ACL_CONTROL]: 'auth.right.container.control'\n};\n","import React from 'react';\nimport { Edit, useGetRecordId } from 'react-admin';\nimport EditActionsWithPermissions from './EditActionsWithPermissions';\nimport EditToolbarWithPermissions from './EditToolbarWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst EditWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'edit');\n return (\n \n {React.cloneElement(props.children, {\n toolbar: ,\n // Allow to override toolbar\n ...props.children.props\n })}\n \n );\n};\n\nEditWithPermissions.defaultProps = {\n actions: \n};\n\nexport default EditWithPermissions;\n","import React from 'react';\nimport {\n usePermissionsOptimized,\n ShowButton,\n ListButton,\n TopToolbar,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl } from '../../constants';\n\nconst EditActionsWithPermissions = () => {\n const { hasList, hasShow } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissionsOptimized(record?.id);\n return (\n \n {hasList && }\n {hasShow && }\n {!!permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default EditActionsWithPermissions;\n","import React, { useState } from 'react';\nimport { Button, useRecordContext, useResourceContext } from 'react-admin';\nimport ShareIcon from '@mui/icons-material/Share';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsDialog from './PermissionsDialog';\n\nconst PermissionsButton = ({ isContainer }) => {\n const record = useRecordContext();\n const resource = useResourceContext();\n const [showDialog, setShowDialog] = useState(false);\n const createContainer = useCreateContainer(resource);\n const uri = isContainer ? createContainer : record.id || record['@id'];\n return (\n <>\n \n setShowDialog(false)} />\n >\n );\n};\n\nPermissionsButton.defaultProps = {\n isContainer: false\n};\n\nexport default PermissionsButton;\n","import React from 'react';\nimport { Button, useTranslate } from 'react-admin';\nimport { Dialog, DialogTitle, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddPermissionsForm from './AddPermissionsForm';\nimport EditPermissionsForm from './EditPermissionsForm';\nimport useAgents from '../../hooks/useAgents';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingTop: 0,\n paddingBottom: 0,\n paddingRight: 0,\n maxHeight: 210\n }\n}));\n\nconst PermissionsDialog = ({ open, onClose, uri, isContainer }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const { agents, addPermission, removePermission } = useAgents(uri);\n\n return (\n \n );\n};\n\nexport default PermissionsDialog;\n","import React, { useEffect, useState } from 'react';\nimport { useGetList, useTranslate } from 'react-admin';\nimport { TextField, List, ListItem, ListItemAvatar, ListItemText, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport PersonIcon from '@mui/icons-material/Person';\nimport { USER_AGENT, ACL_READ } from '../../constants';\n\nconst useStyles = makeStyles(() => ({\n list: {\n padding: 0,\n width: '100%'\n },\n option: {\n padding: 0\n }\n}));\n\nconst AddPermissionsForm = ({ agents, addPermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const [value, setValue] = useState(null);\n const [inputValue, setInputValue] = useState('');\n const [options, setOptions] = useState([]);\n\n const { data } = useGetList(\n 'Person',\n {\n pagination: { page: 1, perPage: 100 },\n sort: { field: 'pair:label', order: 'ASC' },\n filter: { q: inputValue }\n },\n {\n enabled: inputValue.length > 0\n }\n );\n\n useEffect(() => {\n setOptions(data?.length > 0 ? Object.values(data) : []);\n }, [data]);\n\n return (\n option['pair:label']}\n // Do not return agents which have already been added\n filterOptions={x => x.filter(agent => !Object.keys(agents).includes(agent.id))}\n options={options}\n noOptionsText={translate('ra.navigation.no_results')}\n autoComplete\n blurOnSelect\n clearOnBlur\n disableClearable\n value={value}\n onChange={(event, record) => {\n addPermission(record.id || record['@id'], USER_AGENT, ACL_READ);\n setValue(null);\n setInputValue('');\n setOptions([]);\n }}\n onInputChange={(event, newInputValue) => {\n setInputValue(newInputValue);\n }}\n renderInput={params => (\n \n )}\n renderOption={(props, option) => (\n \n \n \n \n \n \n \n \n \n
\n )}\n />\n );\n};\n\nexport default AddPermissionsForm;\n","import React from 'react';\nimport { List } from '@mui/material';\nimport { styled } from '@mui/system';\nimport AgentItem from './AgentItem';\n\nconst StyledList = styled(List)(({ theme }) => ({\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper\n}));\n\nconst EditPermissionsForm = ({ isContainer, agents, addPermission, removePermission }) => {\n return (\n \n {Object.entries(agents).map(([agentId, agent]) => (\n \n ))}\n \n );\n};\n\nexport default EditPermissionsForm;\n","import React, { useState, useEffect } from 'react';\nimport { useDataProvider, useTranslate, Loading, Error } from 'react-admin';\nimport {\n Avatar,\n ListItem,\n ListItemIcon,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n IconButton,\n Menu,\n MenuItem\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport EditIcon from '@mui/icons-material/Edit';\nimport CheckIcon from '@mui/icons-material/Check';\nimport { GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, resourceRightsLabels, containerRightsLabels } from '../../constants';\nimport AgentIcon from './AgentIcon';\n\nconst useStyles = makeStyles(() => ({\n listItem: {\n paddingLeft: 4,\n paddingRight: 36\n },\n primaryText: {\n width: '30%',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n secondaryText: {\n textAlign: 'center',\n width: '60%',\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst AgentItem = ({ isContainer, agent, addPermission, removePermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [user, setUser] = useState();\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState();\n\n useEffect(() => {\n if (agent.predicate === USER_AGENT) {\n dataProvider\n .getOne('Person', { id: agent.id })\n .then(({ data }) => {\n setUser(data);\n setLoading(false);\n })\n .catch(error => {\n setError(error);\n setLoading(false);\n });\n } else {\n setLoading(false);\n }\n }, [agent.id, agent.predicate]);\n\n // For now, do not display groups\n if (agent.predicate === GROUP_AGENT) return null;\n\n const openMenu = event => setAnchorEl(event.currentTarget);\n const closeMenu = () => setAnchorEl(null);\n\n const labels = isContainer ? containerRightsLabels : resourceRightsLabels;\n\n if (loading) return ;\n if (error) return ;\n\n return (\n \n \n \n \n \n \n \n translate(labels[p])).join(', ')}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default AgentItem;\n","import React from 'react';\nimport PublicIcon from '@mui/icons-material/Public';\nimport VpnLockIcon from '@mui/icons-material/VpnLock';\nimport PersonIcon from '@mui/icons-material/Person';\nimport GroupIcon from '@mui/icons-material/Group';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT } from '../../constants';\n\nconst AgentIcon = ({ agent }) => {\n switch (agent.predicate) {\n case CLASS_AGENT:\n return agent.id === ANONYMOUS_AGENT ? : ;\n case USER_AGENT:\n return ;\n case GROUP_AGENT:\n return ;\n default:\n throw new Error(`Unknown agent predicate: ${agent.predicate}`);\n }\n};\n\nexport default AgentIcon;\n","import { useEffect, useCallback, useState } from 'react';\nimport { usePermissions, useAuthProvider } from 'react-admin';\nimport { defaultToArray } from '../utils';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, AUTHENTICATED_AGENT } from '../constants';\n\nconst useAgents = uri => {\n const { permissions } = usePermissions(uri);\n const authProvider = useAuthProvider();\n const [agents, setAgents] = useState({});\n\n // Format list of authorized agents, based on the permissions returned for the resource\n useEffect(() => {\n const result = {\n [ANONYMOUS_AGENT]: {\n id: ANONYMOUS_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n },\n [AUTHENTICATED_AGENT]: {\n id: AUTHENTICATED_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n }\n };\n\n const appendPermission = (agentId, predicate, mode) => {\n if (result[agentId]) {\n result[agentId].permissions.push(mode);\n } else {\n result[agentId] = {\n id: agentId,\n predicate,\n permissions: [mode]\n };\n }\n };\n\n if (permissions) {\n for (const p of permissions) {\n if (p[CLASS_AGENT]) {\n defaultToArray(p[CLASS_AGENT]).forEach(agentId => appendPermission(agentId, CLASS_AGENT, p['acl:mode']));\n }\n if (p[USER_AGENT]) {\n defaultToArray(p[USER_AGENT]).forEach(userUri => appendPermission(userUri, USER_AGENT, p['acl:mode']));\n }\n if (p[GROUP_AGENT]) {\n defaultToArray(p[GROUP_AGENT]).forEach(groupUri => appendPermission(groupUri, GROUP_AGENT, p['acl:mode']));\n }\n }\n setAgents(result);\n }\n }, [permissions]);\n\n const addPermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents({\n ...agents,\n [agentId]: {\n id: agentId,\n predicate,\n permissions: agents[agentId] ? [...agents[agentId]?.permissions, mode] : [mode]\n }\n });\n authProvider.addPermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n const removePermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents(\n Object.fromEntries(\n Object.entries(agents)\n .map(([key, agent]) => {\n if (agent.id === agentId) {\n agent.permissions = agent.permissions.filter(m => m !== mode);\n }\n return [key, agent];\n })\n // Remove agents if they have no permissions (except if they are class agents)\n .filter(([_, agent]) => agent.predicate === CLASS_AGENT || agent.permissions.length > 0)\n )\n );\n authProvider.removePermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n return { agents, addPermission, removePermission };\n};\n\nexport default useAgents;\n","import React from 'react';\nimport { SaveButton, Toolbar } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\nimport DeleteButtonWithPermissions from './DeleteButtonWithPermissions';\n\nconst useStyles = makeStyles(() => ({\n toolbar: {\n flex: 1,\n display: 'flex',\n justifyContent: 'space-between'\n }\n}));\n\nconst EditToolbarWithPermissions = props => {\n const classes = useStyles();\n return (\n \n \n \n \n );\n};\n\nexport default EditToolbarWithPermissions;\n","import React from 'react';\nimport { DeleteButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToDelete } from '../../constants';\n\nconst DeleteButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToDelete.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default DeleteButtonWithPermissions;\n","import React from 'react';\nimport { EditButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToEdit } from '../../constants';\n\nconst EditButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToEdit.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default EditButtonWithPermissions;\n","import React from 'react';\nimport { List } from 'react-admin';\nimport ListActionsWithPermissions from './ListActionsWithPermissions';\n\nconst ListWithPermissions = props =>
;\n\nListWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ListWithPermissions;\n","import React from 'react';\nimport {\n CreateButton,\n ExportButton,\n useResourceDefinition,\n TopToolbar,\n usePermissions,\n useResourceContext\n} from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToCreate, rightsToControl } from '../../constants';\n\n// Do not show Export and Refresh buttons on mobile\nconst ListActionsWithPermissions = ({\n bulkActions,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total\n}) => {\n const resource = useResourceContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('xs'));\n const resourceDefinition = useResourceDefinition();\n const createContainerUri = useCreateContainer(resource);\n const { permissions } = usePermissions(createContainerUri);\n return (\n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && permissions && permissions.some(p => rightsToCreate.includes(p['acl:mode'])) && (\n \n )}\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && (\n \n )}\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithPermissions;\n","import React from 'react';\nimport { Show, useGetRecordId } from 'react-admin';\nimport ShowActionsWithPermissions from './ShowActionsWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst ShowWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'show');\n return ;\n};\n\nShowWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ShowWithPermissions;\n","import React from 'react';\nimport {\n EditButton,\n ListButton,\n TopToolbar,\n usePermissions,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl, rightsToEdit } from '../../constants';\n\nconst ShowActionsWithPermissions = () => {\n const { hasList, hasEdit } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissions(record?.id);\n return (\n \n {hasList && }\n {hasEdit && permissions && permissions.some(p => rightsToEdit.includes(p['acl:mode'])) && }\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default ShowActionsWithPermissions;\n","import React from 'react';\nimport { useLogin, useTranslate } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle } from '@mui/material';\n\nconst AuthDialog = ({ open, onClose, title, message, redirect, ...rest }) => {\n const login = useLogin();\n const translate = useTranslate();\n return (\n \n );\n};\n\nAuthDialog.defaultProps = {\n title: 'auth.dialog.login_required',\n message: 'auth.message.login_to_continue'\n};\n\nexport default AuthDialog;\n","import React, { useRef, useEffect } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\nimport { useDataProvider, useAuthProvider, useLogin, useGetIdentity, useNotify } from 'react-admin';\nimport { Card, Avatar, Typography, Button, CardActions } from '@mui/material';\nimport { styled } from '@mui/material/styles';\nimport LockIcon from '@mui/icons-material/Lock';\n\nconst delay = async t => new Promise(resolve => setTimeout(resolve, t));\n\n// Inspired from https://github.com/marmelab/react-admin/blob/master/packages/ra-ui-materialui/src/auth/Login.tsx\nconst SsoLoginPage = ({ children, backgroundImage, buttons, userResource, propertiesExist, text, ...rest }) => {\n const containerRef = useRef();\n let backgroundImageLoaded = false;\n const navigate = useNavigate();\n const [searchParams] = useSearchParams();\n const { identity, isLoading } = useGetIdentity();\n\n const notify = useNotify();\n const login = useLogin();\n const dataProvider = useDataProvider();\n const authProvider = useAuthProvider();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n // Already authenticated, redirect to the home page\n navigate(searchParams.get('redirect') || '/');\n }\n }, [identity, isLoading, navigate, searchParams]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('login')) {\n if (searchParams.has('error')) {\n if (searchParams.get('error') === 'registration.not-allowed') {\n notify('auth.message.user_email_not_found', { type: 'error' });\n } else {\n notify('auth.message.bad_request', { type: 'error', error: searchParams.get('error') });\n }\n } else if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n\n localStorage.setItem('token', token);\n\n let userData;\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n\n if (propertiesExist.length > 0) {\n let allPropertiesExist = propertiesExist.every(p => userData[p]);\n while (!allPropertiesExist) {\n console.log('Waiting for all properties to have been created', propertiesExist);\n await delay(500);\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n allPropertiesExist = propertiesExist.every(p => userData[p]);\n }\n }\n\n if (!authProvider.checkUser(userData)) {\n localStorage.removeItem('token');\n notify('auth.message.user_not_allowed_to_login', { type: 'error' });\n navigate.replace('/login');\n } else if (searchParams.has('redirect')) {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = searchParams.get('redirect');\n } else if (searchParams.has('new') && searchParams.get('new') === 'true') {\n notify('auth.message.new_user_created', { type: 'info' });\n window.location.href = `/${userResource}/${encodeURIComponent(webId)}`;\n } else {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = '/';\n }\n }\n }\n\n if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', { type: 'info' });\n navigate('/');\n }\n })();\n }, [searchParams, navigate, notify, userResource]);\n\n const updateBackgroundImage = () => {\n if (!backgroundImageLoaded && containerRef.current) {\n containerRef.current.style.backgroundImage = `url(${backgroundImage})`;\n backgroundImageLoaded = true;\n }\n };\n\n // Load background image asynchronously to speed up time to interactive\n const lazyLoadBackgroundImage = () => {\n if (backgroundImage) {\n const img = new Image();\n img.onload = updateBackgroundImage;\n img.src = backgroundImage;\n }\n };\n\n useEffect(() => {\n if (!backgroundImageLoaded) {\n lazyLoadBackgroundImage();\n }\n });\n\n if (isLoading) return null;\n\n return (\n \n \n \n {text && {text}}\n {buttons?.map((button, i) => (\n \n {React.cloneElement(button, {\n fullWidth: true,\n variant: 'outlined',\n type: 'submit',\n onClick: () => login({}, '/login')\n })}\n \n ))}\n \n \n );\n};\n\nconst PREFIX = 'SsoLoginPage';\n\nexport const SsoLoginPageClasses = {\n card: `${PREFIX}-card`,\n avatar: `${PREFIX}-avatar`,\n icon: `${PREFIX}-icon`,\n switch: `${PREFIX}-switch`\n};\n\nconst Root = styled('div', {\n name: PREFIX,\n overridesResolver: (props, styles) => styles.root\n})(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n minHeight: '100vh',\n height: '1px',\n alignItems: 'center',\n justifyContent: 'flex-start',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n backgroundImage: 'radial-gradient(circle at 50% 14em, #313264 0%, #00023b 60%, #00023b 100%)',\n [`& .${SsoLoginPageClasses.card}`]: {\n minWidth: 300,\n marginTop: '6em'\n },\n [`& .${SsoLoginPageClasses.avatar}`]: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n [`& .${SsoLoginPageClasses.icon}`]: {\n backgroundColor: theme.palette.secondary[500]\n },\n [`& .${SsoLoginPageClasses.switch}`]: {\n marginBottom: '1em',\n display: 'flex',\n justifyContent: 'center'\n }\n}));\n\nSsoLoginPage.defaultProps = {\n propertiesExist: [],\n // TODO deprecate this\n buttons: [}>Les Communs],\n userResource: 'Person'\n};\n\nexport default SsoLoginPage;\n","import React, { useMemo } from 'react';\nimport { Notification } from 'react-admin';\nimport { ThemeProvider } from '@mui/system';\nimport { createTheme } from '@mui/material/styles';\nimport { StyledEngineProvider } from '@mui/material';\nimport PodLoginPageView from './PodLoginPageView';\n\nconst PodLoginPage = props => {\n const muiTheme = useMemo(() => createTheme(props.theme), [props.theme]);\n return (\n \n \n \n \n \n \n );\n};\n\nexport default PodLoginPage;\n","import React, { useEffect, useState } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNotify, useAuthProvider, useDataProvider, useLocale, useTranslate } from 'react-admin';\nimport { Box, List, ListItem, ListItemText, ListItemAvatar, Avatar, Divider, Card, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LockIcon from '@mui/icons-material/Lock';\nimport StorageIcon from '@mui/icons-material/Storage';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.primary.main\n }\n },\n text: {\n textAlign: 'center',\n padding: '4px 8px 8px'\n },\n card: {\n minWidth: 300,\n maxWidth: 350,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n lockIconAvatar: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n lockIcon: {\n backgroundColor: theme.palette.grey['500']\n },\n list: {\n paddingTop: 0,\n paddingBottom: 0\n },\n listItem: {\n paddingTop: 5,\n paddingBottom: 5\n }\n}));\n\nconst PodLoginPageView = ({ history, location, text, customPodProviders }) => {\n const classes = useStyles();\n const notify = useNotify();\n const locale = useLocale();\n const translate = useTranslate();\n const authProvider = useAuthProvider();\n const dataProvider = useDataProvider();\n const [podProviders, setPodProviders] = useState(customPodProviders || []);\n const searchParams = new URLSearchParams(location.search);\n\n useEffect(() => {\n (async () => {\n if (podProviders.length === 0) {\n const results = await fetch('https://data.activitypods.org/pod-providers', {\n headers: {\n Accept: 'application/ld+json'\n }\n });\n if (results.ok) {\n const json = await results.json();\n // Filter POD providers by available locales\n const podProviders = json['ldp:contains'].filter(provider =>\n Array.isArray(provider['apods:locales'])\n ? provider['apods:locales'].includes(locale)\n : provider['apods:locales'] === locale\n );\n setPodProviders(podProviders);\n } else {\n notify('auth.message.pod_providers_not_loaded', 'error');\n }\n }\n })();\n }, [podProviders, setPodProviders, notify, locale]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n const response = await fetch(webId, {\n headers: {\n Accept: 'application/json'\n }\n });\n if (!response.ok) {\n notify('auth.message.unable_to_fetch_user_data', 'error');\n } else {\n const data = await response.json();\n if (!authProvider.checkUser(data)) {\n notify('auth.message.user_not_allowed_to_login', 'error');\n history.replace('/login');\n } else {\n localStorage.setItem('token', token);\n notify('auth.message.user_connected', 'info');\n // Reload to ensure the dataServers config is reset\n window.location.reload();\n window.location.href = '/?addUser=true';\n }\n }\n } else if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', 'info');\n history.push('/');\n }\n })();\n }, [searchParams, dataProvider]);\n\n if (searchParams.has('token') || searchParams.has('addUser') || searchParams.has('logout')) {\n return null;\n }\n\n return (\n \n \n \n \n \n {text || translate('auth.message.choose_pod_provider')}\n \n \n \n \n {podProviders.map((podProvider, i) => {\n const url = new URL(\n '/auth',\n (podProvider['apods:domainName'].includes(':') ? 'http://' : 'https://') +\n podProvider['apods:domainName']\n );\n if (searchParams.has('signup')) url.searchParams.set('signup', 'true');\n url.searchParams.set('redirect', window.location.href);\n return (\n \n \n (window.location.href = url.toString())}\n className={classes.listItem}\n >\n \n \n \n \n \n \n \n \n );\n })}\n
\n \n \n \n );\n};\n\nexport default PodLoginPageView;\n","import React, { useEffect, useMemo } from 'react';\nimport { Link, useNavigate, useSearchParams } from 'react-router-dom';\nimport { useTranslate, useGetIdentity } from 'react-admin';\nimport { Card, Typography } from '@mui/material';\nimport LockIcon from '@mui/icons-material/Lock';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SignupForm from './SignupForm';\nimport LoginForm from './LoginForm';\nimport NewPasswordForm from './NewPasswordForm';\nimport ResetPasswordForm from './ResetPasswordForm';\nimport SimpleBox from './SimpleBox';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(() => ({\n switch: {\n marginBottom: '1em',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center'\n }\n}));\n\n/**\n * @param {object} props Props\n * @param {boolean} props.hasSignup If to show signup form.\n * @param {boolean} props.allowUsername Indicates, if login is allowed with username (instead of email).\n * @param {string} props.postSignupRedirect Location to redirect to after signup.\n * @param {string} props.postLoginRedirect Location to redirect to after login.\n * @param {object} props.additionalSignupValues\n * @param {object} props.passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst LocalLoginPage = ({\n hasSignup,\n allowUsername,\n postSignupRedirect,\n postLoginRedirect,\n additionalSignupValues,\n passwordScorer = defaultScorer\n}) => {\n const classes = useStyles();\n const navigate = useNavigate();\n const translate = useTranslate();\n const [searchParams] = useSearchParams();\n const isSignup = hasSignup && searchParams.has('signup');\n const isResetPassword = searchParams.has('reset_password');\n const isNewPassword = searchParams.has('new_password');\n const isLogin = !isSignup && !isResetPassword && !isNewPassword;\n const redirectTo = searchParams.get('redirect');\n const { identity, isLoading } = useGetIdentity();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n if (postLoginRedirect) {\n navigate(`${postLoginRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`);\n } else if (redirectTo && redirectTo.startsWith('http')) {\n window.location.href = redirectTo;\n } else {\n navigate(redirectTo || '/');\n }\n }\n }, [identity, isLoading, navigate, redirectTo, postLoginRedirect]);\n\n const [title, text] = useMemo(() => {\n if (isSignup) {\n return ['auth.action.signup', 'auth.helper.signup'];\n }\n if (isLogin) {\n return ['auth.action.login', 'auth.helper.login'];\n }\n if (isResetPassword) {\n return ['auth.action.reset_password', 'auth.helper.reset_password'];\n }\n if (isNewPassword) {\n return ['auth.action.set_new_password', 'auth.helper.set_new_password'];\n }\n }, [isSignup, isLogin, isResetPassword, isNewPassword]);\n\n if (isLoading || identity?.id) return null;\n if (isLoading || identity?.id) return null;\n\n return (\n }>\n \n {isSignup && (\n \n )}\n {isResetPassword && }\n {isNewPassword && }\n {isLogin && }\n \n {isSignup && (\n
\n
{translate('auth.action.login')}\n \n )}\n {isLogin && (\n <>\n {hasSignup && (\n
\n \n {translate('auth.action.signup')}\n \n
\n )}\n
\n \n {translate('auth.action.reset_password')}\n \n
\n >\n )}\n
\n \n \n );\n};\n\nLocalLoginPage.defaultProps = {\n hasSignup: true,\n allowUsername: false,\n additionalSignupValues: {}\n};\n\nexport default LocalLoginPage;\n","import * as React from 'react';\nimport createSlug from 'speakingurl';\nimport {\n Form,\n useTranslate,\n useNotify,\n useSafeSetState,\n TextInput,\n required,\n email,\n useLocaleState\n} from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useSignup from '../../hooks/useSignup';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n * @param postSignupRedirect\n * @param additionalSignupValues\n * @param delayBeforeRedirect\n * @param {string} redirectTo\n * @param {object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst SignupForm = ({\n redirectTo,\n passwordScorer = defaultScorer,\n postSignupRedirect,\n additionalSignupValues,\n delayBeforeRedirect\n}) => {\n const [loading, setLoading] = useSafeSetState(false);\n const signup = useSignup();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const [locale] = useLocaleState();\n const [password, setPassword] = React.useState('');\n\n const submit = values => {\n setLoading(true);\n signup({\n ...values,\n ...additionalSignupValues\n })\n .then(webId => {\n if (delayBeforeRedirect) {\n setTimeout(() => {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }, delayBeforeRedirect);\n } else {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }\n notify('auth.message.new_user_created', { type: 'info' });\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nSignupForm.defaultValues = {\n redirectTo: '/',\n additionalSignupValues: {}\n};\n\nexport default SignupForm;\n","import { useCallback } from 'react';\nimport { useAuthProvider } from 'react-admin';\n\nconst useSignup = () => {\n const authProvider = useAuthProvider();\n\n return useCallback((params = {}) => authProvider.signup(params), [authProvider]);\n};\n\nexport default useSignup;\n","import { defaultScorer } from '../../passwordScorer';\n\nconst validatePasswordStrength = (scorer = defaultScorer) => value => {\n if (!scorer) return undefined;\n const strength = scorer.scoreFn(value);\n if (strength < scorer.minRequiredScore) {\n return 'auth.input.password_too_weak';\n }\n return undefined;\n};\n\nexport default validatePasswordStrength;\n","// Inspired by https://github.com/bartlomiejzuber/password-strength-score\n\n/**\n * @typedef PasswordStrengthOptions\n * @property {number} isVeryLongLength - Required characters for a very long password (default: 12)\n * @property {number} isLongLength - Required characters for a long password (default: 6)\n * @property {number} isVeryLongScore - Score for a very long password (default: 2.5)\n * @property {number} isLongScore - Score for a long password (default: 1.5)\n * @property {number} uppercaseScore - Score for a password with uppercase letters (default: 1)\n * @property {number} lowercaseScore - Score for a password with lowercase letters (default: 1)\n * @property {number} numbersScore - Score for a password with numbers (default: 1)\n * @property {number} nonAlphanumericsScore - Score for a password without non-alphanumeric characters (default: 1)\n */\n\n/** @type {PasswordStrengthOptions} */\nexport const defaultOptions = {\n isVeryLongLength: 14,\n isLongLength: 8,\n isLongScore: 2,\n isVeryLongScore: 4,\n uppercaseScore: 1,\n lowercaseScore: 1,\n numbersScore: 1,\n nonAlphanumericsScore: 1\n};\n\n/**\n *\n * @param {string} password Password text.\n * @param {PasswordStrengthOptions} options Password options.\n * @returns {number} The password strength score.\n */\nexport const passwordStrength = (password, options) => {\n if (!password) {\n return 0;\n }\n\n const mergedOptions = { ...defaultOptions, ...options };\n\n const longScore = (password.length >= mergedOptions.isLongLength && mergedOptions.isLongScore) || 0;\n const veryLongScore = (password.length >= mergedOptions.isVeryLongLength && mergedOptions.isVeryLongScore) || 0;\n const lowercaseScore = (/[a-z]/.test(password) && mergedOptions.lowercaseScore) || 0;\n const uppercaseScore = (/[A-Z]/.test(password) && mergedOptions.uppercaseScore) || 0;\n const numbersScore = (/\\d/.test(password) && mergedOptions.numbersScore) || 0;\n const nonalphasScore = (/\\W/.test(password) && mergedOptions.nonAlphanumericsScore) || 0;\n\n return uppercaseScore + lowercaseScore + numbersScore + nonalphasScore + longScore + veryLongScore;\n};\n\nexport const createPasswordScorer = (options = defaultOptions, minRequiredScore = 5) => {\n const mergedOptions = { ...defaultOptions, ...options };\n\n return {\n scoreFn: password => passwordStrength(password, mergedOptions),\n minRequiredScore,\n maxScore:\n mergedOptions.uppercaseScore +\n mergedOptions.lowercaseScore +\n mergedOptions.numbersScore +\n mergedOptions.nonAlphanumericsScore +\n mergedOptions.isLongScore +\n mergedOptions.isVeryLongScore\n };\n};\n\nexport const defaultScorer = createPasswordScorer(defaultOptions, 5);\n","import React from 'react';\nimport ColorGradientProgressBar from './ColorGradientProgressBar';\nimport { defaultScorer } from '../../passwordScorer';\n\nexport default function PasswordStrengthIndicator({ scorer = defaultScorer, password, ...restProps }) {\n const strength = scorer.scoreFn(password);\n return ;\n}\n","import React from 'react';\nimport { LinearProgress } from '@mui/material';\nimport { withStyles } from '@mui/styles';\n\n/**\n * @typedef {Object} Color\n * @property {number} red\n * @property {number} green\n * @property {number} blue\n */\n\n/** Calculate a rgb-color from a gradient between `color1` and `color2`\n * @param {number} fade - Indicates the fade between `color1` and `color2` in the range [0, 1].\n * @param {Color} color1\n * @param {Color} color2\n * @returns {string} `` `rgb(${red}, ${green}, ${blue})` ``\n */\nconst colorGradient = (fade, color1, color2) => {\n var diffRed = color2.red - color1.red;\n var diffGreen = color2.green - color1.green;\n var diffBlue = color2.blue - color1.blue;\n\n var gradient = {\n red: Math.floor(color1.red + diffRed * fade),\n green: Math.floor(color1.green + diffGreen * fade),\n blue: Math.floor(color1.blue + diffBlue * fade)\n };\n\n return 'rgb(' + gradient.red + ',' + gradient.green + ',' + gradient.blue + ')';\n};\n\n/** A progress bar that changes its color between its min an max value.\n * @param {Object} props\n * @param {Color} [props.badColor = { red: 0xff, green: 0x40, blue: 0x47 }] - default: `#FF4047`\n * @param {Color} [props.goodColor = { red: 0x00, green: 0xff, blue: 0x6e }] - default: `#00FF6E`\n * @param {number} props.maxVal\n * @param {number} props.minVal\n * @param {number} props.currentVal\n */\nexport default function ColorGradientProgressBar(props) {\n const { minVal, maxVal, currentVal, badColor, goodColor, ...restProps } = props;\n\n const color1 = badColor || { red: 0xff, green: 0x40, blue: 0x47 };\n const color2 = goodColor || { red: 0x00, green: 0xff, blue: 0x6e };\n\n const fade = Math.max(0, Math.min(1, (currentVal - minVal) / (maxVal - minVal)));\n const currentColor = colorGradient(fade, color1, color2);\n\n const StyledLinearProgress = withStyles({\n colorPrimary: {\n backgroundColor: '#e0e0e0'\n },\n barColorPrimary: {\n backgroundColor: currentColor\n }\n })(LinearProgress);\n\n return ;\n}\n","import * as React from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, TextInput, required, email, useLogin } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst LoginForm = ({ redirectTo, allowUsername }) => {\n const [loading, setLoading] = useSafeSetState(false);\n const login = useLogin();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n\n const submit = values => {\n setLoading(true);\n login(values, redirectTo)\n .then(() => {\n setLoading(false);\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nLoginForm.defaultValues = {\n redirectTo: '/',\n allowUsername: false\n};\n\nexport default LoginForm;\n","import React, { useState } from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, useAuthProvider, TextInput, required } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n *\n * @param {string} redirectTo\n * @param {Object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst NewPasswordForm = ({ redirectTo, passwordScorer = defaultScorer }) => {\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const token = searchParams.get('token');\n\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const [newPassword, setNewPassword] = useState('');\n\n const submit = values => {\n setLoading(true);\n authProvider\n .setNewPassword({ ...values, token })\n .then(res => {\n setTimeout(() => {\n window.location.href = `/login${redirectTo ? `?redirect=${encodeURIComponent(redirectTo)}` : ''}`;\n setLoading(false);\n }, 2000);\n notify('auth.notification.password_changed', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default NewPasswordForm;\n","import React from 'react';\nimport { Form, TextInput, required, useTranslate, useNotify, useSafeSetState, useAuthProvider } from 'react-admin';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst ResetPasswordForm = () => {\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const submit = values => {\n setLoading(true);\n authProvider\n .resetPassword({ ...values })\n .then(res => {\n setLoading(false);\n notify('auth.notification.reset_password_submitted', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default ResetPasswordForm;\n","import React from 'react';\nimport { Box, Card, Typography } from '@mui/material';\nimport { Notification } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.secondary.main\n }\n },\n root: {\n backgroundColor: theme.palette.secondary.main\n },\n card: {\n minWidth: 300,\n maxWidth: 500,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n icon: {\n marginTop: 5,\n marginRight: 5\n },\n title: {\n [theme.breakpoints.down('sm')]: {\n fontWeight: 'bold',\n marginTop: 12\n }\n }\n}));\n\nconst SimpleBox = ({ title, icon, text, children }) => {\n const classes = useStyles();\n return (\n \n \n \n {icon && React.cloneElement(icon, { fontSize: 'large', className: classes.icon })}\n \n {title}\n \n \n \n {text}\n \n {children}\n \n \n \n );\n};\n\nexport default SimpleBox;\n","import React from 'react';\nimport { Resource, usePermissions } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport { rightsToCreate } from '../constants';\n\n// Not used for now. The ListWithPermissions component will handle the conditional display of the Create button.\nconst ResourceWithPermission = ({ name, create, ...rest }) => {\n const createContainer = useCreateContainer(name);\n const { permissions } = usePermissions(createContainer);\n return (\n rightsToCreate.includes(p['acl:mode'])) ? create : undefined}\n // Requesting permissions to list container is too long, we will avoid that for now\n // list={permissions && permissions.some(p => rightsToList.includes(p['acl:mode'])) ? list : undefined}\n />\n );\n};\n\nexport default ResourceWithPermission;\n","import React, { forwardRef, useCallback } from 'react';\nimport { Logout, UserMenu as RaUserMenu, useGetIdentity, useTranslate, useUserMenu } from 'react-admin';\nimport { MenuItem, ListItemIcon, ListItemText } from '@mui/material';\nimport AccountCircleIcon from '@mui/icons-material/AccountCircle';\nimport EditIcon from '@mui/icons-material/Edit';\nimport { useNavigate } from 'react-router-dom';\n\n// It's important to pass the ref to allow Material UI to manage the keyboard navigation\nconst UserMenuItem = forwardRef(({ label, icon, to, ...rest }, ref) => {\n const { onClose } = useUserMenu();\n const translate = useTranslate();\n const navigate = useNavigate();\n const onClick = useCallback(() => {\n navigate(to);\n onClose();\n }, [to, onClose, navigate]);\n return (\n \n );\n});\n\nconst UserMenu = ({ logout, profileResource, ...otherProps }) => {\n const { identity } = useGetIdentity();\n return (\n \n {identity && identity.id !== ''\n ? [\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}/show`}\n />,\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}`}\n />,\n React.cloneElement(logout, { key: 'logout' })\n ]\n : [\n ,\n \n ]}\n \n );\n};\n\nUserMenu.defaultProps = {\n logout: ,\n profileResource: 'Person'\n};\n\nexport default UserMenu;\n","import React, { useEffect } from 'react';\nimport { useGetIdentity, useNotify, useRedirect } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\n\nconst useCheckAuthenticated = message => {\n const { identity, isLoading } = useGetIdentity();\n const notify = useNotify();\n const redirect = useRedirect();\n const location = useLocation();\n\n useEffect(() => {\n if (!isLoading && !identity?.id) {\n notify(message || 'ra.auth.auth_check_error', { type: 'error' });\n redirect(`/login?redirect=${encodeURIComponent(location.pathname + location.search)}`);\n }\n }, [isLoading, identity, redirect, notify, location]);\n\n return { identity, isLoading };\n};\n\nexport default useCheckAuthenticated;\n","import { useEffect, useCallback } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport { useGetPermissions, useSafeSetState } from 'react-admin';\n\nconst emptyParams = {};\n\n// keep a cache of already fetched permissions to initialize state for new\n// components and avoid a useless rerender if the permissions haven't changed\nconst alreadyFetchedPermissions = { '{}': undefined };\n\n// Fork of usePermissionsOptimized, with a refetch option\nconst usePermissionsWithRefetch = (params = emptyParams) => {\n const key = JSON.stringify(params);\n const [state, setState] = useSafeSetState({\n permissions: alreadyFetchedPermissions[key]\n });\n const getPermissions = useGetPermissions();\n\n const fetchPermissions = useCallback(\n () =>\n getPermissions(params)\n .then(permissions => {\n if (!isEqual(permissions, state.permissions)) {\n alreadyFetchedPermissions[key] = permissions;\n setState({ permissions });\n }\n })\n .catch(error => {\n setState({\n error\n });\n }),\n [key, params, getPermissions]\n );\n\n useEffect(() => {\n fetchPermissions();\n }, [key]);\n\n return { ...state, refetch: fetchPermissions };\n};\n\nexport default usePermissionsWithRefetch;\n","const englishMessages = {\n auth: {\n dialog: {\n container_permissions: 'Container permissions',\n resource_permissions: 'Resource permissions',\n login_required: 'Login required'\n },\n action: {\n permissions: 'Permissions',\n signup: 'Signup',\n reset_password: 'Reset password',\n set_new_password: 'Set new password',\n logout: 'Logout',\n login: 'Login',\n view_my_profile: 'View my profile',\n edit_my_profile: 'Edit my profile'\n },\n right: {\n resource: {\n read: 'Read',\n append: 'Append',\n write: 'Write',\n control: 'Control'\n },\n container: {\n read: 'List',\n append: 'Add',\n write: 'Add',\n control: 'Control'\n }\n },\n agent: {\n anonymous: 'All users',\n authenticated: 'Connected users'\n },\n input: {\n agent_select: 'Add an user...',\n name: 'Surname',\n username: 'User ID',\n email: 'Email address',\n username_or_email: 'User ID or email address',\n current_password: 'Current password',\n new_password: 'New password',\n confirm_new_password: 'Confirm new password',\n password_strength: 'Password strength',\n password_too_weak: 'Password too weak. Increase length or add special characters.'\n },\n helper: {\n login: 'Sign in to your account',\n signup: 'Create your account',\n reset_password: 'Enter your email address below and we will send you a link to reset your password',\n set_new_password: 'Please enter your email address and a new password below'\n },\n message: {\n resource_show_forbidden: 'You are not allowed to view this resource',\n resource_edit_forbidden: 'You are not allowed to edit this resource',\n resource_delete_forbidden: 'You are not allowed to delete this resource',\n resource_control_forbidden: 'You are not allowed to control this resource',\n container_create_forbidden: 'You are not allowed to create new resource',\n container_list_forbidden: 'You are not allowed to list these resources',\n user_not_allowed_to_login: 'You are not allowed to login with this account',\n user_email_not_found: 'No account found with this email address',\n user_email_exist: 'An account already exist with this email address',\n username_exist: 'An account already exist with this user ID',\n username_invalid: 'This username is invalid. Only lowercase characters, numbers, dots and hyphens are authorized',\n new_user_created: 'Your account has been successfully created',\n user_connected: 'You are now connected',\n user_disconnected: 'You are now disconnected',\n bad_request: 'Bad request (Error message returned by the server: %{error})',\n account_settings_updated: 'Your account settings have been successfully updated',\n login_to_continue: 'Please login to continue',\n choose_pod_provider:\n 'Please choose a POD provider in the list below. All application data will be saved on your POD.'\n },\n notification: {\n reset_password_submitted: 'An email has been sent with reset password instructions',\n reset_password_error: 'An error occurred',\n password_changed: 'Password changed successfully',\n new_password_error: 'An error occurred',\n invalid_password: 'Invalid password',\n get_settings_error: 'An error occurred',\n update_settings_error: 'An error occurred'\n }\n }\n};\n\nexport default englishMessages;\n","const frenchMessages = {\n auth: {\n dialog: {\n container_permissions: 'Permissions sur le container',\n resource_permissions: 'Permissions sur la ressource',\n login_required: 'Connexion requise'\n },\n action: {\n permissions: 'Permissions',\n signup: \"S'inscrire\",\n reset_password: 'Mot de passe oublié ?',\n set_new_password: 'Définir le mot de passe',\n logout: 'Se déconnecter',\n login: 'Se connecter',\n view_my_profile: 'Voir mon profil',\n edit_my_profile: 'Éditer mon profil'\n },\n right: {\n resource: {\n read: 'Lire',\n append: 'Enrichir',\n write: 'Modifier',\n control: 'Administrer'\n },\n container: {\n read: 'Lister',\n append: 'Ajouter',\n write: 'Ajouter',\n control: 'Administrer'\n }\n },\n agent: {\n anonymous: 'Tous les utilisateurs',\n authenticated: 'Utilisateurs connectés'\n },\n input: {\n agent_select: 'Ajouter un utilisateur...',\n name: 'Prénom',\n username: 'Identifiant unique',\n email: 'Adresse e-mail',\n username_or_email: 'Identifiant ou adresse e-mail',\n current_password: 'Mot de passe actuel',\n new_password: 'Nouveau mot de passe',\n confirm_new_password: 'Confirmer le nouveau mot de passe',\n password_strength: 'Force du mot de passe',\n password_too_weak: 'Mot de passe trop faible. Augmenter la longueur ou ajouter des caractères spéciaux.'\n },\n helper: {\n login: 'Connectez-vous à votre compte.',\n signup: 'Créez votre compte',\n reset_password:\n 'Entrez votre adresse mail ci-dessous et nous vous enverrons un lien pour réinitialiser votre mot de passe',\n set_new_password: 'Veuillez entrer votre adresse mail et un nouveau mot de passe ci-dessous'\n },\n message: {\n resource_show_forbidden: \"Vous n'avez pas la permission de voir cette ressource\",\n resource_edit_forbidden: \"Vous n'avez pas la permission d'éditer cette ressource\",\n resource_delete_forbidden: \"Vous n'avez pas la permission d'effacer cette ressource\",\n resource_control_forbidden: \"Vous n'avez pas la permission d'administrer cette ressource\",\n container_create_forbidden: \"Vous n'avez pas la permission de créer des ressources\",\n container_list_forbidden: \"Vous n'avez pas la permission de voir ces ressources\",\n user_not_allowed_to_login: \"Vous n'avez pas le droit de vous connecter avec ce compte\",\n user_email_not_found: 'Aucun compte trouvé avec cette adresse mail',\n user_email_exist: 'Un compte existe déjà avec cette adresse mail',\n username_exist: 'Un compte existe déjà avec cet identifiant',\n username_invalid:\n \"Cet identifiant n'est pas valide. Seuls les lettres minuscules, les chiffres, les points et les tirets sont autorisés\",\n new_user_created: 'Votre compte a été créé avec succès',\n user_connected: 'Vous êtes maintenant connecté',\n user_disconnected: 'Vous êtes maintenant déconnecté',\n bad_request: \"Requête erronée (Message d'erreur renvoyé par le serveur: %{error})\",\n account_settings_updated: 'Les paramètres de votre compte ont été mis à jour avec succès',\n login_to_continue: 'Veuillez vous connecter pour continuer',\n choose_pod_provider:\n \"Veuillez choisir un fournisseur de PODs dans la liste ci-dessous. Toutes les données de l'application seront enregistrées sur votre POD.\"\n },\n notification: {\n reset_password_submitted: 'Un e-mail a été envoyé avec les instructions de réinitialisation du mot de passe',\n reset_password_error: \"Une erreur s'est produite\",\n password_changed: 'Le mot de passe a été changé avec succès',\n new_password_error: \"Une erreur s'est produite\",\n invalid_password: 'Mot de passe incorrect',\n get_settings_error: \"Une erreur s'est produite\",\n update_settings_error: \"Une erreur s'est produite\"\n }\n }\n};\n\nexport default frenchMessages;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/auth-provider/src/index.js","packages/auth-provider/src/authProvider.js","packages/auth-provider/src/utils.js","packages/auth-provider/src/crud/create/CreateWithPermissions.js","packages/auth-provider/src/hooks/useCheckPermissions.js","packages/auth-provider/src/constants.js","packages/auth-provider/src/crud/edit/EditWithPermissions.js","packages/auth-provider/src/crud/edit/EditActionsWithPermissions.js","packages/auth-provider/src/components/PermissionsButton/PermissionsButton.js","packages/auth-provider/src/components/PermissionsButton/PermissionsDialog.js","packages/auth-provider/src/components/PermissionsButton/AddPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/EditPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/AgentItem.js","packages/auth-provider/src/components/PermissionsButton/AgentIcon.js","packages/auth-provider/src/hooks/useAgents.js","packages/auth-provider/src/crud/edit/EditToolbarWithPermissions.js","packages/auth-provider/src/crud/edit/DeleteButtonWithPermissions.js","packages/auth-provider/src/crud/edit/EditButtonWithPermissions.js","packages/auth-provider/src/crud/list/ListWithPermissions.js","packages/auth-provider/src/crud/list/ListActionsWithPermissions.js","packages/auth-provider/src/crud/show/ShowWithPermissions.js","packages/auth-provider/src/crud/show/ShowActionsWithPermissions.js","packages/auth-provider/src/components/AuthDialog.js","packages/auth-provider/src/components/SsoLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPageView.js","packages/auth-provider/src/components/LocalLoginPage/LocalLoginPage.js","packages/auth-provider/src/components/LocalLoginPage/SignupForm.js","packages/auth-provider/src/hooks/useSignup.js","packages/auth-provider/src/components/LocalLoginPage/validatePasswordStrength.js","packages/auth-provider/src/passwordScorer.js","packages/auth-provider/src/components/LocalLoginPage/PasswordStrengthIndicator.js","packages/auth-provider/src/components/LocalLoginPage/ColorGradientProgressBar.js","packages/auth-provider/src/components/LocalLoginPage/LoginForm.js","packages/auth-provider/src/components/LocalLoginPage/NewPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/ResetPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/SimpleBox.js","packages/auth-provider/src/components/ResourceWithPermissions.js","packages/auth-provider/src/components/UserMenu.js","packages/auth-provider/src/hooks/useCheckAuthenticated.js","packages/auth-provider/src/hooks/usePermissionsWithRefetch.js","packages/auth-provider/src/messages/english.js","packages/auth-provider/src/messages/french.js"],"sourcesContent":["export { default as authProvider } from './authProvider';\n\n// Create\nexport { default as CreateWithPermissions } from './crud/create/CreateWithPermissions';\n\n// Edit\nexport { default as EditWithPermissions } from './crud/edit/EditWithPermissions';\nexport { default as EditActionsWithPermissions } from './crud/edit/EditActionsWithPermissions';\nexport { default as EditToolbarWithPermissions } from './crud/edit/EditToolbarWithPermissions';\nexport { default as EditButtonWithPermissions } from './crud/edit/EditButtonWithPermissions';\nexport { default as DeleteButtonWithPermissions } from './crud/edit/DeleteButtonWithPermissions';\n\n// List\nexport { default as ListWithPermissions } from './crud/list/ListWithPermissions';\nexport { default as ListActionsWithPermissions } from './crud/list/ListActionsWithPermissions';\n\n// Show\nexport { default as ShowWithPermissions } from './crud/show/ShowWithPermissions';\nexport { default as ShowActionsWithPermissions } from './crud/show/ShowActionsWithPermissions';\n\nexport { default as PermissionsButton } from './components/PermissionsButton/PermissionsButton';\nexport { default as AuthDialog } from './components/AuthDialog';\nexport { default as SsoLoginPage, default as LoginPage } from './components/SsoLoginPage';\nexport { default as PodLoginPage } from './components/PodLoginPage/PodLoginPage';\nexport { default as LocalLoginPage } from './components/LocalLoginPage/LocalLoginPage';\nexport { default as ResourceWithPermissions } from './components/ResourceWithPermissions';\nexport { default as UserMenu } from './components/UserMenu';\n\nexport { default as useAgents } from './hooks/useAgents';\nexport { default as useCheckAuthenticated } from './hooks/useCheckAuthenticated';\nexport { default as useCheckPermissions } from './hooks/useCheckPermissions';\nexport { default as usePermissionsWithRefetch } from './hooks/usePermissionsWithRefetch';\nexport { default as useSignup } from './hooks/useSignup';\n\n// Password scoring\nexport { default as PasswordStrengthIndicator } from './components/LocalLoginPage/PasswordStrengthIndicator';\nexport { default as validatePasswordStrength } from './components/LocalLoginPage/validatePasswordStrength';\nexport {\n defaultScorer as defaultPasswordScorer,\n defaultOptions as defaultPasswordScorerOptions,\n createPasswordScorer\n} from './passwordScorer';\n\nexport { default as englishMessages } from './messages/english';\nexport { default as frenchMessages } from './messages/french';\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport { defaultToArray, getAclUri, getAclContext, getAuthServerUrl } from './utils';\n\nconst AUTH_TYPE_SSO = 'sso';\nconst AUTH_TYPE_LOCAL = 'local';\nconst AUTH_TYPE_POD = 'pod';\n\nconst authProvider = ({ dataProvider, authType, allowAnonymous = true, checkUser, checkPermissions = false }) => {\n if (![AUTH_TYPE_SSO, AUTH_TYPE_LOCAL, AUTH_TYPE_POD].includes(authType))\n throw new Error('The authType parameter is missing from the auth provider');\n return {\n login: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, password } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/login'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n password: password.trim()\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n } catch (e) {\n throw new Error('ra.auth.sign_in_error');\n }\n } else {\n let redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n if (params.redirect) redirectUrl += `&redirect=${encodeURIComponent(params.redirect)}`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n signup: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, email, password, domain, ...profileData } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/signup'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n email: email.trim(),\n password: password.trim(),\n ...profileData\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n const { webId } = jwtDecode(token);\n return webId;\n } catch (e) {\n if (e.message === 'email.already.exists') {\n throw new Error('auth.message.user_email_exist');\n } else if (e.message === 'username.already.exists') {\n throw new Error('auth.message.username_exist');\n } else if (e.message === 'username.invalid') {\n throw new Error('auth.message.username_invalid');\n } else {\n throw new Error(e.message || 'ra.auth.sign_in_error');\n }\n }\n } else {\n const redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n logout: async () => {\n switch (authType) {\n case AUTH_TYPE_LOCAL:\n // Delete token but also any other value in local storage\n localStorage.clear();\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = '/';\n break;\n\n case AUTH_TYPE_SSO:\n const authServerUrl = await getAuthServerUrl(dataProvider);\n const baseUrl = new URL(window.location.href).origin;\n window.location.href = urlJoin(\n authServerUrl,\n `auth/logout?redirectUrl=${encodeURIComponent(`${urlJoin(baseUrl, 'login')}?logout=true`)}`\n );\n break;\n\n case AUTH_TYPE_POD:\n const token = localStorage.getItem('token');\n const { webId } = jwtDecode(token);\n // Delete token but also any other value in local storage\n localStorage.clear();\n window.location.href =\n urlJoin(webId, 'openApp') +\n '?type=' +\n encodeURIComponent('http://activitypods.org/ns/core#FrontAppRegistration');\n break;\n }\n\n // Avoid displaying immediately the login page\n return '/';\n },\n checkAuth: async () => {\n const token = localStorage.getItem('token');\n if (!token && !allowAnonymous) throw new Error();\n },\n checkUser: userData => {\n if (checkUser) {\n return checkUser(userData);\n }\n return true;\n },\n checkError: error => Promise.resolve(),\n getPermissions: async uri => {\n if (!checkPermissions) return;\n\n // React-admin calls getPermissions with an empty object on every page refresh\n // It also passes an object `{ params: { route: 'dashboard' } }` on the Dashboard\n // Ignore all this until we found a way to bypass these redundant calls\n if (typeof uri === 'object') return;\n\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to getPermissions must be an URL');\n\n const aclUri = getAclUri(uri);\n\n try {\n const { json } = await dataProvider.fetch(aclUri);\n return json['@graph'];\n } catch (e) {\n console.warn(`Could not fetch ACL URI ${uri}`);\n return [];\n }\n },\n addPermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to addPermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n const authorization = {\n '@id': `#${mode.replace('acl:', '')}`,\n '@type': 'acl:Authorization',\n [predicate]: agentId,\n 'acl:accessTo': uri,\n 'acl:mode': mode\n };\n\n await dataProvider.fetch(aclUri, {\n method: 'PATCH',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': [authorization]\n })\n });\n },\n removePermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to removePermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n // Fetch current permissions\n const { json } = await dataProvider.fetch(aclUri);\n\n const updatedPermissions = json['@graph']\n .filter(authorization => !authorization['@id'].includes('#Default'))\n .map(authorization => {\n const modes = defaultToArray(authorization['acl:mode']);\n let agents = defaultToArray(authorization[predicate]);\n if (mode && modes.includes(mode) && agents && agents.includes(agentId)) {\n agents = agents.filter(agent => agent !== agentId);\n }\n return { ...authorization, [predicate]: agents };\n });\n\n await dataProvider.fetch(aclUri, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': updatedPermissions\n })\n });\n },\n getIdentity: async () => {\n const token = localStorage.getItem('token');\n if (token) {\n const { webId } = jwtDecode(token);\n\n const { json: webIdData } = await dataProvider.fetch(webId);\n const { json: profileData } = webIdData.url ? await dataProvider.fetch(webIdData.url) : {};\n\n return {\n id: webId,\n fullName:\n profileData?.['vcard:given-name'] ||\n profileData?.['pair:label'] ||\n webIdData['foaf:name'] ||\n webIdData['pair:label'],\n profileData,\n webIdData\n };\n }\n },\n resetPassword: async params => {\n const { email } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/reset_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim() }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.reset_password_error');\n }\n },\n setNewPassword: async params => {\n const { email, token, password } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/new_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim(), token, password }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.new_password_error');\n }\n },\n getAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'));\n return json;\n } catch (e) {\n throw new Error('auth.notification.get_settings_error');\n }\n },\n updateAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { email, currentPassword, newPassword } = params;\n\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'), {\n method: 'POST',\n body: JSON.stringify({\n currentPassword,\n email: email?.trim(),\n newPassword\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n if (e.message === 'auth.account.invalid_password') {\n throw new Error('auth.notification.invalid_password');\n }\n\n throw new Error('auth.notification.update_settings_error');\n }\n }\n };\n};\n\nexport default authProvider;\n","import urlJoin from 'url-join';\n\nexport const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\n// Transform the URI to the one used to find the ACL\n// To be compatible with all servers, we should do a HEAD request to the resource URI\nexport const getAclUri = resourceUri => {\n const parsedUrl = new URL(resourceUri);\n return urlJoin(parsedUrl.origin, '_acl', parsedUrl.pathname);\n};\n\nexport const getAclContext = baseUri => ({\n '@base': baseUri,\n acl: 'http://www.w3.org/ns/auth/acl#',\n foaf: 'http://xmlns.com/foaf/0.1/',\n 'acl:agent': { '@type': '@id' },\n 'acl:agentGroup': { '@type': '@id' },\n 'acl:agentClass': { '@type': '@id' },\n 'acl:mode': { '@type': '@id' },\n 'acl:accessTo': { '@type': '@id' }\n});\n\nexport const getAuthServerUrl = async dataProvider => {\n const dataServers = await dataProvider.getDataServers();\n const authServer = Object.values(dataServers).find(server => server.authServer === true);\n if (!authServer) throw new Error('Could not find a server with authServer: true. Check your dataServers config.');\n // If the server is a POD, return the root URL instead of https://domain.com/user/data\n return authServer.pod ? new URL(authServer.baseUrl).origin : authServer.baseUrl;\n};\n","import React from 'react';\nimport { Create, CreateActions, useResourceContext } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst CreateWithPermissions = props => {\n const resource = useResourceContext();\n const createContainerUri = useCreateContainer(resource);\n useCheckPermissions(createContainerUri, 'create');\n return ;\n};\n\nCreateWithPermissions.defaultProps = {\n actions: \n};\n\nexport default CreateWithPermissions;\n","import React, { useEffect } from 'react';\nimport { usePermissions, useRedirect, useNotify, useGetIdentity } from 'react-admin';\nimport { rights, forbiddenErrors } from '../constants';\n\nconst useCheckPermissions = (uri, mode, redirectUrl = '/') => {\n const { identity, isLoading } = useGetIdentity();\n const { permissions } = usePermissions(uri);\n const notify = useNotify();\n const redirect = useRedirect();\n\n useEffect(() => {\n if (!isLoading && identity && permissions && !permissions.some(p => rights[mode].includes(p['acl:mode']))) {\n notify(forbiddenErrors[mode], { type: 'error' });\n redirect(redirectUrl);\n }\n }, [permissions, identity, redirect, notify, isLoading]);\n\n return permissions;\n};\n\nexport default useCheckPermissions;\n","export const ACL_READ = 'acl:Read';\nexport const ACL_APPEND = 'acl:Append';\nexport const ACL_WRITE = 'acl:Write';\nexport const ACL_CONTROL = 'acl:Control';\n\nexport const USER_AGENT = 'acl:agent';\nexport const GROUP_AGENT = 'acl:agentGroup';\nexport const CLASS_AGENT = 'acl:agentClass';\n\nexport const ANONYMOUS_AGENT = 'foaf:Agent';\nexport const AUTHENTICATED_AGENT = 'acl:AuthenticatedAgent';\n\nexport const rightsToShow = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToList = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToCreate = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToEdit = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToDelete = [ACL_WRITE, ACL_CONTROL];\nexport const rightsToControl = [ACL_CONTROL];\n\nexport const rights = {\n show: rightsToShow,\n list: rightsToList,\n create: rightsToCreate,\n edit: rightsToEdit,\n delete: rightsToDelete,\n control: rightsToControl\n};\n\nexport const forbiddenErrors = {\n show: 'auth.message.resource_show_forbidden',\n edit: 'auth.message.resource_edit_forbidden',\n delete: 'auth.message.resource_delete_forbidden',\n control: 'auth.message.resource_control_forbidden',\n list: 'auth.message.container_list_forbidden',\n create: 'auth.message.container_create_forbidden'\n};\n\nexport const resourceRightsLabels = {\n [ACL_READ]: 'auth.right.resource.read',\n [ACL_APPEND]: 'auth.right.resource.append',\n [ACL_WRITE]: 'auth.right.resource.write',\n [ACL_CONTROL]: 'auth.right.resource.control'\n};\n\nexport const containerRightsLabels = {\n [ACL_READ]: 'auth.right.container.read',\n [ACL_WRITE]: 'auth.right.container.write',\n [ACL_CONTROL]: 'auth.right.container.control'\n};\n","import React from 'react';\nimport { Edit, useGetRecordId } from 'react-admin';\nimport EditActionsWithPermissions from './EditActionsWithPermissions';\nimport EditToolbarWithPermissions from './EditToolbarWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst EditWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'edit');\n return (\n \n {React.cloneElement(props.children, {\n toolbar: ,\n // Allow to override toolbar\n ...props.children.props\n })}\n \n );\n};\n\nEditWithPermissions.defaultProps = {\n actions: \n};\n\nexport default EditWithPermissions;\n","import React from 'react';\nimport {\n usePermissionsOptimized,\n ShowButton,\n ListButton,\n TopToolbar,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl } from '../../constants';\n\nconst EditActionsWithPermissions = () => {\n const { hasList, hasShow } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissionsOptimized(record?.id);\n return (\n \n {hasList && }\n {hasShow && }\n {!!permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default EditActionsWithPermissions;\n","import React, { useState } from 'react';\nimport { Button, useRecordContext, useResourceContext } from 'react-admin';\nimport ShareIcon from '@mui/icons-material/Share';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsDialog from './PermissionsDialog';\n\nconst PermissionsButton = ({ isContainer }) => {\n const record = useRecordContext();\n const resource = useResourceContext();\n const [showDialog, setShowDialog] = useState(false);\n const createContainer = useCreateContainer(resource);\n const uri = isContainer ? createContainer : record.id || record['@id'];\n return (\n <>\n \n setShowDialog(false)} />\n >\n );\n};\n\nPermissionsButton.defaultProps = {\n isContainer: false\n};\n\nexport default PermissionsButton;\n","import React from 'react';\nimport { Button, useTranslate } from 'react-admin';\nimport { Dialog, DialogTitle, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddPermissionsForm from './AddPermissionsForm';\nimport EditPermissionsForm from './EditPermissionsForm';\nimport useAgents from '../../hooks/useAgents';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingTop: 0,\n paddingBottom: 0,\n paddingRight: 0,\n maxHeight: 210\n }\n}));\n\nconst PermissionsDialog = ({ open, onClose, uri, isContainer }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const { agents, addPermission, removePermission } = useAgents(uri);\n\n return (\n \n );\n};\n\nexport default PermissionsDialog;\n","import React, { useEffect, useState } from 'react';\nimport { useGetList, useTranslate } from 'react-admin';\nimport { TextField, List, ListItem, ListItemAvatar, ListItemText, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport PersonIcon from '@mui/icons-material/Person';\nimport { USER_AGENT, ACL_READ } from '../../constants';\n\nconst useStyles = makeStyles(() => ({\n list: {\n padding: 0,\n width: '100%'\n },\n option: {\n padding: 0\n }\n}));\n\nconst AddPermissionsForm = ({ agents, addPermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const [value, setValue] = useState(null);\n const [inputValue, setInputValue] = useState('');\n const [options, setOptions] = useState([]);\n\n const { data } = useGetList(\n 'Person',\n {\n pagination: { page: 1, perPage: 100 },\n sort: { field: 'pair:label', order: 'ASC' },\n filter: { q: inputValue }\n },\n {\n enabled: inputValue.length > 0\n }\n );\n\n useEffect(() => {\n setOptions(data?.length > 0 ? Object.values(data) : []);\n }, [data]);\n\n return (\n option['pair:label']}\n // Do not return agents which have already been added\n filterOptions={x => x.filter(agent => !Object.keys(agents).includes(agent.id))}\n options={options}\n noOptionsText={translate('ra.navigation.no_results')}\n autoComplete\n blurOnSelect\n clearOnBlur\n disableClearable\n value={value}\n onChange={(event, record) => {\n addPermission(record.id || record['@id'], USER_AGENT, ACL_READ);\n setValue(null);\n setInputValue('');\n setOptions([]);\n }}\n onInputChange={(event, newInputValue) => {\n setInputValue(newInputValue);\n }}\n renderInput={params => (\n \n )}\n renderOption={(props, option) => (\n \n \n \n \n \n \n \n \n \n
\n )}\n />\n );\n};\n\nexport default AddPermissionsForm;\n","import React from 'react';\nimport { List } from '@mui/material';\nimport { styled } from '@mui/system';\nimport AgentItem from './AgentItem';\n\nconst StyledList = styled(List)(({ theme }) => ({\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper\n}));\n\nconst EditPermissionsForm = ({ isContainer, agents, addPermission, removePermission }) => {\n return (\n \n {Object.entries(agents).map(([agentId, agent]) => (\n \n ))}\n \n );\n};\n\nexport default EditPermissionsForm;\n","import React, { useState, useEffect } from 'react';\nimport { useDataProvider, useTranslate, Loading, Error } from 'react-admin';\nimport {\n Avatar,\n ListItem,\n ListItemIcon,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n IconButton,\n Menu,\n MenuItem\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport EditIcon from '@mui/icons-material/Edit';\nimport CheckIcon from '@mui/icons-material/Check';\nimport { GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, resourceRightsLabels, containerRightsLabels } from '../../constants';\nimport AgentIcon from './AgentIcon';\n\nconst useStyles = makeStyles(() => ({\n listItem: {\n paddingLeft: 4,\n paddingRight: 36\n },\n primaryText: {\n width: '30%',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n secondaryText: {\n textAlign: 'center',\n width: '60%',\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst AgentItem = ({ isContainer, agent, addPermission, removePermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [user, setUser] = useState();\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState();\n\n useEffect(() => {\n if (agent.predicate === USER_AGENT) {\n dataProvider\n .getOne('Person', { id: agent.id })\n .then(({ data }) => {\n setUser(data);\n setLoading(false);\n })\n .catch(error => {\n setError(error);\n setLoading(false);\n });\n } else {\n setLoading(false);\n }\n }, [agent.id, agent.predicate]);\n\n // For now, do not display groups\n if (agent.predicate === GROUP_AGENT) return null;\n\n const openMenu = event => setAnchorEl(event.currentTarget);\n const closeMenu = () => setAnchorEl(null);\n\n const labels = isContainer ? containerRightsLabels : resourceRightsLabels;\n\n if (loading) return ;\n if (error) return ;\n\n return (\n \n \n \n \n \n \n \n translate(labels[p])).join(', ')}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default AgentItem;\n","import React from 'react';\nimport PublicIcon from '@mui/icons-material/Public';\nimport VpnLockIcon from '@mui/icons-material/VpnLock';\nimport PersonIcon from '@mui/icons-material/Person';\nimport GroupIcon from '@mui/icons-material/Group';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT } from '../../constants';\n\nconst AgentIcon = ({ agent }) => {\n switch (agent.predicate) {\n case CLASS_AGENT:\n return agent.id === ANONYMOUS_AGENT ? : ;\n case USER_AGENT:\n return ;\n case GROUP_AGENT:\n return ;\n default:\n throw new Error(`Unknown agent predicate: ${agent.predicate}`);\n }\n};\n\nexport default AgentIcon;\n","import { useEffect, useCallback, useState } from 'react';\nimport { usePermissions, useAuthProvider } from 'react-admin';\nimport { defaultToArray } from '../utils';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, AUTHENTICATED_AGENT } from '../constants';\n\nconst useAgents = uri => {\n const { permissions } = usePermissions(uri);\n const authProvider = useAuthProvider();\n const [agents, setAgents] = useState({});\n\n // Format list of authorized agents, based on the permissions returned for the resource\n useEffect(() => {\n const result = {\n [ANONYMOUS_AGENT]: {\n id: ANONYMOUS_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n },\n [AUTHENTICATED_AGENT]: {\n id: AUTHENTICATED_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n }\n };\n\n const appendPermission = (agentId, predicate, mode) => {\n if (result[agentId]) {\n result[agentId].permissions.push(mode);\n } else {\n result[agentId] = {\n id: agentId,\n predicate,\n permissions: [mode]\n };\n }\n };\n\n if (permissions) {\n for (const p of permissions) {\n if (p[CLASS_AGENT]) {\n defaultToArray(p[CLASS_AGENT]).forEach(agentId => appendPermission(agentId, CLASS_AGENT, p['acl:mode']));\n }\n if (p[USER_AGENT]) {\n defaultToArray(p[USER_AGENT]).forEach(userUri => appendPermission(userUri, USER_AGENT, p['acl:mode']));\n }\n if (p[GROUP_AGENT]) {\n defaultToArray(p[GROUP_AGENT]).forEach(groupUri => appendPermission(groupUri, GROUP_AGENT, p['acl:mode']));\n }\n }\n setAgents(result);\n }\n }, [permissions]);\n\n const addPermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents({\n ...agents,\n [agentId]: {\n id: agentId,\n predicate,\n permissions: agents[agentId] ? [...agents[agentId]?.permissions, mode] : [mode]\n }\n });\n authProvider.addPermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n const removePermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents(\n Object.fromEntries(\n Object.entries(agents)\n .map(([key, agent]) => {\n if (agent.id === agentId) {\n agent.permissions = agent.permissions.filter(m => m !== mode);\n }\n return [key, agent];\n })\n // Remove agents if they have no permissions (except if they are class agents)\n .filter(([_, agent]) => agent.predicate === CLASS_AGENT || agent.permissions.length > 0)\n )\n );\n authProvider.removePermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n return { agents, addPermission, removePermission };\n};\n\nexport default useAgents;\n","import React from 'react';\nimport { SaveButton, Toolbar } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\nimport DeleteButtonWithPermissions from './DeleteButtonWithPermissions';\n\nconst useStyles = makeStyles(() => ({\n toolbar: {\n flex: 1,\n display: 'flex',\n justifyContent: 'space-between'\n }\n}));\n\nconst EditToolbarWithPermissions = props => {\n const classes = useStyles();\n return (\n \n \n \n \n );\n};\n\nexport default EditToolbarWithPermissions;\n","import React from 'react';\nimport { DeleteButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToDelete } from '../../constants';\n\nconst DeleteButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToDelete.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default DeleteButtonWithPermissions;\n","import React from 'react';\nimport { EditButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToEdit } from '../../constants';\n\nconst EditButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToEdit.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default EditButtonWithPermissions;\n","import React from 'react';\nimport { List } from 'react-admin';\nimport ListActionsWithPermissions from './ListActionsWithPermissions';\n\nconst ListWithPermissions = props =>
;\n\nListWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ListWithPermissions;\n","import React from 'react';\nimport {\n CreateButton,\n ExportButton,\n useResourceDefinition,\n TopToolbar,\n usePermissions,\n useResourceContext\n} from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToCreate, rightsToControl } from '../../constants';\n\n// Do not show Export and Refresh buttons on mobile\nconst ListActionsWithPermissions = ({\n bulkActions,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total\n}) => {\n const resource = useResourceContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('xs'));\n const resourceDefinition = useResourceDefinition();\n const createContainerUri = useCreateContainer(resource);\n const { permissions } = usePermissions(createContainerUri);\n return (\n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && permissions && permissions.some(p => rightsToCreate.includes(p['acl:mode'])) && (\n \n )}\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && (\n \n )}\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithPermissions;\n","import React from 'react';\nimport { Show, useGetRecordId } from 'react-admin';\nimport ShowActionsWithPermissions from './ShowActionsWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst ShowWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'show');\n return ;\n};\n\nShowWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ShowWithPermissions;\n","import React from 'react';\nimport {\n EditButton,\n ListButton,\n TopToolbar,\n usePermissions,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl, rightsToEdit } from '../../constants';\n\nconst ShowActionsWithPermissions = () => {\n const { hasList, hasEdit } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissions(record?.id);\n return (\n \n {hasList && }\n {hasEdit && permissions && permissions.some(p => rightsToEdit.includes(p['acl:mode'])) && }\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default ShowActionsWithPermissions;\n","import React from 'react';\nimport { useLogin, useTranslate } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle } from '@mui/material';\n\nconst AuthDialog = ({ open, onClose, title, message, redirect, ...rest }) => {\n const login = useLogin();\n const translate = useTranslate();\n return (\n \n );\n};\n\nAuthDialog.defaultProps = {\n title: 'auth.dialog.login_required',\n message: 'auth.message.login_to_continue'\n};\n\nexport default AuthDialog;\n","import React, { useRef, useEffect } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\nimport { useDataProvider, useAuthProvider, useLogin, useGetIdentity, useNotify } from 'react-admin';\nimport { Card, Avatar, Typography, Button, CardActions } from '@mui/material';\nimport { styled } from '@mui/material/styles';\nimport LockIcon from '@mui/icons-material/Lock';\n\nconst delay = async t => new Promise(resolve => setTimeout(resolve, t));\n\n// Inspired from https://github.com/marmelab/react-admin/blob/master/packages/ra-ui-materialui/src/auth/Login.tsx\nconst SsoLoginPage = ({ children, backgroundImage, buttons, userResource, propertiesExist, text, ...rest }) => {\n const containerRef = useRef();\n let backgroundImageLoaded = false;\n const navigate = useNavigate();\n const [searchParams] = useSearchParams();\n const { identity, isLoading } = useGetIdentity();\n\n const notify = useNotify();\n const login = useLogin();\n const dataProvider = useDataProvider();\n const authProvider = useAuthProvider();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n // Already authenticated, redirect to the home page\n navigate(searchParams.get('redirect') || '/');\n }\n }, [identity, isLoading, navigate, searchParams]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('login')) {\n if (searchParams.has('error')) {\n if (searchParams.get('error') === 'registration.not-allowed') {\n notify('auth.message.user_email_not_found', { type: 'error' });\n } else {\n notify('auth.message.bad_request', { type: 'error', error: searchParams.get('error') });\n }\n } else if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n\n localStorage.setItem('token', token);\n\n let userData;\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n\n if (propertiesExist.length > 0) {\n let allPropertiesExist = propertiesExist.every(p => userData[p]);\n while (!allPropertiesExist) {\n console.log('Waiting for all properties to have been created', propertiesExist);\n await delay(500);\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n allPropertiesExist = propertiesExist.every(p => userData[p]);\n }\n }\n\n if (!authProvider.checkUser(userData)) {\n localStorage.removeItem('token');\n notify('auth.message.user_not_allowed_to_login', { type: 'error' });\n navigate.replace('/login');\n } else if (searchParams.has('redirect')) {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = searchParams.get('redirect');\n } else if (searchParams.has('new') && searchParams.get('new') === 'true') {\n notify('auth.message.new_user_created', { type: 'info' });\n window.location.href = `/${userResource}/${encodeURIComponent(webId)}`;\n } else {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = '/';\n }\n }\n }\n\n if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', { type: 'info' });\n navigate('/');\n }\n })();\n }, [searchParams, navigate, notify, userResource]);\n\n const updateBackgroundImage = () => {\n if (!backgroundImageLoaded && containerRef.current) {\n containerRef.current.style.backgroundImage = `url(${backgroundImage})`;\n backgroundImageLoaded = true;\n }\n };\n\n // Load background image asynchronously to speed up time to interactive\n const lazyLoadBackgroundImage = () => {\n if (backgroundImage) {\n const img = new Image();\n img.onload = updateBackgroundImage;\n img.src = backgroundImage;\n }\n };\n\n useEffect(() => {\n if (!backgroundImageLoaded) {\n lazyLoadBackgroundImage();\n }\n });\n\n if (isLoading) return null;\n\n return (\n \n \n \n {text && {text}}\n {buttons?.map((button, i) => (\n \n {React.cloneElement(button, {\n fullWidth: true,\n variant: 'outlined',\n type: 'submit',\n onClick: () => login({}, '/login')\n })}\n \n ))}\n \n \n );\n};\n\nconst PREFIX = 'SsoLoginPage';\n\nexport const SsoLoginPageClasses = {\n card: `${PREFIX}-card`,\n avatar: `${PREFIX}-avatar`,\n icon: `${PREFIX}-icon`,\n switch: `${PREFIX}-switch`\n};\n\nconst Root = styled('div', {\n name: PREFIX,\n overridesResolver: (props, styles) => styles.root\n})(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n minHeight: '100vh',\n height: '1px',\n alignItems: 'center',\n justifyContent: 'flex-start',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n backgroundImage: 'radial-gradient(circle at 50% 14em, #313264 0%, #00023b 60%, #00023b 100%)',\n [`& .${SsoLoginPageClasses.card}`]: {\n minWidth: 300,\n marginTop: '6em'\n },\n [`& .${SsoLoginPageClasses.avatar}`]: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n [`& .${SsoLoginPageClasses.icon}`]: {\n backgroundColor: theme.palette.secondary[500]\n },\n [`& .${SsoLoginPageClasses.switch}`]: {\n marginBottom: '1em',\n display: 'flex',\n justifyContent: 'center'\n }\n}));\n\nSsoLoginPage.defaultProps = {\n propertiesExist: [],\n // TODO deprecate this\n buttons: [}>Les Communs],\n userResource: 'Person'\n};\n\nexport default SsoLoginPage;\n","import React, { useMemo } from 'react';\nimport { Notification } from 'react-admin';\nimport { ThemeProvider } from '@mui/system';\nimport { createTheme } from '@mui/material/styles';\nimport { StyledEngineProvider } from '@mui/material';\nimport PodLoginPageView from './PodLoginPageView';\n\nconst PodLoginPage = props => {\n const muiTheme = useMemo(() => createTheme(props.theme), [props.theme]);\n return (\n \n \n \n \n \n \n );\n};\n\nexport default PodLoginPage;\n","import React, { useEffect, useState } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNotify, useAuthProvider, useDataProvider, useLocale, useTranslate } from 'react-admin';\nimport { Box, List, ListItem, ListItemText, ListItemAvatar, Avatar, Divider, Card, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LockIcon from '@mui/icons-material/Lock';\nimport StorageIcon from '@mui/icons-material/Storage';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.primary.main\n }\n },\n text: {\n textAlign: 'center',\n padding: '4px 8px 8px'\n },\n card: {\n minWidth: 300,\n maxWidth: 350,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n lockIconAvatar: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n lockIcon: {\n backgroundColor: theme.palette.grey['500']\n },\n list: {\n paddingTop: 0,\n paddingBottom: 0\n },\n listItem: {\n paddingTop: 5,\n paddingBottom: 5\n }\n}));\n\nconst PodLoginPageView = ({ history, location, text, customPodProviders }) => {\n const classes = useStyles();\n const notify = useNotify();\n const locale = useLocale();\n const translate = useTranslate();\n const authProvider = useAuthProvider();\n const dataProvider = useDataProvider();\n const [podProviders, setPodProviders] = useState(customPodProviders || []);\n const searchParams = new URLSearchParams(location.search);\n\n useEffect(() => {\n (async () => {\n if (podProviders.length === 0) {\n const results = await fetch('https://data.activitypods.org/pod-providers', {\n headers: {\n Accept: 'application/ld+json'\n }\n });\n if (results.ok) {\n const json = await results.json();\n // Filter POD providers by available locales\n const podProviders = json['ldp:contains'].filter(provider =>\n Array.isArray(provider['apods:locales'])\n ? provider['apods:locales'].includes(locale)\n : provider['apods:locales'] === locale\n );\n setPodProviders(podProviders);\n } else {\n notify('auth.message.pod_providers_not_loaded', 'error');\n }\n }\n })();\n }, [podProviders, setPodProviders, notify, locale]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n const response = await fetch(webId, {\n headers: {\n Accept: 'application/json'\n }\n });\n if (!response.ok) {\n notify('auth.message.unable_to_fetch_user_data', 'error');\n } else {\n const data = await response.json();\n if (!authProvider.checkUser(data)) {\n notify('auth.message.user_not_allowed_to_login', 'error');\n history.replace('/login');\n } else {\n localStorage.setItem('token', token);\n notify('auth.message.user_connected', 'info');\n // Reload to ensure the dataServers config is reset\n window.location.reload();\n window.location.href = '/?addUser=true';\n }\n }\n } else if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', 'info');\n history.push('/');\n }\n })();\n }, [searchParams, dataProvider]);\n\n if (searchParams.has('token') || searchParams.has('addUser') || searchParams.has('logout')) {\n return null;\n }\n\n return (\n \n \n \n \n \n {text || translate('auth.message.choose_pod_provider')}\n \n \n \n \n {podProviders.map((podProvider, i) => {\n const url = new URL(\n '/auth',\n (podProvider['apods:domainName'].includes(':') ? 'http://' : 'https://') +\n podProvider['apods:domainName']\n );\n if (searchParams.has('signup')) url.searchParams.set('signup', 'true');\n url.searchParams.set('redirect', window.location.href);\n return (\n \n \n (window.location.href = url.toString())}\n className={classes.listItem}\n >\n \n \n \n \n \n \n \n \n );\n })}\n
\n \n \n \n );\n};\n\nexport default PodLoginPageView;\n","import React, { useEffect, useMemo } from 'react';\nimport { Link, useNavigate, useSearchParams } from 'react-router-dom';\nimport { useTranslate, useGetIdentity } from 'react-admin';\nimport { Card, Typography } from '@mui/material';\nimport LockIcon from '@mui/icons-material/Lock';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SignupForm from './SignupForm';\nimport LoginForm from './LoginForm';\nimport NewPasswordForm from './NewPasswordForm';\nimport ResetPasswordForm from './ResetPasswordForm';\nimport SimpleBox from './SimpleBox';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(() => ({\n switch: {\n marginBottom: '1em',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center'\n }\n}));\n\n/**\n * @param {object} props Props\n * @param {boolean} props.hasSignup If to show signup form.\n * @param {boolean} props.allowUsername Indicates, if login is allowed with username (instead of email).\n * @param {string} props.postSignupRedirect Location to redirect to after signup.\n * @param {string} props.postLoginRedirect Location to redirect to after login.\n * @param {object} props.additionalSignupValues\n * @param {object} props.passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst LocalLoginPage = ({\n hasSignup,\n allowUsername,\n postSignupRedirect,\n postLoginRedirect,\n additionalSignupValues,\n passwordScorer = defaultScorer\n}) => {\n const classes = useStyles();\n const navigate = useNavigate();\n const translate = useTranslate();\n const [searchParams] = useSearchParams();\n const isSignup = hasSignup && searchParams.has('signup');\n const isResetPassword = searchParams.has('reset_password');\n const isNewPassword = searchParams.has('new_password');\n const isLogin = !isSignup && !isResetPassword && !isNewPassword;\n const redirectTo = searchParams.get('redirect');\n const { identity, isLoading } = useGetIdentity();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n if (postLoginRedirect) {\n navigate(`${postLoginRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`);\n } else if (redirectTo && redirectTo.startsWith('http')) {\n window.location.href = redirectTo;\n } else {\n navigate(redirectTo || '/');\n }\n }\n }, [identity, isLoading, navigate, redirectTo, postLoginRedirect]);\n\n const [title, text] = useMemo(() => {\n if (isSignup) {\n return ['auth.action.signup', 'auth.helper.signup'];\n }\n if (isLogin) {\n return ['auth.action.login', 'auth.helper.login'];\n }\n if (isResetPassword) {\n return ['auth.action.reset_password', 'auth.helper.reset_password'];\n }\n if (isNewPassword) {\n return ['auth.action.set_new_password', 'auth.helper.set_new_password'];\n }\n }, [isSignup, isLogin, isResetPassword, isNewPassword]);\n\n if (isLoading || identity?.id) return null;\n if (isLoading || identity?.id) return null;\n\n return (\n }>\n \n {isSignup && (\n \n )}\n {isResetPassword && }\n {isNewPassword && }\n {isLogin && }\n \n {isSignup && (\n
\n
{translate('auth.action.login')}\n \n )}\n {isLogin && (\n <>\n {hasSignup && (\n
\n \n {translate('auth.action.signup')}\n \n
\n )}\n
\n \n {translate('auth.action.reset_password')}\n \n
\n >\n )}\n
\n \n \n );\n};\n\nLocalLoginPage.defaultProps = {\n hasSignup: true,\n allowUsername: false,\n additionalSignupValues: {}\n};\n\nexport default LocalLoginPage;\n","import * as React from 'react';\nimport createSlug from 'speakingurl';\nimport {\n Form,\n useTranslate,\n useNotify,\n useSafeSetState,\n TextInput,\n required,\n email,\n useLocaleState\n} from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useSignup from '../../hooks/useSignup';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n * @param postSignupRedirect\n * @param additionalSignupValues\n * @param delayBeforeRedirect\n * @param {string} redirectTo\n * @param {object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst SignupForm = ({\n redirectTo,\n passwordScorer = defaultScorer,\n postSignupRedirect,\n additionalSignupValues,\n delayBeforeRedirect\n}) => {\n const [loading, setLoading] = useSafeSetState(false);\n const signup = useSignup();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const [locale] = useLocaleState();\n const [password, setPassword] = React.useState('');\n\n const submit = values => {\n setLoading(true);\n signup({\n ...values,\n ...additionalSignupValues\n })\n .then(webId => {\n if (delayBeforeRedirect) {\n setTimeout(() => {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }, delayBeforeRedirect);\n } else {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }\n notify('auth.message.new_user_created', { type: 'info' });\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nSignupForm.defaultValues = {\n redirectTo: '/',\n additionalSignupValues: {}\n};\n\nexport default SignupForm;\n","import { useCallback } from 'react';\nimport { useAuthProvider } from 'react-admin';\n\nconst useSignup = () => {\n const authProvider = useAuthProvider();\n\n return useCallback((params = {}) => authProvider.signup(params), [authProvider]);\n};\n\nexport default useSignup;\n","import { defaultScorer } from '../../passwordScorer';\n\nconst validatePasswordStrength = (scorer = defaultScorer) => value => {\n if (!scorer) return undefined;\n const strength = scorer.scoreFn(value);\n if (strength < scorer.minRequiredScore) {\n return 'auth.input.password_too_weak';\n }\n return undefined;\n};\n\nexport default validatePasswordStrength;\n","// Inspired by https://github.com/bartlomiejzuber/password-strength-score\n\n/**\n * @typedef PasswordStrengthOptions\n * @property {number} isVeryLongLength - Required characters for a very long password (default: 12)\n * @property {number} isLongLength - Required characters for a long password (default: 6)\n * @property {number} isVeryLongScore - Score for a very long password (default: 2.5)\n * @property {number} isLongScore - Score for a long password (default: 1.5)\n * @property {number} uppercaseScore - Score for a password with uppercase letters (default: 1)\n * @property {number} lowercaseScore - Score for a password with lowercase letters (default: 1)\n * @property {number} numbersScore - Score for a password with numbers (default: 1)\n * @property {number} nonAlphanumericsScore - Score for a password without non-alphanumeric characters (default: 1)\n */\n\n/** @type {PasswordStrengthOptions} */\nexport const defaultOptions = {\n isVeryLongLength: 14,\n isLongLength: 8,\n isLongScore: 2,\n isVeryLongScore: 4,\n uppercaseScore: 1,\n lowercaseScore: 1,\n numbersScore: 1,\n nonAlphanumericsScore: 1\n};\n\n/**\n *\n * @param {string} password Password text.\n * @param {PasswordStrengthOptions} options Password options.\n * @returns {number} The password strength score.\n */\nexport const passwordStrength = (password, options) => {\n if (!password) {\n return 0;\n }\n\n const mergedOptions = { ...defaultOptions, ...options };\n\n const longScore = (password.length >= mergedOptions.isLongLength && mergedOptions.isLongScore) || 0;\n const veryLongScore = (password.length >= mergedOptions.isVeryLongLength && mergedOptions.isVeryLongScore) || 0;\n const lowercaseScore = (/[a-z]/.test(password) && mergedOptions.lowercaseScore) || 0;\n const uppercaseScore = (/[A-Z]/.test(password) && mergedOptions.uppercaseScore) || 0;\n const numbersScore = (/\\d/.test(password) && mergedOptions.numbersScore) || 0;\n const nonalphasScore = (/\\W/.test(password) && mergedOptions.nonAlphanumericsScore) || 0;\n\n return uppercaseScore + lowercaseScore + numbersScore + nonalphasScore + longScore + veryLongScore;\n};\n\nexport const createPasswordScorer = (options = defaultOptions, minRequiredScore = 5) => {\n const mergedOptions = { ...defaultOptions, ...options };\n\n return {\n scoreFn: password => passwordStrength(password, mergedOptions),\n minRequiredScore,\n maxScore:\n mergedOptions.uppercaseScore +\n mergedOptions.lowercaseScore +\n mergedOptions.numbersScore +\n mergedOptions.nonAlphanumericsScore +\n mergedOptions.isLongScore +\n mergedOptions.isVeryLongScore\n };\n};\n\nexport const defaultScorer = createPasswordScorer(defaultOptions, 5);\n","import React from 'react';\nimport ColorGradientProgressBar from './ColorGradientProgressBar';\nimport { defaultScorer } from '../../passwordScorer';\n\nexport default function PasswordStrengthIndicator({ scorer = defaultScorer, password, ...restProps }) {\n const strength = scorer.scoreFn(password);\n return ;\n}\n","import React from 'react';\nimport { LinearProgress } from '@mui/material';\nimport { withStyles } from '@mui/styles';\n\n/**\n * @typedef {Object} Color\n * @property {number} red\n * @property {number} green\n * @property {number} blue\n */\n\n/** Calculate a rgb-color from a gradient between `color1` and `color2`\n * @param {number} fade - Indicates the fade between `color1` and `color2` in the range [0, 1].\n * @param {Color} color1\n * @param {Color} color2\n * @returns {string} `` `rgb(${red}, ${green}, ${blue})` ``\n */\nconst colorGradient = (fade, color1, color2) => {\n var diffRed = color2.red - color1.red;\n var diffGreen = color2.green - color1.green;\n var diffBlue = color2.blue - color1.blue;\n\n var gradient = {\n red: Math.floor(color1.red + diffRed * fade),\n green: Math.floor(color1.green + diffGreen * fade),\n blue: Math.floor(color1.blue + diffBlue * fade)\n };\n\n return 'rgb(' + gradient.red + ',' + gradient.green + ',' + gradient.blue + ')';\n};\n\n/** A progress bar that changes its color between its min an max value.\n * @param {Object} props\n * @param {Color} [props.badColor = { red: 0xff, green: 0x40, blue: 0x47 }] - default: `#FF4047`\n * @param {Color} [props.goodColor = { red: 0x00, green: 0xff, blue: 0x6e }] - default: `#00FF6E`\n * @param {number} props.maxVal\n * @param {number} props.minVal\n * @param {number} props.currentVal\n */\nexport default function ColorGradientProgressBar(props) {\n const { minVal, maxVal, currentVal, badColor, goodColor, ...restProps } = props;\n\n const color1 = badColor || { red: 0xff, green: 0x40, blue: 0x47 };\n const color2 = goodColor || { red: 0x00, green: 0xff, blue: 0x6e };\n\n const fade = Math.max(0, Math.min(1, (currentVal - minVal) / (maxVal - minVal)));\n const currentColor = colorGradient(fade, color1, color2);\n\n const StyledLinearProgress = withStyles({\n colorPrimary: {\n backgroundColor: '#e0e0e0'\n },\n barColorPrimary: {\n backgroundColor: currentColor\n }\n })(LinearProgress);\n\n return ;\n}\n","import * as React from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, TextInput, required, email, useLogin } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst LoginForm = ({ redirectTo, allowUsername }) => {\n const [loading, setLoading] = useSafeSetState(false);\n const login = useLogin();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n\n const submit = values => {\n setLoading(true);\n login(values, redirectTo)\n .then(() => {\n setLoading(false);\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nLoginForm.defaultValues = {\n redirectTo: '/',\n allowUsername: false\n};\n\nexport default LoginForm;\n","import React, { useState } from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, useAuthProvider, TextInput, required } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n *\n * @param {string} redirectTo\n * @param {Object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst NewPasswordForm = ({ redirectTo, passwordScorer = defaultScorer }) => {\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const token = searchParams.get('token');\n\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const [newPassword, setNewPassword] = useState('');\n\n const submit = values => {\n setLoading(true);\n authProvider\n .setNewPassword({ ...values, token })\n .then(res => {\n setTimeout(() => {\n window.location.href = `/login${redirectTo ? `?redirect=${encodeURIComponent(redirectTo)}` : ''}`;\n setLoading(false);\n }, 2000);\n notify('auth.notification.password_changed', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default NewPasswordForm;\n","import React from 'react';\nimport { Form, TextInput, required, useTranslate, useNotify, useSafeSetState, useAuthProvider } from 'react-admin';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst ResetPasswordForm = () => {\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const submit = values => {\n setLoading(true);\n authProvider\n .resetPassword({ ...values })\n .then(res => {\n setLoading(false);\n notify('auth.notification.reset_password_submitted', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default ResetPasswordForm;\n","import React from 'react';\nimport { Box, Card, Typography } from '@mui/material';\nimport { Notification } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.secondary.main\n }\n },\n root: {\n backgroundColor: theme.palette.secondary.main\n },\n card: {\n minWidth: 300,\n maxWidth: 500,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n icon: {\n marginTop: 5,\n marginRight: 5\n },\n title: {\n [theme.breakpoints.down('sm')]: {\n fontWeight: 'bold',\n marginTop: 12\n }\n }\n}));\n\nconst SimpleBox = ({ title, icon, text, children }) => {\n const classes = useStyles();\n return (\n \n \n \n {icon && React.cloneElement(icon, { fontSize: 'large', className: classes.icon })}\n \n {title}\n \n \n \n {text}\n \n {children}\n \n \n \n );\n};\n\nexport default SimpleBox;\n","import React from 'react';\nimport { Resource, usePermissions } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport { rightsToCreate } from '../constants';\n\n// Not used for now. The ListWithPermissions component will handle the conditional display of the Create button.\nconst ResourceWithPermission = ({ name, create, ...rest }) => {\n const createContainer = useCreateContainer(name);\n const { permissions } = usePermissions(createContainer);\n return (\n rightsToCreate.includes(p['acl:mode'])) ? create : undefined}\n // Requesting permissions to list container is too long, we will avoid that for now\n // list={permissions && permissions.some(p => rightsToList.includes(p['acl:mode'])) ? list : undefined}\n />\n );\n};\n\nexport default ResourceWithPermission;\n","import React, { forwardRef, useCallback } from 'react';\nimport { Logout, UserMenu as RaUserMenu, useGetIdentity, useTranslate, useUserMenu } from 'react-admin';\nimport { MenuItem, ListItemIcon, ListItemText } from '@mui/material';\nimport AccountCircleIcon from '@mui/icons-material/AccountCircle';\nimport EditIcon from '@mui/icons-material/Edit';\nimport { useNavigate } from 'react-router-dom';\n\n// It's important to pass the ref to allow Material UI to manage the keyboard navigation\nconst UserMenuItem = forwardRef(({ label, icon, to, ...rest }, ref) => {\n const { onClose } = useUserMenu();\n const translate = useTranslate();\n const navigate = useNavigate();\n const onClick = useCallback(() => {\n navigate(to);\n onClose();\n }, [to, onClose, navigate]);\n return (\n \n );\n});\n\nconst UserMenu = ({ logout, profileResource, ...otherProps }) => {\n const { identity } = useGetIdentity();\n return (\n \n {identity && identity.id !== ''\n ? [\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}/show`}\n />,\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}`}\n />,\n React.cloneElement(logout, { key: 'logout' })\n ]\n : [\n ,\n \n ]}\n \n );\n};\n\nUserMenu.defaultProps = {\n logout: ,\n profileResource: 'Person'\n};\n\nexport default UserMenu;\n","import React, { useEffect } from 'react';\nimport { useGetIdentity, useNotify, useRedirect } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\n\nconst useCheckAuthenticated = message => {\n const { identity, isLoading } = useGetIdentity();\n const notify = useNotify();\n const redirect = useRedirect();\n const location = useLocation();\n\n useEffect(() => {\n if (!isLoading && !identity?.id) {\n notify(message || 'ra.auth.auth_check_error', { type: 'error' });\n redirect(`/login?redirect=${encodeURIComponent(location.pathname + location.search)}`);\n }\n }, [isLoading, identity, redirect, notify, location]);\n\n return { identity, isLoading };\n};\n\nexport default useCheckAuthenticated;\n","import { useEffect, useCallback } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport { useGetPermissions, useSafeSetState } from 'react-admin';\n\nconst emptyParams = {};\n\n// keep a cache of already fetched permissions to initialize state for new\n// components and avoid a useless rerender if the permissions haven't changed\nconst alreadyFetchedPermissions = { '{}': undefined };\n\n// Fork of usePermissionsOptimized, with a refetch option\nconst usePermissionsWithRefetch = (params = emptyParams) => {\n const key = JSON.stringify(params);\n const [state, setState] = useSafeSetState({\n permissions: alreadyFetchedPermissions[key]\n });\n const getPermissions = useGetPermissions();\n\n const fetchPermissions = useCallback(\n () =>\n getPermissions(params)\n .then(permissions => {\n if (!isEqual(permissions, state.permissions)) {\n alreadyFetchedPermissions[key] = permissions;\n setState({ permissions });\n }\n })\n .catch(error => {\n setState({\n error\n });\n }),\n [key, params, getPermissions]\n );\n\n useEffect(() => {\n fetchPermissions();\n }, [key]);\n\n return { ...state, refetch: fetchPermissions };\n};\n\nexport default usePermissionsWithRefetch;\n","const englishMessages = {\n auth: {\n dialog: {\n container_permissions: 'Container permissions',\n resource_permissions: 'Resource permissions',\n login_required: 'Login required'\n },\n action: {\n permissions: 'Permissions',\n signup: 'Signup',\n reset_password: 'Reset password',\n set_new_password: 'Set new password',\n logout: 'Logout',\n login: 'Login',\n view_my_profile: 'View my profile',\n edit_my_profile: 'Edit my profile'\n },\n right: {\n resource: {\n read: 'Read',\n append: 'Append',\n write: 'Write',\n control: 'Control'\n },\n container: {\n read: 'List',\n append: 'Add',\n write: 'Add',\n control: 'Control'\n }\n },\n agent: {\n anonymous: 'All users',\n authenticated: 'Connected users'\n },\n input: {\n agent_select: 'Add an user...',\n name: 'Surname',\n username: 'User ID',\n email: 'Email address',\n username_or_email: 'User ID or email address',\n current_password: 'Current password',\n new_password: 'New password',\n confirm_new_password: 'Confirm new password',\n password_strength: 'Password strength',\n password_too_weak: 'Password too weak. Increase length or add special characters.'\n },\n helper: {\n login: 'Sign in to your account',\n signup: 'Create your account',\n reset_password: 'Enter your email address below and we will send you a link to reset your password',\n set_new_password: 'Please enter your email address and a new password below'\n },\n message: {\n resource_show_forbidden: 'You are not allowed to view this resource',\n resource_edit_forbidden: 'You are not allowed to edit this resource',\n resource_delete_forbidden: 'You are not allowed to delete this resource',\n resource_control_forbidden: 'You are not allowed to control this resource',\n container_create_forbidden: 'You are not allowed to create new resource',\n container_list_forbidden: 'You are not allowed to list these resources',\n user_not_allowed_to_login: 'You are not allowed to login with this account',\n user_email_not_found: 'No account found with this email address',\n user_email_exist: 'An account already exist with this email address',\n username_exist: 'An account already exist with this user ID',\n username_invalid: 'This username is invalid. Only lowercase characters, numbers, dots and hyphens are authorized',\n new_user_created: 'Your account has been successfully created',\n user_connected: 'You are now connected',\n user_disconnected: 'You are now disconnected',\n bad_request: 'Bad request (Error message returned by the server: %{error})',\n account_settings_updated: 'Your account settings have been successfully updated',\n login_to_continue: 'Please login to continue',\n choose_pod_provider:\n 'Please choose a POD provider in the list below. All application data will be saved on your POD.'\n },\n notification: {\n reset_password_submitted: 'An email has been sent with reset password instructions',\n reset_password_error: 'An error occurred',\n password_changed: 'Password changed successfully',\n new_password_error: 'An error occurred',\n invalid_password: 'Invalid password',\n get_settings_error: 'An error occurred',\n update_settings_error: 'An error occurred'\n }\n }\n};\n\nexport default englishMessages;\n","const frenchMessages = {\n auth: {\n dialog: {\n container_permissions: 'Permissions sur le container',\n resource_permissions: 'Permissions sur la ressource',\n login_required: 'Connexion requise'\n },\n action: {\n permissions: 'Permissions',\n signup: \"S'inscrire\",\n reset_password: 'Mot de passe oublié ?',\n set_new_password: 'Définir le mot de passe',\n logout: 'Se déconnecter',\n login: 'Se connecter',\n view_my_profile: 'Voir mon profil',\n edit_my_profile: 'Éditer mon profil'\n },\n right: {\n resource: {\n read: 'Lire',\n append: 'Enrichir',\n write: 'Modifier',\n control: 'Administrer'\n },\n container: {\n read: 'Lister',\n append: 'Ajouter',\n write: 'Ajouter',\n control: 'Administrer'\n }\n },\n agent: {\n anonymous: 'Tous les utilisateurs',\n authenticated: 'Utilisateurs connectés'\n },\n input: {\n agent_select: 'Ajouter un utilisateur...',\n name: 'Prénom',\n username: 'Identifiant unique',\n email: 'Adresse e-mail',\n username_or_email: 'Identifiant ou adresse e-mail',\n current_password: 'Mot de passe actuel',\n new_password: 'Nouveau mot de passe',\n confirm_new_password: 'Confirmer le nouveau mot de passe',\n password_strength: 'Force du mot de passe',\n password_too_weak: 'Mot de passe trop faible. Augmenter la longueur ou ajouter des caractères spéciaux.'\n },\n helper: {\n login: 'Connectez-vous à votre compte.',\n signup: 'Créez votre compte',\n reset_password:\n 'Entrez votre adresse mail ci-dessous et nous vous enverrons un lien pour réinitialiser votre mot de passe',\n set_new_password: 'Veuillez entrer votre adresse mail et un nouveau mot de passe ci-dessous'\n },\n message: {\n resource_show_forbidden: \"Vous n'avez pas la permission de voir cette ressource\",\n resource_edit_forbidden: \"Vous n'avez pas la permission d'éditer cette ressource\",\n resource_delete_forbidden: \"Vous n'avez pas la permission d'effacer cette ressource\",\n resource_control_forbidden: \"Vous n'avez pas la permission d'administrer cette ressource\",\n container_create_forbidden: \"Vous n'avez pas la permission de créer des ressources\",\n container_list_forbidden: \"Vous n'avez pas la permission de voir ces ressources\",\n user_not_allowed_to_login: \"Vous n'avez pas le droit de vous connecter avec ce compte\",\n user_email_not_found: 'Aucun compte trouvé avec cette adresse mail',\n user_email_exist: 'Un compte existe déjà avec cette adresse mail',\n username_exist: 'Un compte existe déjà avec cet identifiant',\n username_invalid:\n \"Cet identifiant n'est pas valide. Seuls les lettres minuscules, les chiffres, les points et les tirets sont autorisés\",\n new_user_created: 'Votre compte a été créé avec succès',\n user_connected: 'Vous êtes maintenant connecté',\n user_disconnected: 'Vous êtes maintenant déconnecté',\n bad_request: \"Requête erronée (Message d'erreur renvoyé par le serveur: %{error})\",\n account_settings_updated: 'Les paramètres de votre compte ont été mis à jour avec succès',\n login_to_continue: 'Veuillez vous connecter pour continuer',\n choose_pod_provider:\n \"Veuillez choisir un fournisseur de PODs dans la liste ci-dessous. Toutes les données de l'application seront enregistrées sur votre POD.\"\n },\n notification: {\n reset_password_submitted: 'Un e-mail a été envoyé avec les instructions de réinitialisation du mot de passe',\n reset_password_error: \"Une erreur s'est produite\",\n password_changed: 'Le mot de passe a été changé avec succès',\n new_password_error: \"Une erreur s'est produite\",\n invalid_password: 'Mot de passe incorrect',\n get_settings_error: \"Une erreur s'est produite\",\n update_settings_error: \"Une erreur s'est produite\"\n }\n }\n};\n\nexport default frenchMessages;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/auth-provider/dist/index.es.js.map b/src/frontend/packages/auth-provider/dist/index.es.js.map
index fb946699b..85a9a26c9 100644
--- a/src/frontend/packages/auth-provider/dist/index.es.js.map
+++ b/src/frontend/packages/auth-provider/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/auth-provider/src/index.js","packages/auth-provider/src/authProvider.js","packages/auth-provider/src/utils.js","packages/auth-provider/src/crud/create/CreateWithPermissions.js","packages/auth-provider/src/hooks/useCheckPermissions.js","packages/auth-provider/src/constants.js","packages/auth-provider/src/crud/edit/EditWithPermissions.js","packages/auth-provider/src/crud/edit/EditActionsWithPermissions.js","packages/auth-provider/src/components/PermissionsButton/PermissionsButton.js","packages/auth-provider/src/components/PermissionsButton/PermissionsDialog.js","packages/auth-provider/src/components/PermissionsButton/AddPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/EditPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/AgentItem.js","packages/auth-provider/src/components/PermissionsButton/AgentIcon.js","packages/auth-provider/src/hooks/useAgents.js","packages/auth-provider/src/crud/edit/EditToolbarWithPermissions.js","packages/auth-provider/src/crud/edit/DeleteButtonWithPermissions.js","packages/auth-provider/src/crud/edit/EditButtonWithPermissions.js","packages/auth-provider/src/crud/list/ListWithPermissions.js","packages/auth-provider/src/crud/list/ListActionsWithPermissions.js","packages/auth-provider/src/crud/show/ShowWithPermissions.js","packages/auth-provider/src/crud/show/ShowActionsWithPermissions.js","packages/auth-provider/src/components/AuthDialog.js","packages/auth-provider/src/components/SsoLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPageView.js","packages/auth-provider/src/components/LocalLoginPage/LocalLoginPage.js","packages/auth-provider/src/components/LocalLoginPage/SignupForm.js","packages/auth-provider/src/hooks/useSignup.js","packages/auth-provider/src/components/LocalLoginPage/validatePasswordStrength.js","packages/auth-provider/src/passwordScorer.js","packages/auth-provider/src/components/LocalLoginPage/PasswordStrengthIndicator.js","packages/auth-provider/src/components/LocalLoginPage/ColorGradientProgressBar.js","packages/auth-provider/src/components/LocalLoginPage/LoginForm.js","packages/auth-provider/src/components/LocalLoginPage/NewPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/ResetPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/SimpleBox.js","packages/auth-provider/src/components/ResourceWithPermissions.js","packages/auth-provider/src/components/UserMenu.js","packages/auth-provider/src/hooks/useCheckAuthenticated.js","packages/auth-provider/src/hooks/usePermissionsWithRefetch.js","packages/auth-provider/src/messages/english.js","packages/auth-provider/src/messages/french.js"],"sourcesContent":["export { default as authProvider } from './authProvider';\n\n// Create\nexport { default as CreateWithPermissions } from './crud/create/CreateWithPermissions';\n\n// Edit\nexport { default as EditWithPermissions } from './crud/edit/EditWithPermissions';\nexport { default as EditActionsWithPermissions } from './crud/edit/EditActionsWithPermissions';\nexport { default as EditToolbarWithPermissions } from './crud/edit/EditToolbarWithPermissions';\nexport { default as EditButtonWithPermissions } from './crud/edit/EditButtonWithPermissions';\nexport { default as DeleteButtonWithPermissions } from './crud/edit/DeleteButtonWithPermissions';\n\n// List\nexport { default as ListWithPermissions } from './crud/list/ListWithPermissions';\nexport { default as ListActionsWithPermissions } from './crud/list/ListActionsWithPermissions';\n\n// Show\nexport { default as ShowWithPermissions } from './crud/show/ShowWithPermissions';\nexport { default as ShowActionsWithPermissions } from './crud/show/ShowActionsWithPermissions';\n\nexport { default as PermissionsButton } from './components/PermissionsButton/PermissionsButton';\nexport { default as AuthDialog } from './components/AuthDialog';\nexport { default as SsoLoginPage, default as LoginPage } from './components/SsoLoginPage';\nexport { default as PodLoginPage } from './components/PodLoginPage/PodLoginPage';\nexport { default as LocalLoginPage } from './components/LocalLoginPage/LocalLoginPage';\nexport { default as ResourceWithPermissions } from './components/ResourceWithPermissions';\nexport { default as UserMenu } from './components/UserMenu';\n\nexport { default as useAgents } from './hooks/useAgents';\nexport { default as useCheckAuthenticated } from './hooks/useCheckAuthenticated';\nexport { default as useCheckPermissions } from './hooks/useCheckPermissions';\nexport { default as usePermissionsWithRefetch } from './hooks/usePermissionsWithRefetch';\nexport { default as useSignup } from './hooks/useSignup';\n\n// Password scoring\nexport { default as PasswordStrengthIndicator } from './components/LocalLoginPage/PasswordStrengthIndicator';\nexport { default as validatePasswordStrength } from './components/LocalLoginPage/validatePasswordStrength';\nexport {\n defaultScorer as defaultPasswordScorer,\n defaultOptions as defaultPasswordScorerOptions,\n createPasswordScorer\n} from './passwordScorer';\n\nexport { default as englishMessages } from './messages/english';\nexport { default as frenchMessages } from './messages/french';\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport { defaultToArray, getAclUri, getAclContext, getAuthServerUrl } from './utils';\n\nconst AUTH_TYPE_SSO = 'sso';\nconst AUTH_TYPE_LOCAL = 'local';\nconst AUTH_TYPE_POD = 'pod';\n\nconst authProvider = ({ dataProvider, authType, allowAnonymous = true, checkUser, checkPermissions = false }) => {\n if (![AUTH_TYPE_SSO, AUTH_TYPE_LOCAL, AUTH_TYPE_POD].includes(authType))\n throw new Error('The authType parameter is missing from the auth provider');\n return {\n login: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, password } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/login'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n password: password.trim()\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n } catch (e) {\n throw new Error('ra.auth.sign_in_error');\n }\n } else {\n let redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n if (params.redirect) redirectUrl += `&redirect=${encodeURIComponent(params.redirect)}`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n signup: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, email, password, domain, ...profileData } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/signup'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n email: email.trim(),\n password: password.trim(),\n ...profileData\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n const { webId } = jwtDecode(token);\n return webId;\n } catch (e) {\n if (e.message === 'email.already.exists') {\n throw new Error('auth.message.user_email_exist');\n } else if (e.message === 'username.already.exists') {\n throw new Error('auth.message.username_exist');\n } else if (e.message === 'username.invalid') {\n throw new Error('auth.message.username_invalid');\n } else {\n throw new Error(e.message || 'ra.auth.sign_in_error');\n }\n }\n } else {\n const redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n logout: async () => {\n switch (authType) {\n case AUTH_TYPE_LOCAL:\n // Delete token but also any other value in local storage\n localStorage.clear();\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = '/';\n break;\n\n case AUTH_TYPE_SSO:\n const authServerUrl = await getAuthServerUrl(dataProvider);\n const baseUrl = new URL(window.location.href).origin;\n window.location.href = urlJoin(\n authServerUrl,\n `auth/logout?redirectUrl=${encodeURIComponent(`${urlJoin(baseUrl, 'login')}?logout=true`)}`\n );\n break;\n\n case AUTH_TYPE_POD:\n const token = localStorage.getItem('token');\n const { webId } = jwtDecode(token);\n // Delete token but also any other value in local storage\n localStorage.clear();\n window.location.href =\n urlJoin(webId, 'openApp') +\n '?type=' +\n encodeURIComponent('http://activitypods.org/ns/core#FrontAppRegistration');\n break;\n }\n\n // Avoid displaying immediately the login page\n return '/';\n },\n checkAuth: async () => {\n const token = localStorage.getItem('token');\n if (!token && !allowAnonymous) throw new Error();\n },\n checkUser: userData => {\n if (checkUser) {\n return checkUser(userData);\n }\n return true;\n },\n checkError: error => Promise.resolve(),\n getPermissions: async uri => {\n if (!checkPermissions) return;\n\n // React-admin calls getPermissions with an empty object on every page refresh\n // It also passes an object `{ params: { route: 'dashboard' } }` on the Dashboard\n // Ignore all this until we found a way to bypass these redundant calls\n if (typeof uri === 'object') return;\n\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to getPermissions must be an URL');\n\n const aclUri = getAclUri(uri);\n\n try {\n const { json } = await dataProvider.fetch(aclUri);\n return json['@graph'];\n } catch (e) {\n console.warn(`Could not fetch ACL URI ${uri}`);\n return [];\n }\n },\n addPermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to addPermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n const authorization = {\n '@id': `#${mode.replace('acl:', '')}`,\n '@type': 'acl:Authorization',\n [predicate]: agentId,\n 'acl:accessTo': uri,\n 'acl:mode': mode\n };\n\n await dataProvider.fetch(aclUri, {\n method: 'PATCH',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': [authorization]\n })\n });\n },\n removePermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to removePermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n // Fetch current permissions\n const { json } = await dataProvider.fetch(aclUri);\n\n const updatedPermissions = json['@graph']\n .filter(authorization => !authorization['@id'].includes('#Default'))\n .map(authorization => {\n const modes = defaultToArray(authorization['acl:mode']);\n let agents = defaultToArray(authorization[predicate]);\n if (mode && modes.includes(mode) && agents && agents.includes(agentId)) {\n agents = agents.filter(agent => agent !== agentId);\n }\n return { ...authorization, [predicate]: agents };\n });\n\n await dataProvider.fetch(aclUri, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': updatedPermissions\n })\n });\n },\n getIdentity: async () => {\n const token = localStorage.getItem('token');\n if (token) {\n const { webId } = jwtDecode(token);\n\n const { json: webIdData } = await dataProvider.fetch(webId);\n const { json: profileData } = webIdData.url ? await dataProvider.fetch(webIdData.url) : {};\n\n return {\n id: webId,\n fullName:\n profileData?.['vcard:given-name'] ||\n profileData?.['pair:label'] ||\n webIdData['foaf:name'] ||\n webIdData['pair:label'],\n profileData,\n webIdData\n };\n }\n },\n resetPassword: async params => {\n const { email } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/reset_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim() }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.reset_password_error');\n }\n },\n setNewPassword: async params => {\n const { email, token, password } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/new_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim(), token, password }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.new_password_error');\n }\n },\n getAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'));\n return json;\n } catch (e) {\n throw new Error('auth.notification.get_settings_error');\n }\n },\n updateAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { email, currentPassword, newPassword } = params;\n\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'), {\n method: 'POST',\n body: JSON.stringify({\n currentPassword,\n email: email?.trim(),\n newPassword\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n if (e.message === 'auth.account.invalid_password') {\n throw new Error('auth.notification.invalid_password');\n }\n\n throw new Error('auth.notification.update_settings_error');\n }\n }\n };\n};\n\nexport default authProvider;\n","import urlJoin from 'url-join';\n\nexport const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\n// Transform the URI to the one used to find the ACL\n// To be compatible with all servers, we should do a HEAD request to the resource URI\nexport const getAclUri = resourceUri => {\n const parsedUrl = new URL(resourceUri);\n return urlJoin(parsedUrl.origin, '_acl', parsedUrl.pathname);\n};\n\nexport const getAclContext = baseUri => ({\n '@base': baseUri,\n acl: 'http://www.w3.org/ns/auth/acl#',\n foaf: 'http://xmlns.com/foaf/0.1/',\n 'acl:agent': { '@type': '@id' },\n 'acl:agentGroup': { '@type': '@id' },\n 'acl:agentClass': { '@type': '@id' },\n 'acl:mode': { '@type': '@id' },\n 'acl:accessTo': { '@type': '@id' }\n});\n\nexport const getAuthServerUrl = async dataProvider => {\n const dataServers = await dataProvider.getDataServers();\n const authServer = Object.values(dataServers).find(server => server.authServer === true);\n if (!authServer) throw new Error('Could not find a server with authServer: true. Check your dataServers config.');\n // If the server is a POD, return the root URL instead of https://domain.com/user/data\n return authServer.pod ? new URL(authServer.baseUrl).origin : authServer.baseUrl;\n};\n","import React from 'react';\nimport { Create, CreateActions, useResourceContext } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst CreateWithPermissions = props => {\n const resource = useResourceContext();\n const createContainerUri = useCreateContainer(resource);\n useCheckPermissions(createContainerUri, 'create');\n return ;\n};\n\nCreateWithPermissions.defaultProps = {\n actions: \n};\n\nexport default CreateWithPermissions;\n","import React, { useEffect } from 'react';\nimport { usePermissions, useRedirect, useNotify, useGetIdentity } from 'react-admin';\nimport { rights, forbiddenErrors } from '../constants';\n\nconst useCheckPermissions = (uri, mode, redirectUrl = '/') => {\n const { identity, isLoading } = useGetIdentity();\n const { permissions } = usePermissions(uri);\n const notify = useNotify();\n const redirect = useRedirect();\n\n useEffect(() => {\n if (!isLoading && identity && permissions && !permissions.some(p => rights[mode].includes(p['acl:mode']))) {\n notify(forbiddenErrors[mode], { type: 'error' });\n redirect(redirectUrl);\n }\n }, [permissions, identity, redirect, notify, isLoading]);\n\n return permissions;\n};\n\nexport default useCheckPermissions;\n","export const ACL_READ = 'acl:Read';\nexport const ACL_APPEND = 'acl:Append';\nexport const ACL_WRITE = 'acl:Write';\nexport const ACL_CONTROL = 'acl:Control';\n\nexport const USER_AGENT = 'acl:agent';\nexport const GROUP_AGENT = 'acl:agentGroup';\nexport const CLASS_AGENT = 'acl:agentClass';\n\nexport const ANONYMOUS_AGENT = 'foaf:Agent';\nexport const AUTHENTICATED_AGENT = 'acl:AuthenticatedAgent';\n\nexport const rightsToShow = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToList = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToCreate = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToEdit = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToDelete = [ACL_WRITE, ACL_CONTROL];\nexport const rightsToControl = [ACL_CONTROL];\n\nexport const rights = {\n show: rightsToShow,\n list: rightsToList,\n create: rightsToCreate,\n edit: rightsToEdit,\n delete: rightsToDelete,\n control: rightsToControl\n};\n\nexport const forbiddenErrors = {\n show: 'auth.message.resource_show_forbidden',\n edit: 'auth.message.resource_edit_forbidden',\n delete: 'auth.message.resource_delete_forbidden',\n control: 'auth.message.resource_control_forbidden',\n list: 'auth.message.container_list_forbidden',\n create: 'auth.message.container_create_forbidden'\n};\n\nexport const resourceRightsLabels = {\n [ACL_READ]: 'auth.right.resource.read',\n [ACL_APPEND]: 'auth.right.resource.append',\n [ACL_WRITE]: 'auth.right.resource.write',\n [ACL_CONTROL]: 'auth.right.resource.control'\n};\n\nexport const containerRightsLabels = {\n [ACL_READ]: 'auth.right.container.read',\n [ACL_WRITE]: 'auth.right.container.write',\n [ACL_CONTROL]: 'auth.right.container.control'\n};\n","import React from 'react';\nimport { Edit, useGetRecordId } from 'react-admin';\nimport EditActionsWithPermissions from './EditActionsWithPermissions';\nimport EditToolbarWithPermissions from './EditToolbarWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst EditWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'edit');\n return (\n \n {React.cloneElement(props.children, {\n toolbar: ,\n // Allow to override toolbar\n ...props.children.props\n })}\n \n );\n};\n\nEditWithPermissions.defaultProps = {\n actions: \n};\n\nexport default EditWithPermissions;\n","import React from 'react';\nimport {\n usePermissionsOptimized,\n ShowButton,\n ListButton,\n TopToolbar,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl } from '../../constants';\n\nconst EditActionsWithPermissions = () => {\n const { hasList, hasShow } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissionsOptimized(record?.id);\n return (\n \n {hasList && }\n {hasShow && }\n {!!permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default EditActionsWithPermissions;\n","import React, { useState } from 'react';\nimport { Button, useRecordContext, useResourceContext } from 'react-admin';\nimport ShareIcon from '@mui/icons-material/Share';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsDialog from './PermissionsDialog';\n\nconst PermissionsButton = ({ isContainer }) => {\n const record = useRecordContext();\n const resource = useResourceContext();\n const [showDialog, setShowDialog] = useState(false);\n const createContainer = useCreateContainer(resource);\n const uri = isContainer ? createContainer : record.id || record['@id'];\n return (\n <>\n \n setShowDialog(false)} />\n >\n );\n};\n\nPermissionsButton.defaultProps = {\n isContainer: false\n};\n\nexport default PermissionsButton;\n","import React from 'react';\nimport { Button, useTranslate } from 'react-admin';\nimport { Dialog, DialogTitle, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddPermissionsForm from './AddPermissionsForm';\nimport EditPermissionsForm from './EditPermissionsForm';\nimport useAgents from '../../hooks/useAgents';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingTop: 0,\n paddingBottom: 0,\n paddingRight: 0,\n maxHeight: 210\n }\n}));\n\nconst PermissionsDialog = ({ open, onClose, uri, isContainer }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const { agents, addPermission, removePermission } = useAgents(uri);\n\n return (\n \n );\n};\n\nexport default PermissionsDialog;\n","import React, { useEffect, useState } from 'react';\nimport { useGetList, useTranslate } from 'react-admin';\nimport { TextField, List, ListItem, ListItemAvatar, ListItemText, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport PersonIcon from '@mui/icons-material/Person';\nimport { USER_AGENT, ACL_READ } from '../../constants';\n\nconst useStyles = makeStyles(() => ({\n list: {\n padding: 0,\n width: '100%'\n },\n option: {\n padding: 0\n }\n}));\n\nconst AddPermissionsForm = ({ agents, addPermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const [value, setValue] = useState(null);\n const [inputValue, setInputValue] = useState('');\n const [options, setOptions] = useState([]);\n\n const { data } = useGetList(\n 'Person',\n {\n pagination: { page: 1, perPage: 100 },\n sort: { field: 'pair:label', order: 'ASC' },\n filter: { q: inputValue }\n },\n {\n enabled: inputValue.length > 0\n }\n );\n\n useEffect(() => {\n setOptions(data?.length > 0 ? Object.values(data) : []);\n }, [data]);\n\n return (\n option['pair:label']}\n // Do not return agents which have already been added\n filterOptions={x => x.filter(agent => !Object.keys(agents).includes(agent.id))}\n options={options}\n noOptionsText={translate('ra.navigation.no_results')}\n autoComplete\n blurOnSelect\n clearOnBlur\n disableClearable\n value={value}\n onChange={(event, record) => {\n addPermission(record.id || record['@id'], USER_AGENT, ACL_READ);\n setValue(null);\n setInputValue('');\n setOptions([]);\n }}\n onInputChange={(event, newInputValue) => {\n setInputValue(newInputValue);\n }}\n renderInput={params => (\n \n )}\n renderOption={(props, option) => (\n \n \n \n \n \n \n \n \n \n
\n )}\n />\n );\n};\n\nexport default AddPermissionsForm;\n","import React from 'react';\nimport { List } from '@mui/material';\nimport { styled } from '@mui/system';\nimport AgentItem from './AgentItem';\n\nconst StyledList = styled(List)(({ theme }) => ({\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper\n}));\n\nconst EditPermissionsForm = ({ isContainer, agents, addPermission, removePermission }) => {\n return (\n \n {Object.entries(agents).map(([agentId, agent]) => (\n \n ))}\n \n );\n};\n\nexport default EditPermissionsForm;\n","import React, { useState, useEffect } from 'react';\nimport { useDataProvider, useTranslate, Loading, Error } from 'react-admin';\nimport {\n Avatar,\n ListItem,\n ListItemIcon,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n IconButton,\n Menu,\n MenuItem\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport EditIcon from '@mui/icons-material/Edit';\nimport CheckIcon from '@mui/icons-material/Check';\nimport { GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, resourceRightsLabels, containerRightsLabels } from '../../constants';\nimport AgentIcon from './AgentIcon';\n\nconst useStyles = makeStyles(() => ({\n listItem: {\n paddingLeft: 4,\n paddingRight: 36\n },\n primaryText: {\n width: '30%',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n secondaryText: {\n textAlign: 'center',\n width: '60%',\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst AgentItem = ({ isContainer, agent, addPermission, removePermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [user, setUser] = useState();\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState();\n\n useEffect(() => {\n if (agent.predicate === USER_AGENT) {\n dataProvider\n .getOne('Person', { id: agent.id })\n .then(({ data }) => {\n setUser(data);\n setLoading(false);\n })\n .catch(error => {\n setError(error);\n setLoading(false);\n });\n } else {\n setLoading(false);\n }\n }, [agent.id, agent.predicate]);\n\n // For now, do not display groups\n if (agent.predicate === GROUP_AGENT) return null;\n\n const openMenu = event => setAnchorEl(event.currentTarget);\n const closeMenu = () => setAnchorEl(null);\n\n const labels = isContainer ? containerRightsLabels : resourceRightsLabels;\n\n if (loading) return ;\n if (error) return ;\n\n return (\n \n \n \n \n \n \n \n translate(labels[p])).join(', ')}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default AgentItem;\n","import React from 'react';\nimport PublicIcon from '@mui/icons-material/Public';\nimport VpnLockIcon from '@mui/icons-material/VpnLock';\nimport PersonIcon from '@mui/icons-material/Person';\nimport GroupIcon from '@mui/icons-material/Group';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT } from '../../constants';\n\nconst AgentIcon = ({ agent }) => {\n switch (agent.predicate) {\n case CLASS_AGENT:\n return agent.id === ANONYMOUS_AGENT ? : ;\n case USER_AGENT:\n return ;\n case GROUP_AGENT:\n return ;\n default:\n throw new Error(`Unknown agent predicate: ${agent.predicate}`);\n }\n};\n\nexport default AgentIcon;\n","import { useEffect, useCallback, useState } from 'react';\nimport { usePermissions, useAuthProvider } from 'react-admin';\nimport { defaultToArray } from '../utils';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, AUTHENTICATED_AGENT } from '../constants';\n\nconst useAgents = uri => {\n const { permissions } = usePermissions(uri);\n const authProvider = useAuthProvider();\n const [agents, setAgents] = useState({});\n\n // Format list of authorized agents, based on the permissions returned for the resource\n useEffect(() => {\n const result = {\n [ANONYMOUS_AGENT]: {\n id: ANONYMOUS_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n },\n [AUTHENTICATED_AGENT]: {\n id: AUTHENTICATED_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n }\n };\n\n const appendPermission = (agentId, predicate, mode) => {\n if (result[agentId]) {\n result[agentId].permissions.push(mode);\n } else {\n result[agentId] = {\n id: agentId,\n predicate,\n permissions: [mode]\n };\n }\n };\n\n if (permissions) {\n for (const p of permissions) {\n if (p[CLASS_AGENT]) {\n defaultToArray(p[CLASS_AGENT]).forEach(agentId => appendPermission(agentId, CLASS_AGENT, p['acl:mode']));\n }\n if (p[USER_AGENT]) {\n defaultToArray(p[USER_AGENT]).forEach(userUri => appendPermission(userUri, USER_AGENT, p['acl:mode']));\n }\n if (p[GROUP_AGENT]) {\n defaultToArray(p[GROUP_AGENT]).forEach(groupUri => appendPermission(groupUri, GROUP_AGENT, p['acl:mode']));\n }\n }\n setAgents(result);\n }\n }, [permissions]);\n\n const addPermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents({\n ...agents,\n [agentId]: {\n id: agentId,\n predicate,\n permissions: agents[agentId] ? [...agents[agentId]?.permissions, mode] : [mode]\n }\n });\n authProvider.addPermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n const removePermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents(\n Object.fromEntries(\n Object.entries(agents)\n .map(([key, agent]) => {\n if (agent.id === agentId) {\n agent.permissions = agent.permissions.filter(m => m !== mode);\n }\n return [key, agent];\n })\n // Remove agents if they have no permissions (except if they are class agents)\n .filter(([_, agent]) => agent.predicate === CLASS_AGENT || agent.permissions.length > 0)\n )\n );\n authProvider.removePermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n return { agents, addPermission, removePermission };\n};\n\nexport default useAgents;\n","import React from 'react';\nimport { SaveButton, Toolbar } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\nimport DeleteButtonWithPermissions from './DeleteButtonWithPermissions';\n\nconst useStyles = makeStyles(() => ({\n toolbar: {\n flex: 1,\n display: 'flex',\n justifyContent: 'space-between'\n }\n}));\n\nconst EditToolbarWithPermissions = props => {\n const classes = useStyles();\n return (\n \n \n \n \n );\n};\n\nexport default EditToolbarWithPermissions;\n","import React from 'react';\nimport { DeleteButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToDelete } from '../../constants';\n\nconst DeleteButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToDelete.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default DeleteButtonWithPermissions;\n","import React from 'react';\nimport { EditButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToEdit } from '../../constants';\n\nconst EditButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToEdit.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default EditButtonWithPermissions;\n","import React from 'react';\nimport { List } from 'react-admin';\nimport ListActionsWithPermissions from './ListActionsWithPermissions';\n\nconst ListWithPermissions = props =>
;\n\nListWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ListWithPermissions;\n","import React from 'react';\nimport {\n CreateButton,\n ExportButton,\n useResourceDefinition,\n TopToolbar,\n usePermissions,\n useResourceContext\n} from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToCreate, rightsToControl } from '../../constants';\n\n// Do not show Export and Refresh buttons on mobile\nconst ListActionsWithPermissions = ({\n bulkActions,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total\n}) => {\n const resource = useResourceContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('xs'));\n const resourceDefinition = useResourceDefinition();\n const createContainerUri = useCreateContainer(resource);\n const { permissions } = usePermissions(createContainerUri);\n return (\n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && permissions && permissions.some(p => rightsToCreate.includes(p['acl:mode'])) && (\n \n )}\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && (\n \n )}\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithPermissions;\n","import React from 'react';\nimport { Show, useGetRecordId } from 'react-admin';\nimport ShowActionsWithPermissions from './ShowActionsWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst ShowWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'show');\n return ;\n};\n\nShowWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ShowWithPermissions;\n","import React from 'react';\nimport {\n EditButton,\n ListButton,\n TopToolbar,\n usePermissions,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl, rightsToEdit } from '../../constants';\n\nconst ShowActionsWithPermissions = () => {\n const { hasList, hasEdit } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissions(record?.id);\n return (\n \n {hasList && }\n {hasEdit && permissions && permissions.some(p => rightsToEdit.includes(p['acl:mode'])) && }\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default ShowActionsWithPermissions;\n","import React from 'react';\nimport { useLogin, useTranslate } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle } from '@mui/material';\n\nconst AuthDialog = ({ open, onClose, title, message, redirect, ...rest }) => {\n const login = useLogin();\n const translate = useTranslate();\n return (\n \n );\n};\n\nAuthDialog.defaultProps = {\n title: 'auth.dialog.login_required',\n message: 'auth.message.login_to_continue'\n};\n\nexport default AuthDialog;\n","import React, { useRef, useEffect } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\nimport { useDataProvider, useAuthProvider, useLogin, useGetIdentity, useNotify } from 'react-admin';\nimport { Card, Avatar, Typography, Button, CardActions } from '@mui/material';\nimport { styled } from '@mui/material/styles';\nimport LockIcon from '@mui/icons-material/Lock';\n\nconst delay = async t => new Promise(resolve => setTimeout(resolve, t));\n\n// Inspired from https://github.com/marmelab/react-admin/blob/master/packages/ra-ui-materialui/src/auth/Login.tsx\nconst SsoLoginPage = ({ children, backgroundImage, buttons, userResource, propertiesExist, text, ...rest }) => {\n const containerRef = useRef();\n let backgroundImageLoaded = false;\n const navigate = useNavigate();\n const [searchParams] = useSearchParams();\n const { identity, isLoading } = useGetIdentity();\n\n const notify = useNotify();\n const login = useLogin();\n const dataProvider = useDataProvider();\n const authProvider = useAuthProvider();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n // Already authenticated, redirect to the home page\n navigate(searchParams.get('redirect') || '/');\n }\n }, [identity, isLoading, navigate, searchParams]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('login')) {\n if (searchParams.has('error')) {\n if (searchParams.get('error') === 'registration.not-allowed') {\n notify('auth.message.user_email_not_found', { type: 'error' });\n } else {\n notify('auth.message.bad_request', { type: 'error', error: searchParams.get('error') });\n }\n } else if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n\n localStorage.setItem('token', token);\n\n let userData;\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n\n if (propertiesExist.length > 0) {\n let allPropertiesExist = propertiesExist.every(p => userData[p]);\n while (!allPropertiesExist) {\n console.log('Waiting for all properties to have been created', propertiesExist);\n await delay(500);\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n allPropertiesExist = propertiesExist.every(p => userData[p]);\n }\n }\n\n if (!authProvider.checkUser(userData)) {\n localStorage.removeItem('token');\n notify('auth.message.user_not_allowed_to_login', { type: 'error' });\n navigate.replace('/login');\n } else if (searchParams.has('redirect')) {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = searchParams.get('redirect');\n } else if (searchParams.has('new') && searchParams.get('new') === 'true') {\n notify('auth.message.new_user_created', { type: 'info' });\n window.location.href = `/${userResource}/${encodeURIComponent(webId)}`;\n } else {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = '/';\n }\n }\n }\n\n if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', { type: 'info' });\n navigate('/');\n }\n })();\n }, [searchParams, navigate, notify, userResource]);\n\n const updateBackgroundImage = () => {\n if (!backgroundImageLoaded && containerRef.current) {\n containerRef.current.style.backgroundImage = `url(${backgroundImage})`;\n backgroundImageLoaded = true;\n }\n };\n\n // Load background image asynchronously to speed up time to interactive\n const lazyLoadBackgroundImage = () => {\n if (backgroundImage) {\n const img = new Image();\n img.onload = updateBackgroundImage;\n img.src = backgroundImage;\n }\n };\n\n useEffect(() => {\n if (!backgroundImageLoaded) {\n lazyLoadBackgroundImage();\n }\n });\n\n if (isLoading) return null;\n\n return (\n \n \n \n {text && {text}}\n {buttons?.map((button, i) => (\n \n {React.cloneElement(button, {\n fullWidth: true,\n variant: 'outlined',\n type: 'submit',\n onClick: () => login({}, '/login')\n })}\n \n ))}\n \n \n );\n};\n\nconst PREFIX = 'SsoLoginPage';\n\nexport const SsoLoginPageClasses = {\n card: `${PREFIX}-card`,\n avatar: `${PREFIX}-avatar`,\n icon: `${PREFIX}-icon`,\n switch: `${PREFIX}-switch`\n};\n\nconst Root = styled('div', {\n name: PREFIX,\n overridesResolver: (props, styles) => styles.root\n})(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n minHeight: '100vh',\n height: '1px',\n alignItems: 'center',\n justifyContent: 'flex-start',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n backgroundImage: 'radial-gradient(circle at 50% 14em, #313264 0%, #00023b 60%, #00023b 100%)',\n [`& .${SsoLoginPageClasses.card}`]: {\n minWidth: 300,\n marginTop: '6em'\n },\n [`& .${SsoLoginPageClasses.avatar}`]: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n [`& .${SsoLoginPageClasses.icon}`]: {\n backgroundColor: theme.palette.secondary[500]\n },\n [`& .${SsoLoginPageClasses.switch}`]: {\n marginBottom: '1em',\n display: 'flex',\n justifyContent: 'center'\n }\n}));\n\nSsoLoginPage.defaultProps = {\n propertiesExist: [],\n // TODO deprecate this\n buttons: [}>Les Communs],\n userResource: 'Person'\n};\n\nexport default SsoLoginPage;\n","import React, { useMemo } from 'react';\nimport { Notification } from 'react-admin';\nimport { ThemeProvider } from '@mui/system';\nimport { createTheme } from '@mui/material/styles';\nimport { StyledEngineProvider } from '@mui/material';\nimport PodLoginPageView from './PodLoginPageView';\n\nconst PodLoginPage = props => {\n const muiTheme = useMemo(() => createTheme(props.theme), [props.theme]);\n return (\n \n \n \n \n \n \n );\n};\n\nexport default PodLoginPage;\n","import React, { useEffect, useState } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNotify, useAuthProvider, useDataProvider, useLocale, useTranslate } from 'react-admin';\nimport { Box, List, ListItem, ListItemText, ListItemAvatar, Avatar, Divider, Card, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LockIcon from '@mui/icons-material/Lock';\nimport StorageIcon from '@mui/icons-material/Storage';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.primary.main\n }\n },\n text: {\n textAlign: 'center',\n padding: '4px 8px 8px'\n },\n card: {\n minWidth: 300,\n maxWidth: 350,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n lockIconAvatar: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n lockIcon: {\n backgroundColor: theme.palette.grey['500']\n },\n list: {\n paddingTop: 0,\n paddingBottom: 0\n },\n listItem: {\n paddingTop: 5,\n paddingBottom: 5\n }\n}));\n\nconst PodLoginPageView = ({ history, location, text, customPodProviders }) => {\n const classes = useStyles();\n const notify = useNotify();\n const locale = useLocale();\n const translate = useTranslate();\n const authProvider = useAuthProvider();\n const dataProvider = useDataProvider();\n const [podProviders, setPodProviders] = useState(customPodProviders || []);\n const searchParams = new URLSearchParams(location.search);\n\n useEffect(() => {\n (async () => {\n if (podProviders.length === 0) {\n const results = await fetch('https://data.activitypods.org/pod-providers', {\n headers: {\n Accept: 'application/ld+json'\n }\n });\n if (results.ok) {\n const json = await results.json();\n // Filter POD providers by available locales\n const podProviders = json['ldp:contains'].filter(provider =>\n Array.isArray(provider['apods:locales'])\n ? provider['apods:locales'].includes(locale)\n : provider['apods:locales'] === locale\n );\n setPodProviders(podProviders);\n } else {\n notify('auth.message.pod_providers_not_loaded', 'error');\n }\n }\n })();\n }, [podProviders, setPodProviders, notify, locale]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n const response = await fetch(webId, {\n headers: {\n Accept: 'application/json'\n }\n });\n if (!response.ok) {\n notify('auth.message.unable_to_fetch_user_data', 'error');\n } else {\n const data = await response.json();\n if (!authProvider.checkUser(data)) {\n notify('auth.message.user_not_allowed_to_login', 'error');\n history.replace('/login');\n } else {\n localStorage.setItem('token', token);\n notify('auth.message.user_connected', 'info');\n // Reload to ensure the dataServers config is reset\n window.location.reload();\n window.location.href = '/?addUser=true';\n }\n }\n } else if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', 'info');\n history.push('/');\n }\n })();\n }, [searchParams, dataProvider]);\n\n if (searchParams.has('token') || searchParams.has('addUser') || searchParams.has('logout')) {\n return null;\n }\n\n return (\n \n \n \n \n \n {text || translate('auth.message.choose_pod_provider')}\n \n \n \n \n {podProviders.map((podProvider, i) => {\n const url = new URL(\n '/auth',\n (podProvider['apods:domainName'].includes(':') ? 'http://' : 'https://') +\n podProvider['apods:domainName']\n );\n if (searchParams.has('signup')) url.searchParams.set('signup', 'true');\n url.searchParams.set('redirect', window.location.href);\n return (\n \n \n (window.location.href = url.toString())}\n className={classes.listItem}\n >\n \n \n \n \n \n \n \n \n );\n })}\n
\n \n \n \n );\n};\n\nexport default PodLoginPageView;\n","import React, { useEffect, useMemo } from 'react';\nimport { Link, useNavigate, useSearchParams } from 'react-router-dom';\nimport { useTranslate, useGetIdentity } from 'react-admin';\nimport { Card, Typography } from '@mui/material';\nimport LockIcon from '@mui/icons-material/Lock';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SignupForm from './SignupForm';\nimport LoginForm from './LoginForm';\nimport NewPasswordForm from './NewPasswordForm';\nimport ResetPasswordForm from './ResetPasswordForm';\nimport SimpleBox from './SimpleBox';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(() => ({\n switch: {\n marginBottom: '1em',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center'\n }\n}));\n\n/**\n * @param {object} props Props\n * @param {boolean} props.hasSignup If to show signup form.\n * @param {boolean} props.allowUsername Indicates, if login is allowed with username (instead of email).\n * @param {string} props.postSignupRedirect Location to redirect to after signup.\n * @param {string} props.postLoginRedirect Location to redirect to after login.\n * @param {object} props.additionalSignupValues\n * @param {object} props.passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst LocalLoginPage = ({\n hasSignup,\n allowUsername,\n postSignupRedirect,\n postLoginRedirect,\n additionalSignupValues,\n passwordScorer = defaultScorer\n}) => {\n const classes = useStyles();\n const navigate = useNavigate();\n const translate = useTranslate();\n const [searchParams] = useSearchParams();\n const isSignup = hasSignup && searchParams.has('signup');\n const isResetPassword = searchParams.has('reset_password');\n const isNewPassword = searchParams.has('new_password');\n const isLogin = !isSignup && !isResetPassword && !isNewPassword;\n const redirectTo = searchParams.get('redirect');\n const { identity, isLoading } = useGetIdentity();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n if (postLoginRedirect) {\n navigate(`${postLoginRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`);\n } else if (redirectTo && redirectTo.startsWith('http')) {\n window.location.href = redirectTo;\n } else {\n navigate(redirectTo || '/');\n }\n }\n }, [identity, isLoading, navigate, redirectTo, postLoginRedirect]);\n\n const [title, text] = useMemo(() => {\n if (isSignup) {\n return ['auth.action.signup', 'auth.helper.signup'];\n }\n if (isLogin) {\n return ['auth.action.login', 'auth.helper.login'];\n }\n if (isResetPassword) {\n return ['auth.action.reset_password', 'auth.helper.reset_password'];\n }\n if (isNewPassword) {\n return ['auth.action.set_new_password', 'auth.helper.set_new_password'];\n }\n }, [isSignup, isLogin, isResetPassword, isNewPassword]);\n\n if (isLoading || identity?.id) return null;\n if (isLoading || identity?.id) return null;\n\n return (\n }>\n \n {isSignup && (\n \n )}\n {isResetPassword && }\n {isNewPassword && }\n {isLogin && }\n \n {isSignup && (\n
\n
{translate('auth.action.login')}\n \n )}\n {isLogin && (\n <>\n {hasSignup && (\n
\n \n {translate('auth.action.signup')}\n \n
\n )}\n
\n \n {translate('auth.action.reset_password')}\n \n
\n >\n )}\n
\n \n \n );\n};\n\nLocalLoginPage.defaultProps = {\n hasSignup: true,\n allowUsername: false,\n additionalSignupValues: {}\n};\n\nexport default LocalLoginPage;\n","import * as React from 'react';\nimport createSlug from 'speakingurl';\nimport {\n Form,\n useTranslate,\n useNotify,\n useSafeSetState,\n TextInput,\n required,\n email,\n useLocaleState\n} from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useSignup from '../../hooks/useSignup';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n * @param postSignupRedirect\n * @param additionalSignupValues\n * @param delayBeforeRedirect\n * @param {string} redirectTo\n * @param {object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst SignupForm = ({\n redirectTo,\n passwordScorer = defaultScorer,\n postSignupRedirect,\n additionalSignupValues,\n delayBeforeRedirect\n}) => {\n const [loading, setLoading] = useSafeSetState(false);\n const signup = useSignup();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const [locale] = useLocaleState();\n const [password, setPassword] = React.useState('');\n\n const submit = values => {\n setLoading(true);\n signup({\n ...values,\n ...additionalSignupValues\n })\n .then(webId => {\n if (delayBeforeRedirect) {\n setTimeout(() => {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }, delayBeforeRedirect);\n } else {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }\n notify('auth.message.new_user_created', { type: 'info' });\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nSignupForm.defaultValues = {\n redirectTo: '/',\n additionalSignupValues: {}\n};\n\nexport default SignupForm;\n","import { useCallback } from 'react';\nimport { useAuthProvider } from 'react-admin';\n\nconst useSignup = () => {\n const authProvider = useAuthProvider();\n\n return useCallback((params = {}) => authProvider.signup(params), [authProvider]);\n};\n\nexport default useSignup;\n","import { defaultScorer } from '../../passwordScorer';\n\nconst validatePasswordStrength = (scorer = defaultScorer) => value => {\n if (!scorer) return undefined;\n const strength = scorer.scoreFn(value);\n if (strength < scorer.minRequiredScore) {\n return 'auth.input.password_too_weak';\n }\n return undefined;\n};\n\nexport default validatePasswordStrength;\n","// Inspired by https://github.com/bartlomiejzuber/password-strength-score\n\n/**\n * @typedef PasswordStrengthOptions\n * @property {number} isVeryLongLength - Required characters for a very long password (default: 12)\n * @property {number} isLongLength - Required characters for a long password (default: 6)\n * @property {number} isVeryLongScore - Score for a very long password (default: 2.5)\n * @property {number} isLongScore - Score for a long password (default: 1.5)\n * @property {number} uppercaseScore - Score for a password with uppercase letters (default: 1)\n * @property {number} lowercaseScore - Score for a password with lowercase letters (default: 1)\n * @property {number} numbersScore - Score for a password with numbers (default: 1)\n * @property {number} nonAlphanumericsScore - Score for a password without non-alphanumeric characters (default: 1)\n */\n\n/** @type {PasswordStrengthOptions} */\nexport const defaultOptions = {\n isVeryLongLength: 14,\n isLongLength: 8,\n isLongScore: 2,\n isVeryLongScore: 4,\n uppercaseScore: 1,\n lowercaseScore: 1,\n numbersScore: 1,\n nonAlphanumericsScore: 1\n};\n\n/**\n *\n * @param {string} password Password text.\n * @param {PasswordStrengthOptions} options Password options.\n * @returns {number} The password strength score.\n */\nexport const passwordStrength = (password, options) => {\n if (!password) {\n return 0;\n }\n\n const mergedOptions = { ...defaultOptions, ...options };\n\n const longScore = (password.length >= mergedOptions.isLongLength && mergedOptions.isLongScore) || 0;\n const veryLongScore = (password.length >= mergedOptions.isVeryLongLength && mergedOptions.isVeryLongScore) || 0;\n const lowercaseScore = (/[a-z]/.test(password) && mergedOptions.lowercaseScore) || 0;\n const uppercaseScore = (/[A-Z]/.test(password) && mergedOptions.uppercaseScore) || 0;\n const numbersScore = (/\\d/.test(password) && mergedOptions.numbersScore) || 0;\n const nonalphasScore = (/\\W/.test(password) && mergedOptions.nonAlphanumericsScore) || 0;\n\n return uppercaseScore + lowercaseScore + numbersScore + nonalphasScore + longScore + veryLongScore;\n};\n\nexport const createPasswordScorer = (options = defaultOptions, minRequiredScore = 5) => {\n const mergedOptions = { ...defaultOptions, ...options };\n\n return {\n scoreFn: password => passwordStrength(password, mergedOptions),\n minRequiredScore,\n maxScore:\n mergedOptions.uppercaseScore +\n mergedOptions.lowercaseScore +\n mergedOptions.numbersScore +\n mergedOptions.nonAlphanumericsScore +\n mergedOptions.isLongScore +\n mergedOptions.isVeryLongScore\n };\n};\n\nexport const defaultScorer = createPasswordScorer(defaultOptions, 5);\n","import React from 'react';\nimport ColorGradientProgressBar from './ColorGradientProgressBar';\nimport { defaultScorer } from '../../passwordScorer';\n\nexport default function PasswordStrengthIndicator({ scorer = defaultScorer, password, ...restProps }) {\n const strength = scorer.scoreFn(password);\n return ;\n}\n","import React from 'react';\nimport { LinearProgress } from '@mui/material';\nimport { withStyles } from '@mui/styles';\n\n/**\n * @typedef {Object} Color\n * @property {number} red\n * @property {number} green\n * @property {number} blue\n */\n\n/** Calculate a rgb-color from a gradient between `color1` and `color2`\n * @param {number} fade - Indicates the fade between `color1` and `color2` in the range [0, 1].\n * @param {Color} color1\n * @param {Color} color2\n * @returns {string} `` `rgb(${red}, ${green}, ${blue})` ``\n */\nconst colorGradient = (fade, color1, color2) => {\n var diffRed = color2.red - color1.red;\n var diffGreen = color2.green - color1.green;\n var diffBlue = color2.blue - color1.blue;\n\n var gradient = {\n red: Math.floor(color1.red + diffRed * fade),\n green: Math.floor(color1.green + diffGreen * fade),\n blue: Math.floor(color1.blue + diffBlue * fade)\n };\n\n return 'rgb(' + gradient.red + ',' + gradient.green + ',' + gradient.blue + ')';\n};\n\n/** A progress bar that changes its color between its min an max value.\n * @param {Object} props\n * @param {Color} [props.badColor = { red: 0xff, green: 0x40, blue: 0x47 }] - default: `#FF4047`\n * @param {Color} [props.goodColor = { red: 0x00, green: 0xff, blue: 0x6e }] - default: `#00FF6E`\n * @param {number} props.maxVal\n * @param {number} props.minVal\n * @param {number} props.currentVal\n */\nexport default function ColorGradientProgressBar(props) {\n const { minVal, maxVal, currentVal, badColor, goodColor, ...restProps } = props;\n\n const color1 = badColor || { red: 0xff, green: 0x40, blue: 0x47 };\n const color2 = goodColor || { red: 0x00, green: 0xff, blue: 0x6e };\n\n const fade = Math.max(0, Math.min(1, (currentVal - minVal) / (maxVal - minVal)));\n const currentColor = colorGradient(fade, color1, color2);\n\n const StyledLinearProgress = withStyles({\n colorPrimary: {\n backgroundColor: '#e0e0e0'\n },\n barColorPrimary: {\n backgroundColor: currentColor\n }\n })(LinearProgress);\n\n return ;\n}\n","import * as React from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, TextInput, required, email, useLogin } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst LoginForm = ({ redirectTo, allowUsername }) => {\n const [loading, setLoading] = useSafeSetState(false);\n const login = useLogin();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n\n const submit = values => {\n setLoading(true);\n login(values, redirectTo)\n .then(() => {\n setLoading(false);\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nLoginForm.defaultValues = {\n redirectTo: '/',\n allowUsername: false\n};\n\nexport default LoginForm;\n","import React, { useState } from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, useAuthProvider, TextInput, required } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n *\n * @param {string} redirectTo\n * @param {Object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst NewPasswordForm = ({ redirectTo, passwordScorer = defaultScorer }) => {\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const token = searchParams.get('token');\n\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const [newPassword, setNewPassword] = useState('');\n\n const submit = values => {\n setLoading(true);\n authProvider\n .setNewPassword({ ...values, token })\n .then(res => {\n setTimeout(() => {\n window.location.href = `/login${redirectTo ? `?redirect=${encodeURIComponent(redirectTo)}` : ''}`;\n setLoading(false);\n }, 2000);\n notify('auth.notification.password_changed', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default NewPasswordForm;\n","import React from 'react';\nimport { Form, TextInput, required, useTranslate, useNotify, useSafeSetState, useAuthProvider } from 'react-admin';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst ResetPasswordForm = () => {\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const submit = values => {\n setLoading(true);\n authProvider\n .resetPassword({ ...values })\n .then(res => {\n setLoading(false);\n notify('auth.notification.reset_password_submitted', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default ResetPasswordForm;\n","import React from 'react';\nimport { Box, Card, Typography } from '@mui/material';\nimport { Notification } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.secondary.main\n }\n },\n root: {\n backgroundColor: theme.palette.secondary.main\n },\n card: {\n minWidth: 300,\n maxWidth: 500,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n icon: {\n marginTop: 5,\n marginRight: 5\n },\n title: {\n [theme.breakpoints.down('sm')]: {\n fontWeight: 'bold',\n marginTop: 12\n }\n }\n}));\n\nconst SimpleBox = ({ title, icon, text, children }) => {\n const classes = useStyles();\n return (\n \n \n \n {icon && React.cloneElement(icon, { fontSize: 'large', className: classes.icon })}\n \n {title}\n \n \n \n {text}\n \n {children}\n \n \n \n );\n};\n\nexport default SimpleBox;\n","import React from 'react';\nimport { Resource, usePermissions } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport { rightsToCreate } from '../constants';\n\n// Not used for now. The ListWithPermissions component will handle the conditional display of the Create button.\nconst ResourceWithPermission = ({ name, create, ...rest }) => {\n const createContainer = useCreateContainer(name);\n const { permissions } = usePermissions(createContainer);\n return (\n rightsToCreate.includes(p['acl:mode'])) ? create : undefined}\n // Requesting permissions to list container is too long, we will avoid that for now\n // list={permissions && permissions.some(p => rightsToList.includes(p['acl:mode'])) ? list : undefined}\n />\n );\n};\n\nexport default ResourceWithPermission;\n","import React, { forwardRef, useCallback } from 'react';\nimport { Logout, UserMenu as RaUserMenu, useGetIdentity, useTranslate, useUserMenu } from 'react-admin';\nimport { MenuItem, ListItemIcon, ListItemText } from '@mui/material';\nimport AccountCircleIcon from '@mui/icons-material/AccountCircle';\nimport EditIcon from '@mui/icons-material/Edit';\nimport { useNavigate } from 'react-router-dom';\n\n// It's important to pass the ref to allow Material UI to manage the keyboard navigation\nconst UserMenuItem = forwardRef(({ label, icon, to, ...rest }, ref) => {\n const { onClose } = useUserMenu();\n const translate = useTranslate();\n const navigate = useNavigate();\n const onClick = useCallback(() => {\n navigate(to);\n onClose();\n }, [to, onClose, navigate]);\n return (\n \n );\n});\n\nconst UserMenu = ({ logout, profileResource, ...otherProps }) => {\n const { identity } = useGetIdentity();\n return (\n \n {identity && identity.id !== ''\n ? [\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}/show`}\n />,\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}`}\n />,\n React.cloneElement(logout, { key: 'logout' })\n ]\n : [\n ,\n \n ]}\n \n );\n};\n\nUserMenu.defaultProps = {\n logout: ,\n profileResource: 'Person'\n};\n\nexport default UserMenu;\n","import React, { useEffect } from 'react';\nimport { useGetIdentity, useNotify, useRedirect } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\n\nconst useCheckAuthenticated = message => {\n const { identity, isLoading } = useGetIdentity();\n const notify = useNotify();\n const redirect = useRedirect();\n const location = useLocation();\n\n useEffect(() => {\n if (!isLoading && !identity?.id) {\n notify(message || 'ra.auth.auth_check_error', { type: 'error' });\n redirect(`/login?redirect=${encodeURIComponent(location.pathname + location.search)}`);\n }\n }, [isLoading, identity, redirect, notify, location]);\n\n return { identity, isLoading };\n};\n\nexport default useCheckAuthenticated;\n","import { useEffect, useCallback } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport { useGetPermissions, useSafeSetState } from 'react-admin';\n\nconst emptyParams = {};\n\n// keep a cache of already fetched permissions to initialize state for new\n// components and avoid a useless rerender if the permissions haven't changed\nconst alreadyFetchedPermissions = { '{}': undefined };\n\n// Fork of usePermissionsOptimized, with a refetch option\nconst usePermissionsWithRefetch = (params = emptyParams) => {\n const key = JSON.stringify(params);\n const [state, setState] = useSafeSetState({\n permissions: alreadyFetchedPermissions[key]\n });\n const getPermissions = useGetPermissions();\n\n const fetchPermissions = useCallback(\n () =>\n getPermissions(params)\n .then(permissions => {\n if (!isEqual(permissions, state.permissions)) {\n alreadyFetchedPermissions[key] = permissions;\n setState({ permissions });\n }\n })\n .catch(error => {\n setState({\n error\n });\n }),\n [key, params, getPermissions]\n );\n\n useEffect(() => {\n fetchPermissions();\n }, [key]);\n\n return { ...state, refetch: fetchPermissions };\n};\n\nexport default usePermissionsWithRefetch;\n","const englishMessages = {\n auth: {\n dialog: {\n container_permissions: 'Container permissions',\n resource_permissions: 'Resource permissions',\n login_required: 'Login required'\n },\n action: {\n permissions: 'Permissions',\n signup: 'Signup',\n reset_password: 'Reset password',\n set_new_password: 'Set new password',\n logout: 'Logout',\n login: 'Login',\n view_my_profile: 'View my profile',\n edit_my_profile: 'Edit my profile'\n },\n right: {\n resource: {\n read: 'Read',\n append: 'Append',\n write: 'Write',\n control: 'Control'\n },\n container: {\n read: 'List',\n append: 'Add',\n write: 'Add',\n control: 'Control'\n }\n },\n agent: {\n anonymous: 'All users',\n authenticated: 'Connected users'\n },\n input: {\n agent_select: 'Add an user...',\n name: 'Surname',\n username: 'User ID',\n email: 'Email address',\n username_or_email: 'User ID or email address',\n current_password: 'Current password',\n new_password: 'New password',\n confirm_new_password: 'Confirm new password',\n password_strength: 'Password strength',\n password_too_weak: 'Password too weak. Increase length or add special characters.'\n },\n helper: {\n login: 'Sign in to your account',\n signup: 'Create your account',\n reset_password: 'Enter your email address below and we will send you a link to reset your password',\n set_new_password: 'Please enter your email address and a new password below'\n },\n message: {\n resource_show_forbidden: 'You are not allowed to view this resource',\n resource_edit_forbidden: 'You are not allowed to edit this resource',\n resource_delete_forbidden: 'You are not allowed to delete this resource',\n resource_control_forbidden: 'You are not allowed to control this resource',\n container_create_forbidden: 'You are not allowed to create new resource',\n container_list_forbidden: 'You are not allowed to list these resources',\n user_not_allowed_to_login: 'You are not allowed to login with this account',\n user_email_not_found: 'No account found with this email address',\n user_email_exist: 'An account already exist with this email address',\n username_exist: 'An account already exist with this user ID',\n username_invalid: 'This username is invalid. Only lowercase characters, numbers, dots and hyphens are authorized',\n new_user_created: 'Your account has been successfully created',\n user_connected: 'You are now connected',\n user_disconnected: 'You are now disconnected',\n bad_request: 'Bad request (Error message returned by the server: %{error})',\n account_settings_updated: 'Your account settings have been successfully updated',\n login_to_continue: 'Please login to continue',\n choose_pod_provider:\n 'Please choose a POD provider in the list below. All application data will be saved on your POD.'\n },\n notification: {\n reset_password_submitted: 'An email has been sent with reset password instructions',\n reset_password_error: 'An error occurred',\n password_changed: 'Password changed successfully',\n new_password_error: 'An error occurred',\n invalid_password: 'Invalid password',\n get_settings_error: 'An error occurred',\n update_settings_error: 'An error occurred'\n }\n }\n};\n\nexport default englishMessages;\n","const frenchMessages = {\n auth: {\n dialog: {\n container_permissions: 'Permissions sur le container',\n resource_permissions: 'Permissions sur la ressource',\n login_required: 'Connexion requise'\n },\n action: {\n permissions: 'Permissions',\n signup: \"S'inscrire\",\n reset_password: 'Mot de passe oublié ?',\n set_new_password: 'Définir le mot de passe',\n logout: 'Se déconnecter',\n login: 'Se connecter',\n view_my_profile: 'Voir mon profil',\n edit_my_profile: 'Éditer mon profil'\n },\n right: {\n resource: {\n read: 'Lire',\n append: 'Enrichir',\n write: 'Modifier',\n control: 'Administrer'\n },\n container: {\n read: 'Lister',\n append: 'Ajouter',\n write: 'Ajouter',\n control: 'Administrer'\n }\n },\n agent: {\n anonymous: 'Tous les utilisateurs',\n authenticated: 'Utilisateurs connectés'\n },\n input: {\n agent_select: 'Ajouter un utilisateur...',\n name: 'Prénom',\n username: 'Identifiant unique',\n email: 'Adresse e-mail',\n username_or_email: 'Identifiant ou adresse e-mail',\n current_password: 'Mot de passe actuel',\n new_password: 'Nouveau mot de passe',\n confirm_new_password: 'Confirmer le nouveau mot de passe',\n password_strength: 'Force du mot de passe',\n password_too_weak: 'Mot de passe trop faible. Augmenter la longueur ou ajouter des caractères spéciaux.'\n },\n helper: {\n login: 'Connectez-vous à votre compte.',\n signup: 'Créez votre compte',\n reset_password:\n 'Entrez votre adresse mail ci-dessous et nous vous enverrons un lien pour réinitialiser votre mot de passe',\n set_new_password: 'Veuillez entrer votre adresse mail et un nouveau mot de passe ci-dessous'\n },\n message: {\n resource_show_forbidden: \"Vous n'avez pas la permission de voir cette ressource\",\n resource_edit_forbidden: \"Vous n'avez pas la permission d'éditer cette ressource\",\n resource_delete_forbidden: \"Vous n'avez pas la permission d'effacer cette ressource\",\n resource_control_forbidden: \"Vous n'avez pas la permission d'administrer cette ressource\",\n container_create_forbidden: \"Vous n'avez pas la permission de créer des ressources\",\n container_list_forbidden: \"Vous n'avez pas la permission de voir ces ressources\",\n user_not_allowed_to_login: \"Vous n'avez pas le droit de vous connecter avec ce compte\",\n user_email_not_found: 'Aucun compte trouvé avec cette adresse mail',\n user_email_exist: 'Un compte existe déjà avec cette adresse mail',\n username_exist: 'Un compte existe déjà avec cet identifiant',\n username_invalid:\n \"Cet identifiant n'est pas valide. Seuls les lettres minuscules, les chiffres, les points et les tirets sont autorisés\",\n new_user_created: 'Votre compte a été créé avec succès',\n user_connected: 'Vous êtes maintenant connecté',\n user_disconnected: 'Vous êtes maintenant déconnecté',\n bad_request: \"Requête erronée (Message d'erreur renvoyé par le serveur: %{error})\",\n account_settings_updated: 'Les paramètres de votre compte ont été mis à jour avec succès',\n login_to_continue: 'Veuillez vous connecter pour continuer',\n choose_pod_provider:\n \"Veuillez choisir un fournisseur de PODs dans la liste ci-dessous. Toutes les données de l'application seront enregistrées sur votre POD.\"\n },\n notification: {\n reset_password_submitted: 'Un e-mail a été envoyé avec les instructions de réinitialisation du mot de passe',\n reset_password_error: \"Une erreur s'est produite\",\n password_changed: 'Le mot de passe a été changé avec succès',\n new_password_error: \"Une erreur s'est produite\",\n invalid_password: 'Mot de passe incorrect',\n get_settings_error: \"Une erreur s'est produite\",\n update_settings_error: \"Une erreur s'est produite\"\n }\n }\n};\n\nexport default frenchMessages;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/auth-provider/src/index.js","packages/auth-provider/src/authProvider.js","packages/auth-provider/src/utils.js","packages/auth-provider/src/crud/create/CreateWithPermissions.js","packages/auth-provider/src/hooks/useCheckPermissions.js","packages/auth-provider/src/constants.js","packages/auth-provider/src/crud/edit/EditWithPermissions.js","packages/auth-provider/src/crud/edit/EditActionsWithPermissions.js","packages/auth-provider/src/components/PermissionsButton/PermissionsButton.js","packages/auth-provider/src/components/PermissionsButton/PermissionsDialog.js","packages/auth-provider/src/components/PermissionsButton/AddPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/EditPermissionsForm.js","packages/auth-provider/src/components/PermissionsButton/AgentItem.js","packages/auth-provider/src/components/PermissionsButton/AgentIcon.js","packages/auth-provider/src/hooks/useAgents.js","packages/auth-provider/src/crud/edit/EditToolbarWithPermissions.js","packages/auth-provider/src/crud/edit/DeleteButtonWithPermissions.js","packages/auth-provider/src/crud/edit/EditButtonWithPermissions.js","packages/auth-provider/src/crud/list/ListWithPermissions.js","packages/auth-provider/src/crud/list/ListActionsWithPermissions.js","packages/auth-provider/src/crud/show/ShowWithPermissions.js","packages/auth-provider/src/crud/show/ShowActionsWithPermissions.js","packages/auth-provider/src/components/AuthDialog.js","packages/auth-provider/src/components/SsoLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPage.js","packages/auth-provider/src/components/PodLoginPage/PodLoginPageView.js","packages/auth-provider/src/components/LocalLoginPage/LocalLoginPage.js","packages/auth-provider/src/components/LocalLoginPage/SignupForm.js","packages/auth-provider/src/hooks/useSignup.js","packages/auth-provider/src/components/LocalLoginPage/validatePasswordStrength.js","packages/auth-provider/src/passwordScorer.js","packages/auth-provider/src/components/LocalLoginPage/PasswordStrengthIndicator.js","packages/auth-provider/src/components/LocalLoginPage/ColorGradientProgressBar.js","packages/auth-provider/src/components/LocalLoginPage/LoginForm.js","packages/auth-provider/src/components/LocalLoginPage/NewPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/ResetPasswordForm.js","packages/auth-provider/src/components/LocalLoginPage/SimpleBox.js","packages/auth-provider/src/components/ResourceWithPermissions.js","packages/auth-provider/src/components/UserMenu.js","packages/auth-provider/src/hooks/useCheckAuthenticated.js","packages/auth-provider/src/hooks/usePermissionsWithRefetch.js","packages/auth-provider/src/messages/english.js","packages/auth-provider/src/messages/french.js"],"sourcesContent":["export { default as authProvider } from './authProvider';\n\n// Create\nexport { default as CreateWithPermissions } from './crud/create/CreateWithPermissions';\n\n// Edit\nexport { default as EditWithPermissions } from './crud/edit/EditWithPermissions';\nexport { default as EditActionsWithPermissions } from './crud/edit/EditActionsWithPermissions';\nexport { default as EditToolbarWithPermissions } from './crud/edit/EditToolbarWithPermissions';\nexport { default as EditButtonWithPermissions } from './crud/edit/EditButtonWithPermissions';\nexport { default as DeleteButtonWithPermissions } from './crud/edit/DeleteButtonWithPermissions';\n\n// List\nexport { default as ListWithPermissions } from './crud/list/ListWithPermissions';\nexport { default as ListActionsWithPermissions } from './crud/list/ListActionsWithPermissions';\n\n// Show\nexport { default as ShowWithPermissions } from './crud/show/ShowWithPermissions';\nexport { default as ShowActionsWithPermissions } from './crud/show/ShowActionsWithPermissions';\n\nexport { default as PermissionsButton } from './components/PermissionsButton/PermissionsButton';\nexport { default as AuthDialog } from './components/AuthDialog';\nexport { default as SsoLoginPage, default as LoginPage } from './components/SsoLoginPage';\nexport { default as PodLoginPage } from './components/PodLoginPage/PodLoginPage';\nexport { default as LocalLoginPage } from './components/LocalLoginPage/LocalLoginPage';\nexport { default as ResourceWithPermissions } from './components/ResourceWithPermissions';\nexport { default as UserMenu } from './components/UserMenu';\n\nexport { default as useAgents } from './hooks/useAgents';\nexport { default as useCheckAuthenticated } from './hooks/useCheckAuthenticated';\nexport { default as useCheckPermissions } from './hooks/useCheckPermissions';\nexport { default as usePermissionsWithRefetch } from './hooks/usePermissionsWithRefetch';\nexport { default as useSignup } from './hooks/useSignup';\n\n// Password scoring\nexport { default as PasswordStrengthIndicator } from './components/LocalLoginPage/PasswordStrengthIndicator';\nexport { default as validatePasswordStrength } from './components/LocalLoginPage/validatePasswordStrength';\nexport {\n defaultScorer as defaultPasswordScorer,\n defaultOptions as defaultPasswordScorerOptions,\n createPasswordScorer\n} from './passwordScorer';\n\nexport { default as englishMessages } from './messages/english';\nexport { default as frenchMessages } from './messages/french';\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport { defaultToArray, getAclUri, getAclContext, getAuthServerUrl } from './utils';\n\nconst AUTH_TYPE_SSO = 'sso';\nconst AUTH_TYPE_LOCAL = 'local';\nconst AUTH_TYPE_POD = 'pod';\n\nconst authProvider = ({ dataProvider, authType, allowAnonymous = true, checkUser, checkPermissions = false }) => {\n if (![AUTH_TYPE_SSO, AUTH_TYPE_LOCAL, AUTH_TYPE_POD].includes(authType))\n throw new Error('The authType parameter is missing from the auth provider');\n return {\n login: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, password } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/login'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n password: password.trim()\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n } catch (e) {\n throw new Error('ra.auth.sign_in_error');\n }\n } else {\n let redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n if (params.redirect) redirectUrl += `&redirect=${encodeURIComponent(params.redirect)}`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n signup: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n if (authType === AUTH_TYPE_LOCAL) {\n const { username, email, password, domain, ...profileData } = params;\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/signup'), {\n method: 'POST',\n body: JSON.stringify({\n username: username.trim(),\n email: email.trim(),\n password: password.trim(),\n ...profileData\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n const { token } = json;\n localStorage.setItem('token', token);\n const { webId } = jwtDecode(token);\n return webId;\n } catch (e) {\n if (e.message === 'email.already.exists') {\n throw new Error('auth.message.user_email_exist');\n } else if (e.message === 'username.already.exists') {\n throw new Error('auth.message.username_exist');\n } else if (e.message === 'username.invalid') {\n throw new Error('auth.message.username_invalid');\n } else {\n throw new Error(e.message || 'ra.auth.sign_in_error');\n }\n }\n } else {\n const redirectUrl = `${new URL(window.location.href).origin}/login?login=true`;\n window.location.href = urlJoin(authServerUrl, `auth?redirectUrl=${encodeURIComponent(redirectUrl)}`);\n }\n },\n logout: async () => {\n switch (authType) {\n case AUTH_TYPE_LOCAL:\n // Delete token but also any other value in local storage\n localStorage.clear();\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = '/';\n break;\n\n case AUTH_TYPE_SSO:\n const authServerUrl = await getAuthServerUrl(dataProvider);\n const baseUrl = new URL(window.location.href).origin;\n window.location.href = urlJoin(\n authServerUrl,\n `auth/logout?redirectUrl=${encodeURIComponent(`${urlJoin(baseUrl, 'login')}?logout=true`)}`\n );\n break;\n\n case AUTH_TYPE_POD:\n const token = localStorage.getItem('token');\n const { webId } = jwtDecode(token);\n // Delete token but also any other value in local storage\n localStorage.clear();\n window.location.href =\n urlJoin(webId, 'openApp') +\n '?type=' +\n encodeURIComponent('http://activitypods.org/ns/core#FrontAppRegistration');\n break;\n }\n\n // Avoid displaying immediately the login page\n return '/';\n },\n checkAuth: async () => {\n const token = localStorage.getItem('token');\n if (!token && !allowAnonymous) throw new Error();\n },\n checkUser: userData => {\n if (checkUser) {\n return checkUser(userData);\n }\n return true;\n },\n checkError: error => Promise.resolve(),\n getPermissions: async uri => {\n if (!checkPermissions) return;\n\n // React-admin calls getPermissions with an empty object on every page refresh\n // It also passes an object `{ params: { route: 'dashboard' } }` on the Dashboard\n // Ignore all this until we found a way to bypass these redundant calls\n if (typeof uri === 'object') return;\n\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to getPermissions must be an URL');\n\n const aclUri = getAclUri(uri);\n\n try {\n const { json } = await dataProvider.fetch(aclUri);\n return json['@graph'];\n } catch (e) {\n console.warn(`Could not fetch ACL URI ${uri}`);\n return [];\n }\n },\n addPermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to addPermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n const authorization = {\n '@id': `#${mode.replace('acl:', '')}`,\n '@type': 'acl:Authorization',\n [predicate]: agentId,\n 'acl:accessTo': uri,\n 'acl:mode': mode\n };\n\n await dataProvider.fetch(aclUri, {\n method: 'PATCH',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': [authorization]\n })\n });\n },\n removePermission: async (uri, agentId, predicate, mode) => {\n if (!uri || !uri.startsWith('http'))\n throw new Error('The first parameter passed to removePermission must be an URL');\n\n const aclUri = getAclUri(uri);\n\n // Fetch current permissions\n const { json } = await dataProvider.fetch(aclUri);\n\n const updatedPermissions = json['@graph']\n .filter(authorization => !authorization['@id'].includes('#Default'))\n .map(authorization => {\n const modes = defaultToArray(authorization['acl:mode']);\n let agents = defaultToArray(authorization[predicate]);\n if (mode && modes.includes(mode) && agents && agents.includes(agentId)) {\n agents = agents.filter(agent => agent !== agentId);\n }\n return { ...authorization, [predicate]: agents };\n });\n\n await dataProvider.fetch(aclUri, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': getAclContext(aclUri),\n '@graph': updatedPermissions\n })\n });\n },\n getIdentity: async () => {\n const token = localStorage.getItem('token');\n if (token) {\n const { webId } = jwtDecode(token);\n\n const { json: webIdData } = await dataProvider.fetch(webId);\n const { json: profileData } = webIdData.url ? await dataProvider.fetch(webIdData.url) : {};\n\n return {\n id: webId,\n fullName:\n profileData?.['vcard:given-name'] ||\n profileData?.['pair:label'] ||\n webIdData['foaf:name'] ||\n webIdData['pair:label'],\n profileData,\n webIdData\n };\n }\n },\n resetPassword: async params => {\n const { email } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/reset_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim() }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.reset_password_error');\n }\n },\n setNewPassword: async params => {\n const { email, token, password } = params;\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/new_password'), {\n method: 'POST',\n body: JSON.stringify({ email: email.trim(), token, password }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n throw new Error('auth.notification.new_password_error');\n }\n },\n getAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { json } = await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'));\n return json;\n } catch (e) {\n throw new Error('auth.notification.get_settings_error');\n }\n },\n updateAccountSettings: async params => {\n const authServerUrl = await getAuthServerUrl(dataProvider);\n try {\n const { email, currentPassword, newPassword } = params;\n\n await dataProvider.fetch(urlJoin(authServerUrl, 'auth/account'), {\n method: 'POST',\n body: JSON.stringify({\n currentPassword,\n email: email?.trim(),\n newPassword\n }),\n headers: new Headers({ 'Content-Type': 'application/json' })\n });\n } catch (e) {\n if (e.message === 'auth.account.invalid_password') {\n throw new Error('auth.notification.invalid_password');\n }\n\n throw new Error('auth.notification.update_settings_error');\n }\n }\n };\n};\n\nexport default authProvider;\n","import urlJoin from 'url-join';\n\nexport const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\n// Transform the URI to the one used to find the ACL\n// To be compatible with all servers, we should do a HEAD request to the resource URI\nexport const getAclUri = resourceUri => {\n const parsedUrl = new URL(resourceUri);\n return urlJoin(parsedUrl.origin, '_acl', parsedUrl.pathname);\n};\n\nexport const getAclContext = baseUri => ({\n '@base': baseUri,\n acl: 'http://www.w3.org/ns/auth/acl#',\n foaf: 'http://xmlns.com/foaf/0.1/',\n 'acl:agent': { '@type': '@id' },\n 'acl:agentGroup': { '@type': '@id' },\n 'acl:agentClass': { '@type': '@id' },\n 'acl:mode': { '@type': '@id' },\n 'acl:accessTo': { '@type': '@id' }\n});\n\nexport const getAuthServerUrl = async dataProvider => {\n const dataServers = await dataProvider.getDataServers();\n const authServer = Object.values(dataServers).find(server => server.authServer === true);\n if (!authServer) throw new Error('Could not find a server with authServer: true. Check your dataServers config.');\n // If the server is a POD, return the root URL instead of https://domain.com/user/data\n return authServer.pod ? new URL(authServer.baseUrl).origin : authServer.baseUrl;\n};\n","import React from 'react';\nimport { Create, CreateActions, useResourceContext } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst CreateWithPermissions = props => {\n const resource = useResourceContext();\n const createContainerUri = useCreateContainer(resource);\n useCheckPermissions(createContainerUri, 'create');\n return ;\n};\n\nCreateWithPermissions.defaultProps = {\n actions: \n};\n\nexport default CreateWithPermissions;\n","import React, { useEffect } from 'react';\nimport { usePermissions, useRedirect, useNotify, useGetIdentity } from 'react-admin';\nimport { rights, forbiddenErrors } from '../constants';\n\nconst useCheckPermissions = (uri, mode, redirectUrl = '/') => {\n const { identity, isLoading } = useGetIdentity();\n const { permissions } = usePermissions(uri);\n const notify = useNotify();\n const redirect = useRedirect();\n\n useEffect(() => {\n if (!isLoading && identity && permissions && !permissions.some(p => rights[mode].includes(p['acl:mode']))) {\n notify(forbiddenErrors[mode], { type: 'error' });\n redirect(redirectUrl);\n }\n }, [permissions, identity, redirect, notify, isLoading]);\n\n return permissions;\n};\n\nexport default useCheckPermissions;\n","export const ACL_READ = 'acl:Read';\nexport const ACL_APPEND = 'acl:Append';\nexport const ACL_WRITE = 'acl:Write';\nexport const ACL_CONTROL = 'acl:Control';\n\nexport const USER_AGENT = 'acl:agent';\nexport const GROUP_AGENT = 'acl:agentGroup';\nexport const CLASS_AGENT = 'acl:agentClass';\n\nexport const ANONYMOUS_AGENT = 'foaf:Agent';\nexport const AUTHENTICATED_AGENT = 'acl:AuthenticatedAgent';\n\nexport const rightsToShow = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToList = [ACL_READ, ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToCreate = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToEdit = [ACL_APPEND, ACL_WRITE, ACL_CONTROL];\nexport const rightsToDelete = [ACL_WRITE, ACL_CONTROL];\nexport const rightsToControl = [ACL_CONTROL];\n\nexport const rights = {\n show: rightsToShow,\n list: rightsToList,\n create: rightsToCreate,\n edit: rightsToEdit,\n delete: rightsToDelete,\n control: rightsToControl\n};\n\nexport const forbiddenErrors = {\n show: 'auth.message.resource_show_forbidden',\n edit: 'auth.message.resource_edit_forbidden',\n delete: 'auth.message.resource_delete_forbidden',\n control: 'auth.message.resource_control_forbidden',\n list: 'auth.message.container_list_forbidden',\n create: 'auth.message.container_create_forbidden'\n};\n\nexport const resourceRightsLabels = {\n [ACL_READ]: 'auth.right.resource.read',\n [ACL_APPEND]: 'auth.right.resource.append',\n [ACL_WRITE]: 'auth.right.resource.write',\n [ACL_CONTROL]: 'auth.right.resource.control'\n};\n\nexport const containerRightsLabels = {\n [ACL_READ]: 'auth.right.container.read',\n [ACL_WRITE]: 'auth.right.container.write',\n [ACL_CONTROL]: 'auth.right.container.control'\n};\n","import React from 'react';\nimport { Edit, useGetRecordId } from 'react-admin';\nimport EditActionsWithPermissions from './EditActionsWithPermissions';\nimport EditToolbarWithPermissions from './EditToolbarWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst EditWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'edit');\n return (\n \n {React.cloneElement(props.children, {\n toolbar: ,\n // Allow to override toolbar\n ...props.children.props\n })}\n \n );\n};\n\nEditWithPermissions.defaultProps = {\n actions: \n};\n\nexport default EditWithPermissions;\n","import React from 'react';\nimport {\n usePermissionsOptimized,\n ShowButton,\n ListButton,\n TopToolbar,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl } from '../../constants';\n\nconst EditActionsWithPermissions = () => {\n const { hasList, hasShow } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissionsOptimized(record?.id);\n return (\n \n {hasList && }\n {hasShow && }\n {!!permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default EditActionsWithPermissions;\n","import React, { useState } from 'react';\nimport { Button, useRecordContext, useResourceContext } from 'react-admin';\nimport ShareIcon from '@mui/icons-material/Share';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsDialog from './PermissionsDialog';\n\nconst PermissionsButton = ({ isContainer }) => {\n const record = useRecordContext();\n const resource = useResourceContext();\n const [showDialog, setShowDialog] = useState(false);\n const createContainer = useCreateContainer(resource);\n const uri = isContainer ? createContainer : record.id || record['@id'];\n return (\n <>\n \n setShowDialog(false)} />\n >\n );\n};\n\nPermissionsButton.defaultProps = {\n isContainer: false\n};\n\nexport default PermissionsButton;\n","import React from 'react';\nimport { Button, useTranslate } from 'react-admin';\nimport { Dialog, DialogTitle, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddPermissionsForm from './AddPermissionsForm';\nimport EditPermissionsForm from './EditPermissionsForm';\nimport useAgents from '../../hooks/useAgents';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingTop: 0,\n paddingBottom: 0,\n paddingRight: 0,\n maxHeight: 210\n }\n}));\n\nconst PermissionsDialog = ({ open, onClose, uri, isContainer }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const { agents, addPermission, removePermission } = useAgents(uri);\n\n return (\n \n );\n};\n\nexport default PermissionsDialog;\n","import React, { useEffect, useState } from 'react';\nimport { useGetList, useTranslate } from 'react-admin';\nimport { TextField, List, ListItem, ListItemAvatar, ListItemText, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport PersonIcon from '@mui/icons-material/Person';\nimport { USER_AGENT, ACL_READ } from '../../constants';\n\nconst useStyles = makeStyles(() => ({\n list: {\n padding: 0,\n width: '100%'\n },\n option: {\n padding: 0\n }\n}));\n\nconst AddPermissionsForm = ({ agents, addPermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const [value, setValue] = useState(null);\n const [inputValue, setInputValue] = useState('');\n const [options, setOptions] = useState([]);\n\n const { data } = useGetList(\n 'Person',\n {\n pagination: { page: 1, perPage: 100 },\n sort: { field: 'pair:label', order: 'ASC' },\n filter: { q: inputValue }\n },\n {\n enabled: inputValue.length > 0\n }\n );\n\n useEffect(() => {\n setOptions(data?.length > 0 ? Object.values(data) : []);\n }, [data]);\n\n return (\n option['pair:label']}\n // Do not return agents which have already been added\n filterOptions={x => x.filter(agent => !Object.keys(agents).includes(agent.id))}\n options={options}\n noOptionsText={translate('ra.navigation.no_results')}\n autoComplete\n blurOnSelect\n clearOnBlur\n disableClearable\n value={value}\n onChange={(event, record) => {\n addPermission(record.id || record['@id'], USER_AGENT, ACL_READ);\n setValue(null);\n setInputValue('');\n setOptions([]);\n }}\n onInputChange={(event, newInputValue) => {\n setInputValue(newInputValue);\n }}\n renderInput={params => (\n \n )}\n renderOption={(props, option) => (\n \n \n \n \n \n \n \n \n \n
\n )}\n />\n );\n};\n\nexport default AddPermissionsForm;\n","import React from 'react';\nimport { List } from '@mui/material';\nimport { styled } from '@mui/system';\nimport AgentItem from './AgentItem';\n\nconst StyledList = styled(List)(({ theme }) => ({\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper\n}));\n\nconst EditPermissionsForm = ({ isContainer, agents, addPermission, removePermission }) => {\n return (\n \n {Object.entries(agents).map(([agentId, agent]) => (\n \n ))}\n \n );\n};\n\nexport default EditPermissionsForm;\n","import React, { useState, useEffect } from 'react';\nimport { useDataProvider, useTranslate, Loading, Error } from 'react-admin';\nimport {\n Avatar,\n ListItem,\n ListItemIcon,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n IconButton,\n Menu,\n MenuItem\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport EditIcon from '@mui/icons-material/Edit';\nimport CheckIcon from '@mui/icons-material/Check';\nimport { GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, resourceRightsLabels, containerRightsLabels } from '../../constants';\nimport AgentIcon from './AgentIcon';\n\nconst useStyles = makeStyles(() => ({\n listItem: {\n paddingLeft: 4,\n paddingRight: 36\n },\n primaryText: {\n width: '30%',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n secondaryText: {\n textAlign: 'center',\n width: '60%',\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst AgentItem = ({ isContainer, agent, addPermission, removePermission }) => {\n const classes = useStyles();\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [user, setUser] = useState();\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState();\n\n useEffect(() => {\n if (agent.predicate === USER_AGENT) {\n dataProvider\n .getOne('Person', { id: agent.id })\n .then(({ data }) => {\n setUser(data);\n setLoading(false);\n })\n .catch(error => {\n setError(error);\n setLoading(false);\n });\n } else {\n setLoading(false);\n }\n }, [agent.id, agent.predicate]);\n\n // For now, do not display groups\n if (agent.predicate === GROUP_AGENT) return null;\n\n const openMenu = event => setAnchorEl(event.currentTarget);\n const closeMenu = () => setAnchorEl(null);\n\n const labels = isContainer ? containerRightsLabels : resourceRightsLabels;\n\n if (loading) return ;\n if (error) return ;\n\n return (\n \n \n \n \n \n \n \n translate(labels[p])).join(', ')}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default AgentItem;\n","import React from 'react';\nimport PublicIcon from '@mui/icons-material/Public';\nimport VpnLockIcon from '@mui/icons-material/VpnLock';\nimport PersonIcon from '@mui/icons-material/Person';\nimport GroupIcon from '@mui/icons-material/Group';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT } from '../../constants';\n\nconst AgentIcon = ({ agent }) => {\n switch (agent.predicate) {\n case CLASS_AGENT:\n return agent.id === ANONYMOUS_AGENT ? : ;\n case USER_AGENT:\n return ;\n case GROUP_AGENT:\n return ;\n default:\n throw new Error(`Unknown agent predicate: ${agent.predicate}`);\n }\n};\n\nexport default AgentIcon;\n","import { useEffect, useCallback, useState } from 'react';\nimport { usePermissions, useAuthProvider } from 'react-admin';\nimport { defaultToArray } from '../utils';\nimport { CLASS_AGENT, GROUP_AGENT, USER_AGENT, ANONYMOUS_AGENT, AUTHENTICATED_AGENT } from '../constants';\n\nconst useAgents = uri => {\n const { permissions } = usePermissions(uri);\n const authProvider = useAuthProvider();\n const [agents, setAgents] = useState({});\n\n // Format list of authorized agents, based on the permissions returned for the resource\n useEffect(() => {\n const result = {\n [ANONYMOUS_AGENT]: {\n id: ANONYMOUS_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n },\n [AUTHENTICATED_AGENT]: {\n id: AUTHENTICATED_AGENT,\n predicate: CLASS_AGENT,\n permissions: []\n }\n };\n\n const appendPermission = (agentId, predicate, mode) => {\n if (result[agentId]) {\n result[agentId].permissions.push(mode);\n } else {\n result[agentId] = {\n id: agentId,\n predicate,\n permissions: [mode]\n };\n }\n };\n\n if (permissions) {\n for (const p of permissions) {\n if (p[CLASS_AGENT]) {\n defaultToArray(p[CLASS_AGENT]).forEach(agentId => appendPermission(agentId, CLASS_AGENT, p['acl:mode']));\n }\n if (p[USER_AGENT]) {\n defaultToArray(p[USER_AGENT]).forEach(userUri => appendPermission(userUri, USER_AGENT, p['acl:mode']));\n }\n if (p[GROUP_AGENT]) {\n defaultToArray(p[GROUP_AGENT]).forEach(groupUri => appendPermission(groupUri, GROUP_AGENT, p['acl:mode']));\n }\n }\n setAgents(result);\n }\n }, [permissions]);\n\n const addPermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents({\n ...agents,\n [agentId]: {\n id: agentId,\n predicate,\n permissions: agents[agentId] ? [...agents[agentId]?.permissions, mode] : [mode]\n }\n });\n authProvider.addPermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n const removePermission = useCallback(\n (agentId, predicate, mode) => {\n const prevAgents = { ...agents };\n setAgents(\n Object.fromEntries(\n Object.entries(agents)\n .map(([key, agent]) => {\n if (agent.id === agentId) {\n agent.permissions = agent.permissions.filter(m => m !== mode);\n }\n return [key, agent];\n })\n // Remove agents if they have no permissions (except if they are class agents)\n .filter(([_, agent]) => agent.predicate === CLASS_AGENT || agent.permissions.length > 0)\n )\n );\n authProvider.removePermission(uri, agentId, predicate, mode).catch(e => {\n // If there was an error, revert the optimistic update\n setAgents(prevAgents);\n });\n },\n [agents, setAgents, uri, authProvider]\n );\n\n return { agents, addPermission, removePermission };\n};\n\nexport default useAgents;\n","import React from 'react';\nimport { SaveButton, Toolbar } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\nimport DeleteButtonWithPermissions from './DeleteButtonWithPermissions';\n\nconst useStyles = makeStyles(() => ({\n toolbar: {\n flex: 1,\n display: 'flex',\n justifyContent: 'space-between'\n }\n}));\n\nconst EditToolbarWithPermissions = props => {\n const classes = useStyles();\n return (\n \n \n \n \n );\n};\n\nexport default EditToolbarWithPermissions;\n","import React from 'react';\nimport { DeleteButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToDelete } from '../../constants';\n\nconst DeleteButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToDelete.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default DeleteButtonWithPermissions;\n","import React from 'react';\nimport { EditButton, useGetRecordId, usePermissions } from 'react-admin';\nimport { rightsToEdit } from '../../constants';\n\nconst EditButtonWithPermissions = props => {\n const recordId = useGetRecordId();\n const { permissions, isLoading } = usePermissions(recordId);\n if (!isLoading && permissions?.some(p => rightsToEdit.includes(p['acl:mode']))) {\n return ;\n }\n return null;\n};\n\nexport default EditButtonWithPermissions;\n","import React from 'react';\nimport { List } from 'react-admin';\nimport ListActionsWithPermissions from './ListActionsWithPermissions';\n\nconst ListWithPermissions = props =>
;\n\nListWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ListWithPermissions;\n","import React from 'react';\nimport {\n CreateButton,\n ExportButton,\n useResourceDefinition,\n TopToolbar,\n usePermissions,\n useResourceContext\n} from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToCreate, rightsToControl } from '../../constants';\n\n// Do not show Export and Refresh buttons on mobile\nconst ListActionsWithPermissions = ({\n bulkActions,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total\n}) => {\n const resource = useResourceContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('xs'));\n const resourceDefinition = useResourceDefinition();\n const createContainerUri = useCreateContainer(resource);\n const { permissions } = usePermissions(createContainerUri);\n return (\n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && permissions && permissions.some(p => rightsToCreate.includes(p['acl:mode'])) && (\n \n )}\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && (\n \n )}\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithPermissions;\n","import React from 'react';\nimport { Show, useGetRecordId } from 'react-admin';\nimport ShowActionsWithPermissions from './ShowActionsWithPermissions';\nimport useCheckPermissions from '../../hooks/useCheckPermissions';\n\nconst ShowWithPermissions = props => {\n const recordId = useGetRecordId();\n useCheckPermissions(recordId, 'show');\n return ;\n};\n\nShowWithPermissions.defaultProps = {\n actions: \n};\n\nexport default ShowWithPermissions;\n","import React from 'react';\nimport {\n EditButton,\n ListButton,\n TopToolbar,\n usePermissions,\n useResourceDefinition,\n useRecordContext\n} from 'react-admin';\nimport PermissionsButton from '../../components/PermissionsButton/PermissionsButton';\nimport { rightsToControl, rightsToEdit } from '../../constants';\n\nconst ShowActionsWithPermissions = () => {\n const { hasList, hasEdit } = useResourceDefinition();\n const record = useRecordContext();\n const { permissions } = usePermissions(record?.id);\n return (\n \n {hasList && }\n {hasEdit && permissions && permissions.some(p => rightsToEdit.includes(p['acl:mode'])) && }\n {permissions && permissions.some(p => rightsToControl.includes(p['acl:mode'])) && }\n \n );\n};\n\nexport default ShowActionsWithPermissions;\n","import React from 'react';\nimport { useLogin, useTranslate } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle } from '@mui/material';\n\nconst AuthDialog = ({ open, onClose, title, message, redirect, ...rest }) => {\n const login = useLogin();\n const translate = useTranslate();\n return (\n \n );\n};\n\nAuthDialog.defaultProps = {\n title: 'auth.dialog.login_required',\n message: 'auth.message.login_to_continue'\n};\n\nexport default AuthDialog;\n","import React, { useRef, useEffect } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\nimport { useDataProvider, useAuthProvider, useLogin, useGetIdentity, useNotify } from 'react-admin';\nimport { Card, Avatar, Typography, Button, CardActions } from '@mui/material';\nimport { styled } from '@mui/material/styles';\nimport LockIcon from '@mui/icons-material/Lock';\n\nconst delay = async t => new Promise(resolve => setTimeout(resolve, t));\n\n// Inspired from https://github.com/marmelab/react-admin/blob/master/packages/ra-ui-materialui/src/auth/Login.tsx\nconst SsoLoginPage = ({ children, backgroundImage, buttons, userResource, propertiesExist, text, ...rest }) => {\n const containerRef = useRef();\n let backgroundImageLoaded = false;\n const navigate = useNavigate();\n const [searchParams] = useSearchParams();\n const { identity, isLoading } = useGetIdentity();\n\n const notify = useNotify();\n const login = useLogin();\n const dataProvider = useDataProvider();\n const authProvider = useAuthProvider();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n // Already authenticated, redirect to the home page\n navigate(searchParams.get('redirect') || '/');\n }\n }, [identity, isLoading, navigate, searchParams]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('login')) {\n if (searchParams.has('error')) {\n if (searchParams.get('error') === 'registration.not-allowed') {\n notify('auth.message.user_email_not_found', { type: 'error' });\n } else {\n notify('auth.message.bad_request', { type: 'error', error: searchParams.get('error') });\n }\n } else if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n\n localStorage.setItem('token', token);\n\n let userData;\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n\n if (propertiesExist.length > 0) {\n let allPropertiesExist = propertiesExist.every(p => userData[p]);\n while (!allPropertiesExist) {\n console.log('Waiting for all properties to have been created', propertiesExist);\n await delay(500);\n ({ data: userData } = await dataProvider.getOne(userResource, { id: webId }));\n allPropertiesExist = propertiesExist.every(p => userData[p]);\n }\n }\n\n if (!authProvider.checkUser(userData)) {\n localStorage.removeItem('token');\n notify('auth.message.user_not_allowed_to_login', { type: 'error' });\n navigate.replace('/login');\n } else if (searchParams.has('redirect')) {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = searchParams.get('redirect');\n } else if (searchParams.has('new') && searchParams.get('new') === 'true') {\n notify('auth.message.new_user_created', { type: 'info' });\n window.location.href = `/${userResource}/${encodeURIComponent(webId)}`;\n } else {\n notify('auth.message.user_connected', { type: 'info' });\n window.location.href = '/';\n }\n }\n }\n\n if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', { type: 'info' });\n navigate('/');\n }\n })();\n }, [searchParams, navigate, notify, userResource]);\n\n const updateBackgroundImage = () => {\n if (!backgroundImageLoaded && containerRef.current) {\n containerRef.current.style.backgroundImage = `url(${backgroundImage})`;\n backgroundImageLoaded = true;\n }\n };\n\n // Load background image asynchronously to speed up time to interactive\n const lazyLoadBackgroundImage = () => {\n if (backgroundImage) {\n const img = new Image();\n img.onload = updateBackgroundImage;\n img.src = backgroundImage;\n }\n };\n\n useEffect(() => {\n if (!backgroundImageLoaded) {\n lazyLoadBackgroundImage();\n }\n });\n\n if (isLoading) return null;\n\n return (\n \n \n \n {text && {text}}\n {buttons?.map((button, i) => (\n \n {React.cloneElement(button, {\n fullWidth: true,\n variant: 'outlined',\n type: 'submit',\n onClick: () => login({}, '/login')\n })}\n \n ))}\n \n \n );\n};\n\nconst PREFIX = 'SsoLoginPage';\n\nexport const SsoLoginPageClasses = {\n card: `${PREFIX}-card`,\n avatar: `${PREFIX}-avatar`,\n icon: `${PREFIX}-icon`,\n switch: `${PREFIX}-switch`\n};\n\nconst Root = styled('div', {\n name: PREFIX,\n overridesResolver: (props, styles) => styles.root\n})(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n minHeight: '100vh',\n height: '1px',\n alignItems: 'center',\n justifyContent: 'flex-start',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n backgroundImage: 'radial-gradient(circle at 50% 14em, #313264 0%, #00023b 60%, #00023b 100%)',\n [`& .${SsoLoginPageClasses.card}`]: {\n minWidth: 300,\n marginTop: '6em'\n },\n [`& .${SsoLoginPageClasses.avatar}`]: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n [`& .${SsoLoginPageClasses.icon}`]: {\n backgroundColor: theme.palette.secondary[500]\n },\n [`& .${SsoLoginPageClasses.switch}`]: {\n marginBottom: '1em',\n display: 'flex',\n justifyContent: 'center'\n }\n}));\n\nSsoLoginPage.defaultProps = {\n propertiesExist: [],\n // TODO deprecate this\n buttons: [}>Les Communs],\n userResource: 'Person'\n};\n\nexport default SsoLoginPage;\n","import React, { useMemo } from 'react';\nimport { Notification } from 'react-admin';\nimport { ThemeProvider } from '@mui/system';\nimport { createTheme } from '@mui/material/styles';\nimport { StyledEngineProvider } from '@mui/material';\nimport PodLoginPageView from './PodLoginPageView';\n\nconst PodLoginPage = props => {\n const muiTheme = useMemo(() => createTheme(props.theme), [props.theme]);\n return (\n \n \n \n \n \n \n );\n};\n\nexport default PodLoginPage;\n","import React, { useEffect, useState } from 'react';\nimport jwtDecode from 'jwt-decode';\nimport { useNotify, useAuthProvider, useDataProvider, useLocale, useTranslate } from 'react-admin';\nimport { Box, List, ListItem, ListItemText, ListItemAvatar, Avatar, Divider, Card, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LockIcon from '@mui/icons-material/Lock';\nimport StorageIcon from '@mui/icons-material/Storage';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.primary.main\n }\n },\n text: {\n textAlign: 'center',\n padding: '4px 8px 8px'\n },\n card: {\n minWidth: 300,\n maxWidth: 350,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n lockIconAvatar: {\n margin: '1em',\n display: 'flex',\n justifyContent: 'center'\n },\n lockIcon: {\n backgroundColor: theme.palette.grey['500']\n },\n list: {\n paddingTop: 0,\n paddingBottom: 0\n },\n listItem: {\n paddingTop: 5,\n paddingBottom: 5\n }\n}));\n\nconst PodLoginPageView = ({ history, location, text, customPodProviders }) => {\n const classes = useStyles();\n const notify = useNotify();\n const locale = useLocale();\n const translate = useTranslate();\n const authProvider = useAuthProvider();\n const dataProvider = useDataProvider();\n const [podProviders, setPodProviders] = useState(customPodProviders || []);\n const searchParams = new URLSearchParams(location.search);\n\n useEffect(() => {\n (async () => {\n if (podProviders.length === 0) {\n const results = await fetch('https://data.activitypods.org/pod-providers', {\n headers: {\n Accept: 'application/ld+json'\n }\n });\n if (results.ok) {\n const json = await results.json();\n // Filter POD providers by available locales\n const podProviders = json['ldp:contains'].filter(provider =>\n Array.isArray(provider['apods:locales'])\n ? provider['apods:locales'].includes(locale)\n : provider['apods:locales'] === locale\n );\n setPodProviders(podProviders);\n } else {\n notify('auth.message.pod_providers_not_loaded', 'error');\n }\n }\n })();\n }, [podProviders, setPodProviders, notify, locale]);\n\n useEffect(() => {\n (async () => {\n if (searchParams.has('token')) {\n const token = searchParams.get('token');\n const { webId } = jwtDecode(token);\n const response = await fetch(webId, {\n headers: {\n Accept: 'application/json'\n }\n });\n if (!response.ok) {\n notify('auth.message.unable_to_fetch_user_data', 'error');\n } else {\n const data = await response.json();\n if (!authProvider.checkUser(data)) {\n notify('auth.message.user_not_allowed_to_login', 'error');\n history.replace('/login');\n } else {\n localStorage.setItem('token', token);\n notify('auth.message.user_connected', 'info');\n // Reload to ensure the dataServers config is reset\n window.location.reload();\n window.location.href = '/?addUser=true';\n }\n }\n } else if (searchParams.has('logout')) {\n // Delete token and any other value in local storage\n localStorage.clear();\n notify('auth.message.user_disconnected', 'info');\n history.push('/');\n }\n })();\n }, [searchParams, dataProvider]);\n\n if (searchParams.has('token') || searchParams.has('addUser') || searchParams.has('logout')) {\n return null;\n }\n\n return (\n \n \n \n \n \n {text || translate('auth.message.choose_pod_provider')}\n \n \n \n \n {podProviders.map((podProvider, i) => {\n const url = new URL(\n '/auth',\n (podProvider['apods:domainName'].includes(':') ? 'http://' : 'https://') +\n podProvider['apods:domainName']\n );\n if (searchParams.has('signup')) url.searchParams.set('signup', 'true');\n url.searchParams.set('redirect', window.location.href);\n return (\n \n \n (window.location.href = url.toString())}\n className={classes.listItem}\n >\n \n \n \n \n \n \n \n \n );\n })}\n
\n \n \n \n );\n};\n\nexport default PodLoginPageView;\n","import React, { useEffect, useMemo } from 'react';\nimport { Link, useNavigate, useSearchParams } from 'react-router-dom';\nimport { useTranslate, useGetIdentity } from 'react-admin';\nimport { Card, Typography } from '@mui/material';\nimport LockIcon from '@mui/icons-material/Lock';\nimport makeStyles from '@mui/styles/makeStyles';\nimport SignupForm from './SignupForm';\nimport LoginForm from './LoginForm';\nimport NewPasswordForm from './NewPasswordForm';\nimport ResetPasswordForm from './ResetPasswordForm';\nimport SimpleBox from './SimpleBox';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(() => ({\n switch: {\n marginBottom: '1em',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center'\n }\n}));\n\n/**\n * @param {object} props Props\n * @param {boolean} props.hasSignup If to show signup form.\n * @param {boolean} props.allowUsername Indicates, if login is allowed with username (instead of email).\n * @param {string} props.postSignupRedirect Location to redirect to after signup.\n * @param {string} props.postLoginRedirect Location to redirect to after login.\n * @param {object} props.additionalSignupValues\n * @param {object} props.passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst LocalLoginPage = ({\n hasSignup,\n allowUsername,\n postSignupRedirect,\n postLoginRedirect,\n additionalSignupValues,\n passwordScorer = defaultScorer\n}) => {\n const classes = useStyles();\n const navigate = useNavigate();\n const translate = useTranslate();\n const [searchParams] = useSearchParams();\n const isSignup = hasSignup && searchParams.has('signup');\n const isResetPassword = searchParams.has('reset_password');\n const isNewPassword = searchParams.has('new_password');\n const isLogin = !isSignup && !isResetPassword && !isNewPassword;\n const redirectTo = searchParams.get('redirect');\n const { identity, isLoading } = useGetIdentity();\n\n useEffect(() => {\n if (!isLoading && identity?.id) {\n if (postLoginRedirect) {\n navigate(`${postLoginRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`);\n } else if (redirectTo && redirectTo.startsWith('http')) {\n window.location.href = redirectTo;\n } else {\n navigate(redirectTo || '/');\n }\n }\n }, [identity, isLoading, navigate, redirectTo, postLoginRedirect]);\n\n const [title, text] = useMemo(() => {\n if (isSignup) {\n return ['auth.action.signup', 'auth.helper.signup'];\n }\n if (isLogin) {\n return ['auth.action.login', 'auth.helper.login'];\n }\n if (isResetPassword) {\n return ['auth.action.reset_password', 'auth.helper.reset_password'];\n }\n if (isNewPassword) {\n return ['auth.action.set_new_password', 'auth.helper.set_new_password'];\n }\n }, [isSignup, isLogin, isResetPassword, isNewPassword]);\n\n if (isLoading || identity?.id) return null;\n if (isLoading || identity?.id) return null;\n\n return (\n }>\n \n {isSignup && (\n \n )}\n {isResetPassword && }\n {isNewPassword && }\n {isLogin && }\n \n {isSignup && (\n
\n
{translate('auth.action.login')}\n \n )}\n {isLogin && (\n <>\n {hasSignup && (\n
\n \n {translate('auth.action.signup')}\n \n
\n )}\n
\n \n {translate('auth.action.reset_password')}\n \n
\n >\n )}\n
\n \n \n );\n};\n\nLocalLoginPage.defaultProps = {\n hasSignup: true,\n allowUsername: false,\n additionalSignupValues: {}\n};\n\nexport default LocalLoginPage;\n","import * as React from 'react';\nimport createSlug from 'speakingurl';\nimport {\n Form,\n useTranslate,\n useNotify,\n useSafeSetState,\n TextInput,\n required,\n email,\n useLocaleState\n} from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useSignup from '../../hooks/useSignup';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n * @param postSignupRedirect\n * @param additionalSignupValues\n * @param delayBeforeRedirect\n * @param {string} redirectTo\n * @param {object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst SignupForm = ({\n redirectTo,\n passwordScorer = defaultScorer,\n postSignupRedirect,\n additionalSignupValues,\n delayBeforeRedirect\n}) => {\n const [loading, setLoading] = useSafeSetState(false);\n const signup = useSignup();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const [locale] = useLocaleState();\n const [password, setPassword] = React.useState('');\n\n const submit = values => {\n setLoading(true);\n signup({\n ...values,\n ...additionalSignupValues\n })\n .then(webId => {\n if (delayBeforeRedirect) {\n setTimeout(() => {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }, delayBeforeRedirect);\n } else {\n // Reload to ensure the dataServer config is reset\n window.location.reload();\n window.location.href = postSignupRedirect\n ? `${postSignupRedirect}?redirect=${encodeURIComponent(redirectTo || '/')}`\n : redirectTo || '/';\n setLoading(false);\n }\n notify('auth.message.new_user_created', { type: 'info' });\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nSignupForm.defaultValues = {\n redirectTo: '/',\n additionalSignupValues: {}\n};\n\nexport default SignupForm;\n","import { useCallback } from 'react';\nimport { useAuthProvider } from 'react-admin';\n\nconst useSignup = () => {\n const authProvider = useAuthProvider();\n\n return useCallback((params = {}) => authProvider.signup(params), [authProvider]);\n};\n\nexport default useSignup;\n","import { defaultScorer } from '../../passwordScorer';\n\nconst validatePasswordStrength = (scorer = defaultScorer) => value => {\n if (!scorer) return undefined;\n const strength = scorer.scoreFn(value);\n if (strength < scorer.minRequiredScore) {\n return 'auth.input.password_too_weak';\n }\n return undefined;\n};\n\nexport default validatePasswordStrength;\n","// Inspired by https://github.com/bartlomiejzuber/password-strength-score\n\n/**\n * @typedef PasswordStrengthOptions\n * @property {number} isVeryLongLength - Required characters for a very long password (default: 12)\n * @property {number} isLongLength - Required characters for a long password (default: 6)\n * @property {number} isVeryLongScore - Score for a very long password (default: 2.5)\n * @property {number} isLongScore - Score for a long password (default: 1.5)\n * @property {number} uppercaseScore - Score for a password with uppercase letters (default: 1)\n * @property {number} lowercaseScore - Score for a password with lowercase letters (default: 1)\n * @property {number} numbersScore - Score for a password with numbers (default: 1)\n * @property {number} nonAlphanumericsScore - Score for a password without non-alphanumeric characters (default: 1)\n */\n\n/** @type {PasswordStrengthOptions} */\nexport const defaultOptions = {\n isVeryLongLength: 14,\n isLongLength: 8,\n isLongScore: 2,\n isVeryLongScore: 4,\n uppercaseScore: 1,\n lowercaseScore: 1,\n numbersScore: 1,\n nonAlphanumericsScore: 1\n};\n\n/**\n *\n * @param {string} password Password text.\n * @param {PasswordStrengthOptions} options Password options.\n * @returns {number} The password strength score.\n */\nexport const passwordStrength = (password, options) => {\n if (!password) {\n return 0;\n }\n\n const mergedOptions = { ...defaultOptions, ...options };\n\n const longScore = (password.length >= mergedOptions.isLongLength && mergedOptions.isLongScore) || 0;\n const veryLongScore = (password.length >= mergedOptions.isVeryLongLength && mergedOptions.isVeryLongScore) || 0;\n const lowercaseScore = (/[a-z]/.test(password) && mergedOptions.lowercaseScore) || 0;\n const uppercaseScore = (/[A-Z]/.test(password) && mergedOptions.uppercaseScore) || 0;\n const numbersScore = (/\\d/.test(password) && mergedOptions.numbersScore) || 0;\n const nonalphasScore = (/\\W/.test(password) && mergedOptions.nonAlphanumericsScore) || 0;\n\n return uppercaseScore + lowercaseScore + numbersScore + nonalphasScore + longScore + veryLongScore;\n};\n\nexport const createPasswordScorer = (options = defaultOptions, minRequiredScore = 5) => {\n const mergedOptions = { ...defaultOptions, ...options };\n\n return {\n scoreFn: password => passwordStrength(password, mergedOptions),\n minRequiredScore,\n maxScore:\n mergedOptions.uppercaseScore +\n mergedOptions.lowercaseScore +\n mergedOptions.numbersScore +\n mergedOptions.nonAlphanumericsScore +\n mergedOptions.isLongScore +\n mergedOptions.isVeryLongScore\n };\n};\n\nexport const defaultScorer = createPasswordScorer(defaultOptions, 5);\n","import React from 'react';\nimport ColorGradientProgressBar from './ColorGradientProgressBar';\nimport { defaultScorer } from '../../passwordScorer';\n\nexport default function PasswordStrengthIndicator({ scorer = defaultScorer, password, ...restProps }) {\n const strength = scorer.scoreFn(password);\n return ;\n}\n","import React from 'react';\nimport { LinearProgress } from '@mui/material';\nimport { withStyles } from '@mui/styles';\n\n/**\n * @typedef {Object} Color\n * @property {number} red\n * @property {number} green\n * @property {number} blue\n */\n\n/** Calculate a rgb-color from a gradient between `color1` and `color2`\n * @param {number} fade - Indicates the fade between `color1` and `color2` in the range [0, 1].\n * @param {Color} color1\n * @param {Color} color2\n * @returns {string} `` `rgb(${red}, ${green}, ${blue})` ``\n */\nconst colorGradient = (fade, color1, color2) => {\n var diffRed = color2.red - color1.red;\n var diffGreen = color2.green - color1.green;\n var diffBlue = color2.blue - color1.blue;\n\n var gradient = {\n red: Math.floor(color1.red + diffRed * fade),\n green: Math.floor(color1.green + diffGreen * fade),\n blue: Math.floor(color1.blue + diffBlue * fade)\n };\n\n return 'rgb(' + gradient.red + ',' + gradient.green + ',' + gradient.blue + ')';\n};\n\n/** A progress bar that changes its color between its min an max value.\n * @param {Object} props\n * @param {Color} [props.badColor = { red: 0xff, green: 0x40, blue: 0x47 }] - default: `#FF4047`\n * @param {Color} [props.goodColor = { red: 0x00, green: 0xff, blue: 0x6e }] - default: `#00FF6E`\n * @param {number} props.maxVal\n * @param {number} props.minVal\n * @param {number} props.currentVal\n */\nexport default function ColorGradientProgressBar(props) {\n const { minVal, maxVal, currentVal, badColor, goodColor, ...restProps } = props;\n\n const color1 = badColor || { red: 0xff, green: 0x40, blue: 0x47 };\n const color2 = goodColor || { red: 0x00, green: 0xff, blue: 0x6e };\n\n const fade = Math.max(0, Math.min(1, (currentVal - minVal) / (maxVal - minVal)));\n const currentColor = colorGradient(fade, color1, color2);\n\n const StyledLinearProgress = withStyles({\n colorPrimary: {\n backgroundColor: '#e0e0e0'\n },\n barColorPrimary: {\n backgroundColor: currentColor\n }\n })(LinearProgress);\n\n return ;\n}\n","import * as React from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, TextInput, required, email, useLogin } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n content: {\n width: 450\n },\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst LoginForm = ({ redirectTo, allowUsername }) => {\n const [loading, setLoading] = useSafeSetState(false);\n const login = useLogin();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n\n const submit = values => {\n setLoading(true);\n login(values, redirectTo)\n .then(() => {\n setLoading(false);\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'ra.auth.sign_in_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nLoginForm.defaultValues = {\n redirectTo: '/',\n allowUsername: false\n};\n\nexport default LoginForm;\n","import React, { useState } from 'react';\nimport { Form, useTranslate, useNotify, useSafeSetState, useAuthProvider, TextInput, required } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { Button, CardContent, CircularProgress, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport PasswordStrengthIndicator from './PasswordStrengthIndicator';\nimport validatePasswordStrength from './validatePasswordStrength';\nimport { defaultScorer } from '../../passwordScorer';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\n/**\n *\n * @param {string} redirectTo\n * @param {Object} passwordScorer Scorer to evaluate and indicate password strength.\n * Set to `null` or `false`, if you don't want password strength checks. Default is\n * passwordStrength's `defaultScorer`.\n * @returns\n */\nconst NewPasswordForm = ({ redirectTo, passwordScorer = defaultScorer }) => {\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const token = searchParams.get('token');\n\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const [newPassword, setNewPassword] = useState('');\n\n const submit = values => {\n setLoading(true);\n authProvider\n .setNewPassword({ ...values, token })\n .then(res => {\n setTimeout(() => {\n window.location.href = `/login${redirectTo ? `?redirect=${encodeURIComponent(redirectTo)}` : ''}`;\n setLoading(false);\n }, 2000);\n notify('auth.notification.password_changed', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default NewPasswordForm;\n","import React from 'react';\nimport { Form, TextInput, required, useTranslate, useNotify, useSafeSetState, useAuthProvider } from 'react-admin';\nimport { Button, CardContent, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n margin: theme.spacing(0.3)\n }\n}));\n\nconst ResetPasswordForm = () => {\n const [loading, setLoading] = useSafeSetState(false);\n const authProvider = useAuthProvider();\n const translate = useTranslate();\n const notify = useNotify();\n const classes = useStyles();\n\n const submit = values => {\n setLoading(true);\n authProvider\n .resetPassword({ ...values })\n .then(res => {\n setLoading(false);\n notify('auth.notification.reset_password_submitted', 'info');\n })\n .catch(error => {\n setLoading(false);\n notify(\n typeof error === 'string'\n ? error\n : typeof error === 'undefined' || !error.message\n ? 'auth.notification.reset_password_error'\n : error.message,\n {\n type: 'warning',\n messageArgs: {\n _: typeof error === 'string' ? error : error && error.message ? error.message : undefined\n }\n }\n );\n });\n };\n\n return (\n \n );\n};\n\nexport default ResetPasswordForm;\n","import React from 'react';\nimport { Box, Card, Typography } from '@mui/material';\nimport { Notification } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useStyles = makeStyles(theme => ({\n '@global': {\n body: {\n backgroundColor: theme.palette.secondary.main\n }\n },\n root: {\n backgroundColor: theme.palette.secondary.main\n },\n card: {\n minWidth: 300,\n maxWidth: 500,\n marginTop: '6em',\n [theme.breakpoints.down('sm')]: {\n margin: '1em'\n }\n },\n icon: {\n marginTop: 5,\n marginRight: 5\n },\n title: {\n [theme.breakpoints.down('sm')]: {\n fontWeight: 'bold',\n marginTop: 12\n }\n }\n}));\n\nconst SimpleBox = ({ title, icon, text, children }) => {\n const classes = useStyles();\n return (\n \n \n \n {icon && React.cloneElement(icon, { fontSize: 'large', className: classes.icon })}\n \n {title}\n \n \n \n {text}\n \n {children}\n \n \n \n );\n};\n\nexport default SimpleBox;\n","import React from 'react';\nimport { Resource, usePermissions } from 'react-admin';\nimport { useCreateContainer } from '@semapps/semantic-data-provider';\nimport { rightsToCreate } from '../constants';\n\n// Not used for now. The ListWithPermissions component will handle the conditional display of the Create button.\nconst ResourceWithPermission = ({ name, create, ...rest }) => {\n const createContainer = useCreateContainer(name);\n const { permissions } = usePermissions(createContainer);\n return (\n rightsToCreate.includes(p['acl:mode'])) ? create : undefined}\n // Requesting permissions to list container is too long, we will avoid that for now\n // list={permissions && permissions.some(p => rightsToList.includes(p['acl:mode'])) ? list : undefined}\n />\n );\n};\n\nexport default ResourceWithPermission;\n","import React, { forwardRef, useCallback } from 'react';\nimport { Logout, UserMenu as RaUserMenu, useGetIdentity, useTranslate, useUserMenu } from 'react-admin';\nimport { MenuItem, ListItemIcon, ListItemText } from '@mui/material';\nimport AccountCircleIcon from '@mui/icons-material/AccountCircle';\nimport EditIcon from '@mui/icons-material/Edit';\nimport { useNavigate } from 'react-router-dom';\n\n// It's important to pass the ref to allow Material UI to manage the keyboard navigation\nconst UserMenuItem = forwardRef(({ label, icon, to, ...rest }, ref) => {\n const { onClose } = useUserMenu();\n const translate = useTranslate();\n const navigate = useNavigate();\n const onClick = useCallback(() => {\n navigate(to);\n onClose();\n }, [to, onClose, navigate]);\n return (\n \n );\n});\n\nconst UserMenu = ({ logout, profileResource, ...otherProps }) => {\n const { identity } = useGetIdentity();\n return (\n \n {identity && identity.id !== ''\n ? [\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}/show`}\n />,\n }\n to={`/${profileResource}/${encodeURIComponent(identity?.profileData?.id || identity.id)}`}\n />,\n React.cloneElement(logout, { key: 'logout' })\n ]\n : [\n ,\n \n ]}\n \n );\n};\n\nUserMenu.defaultProps = {\n logout: ,\n profileResource: 'Person'\n};\n\nexport default UserMenu;\n","import React, { useEffect } from 'react';\nimport { useGetIdentity, useNotify, useRedirect } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\n\nconst useCheckAuthenticated = message => {\n const { identity, isLoading } = useGetIdentity();\n const notify = useNotify();\n const redirect = useRedirect();\n const location = useLocation();\n\n useEffect(() => {\n if (!isLoading && !identity?.id) {\n notify(message || 'ra.auth.auth_check_error', { type: 'error' });\n redirect(`/login?redirect=${encodeURIComponent(location.pathname + location.search)}`);\n }\n }, [isLoading, identity, redirect, notify, location]);\n\n return { identity, isLoading };\n};\n\nexport default useCheckAuthenticated;\n","import { useEffect, useCallback } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport { useGetPermissions, useSafeSetState } from 'react-admin';\n\nconst emptyParams = {};\n\n// keep a cache of already fetched permissions to initialize state for new\n// components and avoid a useless rerender if the permissions haven't changed\nconst alreadyFetchedPermissions = { '{}': undefined };\n\n// Fork of usePermissionsOptimized, with a refetch option\nconst usePermissionsWithRefetch = (params = emptyParams) => {\n const key = JSON.stringify(params);\n const [state, setState] = useSafeSetState({\n permissions: alreadyFetchedPermissions[key]\n });\n const getPermissions = useGetPermissions();\n\n const fetchPermissions = useCallback(\n () =>\n getPermissions(params)\n .then(permissions => {\n if (!isEqual(permissions, state.permissions)) {\n alreadyFetchedPermissions[key] = permissions;\n setState({ permissions });\n }\n })\n .catch(error => {\n setState({\n error\n });\n }),\n [key, params, getPermissions]\n );\n\n useEffect(() => {\n fetchPermissions();\n }, [key]);\n\n return { ...state, refetch: fetchPermissions };\n};\n\nexport default usePermissionsWithRefetch;\n","const englishMessages = {\n auth: {\n dialog: {\n container_permissions: 'Container permissions',\n resource_permissions: 'Resource permissions',\n login_required: 'Login required'\n },\n action: {\n permissions: 'Permissions',\n signup: 'Signup',\n reset_password: 'Reset password',\n set_new_password: 'Set new password',\n logout: 'Logout',\n login: 'Login',\n view_my_profile: 'View my profile',\n edit_my_profile: 'Edit my profile'\n },\n right: {\n resource: {\n read: 'Read',\n append: 'Append',\n write: 'Write',\n control: 'Control'\n },\n container: {\n read: 'List',\n append: 'Add',\n write: 'Add',\n control: 'Control'\n }\n },\n agent: {\n anonymous: 'All users',\n authenticated: 'Connected users'\n },\n input: {\n agent_select: 'Add an user...',\n name: 'Surname',\n username: 'User ID',\n email: 'Email address',\n username_or_email: 'User ID or email address',\n current_password: 'Current password',\n new_password: 'New password',\n confirm_new_password: 'Confirm new password',\n password_strength: 'Password strength',\n password_too_weak: 'Password too weak. Increase length or add special characters.'\n },\n helper: {\n login: 'Sign in to your account',\n signup: 'Create your account',\n reset_password: 'Enter your email address below and we will send you a link to reset your password',\n set_new_password: 'Please enter your email address and a new password below'\n },\n message: {\n resource_show_forbidden: 'You are not allowed to view this resource',\n resource_edit_forbidden: 'You are not allowed to edit this resource',\n resource_delete_forbidden: 'You are not allowed to delete this resource',\n resource_control_forbidden: 'You are not allowed to control this resource',\n container_create_forbidden: 'You are not allowed to create new resource',\n container_list_forbidden: 'You are not allowed to list these resources',\n user_not_allowed_to_login: 'You are not allowed to login with this account',\n user_email_not_found: 'No account found with this email address',\n user_email_exist: 'An account already exist with this email address',\n username_exist: 'An account already exist with this user ID',\n username_invalid: 'This username is invalid. Only lowercase characters, numbers, dots and hyphens are authorized',\n new_user_created: 'Your account has been successfully created',\n user_connected: 'You are now connected',\n user_disconnected: 'You are now disconnected',\n bad_request: 'Bad request (Error message returned by the server: %{error})',\n account_settings_updated: 'Your account settings have been successfully updated',\n login_to_continue: 'Please login to continue',\n choose_pod_provider:\n 'Please choose a POD provider in the list below. All application data will be saved on your POD.'\n },\n notification: {\n reset_password_submitted: 'An email has been sent with reset password instructions',\n reset_password_error: 'An error occurred',\n password_changed: 'Password changed successfully',\n new_password_error: 'An error occurred',\n invalid_password: 'Invalid password',\n get_settings_error: 'An error occurred',\n update_settings_error: 'An error occurred'\n }\n }\n};\n\nexport default englishMessages;\n","const frenchMessages = {\n auth: {\n dialog: {\n container_permissions: 'Permissions sur le container',\n resource_permissions: 'Permissions sur la ressource',\n login_required: 'Connexion requise'\n },\n action: {\n permissions: 'Permissions',\n signup: \"S'inscrire\",\n reset_password: 'Mot de passe oublié ?',\n set_new_password: 'Définir le mot de passe',\n logout: 'Se déconnecter',\n login: 'Se connecter',\n view_my_profile: 'Voir mon profil',\n edit_my_profile: 'Éditer mon profil'\n },\n right: {\n resource: {\n read: 'Lire',\n append: 'Enrichir',\n write: 'Modifier',\n control: 'Administrer'\n },\n container: {\n read: 'Lister',\n append: 'Ajouter',\n write: 'Ajouter',\n control: 'Administrer'\n }\n },\n agent: {\n anonymous: 'Tous les utilisateurs',\n authenticated: 'Utilisateurs connectés'\n },\n input: {\n agent_select: 'Ajouter un utilisateur...',\n name: 'Prénom',\n username: 'Identifiant unique',\n email: 'Adresse e-mail',\n username_or_email: 'Identifiant ou adresse e-mail',\n current_password: 'Mot de passe actuel',\n new_password: 'Nouveau mot de passe',\n confirm_new_password: 'Confirmer le nouveau mot de passe',\n password_strength: 'Force du mot de passe',\n password_too_weak: 'Mot de passe trop faible. Augmenter la longueur ou ajouter des caractères spéciaux.'\n },\n helper: {\n login: 'Connectez-vous à votre compte.',\n signup: 'Créez votre compte',\n reset_password:\n 'Entrez votre adresse mail ci-dessous et nous vous enverrons un lien pour réinitialiser votre mot de passe',\n set_new_password: 'Veuillez entrer votre adresse mail et un nouveau mot de passe ci-dessous'\n },\n message: {\n resource_show_forbidden: \"Vous n'avez pas la permission de voir cette ressource\",\n resource_edit_forbidden: \"Vous n'avez pas la permission d'éditer cette ressource\",\n resource_delete_forbidden: \"Vous n'avez pas la permission d'effacer cette ressource\",\n resource_control_forbidden: \"Vous n'avez pas la permission d'administrer cette ressource\",\n container_create_forbidden: \"Vous n'avez pas la permission de créer des ressources\",\n container_list_forbidden: \"Vous n'avez pas la permission de voir ces ressources\",\n user_not_allowed_to_login: \"Vous n'avez pas le droit de vous connecter avec ce compte\",\n user_email_not_found: 'Aucun compte trouvé avec cette adresse mail',\n user_email_exist: 'Un compte existe déjà avec cette adresse mail',\n username_exist: 'Un compte existe déjà avec cet identifiant',\n username_invalid:\n \"Cet identifiant n'est pas valide. Seuls les lettres minuscules, les chiffres, les points et les tirets sont autorisés\",\n new_user_created: 'Votre compte a été créé avec succès',\n user_connected: 'Vous êtes maintenant connecté',\n user_disconnected: 'Vous êtes maintenant déconnecté',\n bad_request: \"Requête erronée (Message d'erreur renvoyé par le serveur: %{error})\",\n account_settings_updated: 'Les paramètres de votre compte ont été mis à jour avec succès',\n login_to_continue: 'Veuillez vous connecter pour continuer',\n choose_pod_provider:\n \"Veuillez choisir un fournisseur de PODs dans la liste ci-dessous. Toutes les données de l'application seront enregistrées sur votre POD.\"\n },\n notification: {\n reset_password_submitted: 'Un e-mail a été envoyé avec les instructions de réinitialisation du mot de passe',\n reset_password_error: \"Une erreur s'est produite\",\n password_changed: 'Le mot de passe a été changé avec succès',\n new_password_error: \"Une erreur s'est produite\",\n invalid_password: 'Mot de passe incorrect',\n get_settings_error: \"Une erreur s'est produite\",\n update_settings_error: \"Une erreur s'est produite\"\n }\n }\n};\n\nexport default frenchMessages;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/date-components/dist/index.cjs.js b/src/frontend/packages/date-components/dist/index.cjs.js
index e62a1b737..87f9127db 100644
--- a/src/frontend/packages/date-components/dist/index.cjs.js
+++ b/src/frontend/packages/date-components/dist/index.cjs.js
@@ -13,9 +13,11 @@ var $3RhHq$muistylesmakeStyles = require("@mui/styles/makeStyles");
var $3RhHq$reactrouterdom = require("react-router-dom");
var $3RhHq$fullcalendarlist = require("@fullcalendar/list");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
@@ -61,7 +63,7 @@ const $c332daa71b957685$var$Picker = ({ PickerComponent: PickerComponent, label:
}),
isRequired && /*#__PURE__*/ (0, $3RhHq$reactjsxruntime.jsx)("span", {
"aria-hidden": "true",
- children: " *"
+ children: "\u2009*"
})
]
});
diff --git a/src/frontend/packages/date-components/dist/index.cjs.js.map b/src/frontend/packages/date-components/dist/index.cjs.js.map
index 3b86b1560..38180522d 100644
--- a/src/frontend/packages/date-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/date-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/date-components/src/index.tsx","packages/date-components/src/Picker.tsx","packages/date-components/src/CalendarList.js","packages/date-components/src/useFullCalendarProps.js","packages/date-components/src/DaysList.js"],"sourcesContent":["/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/jsx-props-no-spreading */\nimport { DatePicker, DatePickerProps } from '@mui/x-date-pickers/DatePicker';\nimport { TimePicker, TimePickerProps } from '@mui/x-date-pickers/TimePicker';\nimport { DateTimePicker, DateTimePickerProps } from '@mui/x-date-pickers/DateTimePicker';\nimport Picker, { Props as PickerProps } from './Picker';\n\nconst DateInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst TimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst DateTimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\n\nexport { DateInput, TimeInput, DateTimeInput };\n\nexport { default as CalendarList } from './CalendarList';\nexport { default as DaysList } from './DaysList';\nexport { default as useFullCalendarProps } from './useFullCalendarProps';\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useCallback, ComponentType } from 'react';\nimport { useInput, InputHelperText, TextInputProps, useTranslateLabel } from 'react-admin';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\nimport { getPickersLocalization } from '@mui/x-date-pickers/locales/utils/getPickersLocalization';\nimport { Locale } from 'date-fns';\n\nexport type Props = TextInputProps &\n Omit & {\n PickerComponent: ComponentType;\n locale?: Locale;\n translations?: ReturnType;\n stringFormat?: string;\n };\n\nconst Picker = ({\n PickerComponent,\n label,\n source,\n helperText,\n fullWidth,\n onBlur,\n onChange,\n format,\n parse,\n validate,\n defaultValue,\n locale,\n translations,\n stringFormat = 'ISO',\n ...rest\n}: Props) => {\n const {\n field,\n isRequired,\n fieldState: { error, isTouched, invalid },\n formState: { isSubmitted }\n } = useInput({\n format,\n onBlur,\n onChange,\n parse,\n source,\n validate,\n defaultValue\n });\n\n const handleChange = useCallback(\n (value: Date) => {\n if (value instanceof Date) {\n field.onChange(stringFormat === 'ISO' ? value.toISOString() : value.toString());\n } else {\n field.onChange(null);\n }\n },\n [field, stringFormat]\n );\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = (\n \n {translateLabel({\n label,\n source\n })}\n {isRequired && *}\n \n );\n\n return (\n \n \n )\n }\n }}\n value={field.value ? new Date(field.value) : null}\n onChange={handleChange}\n /* eslint-disable-next-line react/jsx-props-no-spreading */\n {...rest}\n />\n \n );\n};\n\nexport default Picker;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport { useTheme } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n },\n '.fc-day-today': {\n backgroundColor: `${theme.palette.secondary.light} !important`\n },\n // Overwrite violet color of links\n 'a.fc-daygrid-dot-event': {\n color: 'black !important'\n }\n }\n}));\n\nconst CalendarList = props => {\n const theme = useTheme();\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return (\n \n );\n};\n\nCalendarList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default CalendarList;\n","import React, { useMemo, useCallback } from 'react';\nimport { useSearchParams, useNavigate } from 'react-router-dom';\nimport { useListContext, useCreatePath } from 'react-admin';\n\nconst useFullCalendarProps = ({ label, startDate, endDate, linkType }) => {\n const { data, isLoading, resource } = useListContext();\n const [searchParams, setSearchParams] = useSearchParams();\n const navigate = useNavigate();\n const createPath = useCreatePath();\n\n const query = new URLSearchParams(location.search);\n\n // Bypass the link in order to use React-Router\n const eventClick = useCallback(({ event, jsEvent }) => {\n jsEvent.preventDefault();\n navigate(event.url);\n }, []);\n\n // Change the query string when month change\n const datesSet = useCallback(\n ({ view }) => {\n setSearchParams(params => ({\n ...params,\n month: view.currentStart.getMonth() + 1,\n year: view.currentStart.getFullYear()\n }));\n },\n [setSearchParams]\n );\n\n const events = useMemo(\n () =>\n !isLoading &&\n data\n .filter(record => record)\n .map(record => ({\n id: record.id,\n title: typeof label === 'string' ? record[label] : label(record),\n start: typeof startDate === 'string' ? record[startDate] : startDate(record),\n end: typeof endDate === 'string' ? record[endDate] : endDate(record),\n url: createPath({ resource, id: record.id, type: linkType })\n })),\n [isLoading, data, resource, createPath]\n );\n\n return {\n initialDate: query.has('month') ? new Date(query.get('year'), query.get('month') - 1) : new Date(),\n events,\n datesSet,\n eventClick\n };\n};\n\nexport default useFullCalendarProps;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport listPlugin from '@fullcalendar/list';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n }\n }\n}));\n\nconst DaysList = props => {\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return ;\n};\n\nDaysList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default DaysList;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA2C,GAC3C,+CAA+C;;;;ACD/C,2CAA2C,GAC3C,8CAA8C;;;;;AAgB9C,MAAM,+BAAS,CAAe,mBAC5B,eAAe,SACf,KAAK,UACL,MAAM,cACN,UAAU,aACV,SAAS,UACT,MAAM,YACN,QAAQ,UACR,MAAM,SACN,KAAK,YACL,QAAQ,gBACR,YAAY,UACZ,MAAM,gBACN,YAAY,gBACZ,eAAe,OACf,GAAG,MACgB;IACnB,MAAM,SACJ,KAAK,cACL,UAAU,EACV,YAAY,SAAE,KAAK,aAAE,SAAS,WAAE,OAAO,EAAE,EACzC,WAAW,eAAE,WAAW,EAAE,EAC3B,GAAG,CAAA,GAAA,0BAAO,EAAE;gBACX;gBACA;kBACA;eACA;gBACA;kBACA;sBACA;IACF;IAEA,MAAM,eAAe,CAAA,GAAA,wBAAU,EAC7B,CAAC;QACC,IAAI,iBAAiB,MACnB,MAAM,QAAQ,CAAC,iBAAiB,QAAQ,MAAM,WAAW,KAAK,MAAM,QAAQ;aAE5E,MAAM,QAAQ,CAAC;IAEnB,GACA;QAAC;QAAO;KAAa;IAGvB,MAAM,iBAAiB,CAAA,GAAA,mCAAgB;IACvC,MAAM,gCACJ,iCAAC;;YACE,eAAe;uBACd;wBACA;YACF;YACC,4BAAc,gCAAC;gBAAK,eAAY;0BAAO;;;;IAI5C,qBACE,gCAAC,CAAA,GAAA,+DAAmB;QAClB,aAAa,CAAA,GAAA,mDAAa;QAC1B,eAAe;QACf,YAAY,cAAc,WAAW,wBAAwB,aAAa;kBAE1E,cAAA,gCAAC;YACC,OAAO;YACP,WAAW;gBACT,WAAW;oBACT,OAAO,AAAC,CAAA,aAAa,WAAU,KAAM;oBACrC,MAAM;+BACN;oBACA,0BACE,gCAAC,CAAA,GAAA,iCAAc;wBAAE,SAAS,aAAa;wBAAa,OAAO,OAAO;wBAAS,YAAY;;gBAE3F;YACF;YACA,OAAO,MAAM,KAAK,GAAG,IAAI,KAAK,MAAM,KAAK,IAAI;YAC7C,UAAU;YAET,GAAG,IAAI;;;AAIhB;IAEA,2CAAe;;;;;;;;;;;;AE9Ff,MAAM,6CAAuB,CAAC,SAAE,KAAK,aAAE,SAAS,WAAE,OAAO,YAAE,QAAQ,EAAE;IACnE,MAAM,QAAE,IAAI,aAAE,SAAS,YAAE,QAAQ,EAAE,GAAG,CAAA,GAAA,gCAAa;IACnD,MAAM,CAAC,cAAc,gBAAgB,GAAG,CAAA,GAAA,qCAAc;IACtD,MAAM,WAAW,CAAA,GAAA,iCAAU;IAC3B,MAAM,aAAa,CAAA,GAAA,+BAAY;IAE/B,MAAM,QAAQ,IAAI,gBAAgB,SAAS,MAAM;IAEjD,+CAA+C;IAC/C,MAAM,aAAa,CAAA,GAAA,wBAAU,EAAE,CAAC,SAAE,KAAK,WAAE,OAAO,EAAE;QAChD,QAAQ,cAAc;QACtB,SAAS,MAAM,GAAG;IACpB,GAAG,EAAE;IAEL,4CAA4C;IAC5C,MAAM,WAAW,CAAA,GAAA,wBAAU,EACzB,CAAC,QAAE,IAAI,EAAE;QACP,gBAAgB,CAAA,SAAW,CAAA;gBACzB,GAAG,MAAM;gBACT,OAAO,KAAK,YAAY,CAAC,QAAQ,KAAK;gBACtC,MAAM,KAAK,YAAY,CAAC,WAAW;YACrC,CAAA;IACF,GACA;QAAC;KAAgB;IAGnB,MAAM,SAAS,CAAA,GAAA,oBAAM,EACnB,IACE,CAAC,aACD,KACG,MAAM,CAAC,CAAA,SAAU,QACjB,GAAG,CAAC,CAAA,SAAW,CAAA;gBACd,IAAI,OAAO,EAAE;gBACb,OAAO,OAAO,UAAU,WAAW,MAAM,CAAC,MAAM,GAAG,MAAM;gBACzD,OAAO,OAAO,cAAc,WAAW,MAAM,CAAC,UAAU,GAAG,UAAU;gBACrE,KAAK,OAAO,YAAY,WAAW,MAAM,CAAC,QAAQ,GAAG,QAAQ;gBAC7D,KAAK,WAAW;8BAAE;oBAAU,IAAI,OAAO,EAAE;oBAAE,MAAM;gBAAS;YAC5D,CAAA,IACJ;QAAC;QAAW;QAAM;QAAU;KAAW;IAGzC,OAAO;QACL,aAAa,MAAM,GAAG,CAAC,WAAW,IAAI,KAAK,MAAM,GAAG,CAAC,SAAS,MAAM,GAAG,CAAC,WAAW,KAAK,IAAI;gBAC5F;kBACA;oBACA;IACF;AACF;IAEA,2CAAe;;;AD9Cf,MAAM,wCAAkB,CAAA,GAAA,oDAAS,EAAE,CAAA,QAAU,CAAA;QAC3C,WAAW;YACT,cAAc;gBACZ,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC3D,QAAQ;gBACR,SAAS;YACX;YACA,iBAAiB;gBACf,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC;YAChE;YACA,kCAAkC;YAClC,0BAA0B;gBACxB,OAAO;YACT;QACF;IACF,CAAA;AAEA,MAAM,qCAAe,CAAA;IACnB,MAAM,QAAQ,CAAA,GAAA,2BAAO;IACrB,MAAM,oBAAoB,CAAA,GAAA,wCAAmB,EAAE;IAC/C;IAEA,qBACE,gCAAC,CAAA,GAAA,kDAAW;QACV,SAAS;YAAC,CAAA,GAAA,oDAAY;SAAE;QACxB,QAAQ,MAAM,MAAM;QACpB,aAAY;QACZ,sBAAsB,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI;QAC/C,GAAG,iBAAiB;;AAG3B;AAEA,mCAAa,YAAY,GAAG;IAC1B,UAAU;AACZ;IAEA,2CAAe;;;;;;;;;AEtCf,MAAM,wCAAkB,CAAA,GAAA,oDAAS,EAAE,CAAA,QAAU,CAAA;QAC3C,WAAW;YACT,cAAc;gBACZ,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC3D,QAAQ;gBACR,SAAS;YACX;QACF;IACF,CAAA;AAEA,MAAM,iCAAW,CAAA;IACf,MAAM,oBAAoB,CAAA,GAAA,wCAAmB,EAAE;IAC/C;IAEA,qBAAO,gCAAC,CAAA,GAAA,kDAAW;QAAE,SAAS;YAAC,CAAA,GAAA,iDAAS;SAAE;QAAE,QAAQ,MAAM,MAAM;QAAE,aAAY;QAAa,GAAG,iBAAiB;;AACjH;AAEA,+BAAS,YAAY,GAAG;IACtB,UAAU;AACZ;IAEA,2CAAe;;;;AJpBf,MAAM,4CAAY,CAAS,sBACzB,gCAAC,CAAA,GAAA,wCAAK;QAAE,iBAAiB,CAAA,GAAA,2CAAS;QAAI,GAAG,KAAK;;AAEhD,MAAM,4CAAY,CAAS,sBACzB,gCAAC,CAAA,GAAA,wCAAK;QAAE,iBAAiB,CAAA,GAAA,2CAAS;QAAI,GAAG,KAAK;;AAEhD,MAAM,2CAAgB,CAAS,sBAC7B,gCAAC,CAAA,GAAA,wCAAK;QAAE,iBAAiB,CAAA,GAAA,mDAAa;QAAI,GAAG,KAAK","sources":["packages/date-components/src/index.tsx","packages/date-components/src/Picker.tsx","packages/date-components/src/CalendarList.js","packages/date-components/src/useFullCalendarProps.js","packages/date-components/src/DaysList.js"],"sourcesContent":["/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/jsx-props-no-spreading */\nimport { DatePicker, DatePickerProps } from '@mui/x-date-pickers/DatePicker';\nimport { TimePicker, TimePickerProps } from '@mui/x-date-pickers/TimePicker';\nimport { DateTimePicker, DateTimePickerProps } from '@mui/x-date-pickers/DateTimePicker';\nimport Picker, { Props as PickerProps } from './Picker';\n\nconst DateInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst TimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst DateTimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\n\nexport { DateInput, TimeInput, DateTimeInput };\n\nexport { default as CalendarList } from './CalendarList';\nexport { default as DaysList } from './DaysList';\nexport { default as useFullCalendarProps } from './useFullCalendarProps';\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useCallback, ComponentType } from 'react';\nimport { useInput, InputHelperText, TextInputProps, useTranslateLabel } from 'react-admin';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\nimport { getPickersLocalization } from '@mui/x-date-pickers/locales/utils/getPickersLocalization';\nimport { Locale } from 'date-fns';\n\nexport type Props = TextInputProps &\n Omit & {\n PickerComponent: ComponentType;\n locale?: Locale;\n translations?: ReturnType;\n stringFormat?: string;\n };\n\nconst Picker = ({\n PickerComponent,\n label,\n source,\n helperText,\n fullWidth,\n onBlur,\n onChange,\n format,\n parse,\n validate,\n defaultValue,\n locale,\n translations,\n stringFormat = 'ISO',\n ...rest\n}: Props) => {\n const {\n field,\n isRequired,\n fieldState: { error, isTouched, invalid },\n formState: { isSubmitted }\n } = useInput({\n format,\n onBlur,\n onChange,\n parse,\n source,\n validate,\n defaultValue\n });\n\n const handleChange = useCallback(\n (value: Date) => {\n if (value instanceof Date) {\n field.onChange(stringFormat === 'ISO' ? value.toISOString() : value.toString());\n } else {\n field.onChange(null);\n }\n },\n [field, stringFormat]\n );\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = (\n \n {translateLabel({\n label,\n source\n })}\n {isRequired && *}\n \n );\n\n return (\n \n \n )\n }\n }}\n value={field.value ? new Date(field.value) : null}\n onChange={handleChange}\n /* eslint-disable-next-line react/jsx-props-no-spreading */\n {...rest}\n />\n \n );\n};\n\nexport default Picker;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport { useTheme } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n },\n '.fc-day-today': {\n backgroundColor: `${theme.palette.secondary.light} !important`\n },\n // Overwrite violet color of links\n 'a.fc-daygrid-dot-event': {\n color: 'black !important'\n }\n }\n}));\n\nconst CalendarList = props => {\n const theme = useTheme();\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return (\n \n );\n};\n\nCalendarList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default CalendarList;\n","import React, { useMemo, useCallback } from 'react';\nimport { useSearchParams, useNavigate } from 'react-router-dom';\nimport { useListContext, useCreatePath } from 'react-admin';\n\nconst useFullCalendarProps = ({ label, startDate, endDate, linkType }) => {\n const { data, isLoading, resource } = useListContext();\n const [searchParams, setSearchParams] = useSearchParams();\n const navigate = useNavigate();\n const createPath = useCreatePath();\n\n const query = new URLSearchParams(location.search);\n\n // Bypass the link in order to use React-Router\n const eventClick = useCallback(({ event, jsEvent }) => {\n jsEvent.preventDefault();\n navigate(event.url);\n }, []);\n\n // Change the query string when month change\n const datesSet = useCallback(\n ({ view }) => {\n setSearchParams(params => ({\n ...params,\n month: view.currentStart.getMonth() + 1,\n year: view.currentStart.getFullYear()\n }));\n },\n [setSearchParams]\n );\n\n const events = useMemo(\n () =>\n !isLoading &&\n data\n .filter(record => record)\n .map(record => ({\n id: record.id,\n title: typeof label === 'string' ? record[label] : label(record),\n start: typeof startDate === 'string' ? record[startDate] : startDate(record),\n end: typeof endDate === 'string' ? record[endDate] : endDate(record),\n url: createPath({ resource, id: record.id, type: linkType })\n })),\n [isLoading, data, resource, createPath]\n );\n\n return {\n initialDate: query.has('month') ? new Date(query.get('year'), query.get('month') - 1) : new Date(),\n events,\n datesSet,\n eventClick\n };\n};\n\nexport default useFullCalendarProps;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport listPlugin from '@fullcalendar/list';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n }\n }\n}));\n\nconst DaysList = props => {\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return ;\n};\n\nDaysList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default DaysList;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/date-components/dist/index.es.js b/src/frontend/packages/date-components/dist/index.es.js
index 31f26825d..73259b295 100644
--- a/src/frontend/packages/date-components/dist/index.es.js
+++ b/src/frontend/packages/date-components/dist/index.es.js
@@ -48,7 +48,7 @@ const $610808f89222f9cc$var$Picker = ({ PickerComponent: PickerComponent, label:
}),
isRequired && /*#__PURE__*/ (0, $5Ihaz$jsx)("span", {
"aria-hidden": "true",
- children: " *"
+ children: "\u2009*"
})
]
});
diff --git a/src/frontend/packages/date-components/dist/index.es.js.map b/src/frontend/packages/date-components/dist/index.es.js.map
index fb8d454e3..50e641a22 100644
--- a/src/frontend/packages/date-components/dist/index.es.js.map
+++ b/src/frontend/packages/date-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/date-components/src/index.tsx","packages/date-components/src/Picker.tsx","packages/date-components/src/CalendarList.js","packages/date-components/src/useFullCalendarProps.js","packages/date-components/src/DaysList.js"],"sourcesContent":["/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/jsx-props-no-spreading */\nimport { DatePicker, DatePickerProps } from '@mui/x-date-pickers/DatePicker';\nimport { TimePicker, TimePickerProps } from '@mui/x-date-pickers/TimePicker';\nimport { DateTimePicker, DateTimePickerProps } from '@mui/x-date-pickers/DateTimePicker';\nimport Picker, { Props as PickerProps } from './Picker';\n\nconst DateInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst TimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst DateTimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\n\nexport { DateInput, TimeInput, DateTimeInput };\n\nexport { default as CalendarList } from './CalendarList';\nexport { default as DaysList } from './DaysList';\nexport { default as useFullCalendarProps } from './useFullCalendarProps';\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useCallback, ComponentType } from 'react';\nimport { useInput, InputHelperText, TextInputProps, useTranslateLabel } from 'react-admin';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\nimport { getPickersLocalization } from '@mui/x-date-pickers/locales/utils/getPickersLocalization';\nimport { Locale } from 'date-fns';\n\nexport type Props = TextInputProps &\n Omit & {\n PickerComponent: ComponentType;\n locale?: Locale;\n translations?: ReturnType;\n stringFormat?: string;\n };\n\nconst Picker = ({\n PickerComponent,\n label,\n source,\n helperText,\n fullWidth,\n onBlur,\n onChange,\n format,\n parse,\n validate,\n defaultValue,\n locale,\n translations,\n stringFormat = 'ISO',\n ...rest\n}: Props) => {\n const {\n field,\n isRequired,\n fieldState: { error, isTouched, invalid },\n formState: { isSubmitted }\n } = useInput({\n format,\n onBlur,\n onChange,\n parse,\n source,\n validate,\n defaultValue\n });\n\n const handleChange = useCallback(\n (value: Date) => {\n if (value instanceof Date) {\n field.onChange(stringFormat === 'ISO' ? value.toISOString() : value.toString());\n } else {\n field.onChange(null);\n }\n },\n [field, stringFormat]\n );\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = (\n \n {translateLabel({\n label,\n source\n })}\n {isRequired && *}\n \n );\n\n return (\n \n \n )\n }\n }}\n value={field.value ? new Date(field.value) : null}\n onChange={handleChange}\n /* eslint-disable-next-line react/jsx-props-no-spreading */\n {...rest}\n />\n \n );\n};\n\nexport default Picker;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport { useTheme } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n },\n '.fc-day-today': {\n backgroundColor: `${theme.palette.secondary.light} !important`\n },\n // Overwrite violet color of links\n 'a.fc-daygrid-dot-event': {\n color: 'black !important'\n }\n }\n}));\n\nconst CalendarList = props => {\n const theme = useTheme();\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return (\n \n );\n};\n\nCalendarList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default CalendarList;\n","import React, { useMemo, useCallback } from 'react';\nimport { useSearchParams, useNavigate } from 'react-router-dom';\nimport { useListContext, useCreatePath } from 'react-admin';\n\nconst useFullCalendarProps = ({ label, startDate, endDate, linkType }) => {\n const { data, isLoading, resource } = useListContext();\n const [searchParams, setSearchParams] = useSearchParams();\n const navigate = useNavigate();\n const createPath = useCreatePath();\n\n const query = new URLSearchParams(location.search);\n\n // Bypass the link in order to use React-Router\n const eventClick = useCallback(({ event, jsEvent }) => {\n jsEvent.preventDefault();\n navigate(event.url);\n }, []);\n\n // Change the query string when month change\n const datesSet = useCallback(\n ({ view }) => {\n setSearchParams(params => ({\n ...params,\n month: view.currentStart.getMonth() + 1,\n year: view.currentStart.getFullYear()\n }));\n },\n [setSearchParams]\n );\n\n const events = useMemo(\n () =>\n !isLoading &&\n data\n .filter(record => record)\n .map(record => ({\n id: record.id,\n title: typeof label === 'string' ? record[label] : label(record),\n start: typeof startDate === 'string' ? record[startDate] : startDate(record),\n end: typeof endDate === 'string' ? record[endDate] : endDate(record),\n url: createPath({ resource, id: record.id, type: linkType })\n })),\n [isLoading, data, resource, createPath]\n );\n\n return {\n initialDate: query.has('month') ? new Date(query.get('year'), query.get('month') - 1) : new Date(),\n events,\n datesSet,\n eventClick\n };\n};\n\nexport default useFullCalendarProps;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport listPlugin from '@fullcalendar/list';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n }\n }\n}));\n\nconst DaysList = props => {\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return ;\n};\n\nDaysList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default DaysList;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/date-components/src/index.tsx","packages/date-components/src/Picker.tsx","packages/date-components/src/CalendarList.js","packages/date-components/src/useFullCalendarProps.js","packages/date-components/src/DaysList.js"],"sourcesContent":["/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/jsx-props-no-spreading */\nimport { DatePicker, DatePickerProps } from '@mui/x-date-pickers/DatePicker';\nimport { TimePicker, TimePickerProps } from '@mui/x-date-pickers/TimePicker';\nimport { DateTimePicker, DateTimePickerProps } from '@mui/x-date-pickers/DateTimePicker';\nimport Picker, { Props as PickerProps } from './Picker';\n\nconst DateInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst TimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\nconst DateTimeInput = (props: Omit>, 'PickerComponent'>) => (\n \n);\n\nexport { DateInput, TimeInput, DateTimeInput };\n\nexport { default as CalendarList } from './CalendarList';\nexport { default as DaysList } from './DaysList';\nexport { default as useFullCalendarProps } from './useFullCalendarProps';\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useCallback, ComponentType } from 'react';\nimport { useInput, InputHelperText, TextInputProps, useTranslateLabel } from 'react-admin';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\nimport { getPickersLocalization } from '@mui/x-date-pickers/locales/utils/getPickersLocalization';\nimport { Locale } from 'date-fns';\n\nexport type Props = TextInputProps &\n Omit & {\n PickerComponent: ComponentType;\n locale?: Locale;\n translations?: ReturnType;\n stringFormat?: string;\n };\n\nconst Picker = ({\n PickerComponent,\n label,\n source,\n helperText,\n fullWidth,\n onBlur,\n onChange,\n format,\n parse,\n validate,\n defaultValue,\n locale,\n translations,\n stringFormat = 'ISO',\n ...rest\n}: Props) => {\n const {\n field,\n isRequired,\n fieldState: { error, isTouched, invalid },\n formState: { isSubmitted }\n } = useInput({\n format,\n onBlur,\n onChange,\n parse,\n source,\n validate,\n defaultValue\n });\n\n const handleChange = useCallback(\n (value: Date) => {\n if (value instanceof Date) {\n field.onChange(stringFormat === 'ISO' ? value.toISOString() : value.toString());\n } else {\n field.onChange(null);\n }\n },\n [field, stringFormat]\n );\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = (\n \n {translateLabel({\n label,\n source\n })}\n {isRequired && *}\n \n );\n\n return (\n \n \n )\n }\n }}\n value={field.value ? new Date(field.value) : null}\n onChange={handleChange}\n /* eslint-disable-next-line react/jsx-props-no-spreading */\n {...rest}\n />\n \n );\n};\n\nexport default Picker;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport { useTheme } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n },\n '.fc-day-today': {\n backgroundColor: `${theme.palette.secondary.light} !important`\n },\n // Overwrite violet color of links\n 'a.fc-daygrid-dot-event': {\n color: 'black !important'\n }\n }\n}));\n\nconst CalendarList = props => {\n const theme = useTheme();\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return (\n \n );\n};\n\nCalendarList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default CalendarList;\n","import React, { useMemo, useCallback } from 'react';\nimport { useSearchParams, useNavigate } from 'react-router-dom';\nimport { useListContext, useCreatePath } from 'react-admin';\n\nconst useFullCalendarProps = ({ label, startDate, endDate, linkType }) => {\n const { data, isLoading, resource } = useListContext();\n const [searchParams, setSearchParams] = useSearchParams();\n const navigate = useNavigate();\n const createPath = useCreatePath();\n\n const query = new URLSearchParams(location.search);\n\n // Bypass the link in order to use React-Router\n const eventClick = useCallback(({ event, jsEvent }) => {\n jsEvent.preventDefault();\n navigate(event.url);\n }, []);\n\n // Change the query string when month change\n const datesSet = useCallback(\n ({ view }) => {\n setSearchParams(params => ({\n ...params,\n month: view.currentStart.getMonth() + 1,\n year: view.currentStart.getFullYear()\n }));\n },\n [setSearchParams]\n );\n\n const events = useMemo(\n () =>\n !isLoading &&\n data\n .filter(record => record)\n .map(record => ({\n id: record.id,\n title: typeof label === 'string' ? record[label] : label(record),\n start: typeof startDate === 'string' ? record[startDate] : startDate(record),\n end: typeof endDate === 'string' ? record[endDate] : endDate(record),\n url: createPath({ resource, id: record.id, type: linkType })\n })),\n [isLoading, data, resource, createPath]\n );\n\n return {\n initialDate: query.has('month') ? new Date(query.get('year'), query.get('month') - 1) : new Date(),\n events,\n datesSet,\n eventClick\n };\n};\n\nexport default useFullCalendarProps;\n","import React from 'react';\nimport FullCalendar from '@fullcalendar/react';\nimport listPlugin from '@fullcalendar/list';\nimport makeStyles from '@mui/styles/makeStyles';\nimport useFullCalendarProps from './useFullCalendarProps';\n\nconst useGlobalStyles = makeStyles(theme => ({\n '@global': {\n '.fc-button': {\n backgroundColor: `${theme.palette.primary.main} !important`,\n border: 'none !important',\n opacity: '1 !important'\n }\n }\n}));\n\nconst DaysList = props => {\n const fullCalendarProps = useFullCalendarProps(props);\n useGlobalStyles();\n\n return ;\n};\n\nDaysList.defaultProps = {\n linkType: 'edit'\n};\n\nexport default DaysList;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/date-components/package.json b/src/frontend/packages/date-components/package.json
index f42fac54e..fe054a131 100644
--- a/src/frontend/packages/date-components/package.json
+++ b/src/frontend/packages/date-components/package.json
@@ -35,13 +35,8 @@
"access": "public"
},
"devDependencies": {
- "@mui/material": "^5.13.1",
- "@mui/styles": "^5.13.1",
"@parcel/packager-ts": "^2.9.3",
"@parcel/transformer-typescript-types": "^2.9.3",
- "parcel": "^2.9.3",
- "react": "^18.2.0",
- "react-admin": "^4.11.0",
- "react-router-dom": "^6.1.0"
+ "parcel": "^2.9.3"
}
}
diff --git a/src/frontend/packages/field-components/dist/index.cjs.js b/src/frontend/packages/field-components/dist/index.cjs.js
index 5d132cc0a..35162944f 100644
--- a/src/frontend/packages/field-components/dist/index.cjs.js
+++ b/src/frontend/packages/field-components/dist/index.cjs.js
@@ -18,9 +18,11 @@ var $drrcw$muiiconsmaterialInstagram = require("@mui/icons-material/Instagram");
var $drrcw$muiiconsmaterialYouTube = require("@mui/icons-material/YouTube");
var $drrcw$reacticonsfi = require("react-icons/fi");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
@@ -422,7 +424,7 @@ const $9ac0ba4780250906$var$QuickAppendDialog = ({ open: open, onClose: onClose,
}
});
await appendLink(data.id);
- notify(`La resource "${values.title}" a été créée`, {
+ notify(`La resource "${values.title}" a \xe9t\xe9 cr\xe9\xe9e`, {
type: "success"
});
}, [
@@ -446,7 +448,7 @@ const $9ac0ba4780250906$var$QuickAppendDialog = ({ open: open, onClose: onClose,
className: classes.addForm,
children: /*#__PURE__*/ (0, $drrcw$reactjsxruntime.jsx)((0, $drrcw$muimaterial.TextField), {
autoFocus: true,
- label: `Rechercher ou créer des ${getResourceLabel(reference, 2).toLowerCase()}`,
+ label: `Rechercher ou cr\xe9er des ${getResourceLabel(reference, 2).toLowerCase()}`,
variant: "filled",
margin: "dense",
value: keyword,
diff --git a/src/frontend/packages/field-components/dist/index.cjs.js.map b/src/frontend/packages/field-components/dist/index.cjs.js.map
index 1b3d28b1b..71245747b 100644
--- a/src/frontend/packages/field-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/field-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACMA,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,CAAA,QAAU,CAAA;QACrC,QAAQ,CAAA,QAAU,CAAA;gBAChB,UAAU;gBACV,GAAG,MAAM,MAAM;YACjB,CAAA;QACA,QAAQ;YACN,OAAO;YACP,eAAe;YACf,UAAU;QACZ;QACA,QAAQ;YACN,UAAU;YACV,KAAK;YACL,QAAQ;YACR,OAAO;YACP,QAAQ;YACR,cAAc;YACd,+CAA+C;YAC/C,SAAS;gBACP,OAAO;gBACP,QAAQ;YACV;QACF;QACA,MAAM;YACJ,UAAU;YACV,QAAQ;YACR,MAAM;YACN,OAAO;YACP,YAAY;YACZ,eAAe;YACf,aAAa;YACb,cAAc;YACd,cAAc;YACd,QAAQ;QACV;QACA,YAAY;YACV,OAAO;QACT;IACF,CAAA;AAEA,MAAM,oCAAc,KAAO;AAE3B,MAAM,6CAAuB,CAAC,SAAE,KAAK,gBAAE,YAAY,SAAE,KAAK,YAAE,QAAQ,gBAAE,YAAY,cAAE,UAAU,WAAE,OAAO,EAAE,GAAG,MAAM;IAChH,UAAU,gCAAU;IACpB,MAAM,SAAS,CAAA,GAAA,kCAAe;IAE9B,MAAM,gBAAgB,AAAC,CAAA,OAAO,UAAU,aAAa,MAAM,UAAU,MAAM,CAAC,MAAM,AAAD,KAAM;IACvF,MAAM,gBAAgB,OAAO,UAAU,aAAa,MAAM,UAAU,MAAM,CAAC,MAAM;IACjF,MAAM,mBAAmB,OAAO,aAAa,aAAa,SAAS,UAAU;IAE7E,qBACE,iCAAC,CAAA,GAAA,sBAAE;QAAE,WAAW,QAAQ;;0BACtB,gCAAC;gBAAI,WAAW,QAAQ;0BACtB,cAAA,gCAAC,CAAA,GAAA,yBAAK;oBACJ,KAAK,iBAAiB;oBACtB,KAAK;oBACL,UAAU;oBACT,GAAG,IAAI;oBACR,WAAW,QAAQ;;;YAGtB,CAAC,gBAAgB,OAAO,6BACvB,gCAAC,CAAA,GAAA,uBAAG;gBACF,OAAO;gBACP,WAAW,QAAQ;gBACnB,MAAK;gBACL,OAAO;gBACP,0BAAY,gCAAC,CAAA,GAAA,uDAAS;oBAAE,WAAW,QAAQ;;gBAC3C,UAAU;+BAGZ,gCAAC,CAAA,GAAA,uBAAG;gBAAE,OAAO;gBAAY,WAAW,QAAQ;gBAAM,MAAK;gBAAQ,OAAO;;;;AAI9E;AAEA,2CAAqB,eAAe;IAClC,YAAY;IACZ,cAAc;AAChB;IAEA,2CAAe;;;;;;ACrFf,MAAM,4CAAsB,CAAC,UAAE,MAAM,EAAE,GAAG,YAAY;IACpD,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,IAAI,QAAQ,CAAC,OAAO,EAAE;QACpB,IAAI,CAAC,MAAM,QAAQ,MAAM,CAAC,OAAO,GAC/B,MAAM,CAAC,OAAO,GAAG;YAAC,MAAM,CAAC,OAAO;SAAC;QAEnC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,IAAK,CAAC,CAAC,MAAM,IAAI,EAAE,MAAM;IAC/D;IACA,qBACE,gCAAC,CAAA,GAAA,uCAAoB;QAAE,OAAO;kBAC5B,cAAA,gCAAC,CAAA,GAAA,qCAAoB;YAAE,QAAQ;YAAS,GAAG,UAAU;;;AAG3D;IAEA,2CAAe;;;;;;ACff,MAAM,uCAAiB,CAAC,UAAE,MAAM,EAAE,GAAG,YAAY;IAC/C,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,IAAI,MAAM,CAAC,OAAO,EAChB;QAAA,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAC5B,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC;IAC3D;IAEF,qBACE,gCAAC,CAAA,GAAA,uCAAoB;QAAE,OAAO;kBAC5B,cAAA,gCAAC,CAAA,GAAA,gCAAe;YAAE,QAAQ;YAAQ,QAAQ;YAAS,GAAG,UAAU;;;AAGtE;IAEA,2CAAe;;;;;;;;;;;;;;;;;;;;;;;;;AGUf,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,CAAA,QAAU,CAAA;QACrC,MAAM;YACJ,OAAO;YACP,UAAU;YACV,iBAAiB,MAAM,QAAQ,WAAW;YAC1C,YAAY;YACZ,eAAe;QACjB;QACA,aAAa;YACX,OAAO;QACT;QACA,eAAe;YACb,WAAW;YACX,OAAO;QACT;IACF,CAAA;AAEA,MAAM,sCAAgB,CAAC,aAAa;IAClC,MAAM,SAAS,eAAe,OAAO,OAAO,aAAa,KAAK,CAAA,SAAU,YAAY,WAAW,OAAO;IACtG,OAAO,SAAS,OAAO,OAAO;AAChC;AAEA,MAAM,oCAAc,CAAC,WAAE,OAAO,UAAE,MAAM,aAAE,SAAS,cAAE,UAAU,kBAAE,cAAc,EAAE;IAC7E,MAAM,UAAU;IAChB,MAAM,CAAC,SAAS,WAAW,GAAG,CAAA,GAAA,qBAAO,EAAE;IACvC,MAAM,CAAC,QAAQ,UAAU,GAAG,CAAA,GAAA,qBAAO,EAAE;IACrC,MAAM,CAAC,SAAS,WAAW,GAAG,CAAA,GAAA,qBAAO,EAAE,EAAE;IACzC,MAAM,YAAY,CAAA,GAAA,8BAAW;IAC7B,MAAM,eAAe,CAAA,GAAA,iCAAc;IACnC,MAAM,cAAc,CAAA,GAAA,iDAAa;IACjC,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,MAAM,aAAa,CAAA,GAAA,+BAAY;IAE/B,MAAM,sBAAsB,CAAA,GAAA,uCAAoB,EAAE;QAAE,UAAU;IAAU;IACxE,MAAM,mBAAmB,CAAA,GAAA,qCAAkB;IAC3C,MAAM,YAAY,CAAA,GAAA,+CAAW,EAAE;IAE/B,IAAI,aAAa,OAAO,KAAK,WAAW,SAAS,KAAK,CAAC,WAAW,eAAe,OAC/E,MAAM,IAAI,MAAM,CAAC,wCAAwC,EAAE,UAAU,UAAU,CAAC;IAGlF,MAAM,SAAS,CAAA,GAAA,oBAAM,EACnB,IACE,CAAA,GAAA,+CAAO,EAAE,CAAA;YACP,aACG,QAAQ,WAAW;gBAClB,YAAY;oBAAE,MAAM;oBAAG,SAAS;gBAAI;gBACpC,MAAM;oBAAE,OAAO,WAAW,eAAe;oBAAO,OAAO;gBAAM;gBAC7D,QAAQ;oBAAE,GAAG;oBAAS,aAAa;wBAAC,UAAU,cAAc;qBAAM;oBAAE,UAAU;gBAAO;YACvF,GACC,KAAK,CAAC,QAAE,IAAI,EAAE;gBACb,MAAM,gBAAgB,MAAM,CAAC,OAAO,GAChC,MAAM,QAAQ,MAAM,CAAC,OAAO,IAC1B,MAAM,CAAC,OAAO,GACd;oBAAC,MAAM,CAAC,OAAO;iBAAC,GAClB,EAAE;gBACN,MAAM,WAAW,KAAK,OAAO,CAAA,SAAU,CAAC,cAAc,SAAS,OAAO;gBACtE,WAAW;gBACX,UAAU;gBACV,WAAW;YACb,GACC,MAAM,CAAA;gBACL,WAAW;YACb;QACJ,GAAG,MACL;QAAC;QAAc;QAAW;QAAQ;QAAQ;QAAW;QAAY;QAAY;KAAU;IAGzF,CAAA,GAAA,sBAAQ,EAAE;QACR,IAAI,CAAC,SACH,OAAO;QAET,WAAW;QACX,UAAU;QACV,OAAO;QAEP,OAAO,IAAM,OAAO;IACtB,GAAG;QAAC;QAAS;QAAQ;KAAW;IAEhC,IAAI,CAAC,SAAS,OAAO;IAErB,qBACE,iCAAC,CAAA,GAAA,uBAAG;QAAE,KAAK;QAAC,WAAW,QAAQ;;YAC5B,UACC,QAAQ,IAAI,CAAA,yBACV,iCAAC,CAAA,GAAA,2BAAO;oBAAoB,MAAM;oBAAC,SAAS,IAAM,WAAW,SAAS;;sCACpE,gCAAC,CAAA,GAAA,iCAAa;sCACZ,cAAA,gCAAC,CAAA,GAAA,yBAAK;0CAAG,cAAA,CAAA,GAAA,sCAAI,EAAE,cAAc,oBAAoB;;;sCAEnD,gCAAC,CAAA,GAAA,+BAAW;4BAAE,WAAW,QAAQ;4BAAa,SAAS,QAAQ,CAAC,UAAU,cAAc,MAAM;;sCAC9F,gCAAC,CAAA,GAAA,+BAAW;4BAAE,WAAW,QAAQ;4BAAe,SAAS,oCAAc,SAAS,IAAI;;sCACpF,gCAAC,CAAA,GAAA,0CAAsB;sCACrB,cAAA,gCAAC;gCACC,MAAM,WAAW;oCAAE,UAAU;oCAAW,IAAI,SAAS;oCAAI,MAAM;gCAAO;gCACtE,QAAO;gCACP,KAAI;0CAEJ,cAAA,gCAAC,CAAA,GAAA,6BAAS;oCAAE,MAAK;oCAAM,MAAK;8CAC1B,cAAA,gCAAC,CAAA,GAAA,2DAAa;;;;;mBAbP,SAAS;YAmB3B,UAAU,QAAQ,WAAW,mBAC5B,iCAAC,CAAA,GAAA,2BAAO;;kCACN,gCAAC,CAAA,GAAA,iCAAa;kCACZ,cAAA,gCAAC,CAAA,GAAA,yBAAK;sCACJ,cAAA,gCAAC,CAAA,GAAA,sDAAQ;;;kCAGb,gCAAC,CAAA,GAAA,+BAAW;wBAAE,WAAW,QAAQ;wBAAa,SAAS,UAAU;;;;YAGpE,UAAU,oBAAoB,2BAC7B,iCAAC,CAAA,GAAA,2BAAO;gBAAE,MAAM;gBAAC,SAAS;;kCACxB,gCAAC,CAAA,GAAA,iCAAa;kCACZ,cAAA,gCAAC,CAAA,GAAA,yBAAK;sCACJ,cAAA,gCAAC,CAAA,GAAA,oDAAM;;;kCAGX,gCAAC,CAAA,GAAA,+BAAW;wBACV,WAAW,QAAQ;wBACnB,SAAS,UAAU,kBAAkB;4BAAE,MAAM,iBAAiB,WAAW;wBAAG;;;;YAIjF,yBACC,gCAAC,CAAA,GAAA,sBAAE;gBAAE,SAAQ;gBAAO,YAAW;gBAAS,gBAAe;gBAAS,QAAQ;0BACtE,cAAA,gCAAC,CAAA,GAAA,mCAAe;oBAAE,MAAM;oBAAI,WAAW;;;;;AAKjD;IAEA,2CAAe;;;ADlJf,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,IAAO,CAAA;QAClC,OAAO;YACL,eAAe;QACjB;QACA,SAAS;YACP,SAAS;QACX;QACA,SAAS;YACP,YAAY;QACd;QACA,UAAU;YACR,aAAa;YACb,cAAc;YACd,YAAY;YACZ,eAAe;YACf,WAAW;QACb;IACF,CAAA;AAEA,MAAM,0CAAoB,CAAC,QAAE,IAAI,WAAE,OAAO,cAAE,UAAU,UAAE,MAAM,aAAE,SAAS,EAAE;IACzE,MAAM,UAAU;IAChB,MAAM,YAAE,QAAQ,EAAE,GAAG,CAAA,GAAA,gCAAa;IAClC,MAAM,CAAC,SAAS,WAAW,GAAG,CAAA,GAAA,qBAAO,EAAE;IACvC,MAAM,CAAC,OAAO,SAAS,GAAG,CAAA,GAAA,qBAAO,EAAE;IACnC,MAAM,eAAe,CAAA,GAAA,iCAAc;IACnC,MAAM,YAAY,CAAA,GAAA,8BAAW;IAC7B,MAAM,UAAU,CAAA,GAAA,4BAAS;IACzB,MAAM,SAAS,CAAA,GAAA,2BAAQ;IACvB,MAAM,mBAAmB,CAAA,GAAA,qCAAkB;IAC3C,MAAM,YAAY,CAAA,GAAA,+CAAW,EAAE;IAC/B,MAAM,YAAE,QAAQ,YAAE,QAAQ,gBAAE,YAAY,EAAE,GAAG,CAAA,GAAA,4BAAM;IAEnD,MAAM,aAAa,CAAA,GAAA,wBAAU,EAC3B,OAAM;QACJ,6EAA6E;QAC7E,MAAM,QAAE,IAAI,EAAE,GAAG,MAAM,aAAa,OAAO,UAAU;YAAE,IAAI;QAAW;QAEtE,MAAM,aAAa,OAAO,UAAU;YAClC,IAAI;YACJ,MAAM;gBACJ,GAAG,IAAI;gBACP,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,GAClB,MAAM,QAAQ,IAAI,CAAC,OAAO,IACxB;uBAAI,IAAI,CAAC,OAAO;oBAAE;iBAAU,GAC5B;oBAAC,IAAI,CAAC,OAAO;oBAAE;iBAAU,GAC3B;YACN;YACA,cAAc;QAChB;QAEA;QAEA;IACF,GACA;QAAC;QAAc;QAAY;QAAU;QAAQ;QAAS;KAAQ;IAGhE,MAAM,SAAS,CAAA,GAAA,wBAAU,EACvB,OAAM;QACJ,MAAM,QAAE,IAAI,EAAE,GAAG,MAAM,aAAa,OAAO,WAAW;YACpD,MAAM;gBACJ,CAAC,UAAU,cAAc,MAAM,EAAE,OAAO;YAC1C;QACF;QAEA,MAAM,WAAW,KAAK;QAEtB,OAAO,CAAC,aAAa,EAAE,OAAO,MAAM,aAAa,CAAC,EAAE;YAAE,MAAM;QAAU;IACxE,GACA;QAAC;QAAc;QAAW;QAAY;QAAW;KAAO;IAG1D,qBACE,gCAAC,CAAA,GAAA,yBAAK;QAAE,SAAS;QAAC,MAAM;QAAM,SAAS;kBACpC,UAAU,uBACT;;8BACE,gCAAC,CAAA,GAAA,8BAAU;oBAAE,WAAW,QAAQ;8BAAO;;8BACvC,gCAAC,CAAA,GAAA,gCAAY;oBAAE,WAAW,QAAQ;8BAChC,cAAA,gCAAC,CAAA,GAAA,4BAAQ;wBACP,SAAS;wBACT,OAAO,CAAC,wBAAwB,EAAE,iBAAiB,WAAW,GAAG,cAAc,CAAC;wBAChF,SAAQ;wBACR,QAAO;wBACP,OAAO;wBACP,UAAU,CAAA,IAAK,WAAW,EAAE,OAAO;wBACnC,SAAS;;;8BAGb,gCAAC,CAAA,GAAA,gCAAY;oBAAE,WAAW,QAAQ;8BAChC,cAAA,gCAAC,CAAA,GAAA,wCAAU;wBACT,SAAS;wBACT,QAAQ;wBACR,WAAW;wBACX,YAAY;wBACZ,gBAAgB;4BACd,SAAS,SAAS;4BAClB,SAAS;wBACX;;;8BAGJ,gCAAC,CAAA,GAAA,gCAAY;oBAAE,WAAW,QAAQ;8BAChC,cAAA,gCAAC,CAAA,GAAA,wBAAK;wBAAE,OAAM;wBAAkB,SAAQ;wBAAO,SAAS;;;;2BAI5D,iCAAC;YAAK,UAAU,aAAa;;8BAC3B,gCAAC,CAAA,GAAA,8BAAU;oBAAE,WAAW,QAAQ;8BAC7B,UAAU,kBAAkB;wBAAE,MAAM,iBAAiB,WAAW;oBAAG;;8BAEtE,gCAAC,CAAA,GAAA,gCAAY;oBAAE,WAAW,QAAQ;8BAChC,cAAA,gCAAC,CAAA,GAAA,4BAAQ;wBAAG,GAAG,SAAS,QAAQ;wBAAE,SAAS;wBAAC,OAAM;wBAAQ,SAAQ;wBAAS,QAAO;wBAAQ,SAAS;;;8BAErG,iCAAC,CAAA,GAAA,gCAAY;oBAAE,WAAW,QAAQ;;sCAChC,gCAAC,CAAA,GAAA,wBAAK;4BAAE,OAAM;4BAAmB,SAAQ;4BAAY,yBAAW,gCAAC,CAAA,GAAA,oDAAM;4BAAM,MAAK;;sCAClF,gCAAC,CAAA,GAAA,wBAAK;4BAAE,OAAM;4BAAkB,SAAQ;4BAAO,SAAS;;;;;;;AAMpE;IAEA,2CAAe;;;ADtIf,MAAM,uDAAiC,CAAC,aAAE,SAAS,UAAE,MAAM,YAAE,QAAQ,YAAE,QAAQ,EAAE,GAAG,YAAY;IAC9F,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,MAAM,CAAC,YAAY,cAAc,GAAG,CAAA,GAAA,qBAAO,EAAE;IAC7C,MAAM,eAAE,WAAW,EAAE,GAAG,CAAA,GAAA,gCAAa,EAAE,OAAO;IAE9C,MAAM,YAAY,CAAA,GAAA,oBAAM,EACtB,IAAM,CAAC,CAAC,eAAe,YAAY,KAAK,CAAA,IAAK;gBAAC;gBAAc;gBAAa;aAAc,CAAC,SAAS,CAAC,CAAC,WAAW,IAC9G;QAAC;KAAY;IAGf,qBACE;;0BACE,gCAAC,CAAA,GAAA,wCAAkB;gBAAE,WAAW;gBAAW,QAAQ;gBAAS,GAAG,UAAU;0BACtE,CAAA,GAAA,sCAAI,EAAE,SAAS,KAAK,2BACnB,CAAA,GAAA,sCAAI,EAAE,aAAa,UAAU;oBAAE,YAAY,YAAY,IAAM,cAAc,QAAQ;gBAAU;;YAEhG,aAAa,4BACZ,gCAAC,CAAA,GAAA,wCAAgB;gBACf,MAAM;gBACN,SAAS,IAAM,cAAc;gBAC7B,YAAY,OAAO;gBACnB,UAAU;gBACV,QAAQ;gBACR,WAAW;;;;AAKrB;IAEA,2CAAe;;;;;;;;;;;;;;;AGvBf,MAAM,6CAAuB;IAC3B,cAAc;QACZ,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,uDAAS;QAChB,OAAO;QACP,cAAc;IAChB;IACA,cAAc;QACZ,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,4BAAO;QACd,OAAO;QACP,cAAc;IAChB;IACA,sBAAsB;QACpB,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,yBAAK;YAAE,WAAU;YAAO,KAAI;;QACnC,OAAO;QACP,cAAc;IAChB;IACA,gBAAgB;QACd,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,yDAAW;QAClB,OAAO;QACP,cAAc;IAChB;IACA,eAAe;QACb,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,wDAAU;QACjB,OAAO;QACP,cAAc;IAChB;IACA,iBAAiB;QACf,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,0DAAY;QACnB,OAAO;QACP,cAAc;IAChB;IACA,eAAe;QACb,OAAO;QACP,oBAAM,gCAAC,CAAA,GAAA,wDAAU;QACjB,OAAO;QACP,cAAc;IAChB;AACF;AAEA,MAAM,kCAAY,CAAA,GAAA,oDAAS,EAAE,IAAO,CAAA;QAClC,MAAM;YACJ,gBAAgB;YAChB,YAAY;gBACV,QAAQ;YACV;QACF;QACA,MAAM;YACJ,aAAa;YACb,cAAc;YACd,aAAa;YACb,cAAc;QAChB;QACA,OAAO;YACL,WAAW;QACb;IACF,CAAA;AAEA,MAAM,sCAAgB,CAAC,UAAE,MAAM,iBAAE,aAAa,EAAE;IAC9C,MAAM,mBAAmB;QAAE,GAAG,0CAAoB;QAAE,GAAG,aAAa;IAAC;IACrE,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,MAAM,UAAU;IAChB,MAAM,WAAW,MAAM,CAAC,OAAO,GAAI,MAAM,QAAQ,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,GAAG;QAAC,MAAM,CAAC,OAAO;KAAC,GAAI,EAAE;IAC1G,OAAO,SAAS,IAAI,CAAC,KAAK;QACxB,IAAI,CAAC,IAAI,WAAW,SAAS,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC;QACnD,MAAM,YAAY,IAAI,IAAI;QAC1B,IAAI,CAAC,WAAW,OAAO;QACvB,MAAM,OAAO,gBAAgB,CAAC,UAAU,SAAS,IAAI;YACnD,OAAO;YACP,oBAAM,gCAAC,CAAA,GAAA,yDAAW;YAClB,OAAO;YACP,cAAc;QAChB;QACA,qBACE,gCAAC;YAAE,MAAM;YAAK,QAAO;YAAS,KAAI;YAAsB,WAAW,QAAQ;sBACzE,cAAA,gCAAC,CAAA,GAAA,uBAAG;gBACF,WAAU;gBACV,oBAAM,CAAA,GAAA,sCAAI,EAAE,aAAa,KAAK,MAAM;oBAAE,OAAO;wBAAE,OAAO,KAAK;wBAAc,OAAO;wBAAI,QAAQ;oBAAG;gBAAE;gBACjG,MAAK;gBACL,OAAO,KAAK;gBACZ,SAAS;oBAAE,MAAM,QAAQ;oBAAM,OAAO,QAAQ;gBAAM;gBACpD,OAAO;oBAAE,OAAO,KAAK;oBAAc,iBAAiB,KAAK;gBAAM;;WAPmB;IAW1F;AACF;IAEA,2CAAe;;;;;;;ACpGf,+DAA+D;AAC/D,MAAM,wCAAkB,CAAA,IAAK,EAAE;AAE/B,+EAA+E;AAC/E,6DAA6D;AAC7D,uFAAuF;AACvF,MAAM,oCAAc,KAAO;AAE3B,MAAM,2CAAqB,CAAA;IACzB,IAAI,YAAE,QAAQ,QAAE,OAAO,kBAAQ,QAAQ,aAAE,YAAY,SAAW,GAAG;IACnE,MAAM,QAAE,IAAI,aAAE,SAAS,YAAE,QAAQ,EAAE,GAAG,CAAA,GAAA,gCAAa,EAAE;IACrD,MAAM,aAAa,CAAA,GAAA,+BAAY;IAE/B,IAAI,aAAa,WAAW;QAC1B,QAAQ,KAAK;QACb,OAAO;IACT;IAEA,IAAI,WAAW,qBAAO,gCAAC,CAAA,GAAA,iCAAa;IAEpC,qBACE;kBACG,KAAK,IAAI,CAAC,QAAQ;YACjB,IAAI,CAAC,OAAO,IAAI,OAAO;YACvB,MAAM,mBACJ,SAAS,SACR,CAAA,OAAO,SAAS,aAAa,KAAK,OAAO,MAAM,WAAW;0BAAE;gBAAU,IAAI,OAAO;gBAAI,MAAM;YAAK,EAAC;YACpG,IAAI,kBACF,qBACE,iCAAC;;kCACC,gCAAC,CAAA,GAAA,sBAAG;wBAAE,IAAI;wBAAkB,SAAS;kCAClC,cAAA,CAAA,GAAA,yBAAW,EAAE,CAAA,GAAA,qBAAO,EAAE,KAAK,WAAW;4BACrC,gDAAgD;4BAChD,SAAS;wBACX;;oBAED,IAAI,KAAK,SAAS,KAAK;;eAPf,OAAO;YAYtB,qBACE,iCAAC;;kCACC,gCAAC,CAAA,GAAA,uCAAoB;wBAAE,OAAO;kCAAS;;oBACtC,IAAI,KAAK,SAAS,KAAK;;eAFf,OAAO;QAKtB;;AAGN;IAEA,2CAAe;;","sources":["packages/field-components/src/index.js","packages/field-components/src/AvatarWithLabelField.js","packages/field-components/src/ReferenceArrayField.js","packages/field-components/src/ReferenceField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendReferenceArrayField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendDialog.js","packages/field-components/src/QuickAppendReferenceArrayField/ResultsList.js","packages/field-components/src/MultiUrlField.js","packages/field-components/src/SeparatedListField.js"],"sourcesContent":["export { default as AvatarWithLabelField } from './AvatarWithLabelField';\nexport { default as ReferenceArrayField } from './ReferenceArrayField';\nexport { default as ReferenceField } from './ReferenceField';\nexport { default as QuickAppendReferenceArrayField } from './QuickAppendReferenceArrayField/QuickAppendReferenceArrayField';\nexport { default as MultiUrlField } from './MultiUrlField';\nexport { default as SeparatedListField } from './SeparatedListField';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Box, Avatar, Chip } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LaunchIcon from '@mui/icons-material/Launch';\n\nconst useStyles = makeStyles(theme => ({\n parent: props => ({\n position: 'relative',\n ...props.parent\n }),\n square: {\n width: '100%',\n paddingBottom: '100%',\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n width: '100%',\n height: '100%',\n borderRadius: '50%',\n // backgroundColor: theme.palette.primary.main,\n '& svg': {\n width: '55%',\n height: '55%'\n }\n },\n chip: {\n position: 'absolute',\n bottom: -10,\n left: 0,\n right: 0,\n paddingTop: 3,\n paddingBottom: 3,\n paddingLeft: 6,\n paddingRight: 6,\n marginBottom: 10,\n cursor: 'pointer'\n },\n launchIcon: {\n width: 14\n }\n}));\n\nconst handleClick = () => {};\n\nconst AvatarWithLabelField = ({ label, defaultLabel, image, fallback, externalLink, labelColor, classes, ...rest }) => {\n classes = useStyles(classes);\n const record = useRecordContext();\n\n const computedLabel = (typeof label === 'function' ? label(record) : record[label]) || defaultLabel;\n const computedImage = typeof image === 'function' ? image(record) : record[image];\n const computedFallback = typeof fallback === 'function' ? fallback(record) : fallback;\n\n return (\n \n \n {!computedLabel ? null : externalLink ? (\n }\n onDelete={handleClick}\n />\n ) : (\n \n )}\n \n );\n};\n\nAvatarWithLabelField.defaultProps = {\n labelColor: 'secondary',\n externalLink: false\n};\n\nexport default AvatarWithLabelField;\n","import React from 'react';\nimport { ReferenceArrayField as RaReferenceArrayField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceArrayField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record?.[source]) {\n if (!Array.isArray(record[source])) {\n record[source] = [record[source]];\n }\n record[source] = record[source].map(i => i['@id'] || i.id || i);\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceArrayField;\n","import React from 'react';\nimport { ReferenceField as RaReferenceField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record[source]) {\n if (typeof record[source] === 'object') {\n record[source] = record[source]['@id'] || record[source].id;\n }\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceField;\n","import React, { useState, useMemo } from 'react';\nimport { useRecordContext, usePermissions } from 'react-admin';\nimport { ReferenceArrayField } from '../index';\nimport QuickAppendDialog from './QuickAppendDialog';\n\nconst QuickAppendReferenceArrayField = ({ reference, source, resource, children, ...otherProps }) => {\n const record = useRecordContext();\n const [showDialog, setShowDialog] = useState(false);\n const { permissions } = usePermissions(record.id);\n\n const canAppend = useMemo(\n () => !!permissions && permissions.some(p => ['acl:Append', 'acl:Write', 'acl:Control'].includes(p['acl:mode'])),\n [permissions]\n );\n\n return (\n <>\n \n {React.Children.only(children) &&\n React.cloneElement(children, { appendLink: canAppend ? () => setShowDialog(true) : undefined })}\n \n {canAppend && showDialog && (\n setShowDialog(false)}\n subjectUri={record.id}\n resource={resource}\n source={source}\n reference={reference}\n />\n )}\n >\n );\n};\n\nexport default QuickAppendReferenceArrayField;\n","import React, { useState, useCallback } from 'react';\nimport {\n Button,\n useDataProvider,\n useTranslate,\n useRefresh,\n useNotify,\n useGetResourceLabel,\n useShowContext\n} from 'react-admin';\nimport { Dialog, DialogTitle, TextField, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useForm } from 'react-hook-form';\nimport AddIcon from '@mui/icons-material/Add';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport ResultsList from './ResultsList';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 0,\n paddingBottom: 0,\n maxHeight: 210\n }\n}));\n\nconst QuickAppendDialog = ({ open, onClose, subjectUri, source, reference }) => {\n const classes = useStyles();\n const { resource } = useShowContext();\n const [keyword, setKeyword] = useState('');\n const [panel, setPanel] = useState('find');\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n const refresh = useRefresh();\n const notify = useNotify();\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n const { register, setValue, handleSubmit } = useForm();\n\n const appendLink = useCallback(\n async objectUri => {\n // Get the freshest data so that the put operation doesn't overwrite anything\n const { data } = await dataProvider.getOne(resource, { id: subjectUri });\n\n await dataProvider.update(resource, {\n id: subjectUri,\n data: {\n ...data,\n [source]: data[source]\n ? Array.isArray(data[source])\n ? [...data[source], objectUri]\n : [data[source], objectUri]\n : objectUri\n },\n previousData: data\n });\n\n refresh();\n\n onClose();\n },\n [dataProvider, subjectUri, resource, source, refresh, onClose]\n );\n\n const create = useCallback(\n async values => {\n const { data } = await dataProvider.create(reference, {\n data: {\n [dataModel.fieldsMapping.title]: values.title\n }\n });\n\n await appendLink(data.id);\n\n notify(`La resource \"${values.title}\" a été créée`, { type: 'success' });\n },\n [dataProvider, dataModel, appendLink, reference, notify]\n );\n\n return (\n \n );\n};\n\nexport default QuickAppendDialog;\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n useDataProvider,\n useRecordContext,\n useCreatePath,\n useGetResourceLabel,\n useResourceDefinition,\n useTranslate\n} from 'react-admin';\nimport debounce from 'lodash.debounce';\nimport {\n Box,\n IconButton,\n List,\n ListItem,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n Avatar,\n CircularProgress\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddIcon from '@mui/icons-material/Add';\nimport VisibilityIcon from '@mui/icons-material/Visibility';\nimport ErrorIcon from '@mui/icons-material/Error';\nimport { useDataServers, useDataModel } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper,\n paddingTop: 0,\n paddingBottom: 0\n },\n primaryText: {\n width: '30%'\n },\n secondaryText: {\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst getServerName = (resourceUri, dataServers) => {\n const server = dataServers && Object.values(dataServers).find(server => resourceUri.startsWith(server.baseUrl));\n return server ? server.name : 'Inconnu';\n};\n\nconst ResultsList = ({ keyword, source, reference, appendLink, switchToCreate }) => {\n const classes = useStyles();\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [results, setResults] = useState([]);\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const dataServers = useDataServers();\n const record = useRecordContext();\n const createPath = useCreatePath();\n\n const referenceDefinition = useResourceDefinition({ resource: reference });\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n\n if (dataModel && Object.keys(dataModel).length > 0 && !dataModel?.fieldsMapping?.title) {\n throw new Error(`No fieldsMapping.title config found for ${reference} dataModel`);\n }\n\n const search = useMemo(\n () =>\n debounce(keyword => {\n dataProvider\n .getList(reference, {\n pagination: { page: 1, perPage: 100 },\n sort: { field: dataModel?.fieldsMapping?.title, order: 'ASC' },\n filter: { q: keyword, _predicates: [dataModel.fieldsMapping.title], _servers: '@all' }\n })\n .then(({ data }) => {\n const existingLinks = record[source]\n ? Array.isArray(record[source])\n ? record[source]\n : [record[source]]\n : [];\n const newLinks = data.filter(record => !existingLinks.includes(record.id));\n setResults(newLinks);\n setLoaded(true);\n setLoading(false);\n })\n .catch(e => {\n setLoading(false);\n });\n }, 700),\n [dataProvider, dataModel, record, source, reference, setResults, setLoading, setLoaded]\n );\n\n useEffect(() => {\n if (!keyword) {\n return undefined;\n }\n setLoading(true);\n setLoaded(false);\n search(keyword);\n\n return () => search.cancel();\n }, [keyword, search, setLoading]);\n\n if (!keyword) return null;\n\n return (\n \n {loaded &&\n results.map(resource => (\n appendLink(resource.id)}>\n \n {React.createElement(referenceDefinition.icon)}\n \n \n \n \n \n \n \n \n \n \n \n ))}\n {loaded && results.length === 0 && (\n \n \n \n \n \n \n \n \n )}\n {loaded && referenceDefinition.hasCreate && (\n \n \n \n \n \n \n \n \n )}\n {loading && (\n \n \n \n )}\n
\n );\n};\n\nexport default ResultsList;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Chip, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport FacebookIcon from '@mui/icons-material/Facebook';\nimport GitHubIcon from '@mui/icons-material/GitHub';\nimport TwitterIcon from '@mui/icons-material/Twitter';\nimport InstagramIcon from '@mui/icons-material/Instagram';\nimport YouTubeIcon from '@mui/icons-material/YouTube';\nimport { FiGitlab } from 'react-icons/fi';\n\nconst defaultdomainMapping = {\n 'github.com': {\n label: 'GitHub',\n icon: ,\n color: 'black',\n contrastText: 'white'\n },\n 'gitlab.com': {\n label: 'GitLab',\n icon: ,\n color: 'orange',\n contrastText: 'black'\n },\n 'opencollective.com': {\n label: 'Open Collective',\n icon: ,\n color: 'white',\n contrastText: '#297EFF'\n },\n 'facebook.com': {\n label: 'Facebook',\n icon: ,\n color: '#4267B2',\n contrastText: 'white'\n },\n 'twitter.com': {\n label: 'Twitter',\n icon: ,\n color: '#00ACEE',\n contrastText: 'white'\n },\n 'instagram.com': {\n label: 'Instagram',\n icon: ,\n color: '#8a3ab9',\n contrastText: 'white'\n },\n 'youtube.com': {\n label: 'YouTube',\n icon: ,\n color: '#FF0000',\n contrastText: 'white'\n }\n};\n\nconst useStyles = makeStyles(() => ({\n link: {\n textDecoration: 'unset',\n '& :hover': {\n cursor: 'pointer'\n }\n },\n chip: {\n paddingLeft: 5,\n paddingRight: 5,\n marginRight: 5,\n marginBottom: 5\n },\n label: {\n marginTop: -1\n }\n}));\n\nconst MultiUrlField = ({ source, domainMapping }) => {\n const newDomainMapping = { ...defaultdomainMapping, ...domainMapping };\n const record = useRecordContext();\n const classes = useStyles();\n const urlArray = record[source] ? (Array.isArray(record[source]) ? record[source] : [record[source]]) : [];\n return urlArray.map((url, index) => {\n if (!url.startsWith('http')) url = `https://${url}`;\n const parsedUrl = new URL(url);\n if (!parsedUrl) return null;\n const chip = newDomainMapping[parsedUrl.hostname] || {\n label: 'Site web',\n icon: ,\n color: '#ea',\n contrastText: 'black'\n };\n return (\n \n \n \n );\n });\n};\n\nexport default MultiUrlField;\n","import * as React from 'react';\nimport { cloneElement, Children } from 'react';\nimport { useCreatePath, useListContext, Link, RecordContextProvider } from 'react-admin';\nimport { LinearProgress } from '@mui/material';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst SeparatedListField = props => {\n let { children, link = 'edit', linkType, separator = ',\\u00A0' } = props;\n const { data, isLoading, resource } = useListContext(props);\n const createPath = useCreatePath();\n\n if (linkType !== undefined) {\n console.warn(\"The 'linkType' prop is deprecated and should be named to 'link' in \");\n link = linkType;\n }\n\n if (isLoading) return ;\n\n return (\n <>\n {data.map((record, i) => {\n if (!record.id) return null;\n const resourceLinkPath =\n link !== false &&\n (typeof link === 'function' ? link(record.id) : createPath({ resource, id: record.id, type: link }));\n if (resourceLinkPath) {\n return (\n \n \n {cloneElement(Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n {i < data.length - 1 && separator}\n \n );\n }\n\n return (\n \n {children}\n {i < data.length - 1 && separator}\n \n );\n })}\n >\n );\n};\n\nexport default SeparatedListField;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/field-components/src/index.js","packages/field-components/src/AvatarWithLabelField.js","packages/field-components/src/ReferenceArrayField.js","packages/field-components/src/ReferenceField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendReferenceArrayField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendDialog.js","packages/field-components/src/QuickAppendReferenceArrayField/ResultsList.js","packages/field-components/src/MultiUrlField.js","packages/field-components/src/SeparatedListField.js"],"sourcesContent":["export { default as AvatarWithLabelField } from './AvatarWithLabelField';\nexport { default as ReferenceArrayField } from './ReferenceArrayField';\nexport { default as ReferenceField } from './ReferenceField';\nexport { default as QuickAppendReferenceArrayField } from './QuickAppendReferenceArrayField/QuickAppendReferenceArrayField';\nexport { default as MultiUrlField } from './MultiUrlField';\nexport { default as SeparatedListField } from './SeparatedListField';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Box, Avatar, Chip } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LaunchIcon from '@mui/icons-material/Launch';\n\nconst useStyles = makeStyles(theme => ({\n parent: props => ({\n position: 'relative',\n ...props.parent\n }),\n square: {\n width: '100%',\n paddingBottom: '100%',\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n width: '100%',\n height: '100%',\n borderRadius: '50%',\n // backgroundColor: theme.palette.primary.main,\n '& svg': {\n width: '55%',\n height: '55%'\n }\n },\n chip: {\n position: 'absolute',\n bottom: -10,\n left: 0,\n right: 0,\n paddingTop: 3,\n paddingBottom: 3,\n paddingLeft: 6,\n paddingRight: 6,\n marginBottom: 10,\n cursor: 'pointer'\n },\n launchIcon: {\n width: 14\n }\n}));\n\nconst handleClick = () => {};\n\nconst AvatarWithLabelField = ({ label, defaultLabel, image, fallback, externalLink, labelColor, classes, ...rest }) => {\n classes = useStyles(classes);\n const record = useRecordContext();\n\n const computedLabel = (typeof label === 'function' ? label(record) : record[label]) || defaultLabel;\n const computedImage = typeof image === 'function' ? image(record) : record[image];\n const computedFallback = typeof fallback === 'function' ? fallback(record) : fallback;\n\n return (\n \n \n {!computedLabel ? null : externalLink ? (\n }\n onDelete={handleClick}\n />\n ) : (\n \n )}\n \n );\n};\n\nAvatarWithLabelField.defaultProps = {\n labelColor: 'secondary',\n externalLink: false\n};\n\nexport default AvatarWithLabelField;\n","import React from 'react';\nimport { ReferenceArrayField as RaReferenceArrayField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceArrayField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record?.[source]) {\n if (!Array.isArray(record[source])) {\n record[source] = [record[source]];\n }\n record[source] = record[source].map(i => i['@id'] || i.id || i);\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceArrayField;\n","import React from 'react';\nimport { ReferenceField as RaReferenceField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record[source]) {\n if (typeof record[source] === 'object') {\n record[source] = record[source]['@id'] || record[source].id;\n }\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceField;\n","import React, { useState, useMemo } from 'react';\nimport { useRecordContext, usePermissions } from 'react-admin';\nimport { ReferenceArrayField } from '../index';\nimport QuickAppendDialog from './QuickAppendDialog';\n\nconst QuickAppendReferenceArrayField = ({ reference, source, resource, children, ...otherProps }) => {\n const record = useRecordContext();\n const [showDialog, setShowDialog] = useState(false);\n const { permissions } = usePermissions(record.id);\n\n const canAppend = useMemo(\n () => !!permissions && permissions.some(p => ['acl:Append', 'acl:Write', 'acl:Control'].includes(p['acl:mode'])),\n [permissions]\n );\n\n return (\n <>\n \n {React.Children.only(children) &&\n React.cloneElement(children, { appendLink: canAppend ? () => setShowDialog(true) : undefined })}\n \n {canAppend && showDialog && (\n setShowDialog(false)}\n subjectUri={record.id}\n resource={resource}\n source={source}\n reference={reference}\n />\n )}\n >\n );\n};\n\nexport default QuickAppendReferenceArrayField;\n","import React, { useState, useCallback } from 'react';\nimport {\n Button,\n useDataProvider,\n useTranslate,\n useRefresh,\n useNotify,\n useGetResourceLabel,\n useShowContext\n} from 'react-admin';\nimport { Dialog, DialogTitle, TextField, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useForm } from 'react-hook-form';\nimport AddIcon from '@mui/icons-material/Add';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport ResultsList from './ResultsList';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 0,\n paddingBottom: 0,\n maxHeight: 210\n }\n}));\n\nconst QuickAppendDialog = ({ open, onClose, subjectUri, source, reference }) => {\n const classes = useStyles();\n const { resource } = useShowContext();\n const [keyword, setKeyword] = useState('');\n const [panel, setPanel] = useState('find');\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n const refresh = useRefresh();\n const notify = useNotify();\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n const { register, setValue, handleSubmit } = useForm();\n\n const appendLink = useCallback(\n async objectUri => {\n // Get the freshest data so that the put operation doesn't overwrite anything\n const { data } = await dataProvider.getOne(resource, { id: subjectUri });\n\n await dataProvider.update(resource, {\n id: subjectUri,\n data: {\n ...data,\n [source]: data[source]\n ? Array.isArray(data[source])\n ? [...data[source], objectUri]\n : [data[source], objectUri]\n : objectUri\n },\n previousData: data\n });\n\n refresh();\n\n onClose();\n },\n [dataProvider, subjectUri, resource, source, refresh, onClose]\n );\n\n const create = useCallback(\n async values => {\n const { data } = await dataProvider.create(reference, {\n data: {\n [dataModel.fieldsMapping.title]: values.title\n }\n });\n\n await appendLink(data.id);\n\n notify(`La resource \"${values.title}\" a été créée`, { type: 'success' });\n },\n [dataProvider, dataModel, appendLink, reference, notify]\n );\n\n return (\n \n );\n};\n\nexport default QuickAppendDialog;\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n useDataProvider,\n useRecordContext,\n useCreatePath,\n useGetResourceLabel,\n useResourceDefinition,\n useTranslate\n} from 'react-admin';\nimport debounce from 'lodash.debounce';\nimport {\n Box,\n IconButton,\n List,\n ListItem,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n Avatar,\n CircularProgress\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddIcon from '@mui/icons-material/Add';\nimport VisibilityIcon from '@mui/icons-material/Visibility';\nimport ErrorIcon from '@mui/icons-material/Error';\nimport { useDataServers, useDataModel } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper,\n paddingTop: 0,\n paddingBottom: 0\n },\n primaryText: {\n width: '30%'\n },\n secondaryText: {\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst getServerName = (resourceUri, dataServers) => {\n const server = dataServers && Object.values(dataServers).find(server => resourceUri.startsWith(server.baseUrl));\n return server ? server.name : 'Inconnu';\n};\n\nconst ResultsList = ({ keyword, source, reference, appendLink, switchToCreate }) => {\n const classes = useStyles();\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [results, setResults] = useState([]);\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const dataServers = useDataServers();\n const record = useRecordContext();\n const createPath = useCreatePath();\n\n const referenceDefinition = useResourceDefinition({ resource: reference });\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n\n if (dataModel && Object.keys(dataModel).length > 0 && !dataModel?.fieldsMapping?.title) {\n throw new Error(`No fieldsMapping.title config found for ${reference} dataModel`);\n }\n\n const search = useMemo(\n () =>\n debounce(keyword => {\n dataProvider\n .getList(reference, {\n pagination: { page: 1, perPage: 100 },\n sort: { field: dataModel?.fieldsMapping?.title, order: 'ASC' },\n filter: { q: keyword, _predicates: [dataModel.fieldsMapping.title], _servers: '@all' }\n })\n .then(({ data }) => {\n const existingLinks = record[source]\n ? Array.isArray(record[source])\n ? record[source]\n : [record[source]]\n : [];\n const newLinks = data.filter(record => !existingLinks.includes(record.id));\n setResults(newLinks);\n setLoaded(true);\n setLoading(false);\n })\n .catch(e => {\n setLoading(false);\n });\n }, 700),\n [dataProvider, dataModel, record, source, reference, setResults, setLoading, setLoaded]\n );\n\n useEffect(() => {\n if (!keyword) {\n return undefined;\n }\n setLoading(true);\n setLoaded(false);\n search(keyword);\n\n return () => search.cancel();\n }, [keyword, search, setLoading]);\n\n if (!keyword) return null;\n\n return (\n \n {loaded &&\n results.map(resource => (\n appendLink(resource.id)}>\n \n {React.createElement(referenceDefinition.icon)}\n \n \n \n \n \n \n \n \n \n \n \n ))}\n {loaded && results.length === 0 && (\n \n \n \n \n \n \n \n \n )}\n {loaded && referenceDefinition.hasCreate && (\n \n \n \n \n \n \n \n \n )}\n {loading && (\n \n \n \n )}\n
\n );\n};\n\nexport default ResultsList;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Chip, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport FacebookIcon from '@mui/icons-material/Facebook';\nimport GitHubIcon from '@mui/icons-material/GitHub';\nimport TwitterIcon from '@mui/icons-material/Twitter';\nimport InstagramIcon from '@mui/icons-material/Instagram';\nimport YouTubeIcon from '@mui/icons-material/YouTube';\nimport { FiGitlab } from 'react-icons/fi';\n\nconst defaultdomainMapping = {\n 'github.com': {\n label: 'GitHub',\n icon: ,\n color: 'black',\n contrastText: 'white'\n },\n 'gitlab.com': {\n label: 'GitLab',\n icon: ,\n color: 'orange',\n contrastText: 'black'\n },\n 'opencollective.com': {\n label: 'Open Collective',\n icon: ,\n color: 'white',\n contrastText: '#297EFF'\n },\n 'facebook.com': {\n label: 'Facebook',\n icon: ,\n color: '#4267B2',\n contrastText: 'white'\n },\n 'twitter.com': {\n label: 'Twitter',\n icon: ,\n color: '#00ACEE',\n contrastText: 'white'\n },\n 'instagram.com': {\n label: 'Instagram',\n icon: ,\n color: '#8a3ab9',\n contrastText: 'white'\n },\n 'youtube.com': {\n label: 'YouTube',\n icon: ,\n color: '#FF0000',\n contrastText: 'white'\n }\n};\n\nconst useStyles = makeStyles(() => ({\n link: {\n textDecoration: 'unset',\n '& :hover': {\n cursor: 'pointer'\n }\n },\n chip: {\n paddingLeft: 5,\n paddingRight: 5,\n marginRight: 5,\n marginBottom: 5\n },\n label: {\n marginTop: -1\n }\n}));\n\nconst MultiUrlField = ({ source, domainMapping }) => {\n const newDomainMapping = { ...defaultdomainMapping, ...domainMapping };\n const record = useRecordContext();\n const classes = useStyles();\n const urlArray = record[source] ? (Array.isArray(record[source]) ? record[source] : [record[source]]) : [];\n return urlArray.map((url, index) => {\n if (!url.startsWith('http')) url = `https://${url}`;\n const parsedUrl = new URL(url);\n if (!parsedUrl) return null;\n const chip = newDomainMapping[parsedUrl.hostname] || {\n label: 'Site web',\n icon: ,\n color: '#ea',\n contrastText: 'black'\n };\n return (\n \n \n \n );\n });\n};\n\nexport default MultiUrlField;\n","import * as React from 'react';\nimport { cloneElement, Children } from 'react';\nimport { useCreatePath, useListContext, Link, RecordContextProvider } from 'react-admin';\nimport { LinearProgress } from '@mui/material';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst SeparatedListField = props => {\n let { children, link = 'edit', linkType, separator = ',\\u00A0' } = props;\n const { data, isLoading, resource } = useListContext(props);\n const createPath = useCreatePath();\n\n if (linkType !== undefined) {\n console.warn(\"The 'linkType' prop is deprecated and should be named to 'link' in \");\n link = linkType;\n }\n\n if (isLoading) return ;\n\n return (\n <>\n {data.map((record, i) => {\n if (!record.id) return null;\n const resourceLinkPath =\n link !== false &&\n (typeof link === 'function' ? link(record.id) : createPath({ resource, id: record.id, type: link }));\n if (resourceLinkPath) {\n return (\n \n \n {cloneElement(Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n {i < data.length - 1 && separator}\n \n );\n }\n\n return (\n \n {children}\n {i < data.length - 1 && separator}\n \n );\n })}\n >\n );\n};\n\nexport default SeparatedListField;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/field-components/dist/index.es.js b/src/frontend/packages/field-components/dist/index.es.js
index 438b4e6f9..70f69b1f1 100644
--- a/src/frontend/packages/field-components/dist/index.es.js
+++ b/src/frontend/packages/field-components/dist/index.es.js
@@ -409,7 +409,7 @@ const $3d5bffcd1289119f$var$QuickAppendDialog = ({ open: open, onClose: onClose,
}
});
await appendLink(data.id);
- notify(`La resource "${values.title}" a été créée`, {
+ notify(`La resource "${values.title}" a \xe9t\xe9 cr\xe9\xe9e`, {
type: "success"
});
}, [
@@ -433,7 +433,7 @@ const $3d5bffcd1289119f$var$QuickAppendDialog = ({ open: open, onClose: onClose,
className: classes.addForm,
children: /*#__PURE__*/ (0, $iSi6A$jsx)((0, $iSi6A$TextField), {
autoFocus: true,
- label: `Rechercher ou créer des ${getResourceLabel(reference, 2).toLowerCase()}`,
+ label: `Rechercher ou cr\xe9er des ${getResourceLabel(reference, 2).toLowerCase()}`,
variant: "filled",
margin: "dense",
value: keyword,
diff --git a/src/frontend/packages/field-components/dist/index.es.js.map b/src/frontend/packages/field-components/dist/index.es.js.map
index 8b2c84f75..fd9826792 100644
--- a/src/frontend/packages/field-components/dist/index.es.js.map
+++ b/src/frontend/packages/field-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/field-components/src/index.js","packages/field-components/src/AvatarWithLabelField.js","packages/field-components/src/ReferenceArrayField.js","packages/field-components/src/ReferenceField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendReferenceArrayField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendDialog.js","packages/field-components/src/QuickAppendReferenceArrayField/ResultsList.js","packages/field-components/src/MultiUrlField.js","packages/field-components/src/SeparatedListField.js"],"sourcesContent":["export { default as AvatarWithLabelField } from './AvatarWithLabelField';\nexport { default as ReferenceArrayField } from './ReferenceArrayField';\nexport { default as ReferenceField } from './ReferenceField';\nexport { default as QuickAppendReferenceArrayField } from './QuickAppendReferenceArrayField/QuickAppendReferenceArrayField';\nexport { default as MultiUrlField } from './MultiUrlField';\nexport { default as SeparatedListField } from './SeparatedListField';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Box, Avatar, Chip } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LaunchIcon from '@mui/icons-material/Launch';\n\nconst useStyles = makeStyles(theme => ({\n parent: props => ({\n position: 'relative',\n ...props.parent\n }),\n square: {\n width: '100%',\n paddingBottom: '100%',\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n width: '100%',\n height: '100%',\n borderRadius: '50%',\n // backgroundColor: theme.palette.primary.main,\n '& svg': {\n width: '55%',\n height: '55%'\n }\n },\n chip: {\n position: 'absolute',\n bottom: -10,\n left: 0,\n right: 0,\n paddingTop: 3,\n paddingBottom: 3,\n paddingLeft: 6,\n paddingRight: 6,\n marginBottom: 10,\n cursor: 'pointer'\n },\n launchIcon: {\n width: 14\n }\n}));\n\nconst handleClick = () => {};\n\nconst AvatarWithLabelField = ({ label, defaultLabel, image, fallback, externalLink, labelColor, classes, ...rest }) => {\n classes = useStyles(classes);\n const record = useRecordContext();\n\n const computedLabel = (typeof label === 'function' ? label(record) : record[label]) || defaultLabel;\n const computedImage = typeof image === 'function' ? image(record) : record[image];\n const computedFallback = typeof fallback === 'function' ? fallback(record) : fallback;\n\n return (\n \n \n {!computedLabel ? null : externalLink ? (\n }\n onDelete={handleClick}\n />\n ) : (\n \n )}\n \n );\n};\n\nAvatarWithLabelField.defaultProps = {\n labelColor: 'secondary',\n externalLink: false\n};\n\nexport default AvatarWithLabelField;\n","import React from 'react';\nimport { ReferenceArrayField as RaReferenceArrayField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceArrayField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record?.[source]) {\n if (!Array.isArray(record[source])) {\n record[source] = [record[source]];\n }\n record[source] = record[source].map(i => i['@id'] || i.id || i);\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceArrayField;\n","import React from 'react';\nimport { ReferenceField as RaReferenceField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record[source]) {\n if (typeof record[source] === 'object') {\n record[source] = record[source]['@id'] || record[source].id;\n }\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceField;\n","import React, { useState, useMemo } from 'react';\nimport { useRecordContext, usePermissions } from 'react-admin';\nimport { ReferenceArrayField } from '../index';\nimport QuickAppendDialog from './QuickAppendDialog';\n\nconst QuickAppendReferenceArrayField = ({ reference, source, resource, children, ...otherProps }) => {\n const record = useRecordContext();\n const [showDialog, setShowDialog] = useState(false);\n const { permissions } = usePermissions(record.id);\n\n const canAppend = useMemo(\n () => !!permissions && permissions.some(p => ['acl:Append', 'acl:Write', 'acl:Control'].includes(p['acl:mode'])),\n [permissions]\n );\n\n return (\n <>\n \n {React.Children.only(children) &&\n React.cloneElement(children, { appendLink: canAppend ? () => setShowDialog(true) : undefined })}\n \n {canAppend && showDialog && (\n setShowDialog(false)}\n subjectUri={record.id}\n resource={resource}\n source={source}\n reference={reference}\n />\n )}\n >\n );\n};\n\nexport default QuickAppendReferenceArrayField;\n","import React, { useState, useCallback } from 'react';\nimport {\n Button,\n useDataProvider,\n useTranslate,\n useRefresh,\n useNotify,\n useGetResourceLabel,\n useShowContext\n} from 'react-admin';\nimport { Dialog, DialogTitle, TextField, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useForm } from 'react-hook-form';\nimport AddIcon from '@mui/icons-material/Add';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport ResultsList from './ResultsList';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 0,\n paddingBottom: 0,\n maxHeight: 210\n }\n}));\n\nconst QuickAppendDialog = ({ open, onClose, subjectUri, source, reference }) => {\n const classes = useStyles();\n const { resource } = useShowContext();\n const [keyword, setKeyword] = useState('');\n const [panel, setPanel] = useState('find');\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n const refresh = useRefresh();\n const notify = useNotify();\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n const { register, setValue, handleSubmit } = useForm();\n\n const appendLink = useCallback(\n async objectUri => {\n // Get the freshest data so that the put operation doesn't overwrite anything\n const { data } = await dataProvider.getOne(resource, { id: subjectUri });\n\n await dataProvider.update(resource, {\n id: subjectUri,\n data: {\n ...data,\n [source]: data[source]\n ? Array.isArray(data[source])\n ? [...data[source], objectUri]\n : [data[source], objectUri]\n : objectUri\n },\n previousData: data\n });\n\n refresh();\n\n onClose();\n },\n [dataProvider, subjectUri, resource, source, refresh, onClose]\n );\n\n const create = useCallback(\n async values => {\n const { data } = await dataProvider.create(reference, {\n data: {\n [dataModel.fieldsMapping.title]: values.title\n }\n });\n\n await appendLink(data.id);\n\n notify(`La resource \"${values.title}\" a été créée`, { type: 'success' });\n },\n [dataProvider, dataModel, appendLink, reference, notify]\n );\n\n return (\n \n );\n};\n\nexport default QuickAppendDialog;\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n useDataProvider,\n useRecordContext,\n useCreatePath,\n useGetResourceLabel,\n useResourceDefinition,\n useTranslate\n} from 'react-admin';\nimport debounce from 'lodash.debounce';\nimport {\n Box,\n IconButton,\n List,\n ListItem,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n Avatar,\n CircularProgress\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddIcon from '@mui/icons-material/Add';\nimport VisibilityIcon from '@mui/icons-material/Visibility';\nimport ErrorIcon from '@mui/icons-material/Error';\nimport { useDataServers, useDataModel } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper,\n paddingTop: 0,\n paddingBottom: 0\n },\n primaryText: {\n width: '30%'\n },\n secondaryText: {\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst getServerName = (resourceUri, dataServers) => {\n const server = dataServers && Object.values(dataServers).find(server => resourceUri.startsWith(server.baseUrl));\n return server ? server.name : 'Inconnu';\n};\n\nconst ResultsList = ({ keyword, source, reference, appendLink, switchToCreate }) => {\n const classes = useStyles();\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [results, setResults] = useState([]);\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const dataServers = useDataServers();\n const record = useRecordContext();\n const createPath = useCreatePath();\n\n const referenceDefinition = useResourceDefinition({ resource: reference });\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n\n if (dataModel && Object.keys(dataModel).length > 0 && !dataModel?.fieldsMapping?.title) {\n throw new Error(`No fieldsMapping.title config found for ${reference} dataModel`);\n }\n\n const search = useMemo(\n () =>\n debounce(keyword => {\n dataProvider\n .getList(reference, {\n pagination: { page: 1, perPage: 100 },\n sort: { field: dataModel?.fieldsMapping?.title, order: 'ASC' },\n filter: { q: keyword, _predicates: [dataModel.fieldsMapping.title], _servers: '@all' }\n })\n .then(({ data }) => {\n const existingLinks = record[source]\n ? Array.isArray(record[source])\n ? record[source]\n : [record[source]]\n : [];\n const newLinks = data.filter(record => !existingLinks.includes(record.id));\n setResults(newLinks);\n setLoaded(true);\n setLoading(false);\n })\n .catch(e => {\n setLoading(false);\n });\n }, 700),\n [dataProvider, dataModel, record, source, reference, setResults, setLoading, setLoaded]\n );\n\n useEffect(() => {\n if (!keyword) {\n return undefined;\n }\n setLoading(true);\n setLoaded(false);\n search(keyword);\n\n return () => search.cancel();\n }, [keyword, search, setLoading]);\n\n if (!keyword) return null;\n\n return (\n \n {loaded &&\n results.map(resource => (\n appendLink(resource.id)}>\n \n {React.createElement(referenceDefinition.icon)}\n \n \n \n \n \n \n \n \n \n \n \n ))}\n {loaded && results.length === 0 && (\n \n \n \n \n \n \n \n \n )}\n {loaded && referenceDefinition.hasCreate && (\n \n \n \n \n \n \n \n \n )}\n {loading && (\n \n \n \n )}\n
\n );\n};\n\nexport default ResultsList;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Chip, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport FacebookIcon from '@mui/icons-material/Facebook';\nimport GitHubIcon from '@mui/icons-material/GitHub';\nimport TwitterIcon from '@mui/icons-material/Twitter';\nimport InstagramIcon from '@mui/icons-material/Instagram';\nimport YouTubeIcon from '@mui/icons-material/YouTube';\nimport { FiGitlab } from 'react-icons/fi';\n\nconst defaultdomainMapping = {\n 'github.com': {\n label: 'GitHub',\n icon: ,\n color: 'black',\n contrastText: 'white'\n },\n 'gitlab.com': {\n label: 'GitLab',\n icon: ,\n color: 'orange',\n contrastText: 'black'\n },\n 'opencollective.com': {\n label: 'Open Collective',\n icon: ,\n color: 'white',\n contrastText: '#297EFF'\n },\n 'facebook.com': {\n label: 'Facebook',\n icon: ,\n color: '#4267B2',\n contrastText: 'white'\n },\n 'twitter.com': {\n label: 'Twitter',\n icon: ,\n color: '#00ACEE',\n contrastText: 'white'\n },\n 'instagram.com': {\n label: 'Instagram',\n icon: ,\n color: '#8a3ab9',\n contrastText: 'white'\n },\n 'youtube.com': {\n label: 'YouTube',\n icon: ,\n color: '#FF0000',\n contrastText: 'white'\n }\n};\n\nconst useStyles = makeStyles(() => ({\n link: {\n textDecoration: 'unset',\n '& :hover': {\n cursor: 'pointer'\n }\n },\n chip: {\n paddingLeft: 5,\n paddingRight: 5,\n marginRight: 5,\n marginBottom: 5\n },\n label: {\n marginTop: -1\n }\n}));\n\nconst MultiUrlField = ({ source, domainMapping }) => {\n const newDomainMapping = { ...defaultdomainMapping, ...domainMapping };\n const record = useRecordContext();\n const classes = useStyles();\n const urlArray = record[source] ? (Array.isArray(record[source]) ? record[source] : [record[source]]) : [];\n return urlArray.map((url, index) => {\n if (!url.startsWith('http')) url = `https://${url}`;\n const parsedUrl = new URL(url);\n if (!parsedUrl) return null;\n const chip = newDomainMapping[parsedUrl.hostname] || {\n label: 'Site web',\n icon: ,\n color: '#ea',\n contrastText: 'black'\n };\n return (\n \n \n \n );\n });\n};\n\nexport default MultiUrlField;\n","import * as React from 'react';\nimport { cloneElement, Children } from 'react';\nimport { useCreatePath, useListContext, Link, RecordContextProvider } from 'react-admin';\nimport { LinearProgress } from '@mui/material';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst SeparatedListField = props => {\n let { children, link = 'edit', linkType, separator = ',\\u00A0' } = props;\n const { data, isLoading, resource } = useListContext(props);\n const createPath = useCreatePath();\n\n if (linkType !== undefined) {\n console.warn(\"The 'linkType' prop is deprecated and should be named to 'link' in \");\n link = linkType;\n }\n\n if (isLoading) return ;\n\n return (\n <>\n {data.map((record, i) => {\n if (!record.id) return null;\n const resourceLinkPath =\n link !== false &&\n (typeof link === 'function' ? link(record.id) : createPath({ resource, id: record.id, type: link }));\n if (resourceLinkPath) {\n return (\n \n \n {cloneElement(Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n {i < data.length - 1 && separator}\n \n );\n }\n\n return (\n \n {children}\n {i < data.length - 1 && separator}\n \n );\n })}\n >\n );\n};\n\nexport default SeparatedListField;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/field-components/src/index.js","packages/field-components/src/AvatarWithLabelField.js","packages/field-components/src/ReferenceArrayField.js","packages/field-components/src/ReferenceField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendReferenceArrayField.js","packages/field-components/src/QuickAppendReferenceArrayField/QuickAppendDialog.js","packages/field-components/src/QuickAppendReferenceArrayField/ResultsList.js","packages/field-components/src/MultiUrlField.js","packages/field-components/src/SeparatedListField.js"],"sourcesContent":["export { default as AvatarWithLabelField } from './AvatarWithLabelField';\nexport { default as ReferenceArrayField } from './ReferenceArrayField';\nexport { default as ReferenceField } from './ReferenceField';\nexport { default as QuickAppendReferenceArrayField } from './QuickAppendReferenceArrayField/QuickAppendReferenceArrayField';\nexport { default as MultiUrlField } from './MultiUrlField';\nexport { default as SeparatedListField } from './SeparatedListField';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Box, Avatar, Chip } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LaunchIcon from '@mui/icons-material/Launch';\n\nconst useStyles = makeStyles(theme => ({\n parent: props => ({\n position: 'relative',\n ...props.parent\n }),\n square: {\n width: '100%',\n paddingBottom: '100%',\n position: 'relative'\n },\n avatar: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n width: '100%',\n height: '100%',\n borderRadius: '50%',\n // backgroundColor: theme.palette.primary.main,\n '& svg': {\n width: '55%',\n height: '55%'\n }\n },\n chip: {\n position: 'absolute',\n bottom: -10,\n left: 0,\n right: 0,\n paddingTop: 3,\n paddingBottom: 3,\n paddingLeft: 6,\n paddingRight: 6,\n marginBottom: 10,\n cursor: 'pointer'\n },\n launchIcon: {\n width: 14\n }\n}));\n\nconst handleClick = () => {};\n\nconst AvatarWithLabelField = ({ label, defaultLabel, image, fallback, externalLink, labelColor, classes, ...rest }) => {\n classes = useStyles(classes);\n const record = useRecordContext();\n\n const computedLabel = (typeof label === 'function' ? label(record) : record[label]) || defaultLabel;\n const computedImage = typeof image === 'function' ? image(record) : record[image];\n const computedFallback = typeof fallback === 'function' ? fallback(record) : fallback;\n\n return (\n \n \n {!computedLabel ? null : externalLink ? (\n }\n onDelete={handleClick}\n />\n ) : (\n \n )}\n \n );\n};\n\nAvatarWithLabelField.defaultProps = {\n labelColor: 'secondary',\n externalLink: false\n};\n\nexport default AvatarWithLabelField;\n","import React from 'react';\nimport { ReferenceArrayField as RaReferenceArrayField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceArrayField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record?.[source]) {\n if (!Array.isArray(record[source])) {\n record[source] = [record[source]];\n }\n record[source] = record[source].map(i => i['@id'] || i.id || i);\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceArrayField;\n","import React from 'react';\nimport { ReferenceField as RaReferenceField, useRecordContext, RecordContextProvider } from 'react-admin';\n\nconst ReferenceField = ({ source, ...otherProps }) => {\n const record = useRecordContext();\n if (record[source]) {\n if (typeof record[source] === 'object') {\n record[source] = record[source]['@id'] || record[source].id;\n }\n }\n return (\n \n \n \n );\n};\n\nexport default ReferenceField;\n","import React, { useState, useMemo } from 'react';\nimport { useRecordContext, usePermissions } from 'react-admin';\nimport { ReferenceArrayField } from '../index';\nimport QuickAppendDialog from './QuickAppendDialog';\n\nconst QuickAppendReferenceArrayField = ({ reference, source, resource, children, ...otherProps }) => {\n const record = useRecordContext();\n const [showDialog, setShowDialog] = useState(false);\n const { permissions } = usePermissions(record.id);\n\n const canAppend = useMemo(\n () => !!permissions && permissions.some(p => ['acl:Append', 'acl:Write', 'acl:Control'].includes(p['acl:mode'])),\n [permissions]\n );\n\n return (\n <>\n \n {React.Children.only(children) &&\n React.cloneElement(children, { appendLink: canAppend ? () => setShowDialog(true) : undefined })}\n \n {canAppend && showDialog && (\n setShowDialog(false)}\n subjectUri={record.id}\n resource={resource}\n source={source}\n reference={reference}\n />\n )}\n >\n );\n};\n\nexport default QuickAppendReferenceArrayField;\n","import React, { useState, useCallback } from 'react';\nimport {\n Button,\n useDataProvider,\n useTranslate,\n useRefresh,\n useNotify,\n useGetResourceLabel,\n useShowContext\n} from 'react-admin';\nimport { Dialog, DialogTitle, TextField, DialogContent, DialogActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport { useForm } from 'react-hook-form';\nimport AddIcon from '@mui/icons-material/Add';\nimport { useDataModel } from '@semapps/semantic-data-provider';\nimport ResultsList from './ResultsList';\n\nconst useStyles = makeStyles(() => ({\n title: {\n paddingBottom: 8\n },\n actions: {\n padding: 15\n },\n addForm: {\n paddingTop: 0\n },\n listForm: {\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 0,\n paddingBottom: 0,\n maxHeight: 210\n }\n}));\n\nconst QuickAppendDialog = ({ open, onClose, subjectUri, source, reference }) => {\n const classes = useStyles();\n const { resource } = useShowContext();\n const [keyword, setKeyword] = useState('');\n const [panel, setPanel] = useState('find');\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n const refresh = useRefresh();\n const notify = useNotify();\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n const { register, setValue, handleSubmit } = useForm();\n\n const appendLink = useCallback(\n async objectUri => {\n // Get the freshest data so that the put operation doesn't overwrite anything\n const { data } = await dataProvider.getOne(resource, { id: subjectUri });\n\n await dataProvider.update(resource, {\n id: subjectUri,\n data: {\n ...data,\n [source]: data[source]\n ? Array.isArray(data[source])\n ? [...data[source], objectUri]\n : [data[source], objectUri]\n : objectUri\n },\n previousData: data\n });\n\n refresh();\n\n onClose();\n },\n [dataProvider, subjectUri, resource, source, refresh, onClose]\n );\n\n const create = useCallback(\n async values => {\n const { data } = await dataProvider.create(reference, {\n data: {\n [dataModel.fieldsMapping.title]: values.title\n }\n });\n\n await appendLink(data.id);\n\n notify(`La resource \"${values.title}\" a été créée`, { type: 'success' });\n },\n [dataProvider, dataModel, appendLink, reference, notify]\n );\n\n return (\n \n );\n};\n\nexport default QuickAppendDialog;\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n useDataProvider,\n useRecordContext,\n useCreatePath,\n useGetResourceLabel,\n useResourceDefinition,\n useTranslate\n} from 'react-admin';\nimport debounce from 'lodash.debounce';\nimport {\n Box,\n IconButton,\n List,\n ListItem,\n ListItemAvatar,\n ListItemText,\n ListItemSecondaryAction,\n Avatar,\n CircularProgress\n} from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddIcon from '@mui/icons-material/Add';\nimport VisibilityIcon from '@mui/icons-material/Visibility';\nimport ErrorIcon from '@mui/icons-material/Error';\nimport { useDataServers, useDataModel } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n backgroundColor: theme.palette.background.paper,\n paddingTop: 0,\n paddingBottom: 0\n },\n primaryText: {\n width: '30%'\n },\n secondaryText: {\n fontStyle: 'italic',\n color: 'grey'\n }\n}));\n\nconst getServerName = (resourceUri, dataServers) => {\n const server = dataServers && Object.values(dataServers).find(server => resourceUri.startsWith(server.baseUrl));\n return server ? server.name : 'Inconnu';\n};\n\nconst ResultsList = ({ keyword, source, reference, appendLink, switchToCreate }) => {\n const classes = useStyles();\n const [loading, setLoading] = useState(false);\n const [loaded, setLoaded] = useState(false);\n const [results, setResults] = useState([]);\n const translate = useTranslate();\n const dataProvider = useDataProvider();\n const dataServers = useDataServers();\n const record = useRecordContext();\n const createPath = useCreatePath();\n\n const referenceDefinition = useResourceDefinition({ resource: reference });\n const getResourceLabel = useGetResourceLabel();\n const dataModel = useDataModel(reference);\n\n if (dataModel && Object.keys(dataModel).length > 0 && !dataModel?.fieldsMapping?.title) {\n throw new Error(`No fieldsMapping.title config found for ${reference} dataModel`);\n }\n\n const search = useMemo(\n () =>\n debounce(keyword => {\n dataProvider\n .getList(reference, {\n pagination: { page: 1, perPage: 100 },\n sort: { field: dataModel?.fieldsMapping?.title, order: 'ASC' },\n filter: { q: keyword, _predicates: [dataModel.fieldsMapping.title], _servers: '@all' }\n })\n .then(({ data }) => {\n const existingLinks = record[source]\n ? Array.isArray(record[source])\n ? record[source]\n : [record[source]]\n : [];\n const newLinks = data.filter(record => !existingLinks.includes(record.id));\n setResults(newLinks);\n setLoaded(true);\n setLoading(false);\n })\n .catch(e => {\n setLoading(false);\n });\n }, 700),\n [dataProvider, dataModel, record, source, reference, setResults, setLoading, setLoaded]\n );\n\n useEffect(() => {\n if (!keyword) {\n return undefined;\n }\n setLoading(true);\n setLoaded(false);\n search(keyword);\n\n return () => search.cancel();\n }, [keyword, search, setLoading]);\n\n if (!keyword) return null;\n\n return (\n \n {loaded &&\n results.map(resource => (\n appendLink(resource.id)}>\n \n {React.createElement(referenceDefinition.icon)}\n \n \n \n \n \n \n \n \n \n \n \n ))}\n {loaded && results.length === 0 && (\n \n \n \n \n \n \n \n \n )}\n {loaded && referenceDefinition.hasCreate && (\n \n \n \n \n \n \n \n \n )}\n {loading && (\n \n \n \n )}\n
\n );\n};\n\nexport default ResultsList;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { Chip, Avatar } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport FacebookIcon from '@mui/icons-material/Facebook';\nimport GitHubIcon from '@mui/icons-material/GitHub';\nimport TwitterIcon from '@mui/icons-material/Twitter';\nimport InstagramIcon from '@mui/icons-material/Instagram';\nimport YouTubeIcon from '@mui/icons-material/YouTube';\nimport { FiGitlab } from 'react-icons/fi';\n\nconst defaultdomainMapping = {\n 'github.com': {\n label: 'GitHub',\n icon: ,\n color: 'black',\n contrastText: 'white'\n },\n 'gitlab.com': {\n label: 'GitLab',\n icon: ,\n color: 'orange',\n contrastText: 'black'\n },\n 'opencollective.com': {\n label: 'Open Collective',\n icon: ,\n color: 'white',\n contrastText: '#297EFF'\n },\n 'facebook.com': {\n label: 'Facebook',\n icon: ,\n color: '#4267B2',\n contrastText: 'white'\n },\n 'twitter.com': {\n label: 'Twitter',\n icon: ,\n color: '#00ACEE',\n contrastText: 'white'\n },\n 'instagram.com': {\n label: 'Instagram',\n icon: ,\n color: '#8a3ab9',\n contrastText: 'white'\n },\n 'youtube.com': {\n label: 'YouTube',\n icon: ,\n color: '#FF0000',\n contrastText: 'white'\n }\n};\n\nconst useStyles = makeStyles(() => ({\n link: {\n textDecoration: 'unset',\n '& :hover': {\n cursor: 'pointer'\n }\n },\n chip: {\n paddingLeft: 5,\n paddingRight: 5,\n marginRight: 5,\n marginBottom: 5\n },\n label: {\n marginTop: -1\n }\n}));\n\nconst MultiUrlField = ({ source, domainMapping }) => {\n const newDomainMapping = { ...defaultdomainMapping, ...domainMapping };\n const record = useRecordContext();\n const classes = useStyles();\n const urlArray = record[source] ? (Array.isArray(record[source]) ? record[source] : [record[source]]) : [];\n return urlArray.map((url, index) => {\n if (!url.startsWith('http')) url = `https://${url}`;\n const parsedUrl = new URL(url);\n if (!parsedUrl) return null;\n const chip = newDomainMapping[parsedUrl.hostname] || {\n label: 'Site web',\n icon: ,\n color: '#ea',\n contrastText: 'black'\n };\n return (\n \n \n \n );\n });\n};\n\nexport default MultiUrlField;\n","import * as React from 'react';\nimport { cloneElement, Children } from 'react';\nimport { useCreatePath, useListContext, Link, RecordContextProvider } from 'react-admin';\nimport { LinearProgress } from '@mui/material';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst SeparatedListField = props => {\n let { children, link = 'edit', linkType, separator = ',\\u00A0' } = props;\n const { data, isLoading, resource } = useListContext(props);\n const createPath = useCreatePath();\n\n if (linkType !== undefined) {\n console.warn(\"The 'linkType' prop is deprecated and should be named to 'link' in \");\n link = linkType;\n }\n\n if (isLoading) return ;\n\n return (\n <>\n {data.map((record, i) => {\n if (!record.id) return null;\n const resourceLinkPath =\n link !== false &&\n (typeof link === 'function' ? link(record.id) : createPath({ resource, id: record.id, type: link }));\n if (resourceLinkPath) {\n return (\n \n \n {cloneElement(Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n {i < data.length - 1 && separator}\n \n );\n }\n\n return (\n \n {children}\n {i < data.length - 1 && separator}\n \n );\n })}\n >\n );\n};\n\nexport default SeparatedListField;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/geo-components/dist/index.cjs.js b/src/frontend/packages/geo-components/dist/index.cjs.js
index d36e793e7..908452083 100644
--- a/src/frontend/packages/geo-components/dist/index.cjs.js
+++ b/src/frontend/packages/geo-components/dist/index.cjs.js
@@ -18,9 +18,11 @@ var $02DsL$reactleafletcore = require("@react-leaflet/core");
require("leaflet.markercluster");
var $02DsL$muiiconsmaterialClear = require("@mui/icons-material/Clear");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
diff --git a/src/frontend/packages/geo-components/dist/index.cjs.js.map b/src/frontend/packages/geo-components/dist/index.cjs.js.map
index 9ea0a655b..533b0db67 100644
--- a/src/frontend/packages/geo-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/geo-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/geo-components/src/index.js","packages/geo-components/src/extractContext.js","packages/geo-components/src/LocationInput.js","packages/geo-components/src/MapList/MapList.js","packages/geo-components/src/MapList/MarkerClusterGroup.js","packages/geo-components/src/MapList/DefaultPopupContent.js","packages/geo-components/src/MapList/QueryStringUpdater.js","packages/geo-components/src/MapList/MobileDrawer.js","packages/geo-components/src/MapField/MapField.js","packages/geo-components/src/MapField/ChangeView.js"],"sourcesContent":["export { default as extractContext } from './extractContext';\nexport { default as LocationInput } from './LocationInput';\nexport { default as MapList } from './MapList/MapList';\nexport { default as MapField } from './MapField/MapField';\n","const extractContext = (context, key) => {\n const property = context.find(property => property.id.startsWith(`${key}.`));\n if (property) return property.text;\n};\n\nexport default extractContext;\n","import React, { useState, useMemo, useEffect } from 'react';\nimport {\n FieldTitle,\n InputHelperText,\n useInput,\n useTranslate,\n useLocale,\n useRecordContext,\n useResourceContext,\n useTheme\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LocationOnIcon from '@mui/icons-material/LocationOn';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\nimport { styled } from '@mui/system';\n\nconst StyledLocationOnIcon = styled(LocationOnIcon)(({ theme }) => ({\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (option.place_name) {\n return option.place_name;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst LocationInput = ({ mapboxConfig, source, label, parse, optionText, helperText, ...rest }) => {\n if (!mapboxConfig) {\n throw new Error('@semapps/geo-components : No mapbox configuration');\n }\n if (!mapboxConfig.access_token) {\n throw new Error('@semapps/geo-components : No access token in mapbox configuration');\n }\n\n const record = useRecordContext();\n const resource = useResourceContext();\n const locale = useLocale();\n const translate = useTranslate();\n\n const [keyword, setKeyword] = useState(''); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur /* , onFocus */ },\n isRequired,\n fieldState: { error, /* submitError, */ isTouched }\n } = useInput({ resource, source, ...rest });\n\n const fetchMapbox = useMemo(\n () =>\n throttle((keyword, callback) => {\n const fetchUrl = new URL(`https://api.mapbox.com/geocoding/v5/mapbox.places/${keyword}.json`);\n\n // Use locale as default language\n if (!mapboxConfig.language) mapboxConfig.language = locale;\n\n // All options available at https://docs.mapbox.com/api/search/geocoding/#forward-geocoding\n Object.entries(mapboxConfig).forEach(([key, value]) => {\n if (Array.isArray(value)) {\n value = value.join(',');\n } else if (typeof value === 'boolean') {\n value = value ? 'true' : 'false';\n }\n fetchUrl.searchParams.set(key, value);\n });\n\n fetch(fetchUrl.toString())\n .then(res => res.json())\n .then(json => callback(json));\n }, 200),\n [mapboxConfig, locale]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty or if it is the same as the current value\n if (!keyword || keyword === selectOptionText(value, optionText)) {\n return undefined;\n }\n fetchMapbox(keyword, results => setOptions(results.features));\n }, [value, keyword, fetchMapbox]);\n\n return (\n x}\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n } /* ,\n onFocus: e => {\n onFocus(e);\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n } */\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!((isTouched && error) /* || submitError */)}\n helperText={\n \n }\n {...rest}\n />\n );\n }}\n renderOption={(props, option, state) => {\n const matches = highlightMatch(option.text, keyword);\n const parts = highlightParse(option.text, matches);\n\n return (\n \n \n \n \n \n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.place_name}\n \n \n \n \n );\n }}\n {...rest}\n />\n );\n};\n\nLocationInput.defaultProps = {\n variant: 'outlined',\n size: 'small'\n};\n\nexport default LocationInput;\n","import React, { useState } from 'react';\nimport { useListContext, RecordContextProvider } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { useMediaQuery, Box } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport 'leaflet-defaulticon-compatibility';\nimport { MapContainer, TileLayer, Marker, Popup, Polyline } from 'react-leaflet';\nimport MarkerClusterGroup from './MarkerClusterGroup';\nimport DefaultPopupContent from './DefaultPopupContent';\nimport QueryStringUpdater from './QueryStringUpdater';\nimport MobileDrawer from './MobileDrawer';\n\nconst useStyles = makeStyles(() => ({\n isLoading: {\n zIndex: 1000,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n }\n}));\n\nconst MapList = ({\n latitude,\n longitude,\n label,\n description,\n popupContent,\n height,\n center,\n zoom,\n groupClusters,\n boundToMarkers,\n connectMarkers,\n ...otherProps\n}) => {\n const { data, isLoading } = useListContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n const [drawerRecord, setDrawerRecord] = useState(null);\n const classes = useStyles();\n\n // Get the zoom and center from query string, if available\n const location = useLocation();\n const query = new URLSearchParams(location.search);\n center = query.has('lat') && query.has('lng') ? [query.get('lat'), query.get('lng')] : center;\n zoom = query.has('zoom') ? query.get('zoom') : zoom;\n\n let previousRecord;\n\n const records = isLoading\n ? []\n : data\n .map(record => ({\n ...record,\n latitude: latitude && latitude(record),\n longitude: longitude && longitude(record),\n label: label && label(record),\n description: description && description(record)\n }))\n .filter(record => record.latitude && record.longitude);\n\n const bounds =\n boundToMarkers && records.length > 0 ? records.map(record => [record.latitude, record.longitude]) : undefined;\n\n // Do not display anything if the bounds are not ready, otherwise the MapContainer will not be initialized correctly\n if (boundToMarkers && !bounds) return null;\n\n const markers = records.map((record, i) => {\n const marker = (\n \n setDrawerRecord(record)\n }\n : undefined\n }\n >\n {!xs && (\n \n {React.createElement(popupContent)}\n \n )}\n \n {connectMarkers && previousRecord && (\n \n )}\n \n );\n\n // Save record so that we can trace lines\n previousRecord = record;\n\n return marker;\n });\n\n return (\n \n \n {isLoading && (\n \n \n \n )}\n {groupClusters ? {markers} : markers}\n \n \n setDrawerRecord(null)} />\n \n \n );\n};\n\nMapList.defaultProps = {\n height: 700,\n center: [47, 2.213749],\n zoom: 6,\n groupClusters: true,\n connectMarkers: false,\n scrollWheelZoom: false,\n popupContent: DefaultPopupContent\n};\n\nexport default MapList;\n","import L from 'leaflet';\nimport { createPathComponent } from '@react-leaflet/core';\nimport 'leaflet.markercluster';\n\n// Taken from https://github.com/changey/react-leaflet-markercluster/blob/60992857087c181ada1e8e6659a6666a13c1f868/src/react-leaflet-markercluster.js\nfunction createMarkerCluster({ children: _c, ...props }, context) {\n const clusterProps = {};\n const clusterEvents = {};\n // Splitting props and events to different objects\n Object.entries(props).forEach(([propName, prop]) =>\n propName.startsWith('on') ? (clusterEvents[propName] = prop) : (clusterProps[propName] = prop)\n );\n\n const instance = new L.MarkerClusterGroup(clusterProps);\n\n // Initializing event listeners\n Object.entries(clusterEvents).forEach(([eventAsProp, callback]) => {\n const clusterEvent = `cluster${eventAsProp.substring(2).toLowerCase()}`;\n instance.on(clusterEvent, callback);\n });\n return {\n instance,\n context: {\n ...context,\n layerContainer: instance\n }\n };\n}\n\nconst MarkerClusterGroup = createPathComponent(createMarkerCluster);\n\nexport default MarkerClusterGroup;\n","import React from 'react';\nimport { ShowButton, EditButton, useResourceDefinition, useRecordContext } from 'react-admin';\nimport { Typography } from '@mui/material';\n\nconst DefaultPopupContent = () => {\n const record = useRecordContext();\n const resourceDefinition = useResourceDefinition({});\n if (!record) return null;\n return (\n <>\n {record.label && {record.label}}\n {record.description && (\n \n {record.description.length > 150 ? `${record.description.substring(0, 150)}...` : record.description}\n \n )}\n {resourceDefinition.hasShow && }\n {resourceDefinition.hasEdit && }\n >\n );\n};\n\nexport default DefaultPopupContent;\n","import { useMapEvents } from 'react-leaflet';\nimport { useSearchParams } from 'react-router-dom';\n\n// Keep the zoom and center in query string, so that when we navigate back to the page, it stays focused on the same area\nconst QueryStringUpdater = () => {\n const [searchParams, setSearchParams] = useSearchParams();\n\n useMapEvents({\n moveend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n lat: test.target.getCenter().lat,\n lng: test.target.getCenter().lng,\n zoom: test.target.getZoom()\n }));\n },\n zoomend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n zoom: test.target.getZoom()\n }));\n }\n });\n\n return null;\n};\n\nexport default QueryStringUpdater;\n","import React, { useEffect } from 'react';\nimport { useMap } from 'react-leaflet';\nimport { useRecordContext } from 'react-admin';\nimport { Drawer, Box, IconButton } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ClearIcon from '@mui/icons-material/Clear';\n\nconst useStyles = makeStyles(() => ({\n closeButton: {\n position: 'absolute',\n zIndex: 1400,\n top: 0,\n right: 0\n }\n}));\n\nconst MobileDrawer = ({ popupContent, onClose }) => {\n const classes = useStyles();\n const record = useRecordContext();\n const map = useMap();\n useEffect(() => {\n if (record) {\n map.setView([record.latitude, record.longitude]);\n }\n }, [record, map]);\n\n return (\n \n \n \n \n \n {React.createElement(popupContent)}\n \n \n );\n};\n\nexport default MobileDrawer;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { MapContainer, TileLayer, Marker } from 'react-leaflet';\nimport { Box, Typography } from '@mui/material';\nimport ChangeView from './ChangeView';\n\nconst MapField = ({ latitude, longitude, address, height, typographyProps, ...rest }) => {\n const record = useRecordContext();\n const position = [latitude(record), longitude(record)];\n\n // Do not display the component if it has no latitude or longitude\n\n if (!position[0] || !position[1]) return null;\n\n return (\n \n {address && (\n \n {address(record)}\n \n )}\n \n \n \n \n \n \n );\n};\n\nMapField.defaultProps = {\n height: 400,\n zoom: 11\n};\n\nexport default MapField;\n","import React from 'react';\nimport { useMap } from 'react-leaflet';\n\nconst ChangeView = ({ center, zoom }) => {\n const map = useMap();\n map.setView(center, zoom);\n return null;\n};\n\nexport default ChangeView;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/geo-components/src/index.js","packages/geo-components/src/extractContext.js","packages/geo-components/src/LocationInput.js","packages/geo-components/src/MapList/MapList.js","packages/geo-components/src/MapList/MarkerClusterGroup.js","packages/geo-components/src/MapList/DefaultPopupContent.js","packages/geo-components/src/MapList/QueryStringUpdater.js","packages/geo-components/src/MapList/MobileDrawer.js","packages/geo-components/src/MapField/MapField.js","packages/geo-components/src/MapField/ChangeView.js"],"sourcesContent":["export { default as extractContext } from './extractContext';\nexport { default as LocationInput } from './LocationInput';\nexport { default as MapList } from './MapList/MapList';\nexport { default as MapField } from './MapField/MapField';\n","const extractContext = (context, key) => {\n const property = context.find(property => property.id.startsWith(`${key}.`));\n if (property) return property.text;\n};\n\nexport default extractContext;\n","import React, { useState, useMemo, useEffect } from 'react';\nimport {\n FieldTitle,\n InputHelperText,\n useInput,\n useTranslate,\n useLocale,\n useRecordContext,\n useResourceContext,\n useTheme\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LocationOnIcon from '@mui/icons-material/LocationOn';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\nimport { styled } from '@mui/system';\n\nconst StyledLocationOnIcon = styled(LocationOnIcon)(({ theme }) => ({\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (option.place_name) {\n return option.place_name;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst LocationInput = ({ mapboxConfig, source, label, parse, optionText, helperText, ...rest }) => {\n if (!mapboxConfig) {\n throw new Error('@semapps/geo-components : No mapbox configuration');\n }\n if (!mapboxConfig.access_token) {\n throw new Error('@semapps/geo-components : No access token in mapbox configuration');\n }\n\n const record = useRecordContext();\n const resource = useResourceContext();\n const locale = useLocale();\n const translate = useTranslate();\n\n const [keyword, setKeyword] = useState(''); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur /* , onFocus */ },\n isRequired,\n fieldState: { error, /* submitError, */ isTouched }\n } = useInput({ resource, source, ...rest });\n\n const fetchMapbox = useMemo(\n () =>\n throttle((keyword, callback) => {\n const fetchUrl = new URL(`https://api.mapbox.com/geocoding/v5/mapbox.places/${keyword}.json`);\n\n // Use locale as default language\n if (!mapboxConfig.language) mapboxConfig.language = locale;\n\n // All options available at https://docs.mapbox.com/api/search/geocoding/#forward-geocoding\n Object.entries(mapboxConfig).forEach(([key, value]) => {\n if (Array.isArray(value)) {\n value = value.join(',');\n } else if (typeof value === 'boolean') {\n value = value ? 'true' : 'false';\n }\n fetchUrl.searchParams.set(key, value);\n });\n\n fetch(fetchUrl.toString())\n .then(res => res.json())\n .then(json => callback(json));\n }, 200),\n [mapboxConfig, locale]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty or if it is the same as the current value\n if (!keyword || keyword === selectOptionText(value, optionText)) {\n return undefined;\n }\n fetchMapbox(keyword, results => setOptions(results.features));\n }, [value, keyword, fetchMapbox]);\n\n return (\n x}\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n } /* ,\n onFocus: e => {\n onFocus(e);\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n } */\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!((isTouched && error) /* || submitError */)}\n helperText={\n \n }\n {...rest}\n />\n );\n }}\n renderOption={(props, option, state) => {\n const matches = highlightMatch(option.text, keyword);\n const parts = highlightParse(option.text, matches);\n\n return (\n \n \n \n \n \n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.place_name}\n \n \n \n \n );\n }}\n {...rest}\n />\n );\n};\n\nLocationInput.defaultProps = {\n variant: 'outlined',\n size: 'small'\n};\n\nexport default LocationInput;\n","import React, { useState } from 'react';\nimport { useListContext, RecordContextProvider } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { useMediaQuery, Box } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport 'leaflet-defaulticon-compatibility';\nimport { MapContainer, TileLayer, Marker, Popup, Polyline } from 'react-leaflet';\nimport MarkerClusterGroup from './MarkerClusterGroup';\nimport DefaultPopupContent from './DefaultPopupContent';\nimport QueryStringUpdater from './QueryStringUpdater';\nimport MobileDrawer from './MobileDrawer';\n\nconst useStyles = makeStyles(() => ({\n isLoading: {\n zIndex: 1000,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n }\n}));\n\nconst MapList = ({\n latitude,\n longitude,\n label,\n description,\n popupContent,\n height,\n center,\n zoom,\n groupClusters,\n boundToMarkers,\n connectMarkers,\n ...otherProps\n}) => {\n const { data, isLoading } = useListContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n const [drawerRecord, setDrawerRecord] = useState(null);\n const classes = useStyles();\n\n // Get the zoom and center from query string, if available\n const location = useLocation();\n const query = new URLSearchParams(location.search);\n center = query.has('lat') && query.has('lng') ? [query.get('lat'), query.get('lng')] : center;\n zoom = query.has('zoom') ? query.get('zoom') : zoom;\n\n let previousRecord;\n\n const records = isLoading\n ? []\n : data\n .map(record => ({\n ...record,\n latitude: latitude && latitude(record),\n longitude: longitude && longitude(record),\n label: label && label(record),\n description: description && description(record)\n }))\n .filter(record => record.latitude && record.longitude);\n\n const bounds =\n boundToMarkers && records.length > 0 ? records.map(record => [record.latitude, record.longitude]) : undefined;\n\n // Do not display anything if the bounds are not ready, otherwise the MapContainer will not be initialized correctly\n if (boundToMarkers && !bounds) return null;\n\n const markers = records.map((record, i) => {\n const marker = (\n \n setDrawerRecord(record)\n }\n : undefined\n }\n >\n {!xs && (\n \n {React.createElement(popupContent)}\n \n )}\n \n {connectMarkers && previousRecord && (\n \n )}\n \n );\n\n // Save record so that we can trace lines\n previousRecord = record;\n\n return marker;\n });\n\n return (\n \n \n {isLoading && (\n \n \n \n )}\n {groupClusters ? {markers} : markers}\n \n \n setDrawerRecord(null)} />\n \n \n );\n};\n\nMapList.defaultProps = {\n height: 700,\n center: [47, 2.213749],\n zoom: 6,\n groupClusters: true,\n connectMarkers: false,\n scrollWheelZoom: false,\n popupContent: DefaultPopupContent\n};\n\nexport default MapList;\n","import L from 'leaflet';\nimport { createPathComponent } from '@react-leaflet/core';\nimport 'leaflet.markercluster';\n\n// Taken from https://github.com/changey/react-leaflet-markercluster/blob/60992857087c181ada1e8e6659a6666a13c1f868/src/react-leaflet-markercluster.js\nfunction createMarkerCluster({ children: _c, ...props }, context) {\n const clusterProps = {};\n const clusterEvents = {};\n // Splitting props and events to different objects\n Object.entries(props).forEach(([propName, prop]) =>\n propName.startsWith('on') ? (clusterEvents[propName] = prop) : (clusterProps[propName] = prop)\n );\n\n const instance = new L.MarkerClusterGroup(clusterProps);\n\n // Initializing event listeners\n Object.entries(clusterEvents).forEach(([eventAsProp, callback]) => {\n const clusterEvent = `cluster${eventAsProp.substring(2).toLowerCase()}`;\n instance.on(clusterEvent, callback);\n });\n return {\n instance,\n context: {\n ...context,\n layerContainer: instance\n }\n };\n}\n\nconst MarkerClusterGroup = createPathComponent(createMarkerCluster);\n\nexport default MarkerClusterGroup;\n","import React from 'react';\nimport { ShowButton, EditButton, useResourceDefinition, useRecordContext } from 'react-admin';\nimport { Typography } from '@mui/material';\n\nconst DefaultPopupContent = () => {\n const record = useRecordContext();\n const resourceDefinition = useResourceDefinition({});\n if (!record) return null;\n return (\n <>\n {record.label && {record.label}}\n {record.description && (\n \n {record.description.length > 150 ? `${record.description.substring(0, 150)}...` : record.description}\n \n )}\n {resourceDefinition.hasShow && }\n {resourceDefinition.hasEdit && }\n >\n );\n};\n\nexport default DefaultPopupContent;\n","import { useMapEvents } from 'react-leaflet';\nimport { useSearchParams } from 'react-router-dom';\n\n// Keep the zoom and center in query string, so that when we navigate back to the page, it stays focused on the same area\nconst QueryStringUpdater = () => {\n const [searchParams, setSearchParams] = useSearchParams();\n\n useMapEvents({\n moveend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n lat: test.target.getCenter().lat,\n lng: test.target.getCenter().lng,\n zoom: test.target.getZoom()\n }));\n },\n zoomend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n zoom: test.target.getZoom()\n }));\n }\n });\n\n return null;\n};\n\nexport default QueryStringUpdater;\n","import React, { useEffect } from 'react';\nimport { useMap } from 'react-leaflet';\nimport { useRecordContext } from 'react-admin';\nimport { Drawer, Box, IconButton } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ClearIcon from '@mui/icons-material/Clear';\n\nconst useStyles = makeStyles(() => ({\n closeButton: {\n position: 'absolute',\n zIndex: 1400,\n top: 0,\n right: 0\n }\n}));\n\nconst MobileDrawer = ({ popupContent, onClose }) => {\n const classes = useStyles();\n const record = useRecordContext();\n const map = useMap();\n useEffect(() => {\n if (record) {\n map.setView([record.latitude, record.longitude]);\n }\n }, [record, map]);\n\n return (\n \n \n \n \n \n {React.createElement(popupContent)}\n \n \n );\n};\n\nexport default MobileDrawer;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { MapContainer, TileLayer, Marker } from 'react-leaflet';\nimport { Box, Typography } from '@mui/material';\nimport ChangeView from './ChangeView';\n\nconst MapField = ({ latitude, longitude, address, height, typographyProps, ...rest }) => {\n const record = useRecordContext();\n const position = [latitude(record), longitude(record)];\n\n // Do not display the component if it has no latitude or longitude\n\n if (!position[0] || !position[1]) return null;\n\n return (\n \n {address && (\n \n {address(record)}\n \n )}\n \n \n \n \n \n \n );\n};\n\nMapField.defaultProps = {\n height: 400,\n zoom: 11\n};\n\nexport default MapField;\n","import React from 'react';\nimport { useMap } from 'react-leaflet';\n\nconst ChangeView = ({ center, zoom }) => {\n const map = useMap();\n map.setView(center, zoom);\n return null;\n};\n\nexport default ChangeView;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/geo-components/dist/index.es.js.map b/src/frontend/packages/geo-components/dist/index.es.js.map
index 72eb9014b..ca2af2c72 100644
--- a/src/frontend/packages/geo-components/dist/index.es.js.map
+++ b/src/frontend/packages/geo-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/geo-components/src/index.js","packages/geo-components/src/extractContext.js","packages/geo-components/src/LocationInput.js","packages/geo-components/src/MapList/MapList.js","packages/geo-components/src/MapList/MarkerClusterGroup.js","packages/geo-components/src/MapList/DefaultPopupContent.js","packages/geo-components/src/MapList/QueryStringUpdater.js","packages/geo-components/src/MapList/MobileDrawer.js","packages/geo-components/src/MapField/MapField.js","packages/geo-components/src/MapField/ChangeView.js"],"sourcesContent":["export { default as extractContext } from './extractContext';\nexport { default as LocationInput } from './LocationInput';\nexport { default as MapList } from './MapList/MapList';\nexport { default as MapField } from './MapField/MapField';\n","const extractContext = (context, key) => {\n const property = context.find(property => property.id.startsWith(`${key}.`));\n if (property) return property.text;\n};\n\nexport default extractContext;\n","import React, { useState, useMemo, useEffect } from 'react';\nimport {\n FieldTitle,\n InputHelperText,\n useInput,\n useTranslate,\n useLocale,\n useRecordContext,\n useResourceContext,\n useTheme\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LocationOnIcon from '@mui/icons-material/LocationOn';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\nimport { styled } from '@mui/system';\n\nconst StyledLocationOnIcon = styled(LocationOnIcon)(({ theme }) => ({\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (option.place_name) {\n return option.place_name;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst LocationInput = ({ mapboxConfig, source, label, parse, optionText, helperText, ...rest }) => {\n if (!mapboxConfig) {\n throw new Error('@semapps/geo-components : No mapbox configuration');\n }\n if (!mapboxConfig.access_token) {\n throw new Error('@semapps/geo-components : No access token in mapbox configuration');\n }\n\n const record = useRecordContext();\n const resource = useResourceContext();\n const locale = useLocale();\n const translate = useTranslate();\n\n const [keyword, setKeyword] = useState(''); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur /* , onFocus */ },\n isRequired,\n fieldState: { error, /* submitError, */ isTouched }\n } = useInput({ resource, source, ...rest });\n\n const fetchMapbox = useMemo(\n () =>\n throttle((keyword, callback) => {\n const fetchUrl = new URL(`https://api.mapbox.com/geocoding/v5/mapbox.places/${keyword}.json`);\n\n // Use locale as default language\n if (!mapboxConfig.language) mapboxConfig.language = locale;\n\n // All options available at https://docs.mapbox.com/api/search/geocoding/#forward-geocoding\n Object.entries(mapboxConfig).forEach(([key, value]) => {\n if (Array.isArray(value)) {\n value = value.join(',');\n } else if (typeof value === 'boolean') {\n value = value ? 'true' : 'false';\n }\n fetchUrl.searchParams.set(key, value);\n });\n\n fetch(fetchUrl.toString())\n .then(res => res.json())\n .then(json => callback(json));\n }, 200),\n [mapboxConfig, locale]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty or if it is the same as the current value\n if (!keyword || keyword === selectOptionText(value, optionText)) {\n return undefined;\n }\n fetchMapbox(keyword, results => setOptions(results.features));\n }, [value, keyword, fetchMapbox]);\n\n return (\n x}\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n } /* ,\n onFocus: e => {\n onFocus(e);\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n } */\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!((isTouched && error) /* || submitError */)}\n helperText={\n \n }\n {...rest}\n />\n );\n }}\n renderOption={(props, option, state) => {\n const matches = highlightMatch(option.text, keyword);\n const parts = highlightParse(option.text, matches);\n\n return (\n \n \n \n \n \n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.place_name}\n \n \n \n \n );\n }}\n {...rest}\n />\n );\n};\n\nLocationInput.defaultProps = {\n variant: 'outlined',\n size: 'small'\n};\n\nexport default LocationInput;\n","import React, { useState } from 'react';\nimport { useListContext, RecordContextProvider } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { useMediaQuery, Box } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport 'leaflet-defaulticon-compatibility';\nimport { MapContainer, TileLayer, Marker, Popup, Polyline } from 'react-leaflet';\nimport MarkerClusterGroup from './MarkerClusterGroup';\nimport DefaultPopupContent from './DefaultPopupContent';\nimport QueryStringUpdater from './QueryStringUpdater';\nimport MobileDrawer from './MobileDrawer';\n\nconst useStyles = makeStyles(() => ({\n isLoading: {\n zIndex: 1000,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n }\n}));\n\nconst MapList = ({\n latitude,\n longitude,\n label,\n description,\n popupContent,\n height,\n center,\n zoom,\n groupClusters,\n boundToMarkers,\n connectMarkers,\n ...otherProps\n}) => {\n const { data, isLoading } = useListContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n const [drawerRecord, setDrawerRecord] = useState(null);\n const classes = useStyles();\n\n // Get the zoom and center from query string, if available\n const location = useLocation();\n const query = new URLSearchParams(location.search);\n center = query.has('lat') && query.has('lng') ? [query.get('lat'), query.get('lng')] : center;\n zoom = query.has('zoom') ? query.get('zoom') : zoom;\n\n let previousRecord;\n\n const records = isLoading\n ? []\n : data\n .map(record => ({\n ...record,\n latitude: latitude && latitude(record),\n longitude: longitude && longitude(record),\n label: label && label(record),\n description: description && description(record)\n }))\n .filter(record => record.latitude && record.longitude);\n\n const bounds =\n boundToMarkers && records.length > 0 ? records.map(record => [record.latitude, record.longitude]) : undefined;\n\n // Do not display anything if the bounds are not ready, otherwise the MapContainer will not be initialized correctly\n if (boundToMarkers && !bounds) return null;\n\n const markers = records.map((record, i) => {\n const marker = (\n \n setDrawerRecord(record)\n }\n : undefined\n }\n >\n {!xs && (\n \n {React.createElement(popupContent)}\n \n )}\n \n {connectMarkers && previousRecord && (\n \n )}\n \n );\n\n // Save record so that we can trace lines\n previousRecord = record;\n\n return marker;\n });\n\n return (\n \n \n {isLoading && (\n \n \n \n )}\n {groupClusters ? {markers} : markers}\n \n \n setDrawerRecord(null)} />\n \n \n );\n};\n\nMapList.defaultProps = {\n height: 700,\n center: [47, 2.213749],\n zoom: 6,\n groupClusters: true,\n connectMarkers: false,\n scrollWheelZoom: false,\n popupContent: DefaultPopupContent\n};\n\nexport default MapList;\n","import L from 'leaflet';\nimport { createPathComponent } from '@react-leaflet/core';\nimport 'leaflet.markercluster';\n\n// Taken from https://github.com/changey/react-leaflet-markercluster/blob/60992857087c181ada1e8e6659a6666a13c1f868/src/react-leaflet-markercluster.js\nfunction createMarkerCluster({ children: _c, ...props }, context) {\n const clusterProps = {};\n const clusterEvents = {};\n // Splitting props and events to different objects\n Object.entries(props).forEach(([propName, prop]) =>\n propName.startsWith('on') ? (clusterEvents[propName] = prop) : (clusterProps[propName] = prop)\n );\n\n const instance = new L.MarkerClusterGroup(clusterProps);\n\n // Initializing event listeners\n Object.entries(clusterEvents).forEach(([eventAsProp, callback]) => {\n const clusterEvent = `cluster${eventAsProp.substring(2).toLowerCase()}`;\n instance.on(clusterEvent, callback);\n });\n return {\n instance,\n context: {\n ...context,\n layerContainer: instance\n }\n };\n}\n\nconst MarkerClusterGroup = createPathComponent(createMarkerCluster);\n\nexport default MarkerClusterGroup;\n","import React from 'react';\nimport { ShowButton, EditButton, useResourceDefinition, useRecordContext } from 'react-admin';\nimport { Typography } from '@mui/material';\n\nconst DefaultPopupContent = () => {\n const record = useRecordContext();\n const resourceDefinition = useResourceDefinition({});\n if (!record) return null;\n return (\n <>\n {record.label && {record.label}}\n {record.description && (\n \n {record.description.length > 150 ? `${record.description.substring(0, 150)}...` : record.description}\n \n )}\n {resourceDefinition.hasShow && }\n {resourceDefinition.hasEdit && }\n >\n );\n};\n\nexport default DefaultPopupContent;\n","import { useMapEvents } from 'react-leaflet';\nimport { useSearchParams } from 'react-router-dom';\n\n// Keep the zoom and center in query string, so that when we navigate back to the page, it stays focused on the same area\nconst QueryStringUpdater = () => {\n const [searchParams, setSearchParams] = useSearchParams();\n\n useMapEvents({\n moveend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n lat: test.target.getCenter().lat,\n lng: test.target.getCenter().lng,\n zoom: test.target.getZoom()\n }));\n },\n zoomend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n zoom: test.target.getZoom()\n }));\n }\n });\n\n return null;\n};\n\nexport default QueryStringUpdater;\n","import React, { useEffect } from 'react';\nimport { useMap } from 'react-leaflet';\nimport { useRecordContext } from 'react-admin';\nimport { Drawer, Box, IconButton } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ClearIcon from '@mui/icons-material/Clear';\n\nconst useStyles = makeStyles(() => ({\n closeButton: {\n position: 'absolute',\n zIndex: 1400,\n top: 0,\n right: 0\n }\n}));\n\nconst MobileDrawer = ({ popupContent, onClose }) => {\n const classes = useStyles();\n const record = useRecordContext();\n const map = useMap();\n useEffect(() => {\n if (record) {\n map.setView([record.latitude, record.longitude]);\n }\n }, [record, map]);\n\n return (\n \n \n \n \n \n {React.createElement(popupContent)}\n \n \n );\n};\n\nexport default MobileDrawer;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { MapContainer, TileLayer, Marker } from 'react-leaflet';\nimport { Box, Typography } from '@mui/material';\nimport ChangeView from './ChangeView';\n\nconst MapField = ({ latitude, longitude, address, height, typographyProps, ...rest }) => {\n const record = useRecordContext();\n const position = [latitude(record), longitude(record)];\n\n // Do not display the component if it has no latitude or longitude\n\n if (!position[0] || !position[1]) return null;\n\n return (\n \n {address && (\n \n {address(record)}\n \n )}\n \n \n \n \n \n \n );\n};\n\nMapField.defaultProps = {\n height: 400,\n zoom: 11\n};\n\nexport default MapField;\n","import React from 'react';\nimport { useMap } from 'react-leaflet';\n\nconst ChangeView = ({ center, zoom }) => {\n const map = useMap();\n map.setView(center, zoom);\n return null;\n};\n\nexport default ChangeView;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/geo-components/src/index.js","packages/geo-components/src/extractContext.js","packages/geo-components/src/LocationInput.js","packages/geo-components/src/MapList/MapList.js","packages/geo-components/src/MapList/MarkerClusterGroup.js","packages/geo-components/src/MapList/DefaultPopupContent.js","packages/geo-components/src/MapList/QueryStringUpdater.js","packages/geo-components/src/MapList/MobileDrawer.js","packages/geo-components/src/MapField/MapField.js","packages/geo-components/src/MapField/ChangeView.js"],"sourcesContent":["export { default as extractContext } from './extractContext';\nexport { default as LocationInput } from './LocationInput';\nexport { default as MapList } from './MapList/MapList';\nexport { default as MapField } from './MapField/MapField';\n","const extractContext = (context, key) => {\n const property = context.find(property => property.id.startsWith(`${key}.`));\n if (property) return property.text;\n};\n\nexport default extractContext;\n","import React, { useState, useMemo, useEffect } from 'react';\nimport {\n FieldTitle,\n InputHelperText,\n useInput,\n useTranslate,\n useLocale,\n useRecordContext,\n useResourceContext,\n useTheme\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LocationOnIcon from '@mui/icons-material/LocationOn';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\nimport { styled } from '@mui/system';\n\nconst StyledLocationOnIcon = styled(LocationOnIcon)(({ theme }) => ({\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (option.place_name) {\n return option.place_name;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst LocationInput = ({ mapboxConfig, source, label, parse, optionText, helperText, ...rest }) => {\n if (!mapboxConfig) {\n throw new Error('@semapps/geo-components : No mapbox configuration');\n }\n if (!mapboxConfig.access_token) {\n throw new Error('@semapps/geo-components : No access token in mapbox configuration');\n }\n\n const record = useRecordContext();\n const resource = useResourceContext();\n const locale = useLocale();\n const translate = useTranslate();\n\n const [keyword, setKeyword] = useState(''); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur /* , onFocus */ },\n isRequired,\n fieldState: { error, /* submitError, */ isTouched }\n } = useInput({ resource, source, ...rest });\n\n const fetchMapbox = useMemo(\n () =>\n throttle((keyword, callback) => {\n const fetchUrl = new URL(`https://api.mapbox.com/geocoding/v5/mapbox.places/${keyword}.json`);\n\n // Use locale as default language\n if (!mapboxConfig.language) mapboxConfig.language = locale;\n\n // All options available at https://docs.mapbox.com/api/search/geocoding/#forward-geocoding\n Object.entries(mapboxConfig).forEach(([key, value]) => {\n if (Array.isArray(value)) {\n value = value.join(',');\n } else if (typeof value === 'boolean') {\n value = value ? 'true' : 'false';\n }\n fetchUrl.searchParams.set(key, value);\n });\n\n fetch(fetchUrl.toString())\n .then(res => res.json())\n .then(json => callback(json));\n }, 200),\n [mapboxConfig, locale]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty or if it is the same as the current value\n if (!keyword || keyword === selectOptionText(value, optionText)) {\n return undefined;\n }\n fetchMapbox(keyword, results => setOptions(results.features));\n }, [value, keyword, fetchMapbox]);\n\n return (\n x}\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n } /* ,\n onFocus: e => {\n onFocus(e);\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n } */\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!((isTouched && error) /* || submitError */)}\n helperText={\n \n }\n {...rest}\n />\n );\n }}\n renderOption={(props, option, state) => {\n const matches = highlightMatch(option.text, keyword);\n const parts = highlightParse(option.text, matches);\n\n return (\n \n \n \n \n \n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.place_name}\n \n \n \n \n );\n }}\n {...rest}\n />\n );\n};\n\nLocationInput.defaultProps = {\n variant: 'outlined',\n size: 'small'\n};\n\nexport default LocationInput;\n","import React, { useState } from 'react';\nimport { useListContext, RecordContextProvider } from 'react-admin';\nimport { useLocation } from 'react-router-dom';\nimport { useMediaQuery, Box } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport 'leaflet-defaulticon-compatibility';\nimport { MapContainer, TileLayer, Marker, Popup, Polyline } from 'react-leaflet';\nimport MarkerClusterGroup from './MarkerClusterGroup';\nimport DefaultPopupContent from './DefaultPopupContent';\nimport QueryStringUpdater from './QueryStringUpdater';\nimport MobileDrawer from './MobileDrawer';\n\nconst useStyles = makeStyles(() => ({\n isLoading: {\n zIndex: 1000,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n }\n}));\n\nconst MapList = ({\n latitude,\n longitude,\n label,\n description,\n popupContent,\n height,\n center,\n zoom,\n groupClusters,\n boundToMarkers,\n connectMarkers,\n ...otherProps\n}) => {\n const { data, isLoading } = useListContext();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n const [drawerRecord, setDrawerRecord] = useState(null);\n const classes = useStyles();\n\n // Get the zoom and center from query string, if available\n const location = useLocation();\n const query = new URLSearchParams(location.search);\n center = query.has('lat') && query.has('lng') ? [query.get('lat'), query.get('lng')] : center;\n zoom = query.has('zoom') ? query.get('zoom') : zoom;\n\n let previousRecord;\n\n const records = isLoading\n ? []\n : data\n .map(record => ({\n ...record,\n latitude: latitude && latitude(record),\n longitude: longitude && longitude(record),\n label: label && label(record),\n description: description && description(record)\n }))\n .filter(record => record.latitude && record.longitude);\n\n const bounds =\n boundToMarkers && records.length > 0 ? records.map(record => [record.latitude, record.longitude]) : undefined;\n\n // Do not display anything if the bounds are not ready, otherwise the MapContainer will not be initialized correctly\n if (boundToMarkers && !bounds) return null;\n\n const markers = records.map((record, i) => {\n const marker = (\n \n setDrawerRecord(record)\n }\n : undefined\n }\n >\n {!xs && (\n \n {React.createElement(popupContent)}\n \n )}\n \n {connectMarkers && previousRecord && (\n \n )}\n \n );\n\n // Save record so that we can trace lines\n previousRecord = record;\n\n return marker;\n });\n\n return (\n \n \n {isLoading && (\n \n \n \n )}\n {groupClusters ? {markers} : markers}\n \n \n setDrawerRecord(null)} />\n \n \n );\n};\n\nMapList.defaultProps = {\n height: 700,\n center: [47, 2.213749],\n zoom: 6,\n groupClusters: true,\n connectMarkers: false,\n scrollWheelZoom: false,\n popupContent: DefaultPopupContent\n};\n\nexport default MapList;\n","import L from 'leaflet';\nimport { createPathComponent } from '@react-leaflet/core';\nimport 'leaflet.markercluster';\n\n// Taken from https://github.com/changey/react-leaflet-markercluster/blob/60992857087c181ada1e8e6659a6666a13c1f868/src/react-leaflet-markercluster.js\nfunction createMarkerCluster({ children: _c, ...props }, context) {\n const clusterProps = {};\n const clusterEvents = {};\n // Splitting props and events to different objects\n Object.entries(props).forEach(([propName, prop]) =>\n propName.startsWith('on') ? (clusterEvents[propName] = prop) : (clusterProps[propName] = prop)\n );\n\n const instance = new L.MarkerClusterGroup(clusterProps);\n\n // Initializing event listeners\n Object.entries(clusterEvents).forEach(([eventAsProp, callback]) => {\n const clusterEvent = `cluster${eventAsProp.substring(2).toLowerCase()}`;\n instance.on(clusterEvent, callback);\n });\n return {\n instance,\n context: {\n ...context,\n layerContainer: instance\n }\n };\n}\n\nconst MarkerClusterGroup = createPathComponent(createMarkerCluster);\n\nexport default MarkerClusterGroup;\n","import React from 'react';\nimport { ShowButton, EditButton, useResourceDefinition, useRecordContext } from 'react-admin';\nimport { Typography } from '@mui/material';\n\nconst DefaultPopupContent = () => {\n const record = useRecordContext();\n const resourceDefinition = useResourceDefinition({});\n if (!record) return null;\n return (\n <>\n {record.label && {record.label}}\n {record.description && (\n \n {record.description.length > 150 ? `${record.description.substring(0, 150)}...` : record.description}\n \n )}\n {resourceDefinition.hasShow && }\n {resourceDefinition.hasEdit && }\n >\n );\n};\n\nexport default DefaultPopupContent;\n","import { useMapEvents } from 'react-leaflet';\nimport { useSearchParams } from 'react-router-dom';\n\n// Keep the zoom and center in query string, so that when we navigate back to the page, it stays focused on the same area\nconst QueryStringUpdater = () => {\n const [searchParams, setSearchParams] = useSearchParams();\n\n useMapEvents({\n moveend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n lat: test.target.getCenter().lat,\n lng: test.target.getCenter().lng,\n zoom: test.target.getZoom()\n }));\n },\n zoomend: test => {\n setSearchParams(params => ({\n ...Object.fromEntries(params),\n zoom: test.target.getZoom()\n }));\n }\n });\n\n return null;\n};\n\nexport default QueryStringUpdater;\n","import React, { useEffect } from 'react';\nimport { useMap } from 'react-leaflet';\nimport { useRecordContext } from 'react-admin';\nimport { Drawer, Box, IconButton } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ClearIcon from '@mui/icons-material/Clear';\n\nconst useStyles = makeStyles(() => ({\n closeButton: {\n position: 'absolute',\n zIndex: 1400,\n top: 0,\n right: 0\n }\n}));\n\nconst MobileDrawer = ({ popupContent, onClose }) => {\n const classes = useStyles();\n const record = useRecordContext();\n const map = useMap();\n useEffect(() => {\n if (record) {\n map.setView([record.latitude, record.longitude]);\n }\n }, [record, map]);\n\n return (\n \n \n \n \n \n {React.createElement(popupContent)}\n \n \n );\n};\n\nexport default MobileDrawer;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport { MapContainer, TileLayer, Marker } from 'react-leaflet';\nimport { Box, Typography } from '@mui/material';\nimport ChangeView from './ChangeView';\n\nconst MapField = ({ latitude, longitude, address, height, typographyProps, ...rest }) => {\n const record = useRecordContext();\n const position = [latitude(record), longitude(record)];\n\n // Do not display the component if it has no latitude or longitude\n\n if (!position[0] || !position[1]) return null;\n\n return (\n \n {address && (\n \n {address(record)}\n \n )}\n \n \n \n \n \n \n );\n};\n\nMapField.defaultProps = {\n height: 400,\n zoom: 11\n};\n\nexport default MapField;\n","import React from 'react';\nimport { useMap } from 'react-leaflet';\n\nconst ChangeView = ({ center, zoom }) => {\n const map = useMap();\n map.setView(center, zoom);\n return null;\n};\n\nexport default ChangeView;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/input-components/dist/index.cjs.js b/src/frontend/packages/input-components/dist/index.cjs.js
index fc9e75e67..17b42cd6b 100644
--- a/src/frontend/packages/input-components/dist/index.cjs.js
+++ b/src/frontend/packages/input-components/dist/index.cjs.js
@@ -4,9 +4,11 @@ var $jhbHd$reactadmin = require("react-admin");
var $jhbHd$semappssemanticdataprovider = require("@semapps/semantic-data-provider");
var $jhbHd$reacthookform = require("react-hook-form");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
diff --git a/src/frontend/packages/input-components/dist/index.cjs.js.map b/src/frontend/packages/input-components/dist/index.cjs.js.map
index 0c1feca39..ad9ab5b6f 100644
--- a/src/frontend/packages/input-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/input-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/input-components/src/index.js","packages/input-components/src/ImageInput.js","packages/input-components/src/MultiServerAutocompleteArrayInput.js","packages/input-components/src/OptionRenderer.js","packages/input-components/src/MultiServerAutocompleteInput.js","packages/input-components/src/MultiLinesInput.js","packages/input-components/src/ReferenceArrayInput.js","packages/input-components/src/ReferenceInput.js"],"sourcesContent":["export { default as ImageInput } from './ImageInput';\nexport { default as MultiServerAutocompleteArrayInput } from './MultiServerAutocompleteArrayInput';\nexport { default as MultiServerAutocompleteInput } from './MultiServerAutocompleteInput';\nexport { default as MultiLinesInput } from './MultiLinesInput';\nexport { default as ReferenceArrayInput } from './ReferenceArrayInput';\nexport { default as ReferenceInput } from './ReferenceInput';\n","import React from 'react';\nimport { ImageInput as RaImageInput } from 'react-admin';\n\n// Since we overwrite FileInput default parse, we must transform the file\n// See https://github.com/marmelab/react-admin/blob/2d6a1982981b0f1882e52dd1a974a60eef333e59/packages/ra-ui-materialui/src/input/FileInput.tsx#L57\nconst transformFile = file => {\n const preview = URL.createObjectURL(file);\n return {\n rawFile: file,\n src: preview,\n title: file.name\n };\n};\n\nconst format = v => {\n if (typeof v === 'string') {\n return { src: v };\n }\n if (Array.isArray(v)) {\n return v.map(e => (typeof e === 'string' ? { src: e } : e));\n }\n return v;\n};\n\nconst parse = v => {\n if (v instanceof File) {\n return transformFile(v);\n }\n if (v && v.src && !v.rawFile) {\n return v.src;\n }\n if (Array.isArray(v)) {\n return v.map(e => parse(e));\n }\n return v;\n};\n\nconst ImageInput = props => ;\n\nexport default ImageInput;\n","import React, { useCallback } from 'react';\nimport { AutocompleteArrayInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\nimport OptionRenderer from './OptionRenderer';\n\nconst MultiServerAutocompleteArrayInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n const matchSuggestion = useCallback(\n (filterValue, choice) => choice[optionText].toLowerCase().match(filterValue.toLowerCase()),\n [optionText]\n );\n return (\n }\n inputText={choice => choice[optionText]}\n {...rest}\n />\n );\n};\n\nexport default MultiServerAutocompleteArrayInput;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\n\nconst OptionRenderer = ({ optionText, dataServers }) => {\n const record = useRecordContext();\n const server = dataServers && Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return (\n \n {record[optionText]}\n {server && (\n \n ({server.name})\n \n )}\n \n );\n};\n\nexport default OptionRenderer;\n","import React, { useCallback } from 'react';\nimport { AutocompleteInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\n\nconst MultiServerAutocompleteInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n // We cannot use OptionRenderer like MultiServerAutocompleteArrayInput because there is a bug with AutocompleteInput\n const optionTextWithServerName = useCallback(\n record => {\n if (record && dataServers) {\n const server = Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return record[optionText] + (server ? ` (${server.name})` : '');\n }\n },\n [optionText, dataServers]\n );\n return ;\n};\n\nexport default MultiServerAutocompleteInput;\n","import React from 'react';\nimport { TextInput } from 'react-admin';\n\nconst MultiLinesInput = props => (\n (value ? (Array.isArray(value) ? value.join('\\n') : value) : '')}\n parse={value => value.split(/\\r?\\n/)}\n {...props}\n />\n);\n\nexport default MultiLinesInput;\n","import React, { useEffect } from 'react';\nimport { ReferenceArrayInput as RaReferenceArrayInput } from 'react-admin';\nimport { useController } from 'react-hook-form';\n\nconst ReferenceArrayInput = props => {\n const {\n field: { value, onChange }\n } = useController({ name: props.source });\n\n useEffect(() => {\n if (value && !Array.isArray(value)) {\n onChange([value]);\n }\n }, [value, onChange]);\n\n // Wait for change to be effective before rendering component\n // Otherwise it will be wrongly initialized and it won't work\n if (value && !Array.isArray(value)) return null;\n\n return ;\n};\n\nexport default ReferenceArrayInput;\n","import React from 'react';\nimport { ReferenceInput as RaReferenceInput } from 'react-admin';\n\nconst format = value => {\n // If there is no value, return immediately\n if (!value) return value;\n // If the value is an object with an @id field, return the uri\n return typeof value === 'object' ? value.id || value['@id'] : value;\n};\n\nconst ReferenceInput = ({ children, ...rest }) => {\n const child = React.Children.only(children);\n return {React.cloneElement(child, { format })};\n};\n\nexport default ReferenceInput;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;ACGA,yEAAyE;AACzE,kJAAkJ;AAClJ,MAAM,sCAAgB,CAAA;IACpB,MAAM,UAAU,IAAI,eAAe,CAAC;IACpC,OAAO;QACL,SAAS;QACT,KAAK;QACL,OAAO,KAAK,IAAI;IAClB;AACF;AAEA,MAAM,+BAAS,CAAA;IACb,IAAI,OAAO,MAAM,UACf,OAAO;QAAE,KAAK;IAAE;IAElB,IAAI,MAAM,OAAO,CAAC,IAChB,OAAO,EAAE,GAAG,CAAC,CAAA,IAAM,OAAO,MAAM,WAAW;YAAE,KAAK;QAAE,IAAI;IAE1D,OAAO;AACT;AAEA,MAAM,8BAAQ,CAAA;IACZ,IAAI,aAAa,MACf,OAAO,oCAAc;IAEvB,IAAI,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,EAC1B,OAAO,EAAE,GAAG;IAEd,IAAI,MAAM,OAAO,CAAC,IAChB,OAAO,EAAE,GAAG,CAAC,CAAA,IAAK,4BAAM;IAE1B,OAAO;AACT;AAEA,MAAM,mCAAa,CAAA,sBAAS,gCAAC,CAAA,GAAA,4BAAW;QAAG,GAAG,KAAK;QAAE,QAAQ;QAAQ,OAAO;;IAE5E,2CAAe;;;;;;;;;;AEpCf,MAAM,uCAAiB,CAAC,cAAE,UAAU,eAAE,WAAW,EAAE;IACjD,MAAM,SAAS,CAAA,GAAA,kCAAe;IAC9B,MAAM,SAAS,eAAe,OAAO,MAAM,CAAC,aAAa,IAAI,CAAC,CAAA,SAAU,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,OAAO;IAC3G,qBACE,iCAAC;;YACE,MAAM,CAAC,WAAW;YAClB,wBACC,iCAAC;gBAAG,WAAU;gBAAa,OAAO;oBAAE,OAAO;gBAAO;;oBAAG;oBAC3C,OAAO,IAAI;oBAAC;;;;;AAK9B;IAEA,2CAAe;;;ADbf,MAAM,0DAAoC,CAAC,cAAE,UAAU,EAAE,GAAG,MAAM;IAChE,MAAM,cAAc,CAAA,GAAA,iDAAa;IACjC,MAAM,kBAAkB,CAAA,GAAA,wBAAU,EAChC,CAAC,aAAa,SAAW,MAAM,CAAC,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,WAAW,KACvF;QAAC;KAAW;IAEd,qBACE,gCAAC,CAAA,GAAA,wCAAqB;QACpB,iBAAiB;QACjB,0BAAY,gCAAC,CAAA,GAAA,wCAAa;YAAE,YAAY;YAAY,aAAa;;QACjE,WAAW,CAAA,SAAU,MAAM,CAAC,WAAW;QACtC,GAAG,IAAI;;AAGd;IAEA,2CAAe;;;;;;;AEjBf,MAAM,qDAA+B,CAAC,cAAE,UAAU,EAAE,GAAG,MAAM;IAC3D,MAAM,cAAc,CAAA,GAAA,iDAAa;IACjC,oHAAoH;IACpH,MAAM,2BAA2B,CAAA,GAAA,wBAAU,EACzC,CAAA;QACE,IAAI,UAAU,aAAa;YACzB,MAAM,SAAS,OAAO,MAAM,CAAC,aAAa,IAAI,CAAC,CAAA,SAAU,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,OAAO;YAC5F,OAAO,MAAM,CAAC,WAAW,GAAI,CAAA,SAAS,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,EAAC;QAC/D;IACF,GACA;QAAC;QAAY;KAAY;IAE3B,qBAAO,gCAAC,CAAA,GAAA,mCAAgB;QAAE,YAAY;QAA2B,GAAG,IAAI;;AAC1E;IAEA,2CAAe;;;;;;AChBf,MAAM,wCAAkB,CAAA,sBACtB,gCAAC,CAAA,GAAA,2BAAQ;QACP,SAAS;QACT,SAAS;QACT,QAAQ,CAAA,QAAU,QAAS,MAAM,OAAO,CAAC,SAAS,MAAM,IAAI,CAAC,QAAQ,QAAS;QAC9E,OAAO,CAAA,QAAS,MAAM,KAAK,CAAC;QAC3B,GAAG,KAAK;;IAIb,2CAAe;;;;;;;ACTf,MAAM,4CAAsB,CAAA;IAC1B,MAAM,EACJ,OAAO,SAAE,KAAK,YAAE,QAAQ,EAAE,EAC3B,GAAG,CAAA,GAAA,kCAAY,EAAE;QAAE,MAAM,MAAM,MAAM;IAAC;IAEvC,CAAA,GAAA,sBAAQ,EAAE;QACR,IAAI,SAAS,CAAC,MAAM,OAAO,CAAC,QAC1B,SAAS;YAAC;SAAM;IAEpB,GAAG;QAAC;QAAO;KAAS;IAEpB,6DAA6D;IAC7D,6DAA6D;IAC7D,IAAI,SAAS,CAAC,MAAM,OAAO,CAAC,QAAQ,OAAO;IAE3C,qBAAO,gCAAC,CAAA,GAAA,qCAAoB;QAAG,GAAG,KAAK;;AACzC;IAEA,2CAAe;;;;;;ACnBf,MAAM,+BAAS,CAAA;IACb,2CAA2C;IAC3C,IAAI,CAAC,OAAO,OAAO;IACnB,8DAA8D;IAC9D,OAAO,OAAO,UAAU,WAAW,MAAM,EAAE,IAAI,KAAK,CAAC,MAAM,GAAG;AAChE;AAEA,MAAM,uCAAiB,CAAC,YAAE,QAAQ,EAAE,GAAG,MAAM;IAC3C,MAAM,QAAQ,CAAA,GAAA,sCAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IAClC,qBAAO,gCAAC,CAAA,GAAA,gCAAe;QAAG,GAAG,IAAI;kBAAG,cAAA,CAAA,GAAA,sCAAI,EAAE,YAAY,CAAC,OAAO;oBAAE;QAAO;;AACzE;IAEA,2CAAe;;","sources":["packages/input-components/src/index.js","packages/input-components/src/ImageInput.js","packages/input-components/src/MultiServerAutocompleteArrayInput.js","packages/input-components/src/OptionRenderer.js","packages/input-components/src/MultiServerAutocompleteInput.js","packages/input-components/src/MultiLinesInput.js","packages/input-components/src/ReferenceArrayInput.js","packages/input-components/src/ReferenceInput.js"],"sourcesContent":["export { default as ImageInput } from './ImageInput';\nexport { default as MultiServerAutocompleteArrayInput } from './MultiServerAutocompleteArrayInput';\nexport { default as MultiServerAutocompleteInput } from './MultiServerAutocompleteInput';\nexport { default as MultiLinesInput } from './MultiLinesInput';\nexport { default as ReferenceArrayInput } from './ReferenceArrayInput';\nexport { default as ReferenceInput } from './ReferenceInput';\n","import React from 'react';\nimport { ImageInput as RaImageInput } from 'react-admin';\n\n// Since we overwrite FileInput default parse, we must transform the file\n// See https://github.com/marmelab/react-admin/blob/2d6a1982981b0f1882e52dd1a974a60eef333e59/packages/ra-ui-materialui/src/input/FileInput.tsx#L57\nconst transformFile = file => {\n const preview = URL.createObjectURL(file);\n return {\n rawFile: file,\n src: preview,\n title: file.name\n };\n};\n\nconst format = v => {\n if (typeof v === 'string') {\n return { src: v };\n }\n if (Array.isArray(v)) {\n return v.map(e => (typeof e === 'string' ? { src: e } : e));\n }\n return v;\n};\n\nconst parse = v => {\n if (v instanceof File) {\n return transformFile(v);\n }\n if (v && v.src && !v.rawFile) {\n return v.src;\n }\n if (Array.isArray(v)) {\n return v.map(e => parse(e));\n }\n return v;\n};\n\nconst ImageInput = props => ;\n\nexport default ImageInput;\n","import React, { useCallback } from 'react';\nimport { AutocompleteArrayInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\nimport OptionRenderer from './OptionRenderer';\n\nconst MultiServerAutocompleteArrayInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n const matchSuggestion = useCallback(\n (filterValue, choice) => choice[optionText].toLowerCase().match(filterValue.toLowerCase()),\n [optionText]\n );\n return (\n }\n inputText={choice => choice[optionText]}\n {...rest}\n />\n );\n};\n\nexport default MultiServerAutocompleteArrayInput;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\n\nconst OptionRenderer = ({ optionText, dataServers }) => {\n const record = useRecordContext();\n const server = dataServers && Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return (\n \n {record[optionText]}\n {server && (\n \n ({server.name})\n \n )}\n \n );\n};\n\nexport default OptionRenderer;\n","import React, { useCallback } from 'react';\nimport { AutocompleteInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\n\nconst MultiServerAutocompleteInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n // We cannot use OptionRenderer like MultiServerAutocompleteArrayInput because there is a bug with AutocompleteInput\n const optionTextWithServerName = useCallback(\n record => {\n if (record && dataServers) {\n const server = Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return record[optionText] + (server ? ` (${server.name})` : '');\n }\n },\n [optionText, dataServers]\n );\n return ;\n};\n\nexport default MultiServerAutocompleteInput;\n","import React from 'react';\nimport { TextInput } from 'react-admin';\n\nconst MultiLinesInput = props => (\n (value ? (Array.isArray(value) ? value.join('\\n') : value) : '')}\n parse={value => value.split(/\\r?\\n/)}\n {...props}\n />\n);\n\nexport default MultiLinesInput;\n","import React, { useEffect } from 'react';\nimport { ReferenceArrayInput as RaReferenceArrayInput } from 'react-admin';\nimport { useController } from 'react-hook-form';\n\nconst ReferenceArrayInput = props => {\n const {\n field: { value, onChange }\n } = useController({ name: props.source });\n\n useEffect(() => {\n if (value && !Array.isArray(value)) {\n onChange([value]);\n }\n }, [value, onChange]);\n\n // Wait for change to be effective before rendering component\n // Otherwise it will be wrongly initialized and it won't work\n if (value && !Array.isArray(value)) return null;\n\n return ;\n};\n\nexport default ReferenceArrayInput;\n","import React from 'react';\nimport { ReferenceInput as RaReferenceInput } from 'react-admin';\n\nconst format = value => {\n // If there is no value, return immediately\n if (!value) return value;\n // If the value is an object with an @id field, return the uri\n return typeof value === 'object' ? value.id || value['@id'] : value;\n};\n\nconst ReferenceInput = ({ children, ...rest }) => {\n const child = React.Children.only(children);\n return {React.cloneElement(child, { format })};\n};\n\nexport default ReferenceInput;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/input-components/dist/index.es.js.map b/src/frontend/packages/input-components/dist/index.es.js.map
index df0ee582f..83e81ac7d 100644
--- a/src/frontend/packages/input-components/dist/index.es.js.map
+++ b/src/frontend/packages/input-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/input-components/src/index.js","packages/input-components/src/ImageInput.js","packages/input-components/src/MultiServerAutocompleteArrayInput.js","packages/input-components/src/OptionRenderer.js","packages/input-components/src/MultiServerAutocompleteInput.js","packages/input-components/src/MultiLinesInput.js","packages/input-components/src/ReferenceArrayInput.js","packages/input-components/src/ReferenceInput.js"],"sourcesContent":["export { default as ImageInput } from './ImageInput';\nexport { default as MultiServerAutocompleteArrayInput } from './MultiServerAutocompleteArrayInput';\nexport { default as MultiServerAutocompleteInput } from './MultiServerAutocompleteInput';\nexport { default as MultiLinesInput } from './MultiLinesInput';\nexport { default as ReferenceArrayInput } from './ReferenceArrayInput';\nexport { default as ReferenceInput } from './ReferenceInput';\n","import React from 'react';\nimport { ImageInput as RaImageInput } from 'react-admin';\n\n// Since we overwrite FileInput default parse, we must transform the file\n// See https://github.com/marmelab/react-admin/blob/2d6a1982981b0f1882e52dd1a974a60eef333e59/packages/ra-ui-materialui/src/input/FileInput.tsx#L57\nconst transformFile = file => {\n const preview = URL.createObjectURL(file);\n return {\n rawFile: file,\n src: preview,\n title: file.name\n };\n};\n\nconst format = v => {\n if (typeof v === 'string') {\n return { src: v };\n }\n if (Array.isArray(v)) {\n return v.map(e => (typeof e === 'string' ? { src: e } : e));\n }\n return v;\n};\n\nconst parse = v => {\n if (v instanceof File) {\n return transformFile(v);\n }\n if (v && v.src && !v.rawFile) {\n return v.src;\n }\n if (Array.isArray(v)) {\n return v.map(e => parse(e));\n }\n return v;\n};\n\nconst ImageInput = props => ;\n\nexport default ImageInput;\n","import React, { useCallback } from 'react';\nimport { AutocompleteArrayInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\nimport OptionRenderer from './OptionRenderer';\n\nconst MultiServerAutocompleteArrayInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n const matchSuggestion = useCallback(\n (filterValue, choice) => choice[optionText].toLowerCase().match(filterValue.toLowerCase()),\n [optionText]\n );\n return (\n }\n inputText={choice => choice[optionText]}\n {...rest}\n />\n );\n};\n\nexport default MultiServerAutocompleteArrayInput;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\n\nconst OptionRenderer = ({ optionText, dataServers }) => {\n const record = useRecordContext();\n const server = dataServers && Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return (\n \n {record[optionText]}\n {server && (\n \n ({server.name})\n \n )}\n \n );\n};\n\nexport default OptionRenderer;\n","import React, { useCallback } from 'react';\nimport { AutocompleteInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\n\nconst MultiServerAutocompleteInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n // We cannot use OptionRenderer like MultiServerAutocompleteArrayInput because there is a bug with AutocompleteInput\n const optionTextWithServerName = useCallback(\n record => {\n if (record && dataServers) {\n const server = Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return record[optionText] + (server ? ` (${server.name})` : '');\n }\n },\n [optionText, dataServers]\n );\n return ;\n};\n\nexport default MultiServerAutocompleteInput;\n","import React from 'react';\nimport { TextInput } from 'react-admin';\n\nconst MultiLinesInput = props => (\n (value ? (Array.isArray(value) ? value.join('\\n') : value) : '')}\n parse={value => value.split(/\\r?\\n/)}\n {...props}\n />\n);\n\nexport default MultiLinesInput;\n","import React, { useEffect } from 'react';\nimport { ReferenceArrayInput as RaReferenceArrayInput } from 'react-admin';\nimport { useController } from 'react-hook-form';\n\nconst ReferenceArrayInput = props => {\n const {\n field: { value, onChange }\n } = useController({ name: props.source });\n\n useEffect(() => {\n if (value && !Array.isArray(value)) {\n onChange([value]);\n }\n }, [value, onChange]);\n\n // Wait for change to be effective before rendering component\n // Otherwise it will be wrongly initialized and it won't work\n if (value && !Array.isArray(value)) return null;\n\n return ;\n};\n\nexport default ReferenceArrayInput;\n","import React from 'react';\nimport { ReferenceInput as RaReferenceInput } from 'react-admin';\n\nconst format = value => {\n // If there is no value, return immediately\n if (!value) return value;\n // If the value is an object with an @id field, return the uri\n return typeof value === 'object' ? value.id || value['@id'] : value;\n};\n\nconst ReferenceInput = ({ children, ...rest }) => {\n const child = React.Children.only(children);\n return {React.cloneElement(child, { format })};\n};\n\nexport default ReferenceInput;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":";;;;;;;;;ACGA,yEAAyE;AACzE,kJAAkJ;AAClJ,MAAM,sCAAgB,CAAA;IACpB,MAAM,UAAU,IAAI,eAAe,CAAC;IACpC,OAAO;QACL,SAAS;QACT,KAAK;QACL,OAAO,KAAK,IAAI;IAClB;AACF;AAEA,MAAM,+BAAS,CAAA;IACb,IAAI,OAAO,MAAM,UACf,OAAO;QAAE,KAAK;IAAE;IAElB,IAAI,MAAM,OAAO,CAAC,IAChB,OAAO,EAAE,GAAG,CAAC,CAAA,IAAM,OAAO,MAAM,WAAW;YAAE,KAAK;QAAE,IAAI;IAE1D,OAAO;AACT;AAEA,MAAM,8BAAQ,CAAA;IACZ,IAAI,aAAa,MACf,OAAO,oCAAc;IAEvB,IAAI,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,EAC1B,OAAO,EAAE,GAAG;IAEd,IAAI,MAAM,OAAO,CAAC,IAChB,OAAO,EAAE,GAAG,CAAC,CAAA,IAAK,4BAAM;IAE1B,OAAO;AACT;AAEA,MAAM,mCAAa,CAAA,sBAAS,gBAAC,CAAA,GAAA,iBAAW;QAAG,GAAG,KAAK;QAAE,QAAQ;QAAQ,OAAO;;IAE5E,2CAAe;;;;;;;;;;AEpCf,MAAM,uCAAiB,CAAC,cAAE,UAAU,eAAE,WAAW,EAAE;IACjD,MAAM,SAAS,CAAA,GAAA,uBAAe;IAC9B,MAAM,SAAS,eAAe,OAAO,MAAM,CAAC,aAAa,IAAI,CAAC,CAAA,SAAU,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,OAAO;IAC3G,qBACE,iBAAC;;YACE,MAAM,CAAC,WAAW;YAClB,wBACC,iBAAC;gBAAG,WAAU;gBAAa,OAAO;oBAAE,OAAO;gBAAO;;oBAAG;oBAC3C,OAAO,IAAI;oBAAC;;;;;AAK9B;IAEA,2CAAe;;;ADbf,MAAM,0DAAoC,CAAC,cAAE,UAAU,EAAE,GAAG,MAAM;IAChE,MAAM,cAAc,CAAA,GAAA,qBAAa;IACjC,MAAM,kBAAkB,CAAA,GAAA,kBAAU,EAChC,CAAC,aAAa,SAAW,MAAM,CAAC,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,WAAW,KACvF;QAAC;KAAW;IAEd,qBACE,gBAAC,CAAA,GAAA,6BAAqB;QACpB,iBAAiB;QACjB,0BAAY,gBAAC,CAAA,GAAA,wCAAa;YAAE,YAAY;YAAY,aAAa;;QACjE,WAAW,CAAA,SAAU,MAAM,CAAC,WAAW;QACtC,GAAG,IAAI;;AAGd;IAEA,2CAAe;;;;;;;AEjBf,MAAM,qDAA+B,CAAC,cAAE,UAAU,EAAE,GAAG,MAAM;IAC3D,MAAM,cAAc,CAAA,GAAA,qBAAa;IACjC,oHAAoH;IACpH,MAAM,2BAA2B,CAAA,GAAA,kBAAU,EACzC,CAAA;QACE,IAAI,UAAU,aAAa;YACzB,MAAM,SAAS,OAAO,MAAM,CAAC,aAAa,IAAI,CAAC,CAAA,SAAU,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,OAAO;YAC5F,OAAO,MAAM,CAAC,WAAW,GAAI,CAAA,SAAS,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,EAAC;QAC/D;IACF,GACA;QAAC;QAAY;KAAY;IAE3B,qBAAO,gBAAC,CAAA,GAAA,wBAAgB;QAAE,YAAY;QAA2B,GAAG,IAAI;;AAC1E;IAEA,2CAAe;;;;;;AChBf,MAAM,wCAAkB,CAAA,sBACtB,gBAAC,CAAA,GAAA,gBAAQ;QACP,SAAS;QACT,SAAS;QACT,QAAQ,CAAA,QAAU,QAAS,MAAM,OAAO,CAAC,SAAS,MAAM,IAAI,CAAC,QAAQ,QAAS;QAC9E,OAAO,CAAA,QAAS,MAAM,KAAK,CAAC;QAC3B,GAAG,KAAK;;IAIb,2CAAe;;;;;;;ACTf,MAAM,4CAAsB,CAAA;IAC1B,MAAM,EACJ,OAAO,SAAE,KAAK,YAAE,QAAQ,EAAE,EAC3B,GAAG,CAAA,GAAA,oBAAY,EAAE;QAAE,MAAM,MAAM,MAAM;IAAC;IAEvC,CAAA,GAAA,gBAAQ,EAAE;QACR,IAAI,SAAS,CAAC,MAAM,OAAO,CAAC,QAC1B,SAAS;YAAC;SAAM;IAEpB,GAAG;QAAC;QAAO;KAAS;IAEpB,6DAA6D;IAC7D,6DAA6D;IAC7D,IAAI,SAAS,CAAC,MAAM,OAAO,CAAC,QAAQ,OAAO;IAE3C,qBAAO,gBAAC,CAAA,GAAA,0BAAoB;QAAG,GAAG,KAAK;;AACzC;IAEA,2CAAe;;;;;;ACnBf,MAAM,+BAAS,CAAA;IACb,2CAA2C;IAC3C,IAAI,CAAC,OAAO,OAAO;IACnB,8DAA8D;IAC9D,OAAO,OAAO,UAAU,WAAW,MAAM,EAAE,IAAI,KAAK,CAAC,MAAM,GAAG;AAChE;AAEA,MAAM,uCAAiB,CAAC,YAAE,QAAQ,EAAE,GAAG,MAAM;IAC3C,MAAM,QAAQ,CAAA,GAAA,YAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IAClC,qBAAO,gBAAC,CAAA,GAAA,qBAAe;QAAG,GAAG,IAAI;kBAAG,cAAA,CAAA,GAAA,YAAI,EAAE,YAAY,CAAC,OAAO;oBAAE;QAAO;;AACzE;IAEA,2CAAe;;","sources":["packages/input-components/src/index.js","packages/input-components/src/ImageInput.js","packages/input-components/src/MultiServerAutocompleteArrayInput.js","packages/input-components/src/OptionRenderer.js","packages/input-components/src/MultiServerAutocompleteInput.js","packages/input-components/src/MultiLinesInput.js","packages/input-components/src/ReferenceArrayInput.js","packages/input-components/src/ReferenceInput.js"],"sourcesContent":["export { default as ImageInput } from './ImageInput';\nexport { default as MultiServerAutocompleteArrayInput } from './MultiServerAutocompleteArrayInput';\nexport { default as MultiServerAutocompleteInput } from './MultiServerAutocompleteInput';\nexport { default as MultiLinesInput } from './MultiLinesInput';\nexport { default as ReferenceArrayInput } from './ReferenceArrayInput';\nexport { default as ReferenceInput } from './ReferenceInput';\n","import React from 'react';\nimport { ImageInput as RaImageInput } from 'react-admin';\n\n// Since we overwrite FileInput default parse, we must transform the file\n// See https://github.com/marmelab/react-admin/blob/2d6a1982981b0f1882e52dd1a974a60eef333e59/packages/ra-ui-materialui/src/input/FileInput.tsx#L57\nconst transformFile = file => {\n const preview = URL.createObjectURL(file);\n return {\n rawFile: file,\n src: preview,\n title: file.name\n };\n};\n\nconst format = v => {\n if (typeof v === 'string') {\n return { src: v };\n }\n if (Array.isArray(v)) {\n return v.map(e => (typeof e === 'string' ? { src: e } : e));\n }\n return v;\n};\n\nconst parse = v => {\n if (v instanceof File) {\n return transformFile(v);\n }\n if (v && v.src && !v.rawFile) {\n return v.src;\n }\n if (Array.isArray(v)) {\n return v.map(e => parse(e));\n }\n return v;\n};\n\nconst ImageInput = props => ;\n\nexport default ImageInput;\n","import React, { useCallback } from 'react';\nimport { AutocompleteArrayInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\nimport OptionRenderer from './OptionRenderer';\n\nconst MultiServerAutocompleteArrayInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n const matchSuggestion = useCallback(\n (filterValue, choice) => choice[optionText].toLowerCase().match(filterValue.toLowerCase()),\n [optionText]\n );\n return (\n }\n inputText={choice => choice[optionText]}\n {...rest}\n />\n );\n};\n\nexport default MultiServerAutocompleteArrayInput;\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\n\nconst OptionRenderer = ({ optionText, dataServers }) => {\n const record = useRecordContext();\n const server = dataServers && Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return (\n \n {record[optionText]}\n {server && (\n \n ({server.name})\n \n )}\n \n );\n};\n\nexport default OptionRenderer;\n","import React, { useCallback } from 'react';\nimport { AutocompleteInput } from 'react-admin';\nimport { useDataServers } from '@semapps/semantic-data-provider';\n\nconst MultiServerAutocompleteInput = ({ optionText, ...rest }) => {\n const dataServers = useDataServers();\n // We cannot use OptionRenderer like MultiServerAutocompleteArrayInput because there is a bug with AutocompleteInput\n const optionTextWithServerName = useCallback(\n record => {\n if (record && dataServers) {\n const server = Object.values(dataServers).find(server => record.id.startsWith(server.baseUrl));\n return record[optionText] + (server ? ` (${server.name})` : '');\n }\n },\n [optionText, dataServers]\n );\n return ;\n};\n\nexport default MultiServerAutocompleteInput;\n","import React from 'react';\nimport { TextInput } from 'react-admin';\n\nconst MultiLinesInput = props => (\n (value ? (Array.isArray(value) ? value.join('\\n') : value) : '')}\n parse={value => value.split(/\\r?\\n/)}\n {...props}\n />\n);\n\nexport default MultiLinesInput;\n","import React, { useEffect } from 'react';\nimport { ReferenceArrayInput as RaReferenceArrayInput } from 'react-admin';\nimport { useController } from 'react-hook-form';\n\nconst ReferenceArrayInput = props => {\n const {\n field: { value, onChange }\n } = useController({ name: props.source });\n\n useEffect(() => {\n if (value && !Array.isArray(value)) {\n onChange([value]);\n }\n }, [value, onChange]);\n\n // Wait for change to be effective before rendering component\n // Otherwise it will be wrongly initialized and it won't work\n if (value && !Array.isArray(value)) return null;\n\n return ;\n};\n\nexport default ReferenceArrayInput;\n","import React from 'react';\nimport { ReferenceInput as RaReferenceInput } from 'react-admin';\n\nconst format = value => {\n // If there is no value, return immediately\n if (!value) return value;\n // If the value is an object with an @id field, return the uri\n return typeof value === 'object' ? value.id || value['@id'] : value;\n};\n\nconst ReferenceInput = ({ children, ...rest }) => {\n const child = React.Children.only(children);\n return {React.cloneElement(child, { format })};\n};\n\nexport default ReferenceInput;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/interop-components/dist/index.cjs.js b/src/frontend/packages/interop-components/dist/index.cjs.js
index c162bcf19..c7d2a2713 100644
--- a/src/frontend/packages/interop-components/dist/index.cjs.js
+++ b/src/frontend/packages/interop-components/dist/index.cjs.js
@@ -15,9 +15,11 @@ var $91PtX$semappsinputcomponents = require("@semapps/input-components");
var $91PtX$urljoin = require("url-join");
var $91PtX$muiiconsmaterialStarBorder = require("@mui/icons-material/StarBorder");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
@@ -541,7 +543,7 @@ const $17a31747492cb646$var$fetchESCO = (apiUrl = "https://ec.europa.eu/esco/api
const json = await response.json();
return json._embedded.results.map((r)=>({
uri: r.uri,
- label: $17a31747492cb646$var$capitalize(r.title.replace("’", "'")),
+ label: $17a31747492cb646$var$capitalize(r.title.replace("\u2019", "'")),
icon: (0, ($parcel$interopDefault($91PtX$muiiconsmaterialStarBorder)))
}));
}
diff --git a/src/frontend/packages/interop-components/dist/index.cjs.js.map b/src/frontend/packages/interop-components/dist/index.cjs.js.map
index f1536652a..ca2280689 100644
--- a/src/frontend/packages/interop-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/interop-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/interop-components/src/index.js","packages/interop-components/src/dialogs/LexiconCreateDialog.js","packages/interop-components/src/inputs/LexiconAutocompleteInput.js","packages/interop-components/src/forms/CreateOrImportForm.js","packages/interop-components/src/forms/ImportForm.js","packages/interop-components/src/hooks/useFork.js","packages/interop-components/src/hooks/useSync.js","packages/interop-components/src/forms/LexiconImportForm.js","packages/interop-components/src/fetch/fetchWikidata.js","packages/interop-components/src/fetch/fetchESCO.js"],"sourcesContent":["// Dialogs\nexport { default as LexiconCreateDialog } from './dialogs/LexiconCreateDialog';\n\n// Forms\nexport { default as CreateOrImportForm } from './forms/CreateOrImportForm';\nexport { default as ImportForm } from './forms/ImportForm';\nexport { default as LexiconImportForm } from './forms/LexiconImportForm';\n\n// Inputs\nexport { default as LexiconAutocompleteInput } from './inputs/LexiconAutocompleteInput';\n\n// Fetch\nexport { default as fetchWikidata } from './fetch/fetchWikidata';\nexport { default as fetchESCO } from './fetch/fetchESCO';\n\n// Hooks\nexport { default as useFork } from './hooks/useFork';\nexport { default as useSync } from './hooks/useSync';\n","import React, { useCallback, useState } from 'react';\nimport { useCreate, useCreateSuggestionContext, useResourceContext } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent } from '@mui/material';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconCreateDialog = ({ fetchLexicon, selectData }) => {\n const { filter, onCancel, onCreate } = useCreateSuggestionContext();\n const resource = useResourceContext();\n const [value, setValue] = useState(filter || '');\n const [create] = useCreate();\n\n const onClose = useCallback(() => {\n setValue('');\n onCancel();\n }, [setValue, onCancel]);\n\n const onSubmit = useCallback(() => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!value.uri) delete value.summary;\n create(\n resource,\n { data: selectData(value) },\n {\n onSuccess: data => {\n console.log('onSuccess', data);\n setValue('');\n onCreate(data);\n }\n }\n );\n }, [create, onCreate, selectData, value, setValue, resource]);\n\n return (\n \n );\n};\n\nexport default LexiconCreateDialog;\n","import React, { useState, useMemo, useEffect, forwardRef } from 'react';\nimport {\n FieldTitle,\n useInput,\n useTranslate,\n useLocale,\n useNotify,\n useResourceContext,\n InputHelperText\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport AddIcon from '@mui/icons-material/Add';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n }\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (typeof option === 'string') {\n return option;\n }\n if (option.label) {\n return option.label;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst capitalizeFirstLetter = string => string && string.charAt(0).toUpperCase() + string.slice(1);\n\nconst LexiconAutocompleteInput = forwardRef(\n ({ fetchLexicon, source, defaultValue, label, parse, optionText, helperText, ...rest }, ref) => {\n const resource = useResourceContext();\n const classes = useStyles();\n const locale = useLocale();\n const translate = useTranslate();\n const notify = useNotify();\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur },\n fieldState: { isTouched, error },\n formState: { submitError },\n isRequired\n } = useInput({ source, defaultValue, ...rest });\n\n const [keyword, setKeyword] = useState(defaultValue); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n const throttledFetchLexicon = useMemo(\n () =>\n throttle((keyword, callback) => {\n fetchLexicon({ keyword, locale })\n .then(data => callback(data))\n .catch(e => notify(e.message, { type: 'error' }));\n }, 200),\n [locale, fetchLexicon, notify]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty\n if (!keyword) {\n return undefined;\n }\n throttledFetchLexicon(keyword, results => setOptions(results));\n }, [value, keyword, throttledFetchLexicon]);\n\n return (\n {\n // Suggest the creation of a new value\n if (keyword) {\n options.push({\n label: capitalizeFirstLetter(keyword),\n summary: `Ajouter \"${capitalizeFirstLetter(keyword)}\" au dictionnaire`,\n icon: AddIcon\n });\n }\n return options;\n }}\n clearOnBlur // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n selectOnFocus // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n handleHomeEndKeys // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n },\n onFocus: e => {\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n }\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!(isTouched && (error || submitError))}\n helperText={}\n />\n );\n }}\n renderOption={(props, option) => {\n const matches = highlightMatch(option.label, keyword);\n const parts = highlightParse(option.label, matches);\n return (\n \n {React.createElement(option.icon || LanguageIcon, { className: classes.icon })}\n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.summary}\n \n \n \n );\n }}\n />\n );\n }\n);\n\nLexiconAutocompleteInput.defaultProps = {\n optionText: 'label'\n};\n\nexport default LexiconAutocompleteInput;\n","import React, { useState } from 'react';\nimport { SimpleForm } from 'react-admin';\nimport { Box, Tabs, Tab, Divider, useMediaQuery } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ImportForm from './ImportForm';\n\nconst useStyles = makeStyles(() => ({\n tab: {\n maxWidth: 'unset',\n padding: '6px 24px'\n }\n}));\n\nconst CreateOrImportForm = ({ stripProperties, ...rest }) => {\n const [tab, setTab] = useState(0);\n const classes = useStyles();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n return (\n <>\n \n setTab(v)} indicatorColor=\"primary\">\n \n \n \n \n \n {tab === 0 && }\n {tab === 1 && }\n >\n );\n};\n\nexport default CreateOrImportForm;\n","import React, { useCallback, useEffect } from 'react';\nimport { SimpleForm, TextInput, RadioButtonGroupInput, useResourceContext } from 'react-admin';\nimport { useFormContext } from 'react-hook-form';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\nimport { ReferenceInput, MultiServerAutocompleteInput } from '@semapps/input-components';\nimport useFork from '../hooks/useFork';\nimport useSync from '../hooks/useSync';\n\nconst ImportFormInputs = () => {\n const resource = useResourceContext();\n const containers = useContainers(resource, '@remote');\n const dataModel = useDataModel(resource);\n\n const { watch, setValue } = useFormContext();\n const watchRemoteUri = watch('remoteUri');\n const watchPlainUri = watch('plainUri');\n\n useEffect(() => {\n if (watchRemoteUri) {\n setValue('plainUri', watchRemoteUri);\n }\n }, [watchRemoteUri]);\n\n useEffect(() => {\n if (watchPlainUri && watchPlainUri !== watchRemoteUri) {\n setValue('remoteUri', null);\n }\n }, [watchRemoteUri, watchPlainUri]);\n\n if (!dataModel) return null;\n\n return (\n <>\n {containers && Object.keys(containers).length > 0 && (\n !!(q && q.length > 1)}\n >\n value.length > 1}\n noOptionsText=\"Tapez au moins deux lettres\"\n emptyText=\"Rechercher...\"\n label=\"Resource distante\"\n fullWidth\n />\n \n )}\n \n \n >\n );\n};\n\nconst ImportForm = ({ stripProperties }) => {\n const resource = useResourceContext();\n const fork = useFork(resource);\n const sync = useSync(resource);\n\n const onSubmit = useCallback(\n async ({ plainUri, method }) => {\n if (method === 'fork') {\n await fork(plainUri, stripProperties);\n } else {\n await sync(plainUri);\n }\n },\n [fork, sync, stripProperties]\n );\n\n return (\n \n \n \n );\n};\n\nexport default ImportForm;\n","import { useCallback } from 'react';\nimport { useDataProvider, useRedirect, useNotify } from 'react-admin';\n\nconst useFork = resourceId => {\n const dataProvider = useDataProvider();\n const redirect = useRedirect();\n const notify = useNotify();\n\n return useCallback(\n async (remoteRecordUri, stripProperties = []) => {\n const { data: remoteData } = await dataProvider.getOne(resourceId, { id: remoteRecordUri });\n\n const strippedData = { ...remoteData };\n strippedData['http://www.w3.org/ns/prov#wasDerivedFrom'] = strippedData.id;\n delete strippedData.id;\n delete strippedData['@context'];\n stripProperties.forEach(prop => {\n delete strippedData[prop];\n });\n\n const { data: localData } = await dataProvider.create(resourceId, { data: strippedData });\n\n redirect(`/${resourceId}/${encodeURIComponent(localData.id)}/show`);\n notify('La ressource a bien été copiée', { type: 'success' });\n },\n [resourceId, dataProvider, redirect, notify]\n );\n};\n\nexport default useFork;\n","import { useCallback } from 'react';\nimport { useNotify, useDataProvider, useRedirect } from 'react-admin';\n\nconst useSync = resourceId => {\n const dataProvider = useDataProvider();\n const notify = useNotify();\n const redirect = useRedirect();\n\n return useCallback(\n async remoteRecordUri => {\n await dataProvider.create(resourceId, { id: remoteRecordUri });\n\n redirect(`/${resourceId}/${encodeURIComponent(remoteRecordUri)}/show`);\n notify('La ressource a bien été importée', { type: 'success' });\n },\n [dataProvider, redirect, notify]\n );\n};\n\nexport default useSync;\n","import React, { useCallback } from 'react';\nimport { required, SimpleForm, useSaveContext } from 'react-admin';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconImportForm = ({ fetchLexicon, selectData }) => {\n const { save } = useSaveContext();\n\n const onSubmit = useCallback(\n async ({ lexicon }) => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!lexicon.uri) delete lexicon.summary;\n\n // If the user doesn't select any option, use the text as the label\n if (typeof lexicon === 'string') {\n lexicon = { label: lexicon };\n }\n\n await save(selectData(lexicon));\n },\n [selectData, save]\n );\n\n return (\n \n \n \n );\n};\n\nexport default LexiconImportForm;\n","import LanguageIcon from '@mui/icons-material/Language';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchWikidata =\n (apiUrl = 'https://www.wikidata.org/w/api.php') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n `${apiUrl}?action=wbsearchentities&format=json&language=${locale}&uselang=${locale}&type=item&limit=10&origin=*&search=${encodeURIComponent(\n keyword\n )}`\n );\n if (response.ok) {\n const json = await response.json();\n return json.search.map(r => ({\n uri: r.concepturi,\n label: capitalize(r.match.text),\n summary: capitalize(r.description),\n icon: LanguageIcon\n }));\n }\n throw new Error('Failed to fetch Wikidata server');\n };\n\nexport default fetchWikidata;\n","import urlJoin from 'url-join';\nimport StarBorderIcon from '@mui/icons-material/StarBorder';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchESCO =\n (apiUrl = 'https://ec.europa.eu/esco/api', type = 'skill') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n urlJoin(\n apiUrl,\n `suggest2?text=${encodeURIComponent(\n keyword\n )}&language=${locale}&type=${type}&isInScheme=&facet=&offset=&limit=&full=&selectedVersion=&viewObsolete=`\n )\n );\n if (response.ok) {\n const json = await response.json();\n return json._embedded.results.map(r => ({\n uri: r.uri,\n label: capitalize(r.title.replace('’', \"'\")),\n icon: StarBorderIcon\n }));\n }\n throw new Error('Failed to fetch ESCO server');\n };\n\nexport default fetchESCO;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/interop-components/src/index.js","packages/interop-components/src/dialogs/LexiconCreateDialog.js","packages/interop-components/src/inputs/LexiconAutocompleteInput.js","packages/interop-components/src/forms/CreateOrImportForm.js","packages/interop-components/src/forms/ImportForm.js","packages/interop-components/src/hooks/useFork.js","packages/interop-components/src/hooks/useSync.js","packages/interop-components/src/forms/LexiconImportForm.js","packages/interop-components/src/fetch/fetchWikidata.js","packages/interop-components/src/fetch/fetchESCO.js"],"sourcesContent":["// Dialogs\nexport { default as LexiconCreateDialog } from './dialogs/LexiconCreateDialog';\n\n// Forms\nexport { default as CreateOrImportForm } from './forms/CreateOrImportForm';\nexport { default as ImportForm } from './forms/ImportForm';\nexport { default as LexiconImportForm } from './forms/LexiconImportForm';\n\n// Inputs\nexport { default as LexiconAutocompleteInput } from './inputs/LexiconAutocompleteInput';\n\n// Fetch\nexport { default as fetchWikidata } from './fetch/fetchWikidata';\nexport { default as fetchESCO } from './fetch/fetchESCO';\n\n// Hooks\nexport { default as useFork } from './hooks/useFork';\nexport { default as useSync } from './hooks/useSync';\n","import React, { useCallback, useState } from 'react';\nimport { useCreate, useCreateSuggestionContext, useResourceContext } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent } from '@mui/material';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconCreateDialog = ({ fetchLexicon, selectData }) => {\n const { filter, onCancel, onCreate } = useCreateSuggestionContext();\n const resource = useResourceContext();\n const [value, setValue] = useState(filter || '');\n const [create] = useCreate();\n\n const onClose = useCallback(() => {\n setValue('');\n onCancel();\n }, [setValue, onCancel]);\n\n const onSubmit = useCallback(() => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!value.uri) delete value.summary;\n create(\n resource,\n { data: selectData(value) },\n {\n onSuccess: data => {\n console.log('onSuccess', data);\n setValue('');\n onCreate(data);\n }\n }\n );\n }, [create, onCreate, selectData, value, setValue, resource]);\n\n return (\n \n );\n};\n\nexport default LexiconCreateDialog;\n","import React, { useState, useMemo, useEffect, forwardRef } from 'react';\nimport {\n FieldTitle,\n useInput,\n useTranslate,\n useLocale,\n useNotify,\n useResourceContext,\n InputHelperText\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport AddIcon from '@mui/icons-material/Add';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n }\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (typeof option === 'string') {\n return option;\n }\n if (option.label) {\n return option.label;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst capitalizeFirstLetter = string => string && string.charAt(0).toUpperCase() + string.slice(1);\n\nconst LexiconAutocompleteInput = forwardRef(\n ({ fetchLexicon, source, defaultValue, label, parse, optionText, helperText, ...rest }, ref) => {\n const resource = useResourceContext();\n const classes = useStyles();\n const locale = useLocale();\n const translate = useTranslate();\n const notify = useNotify();\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur },\n fieldState: { isTouched, error },\n formState: { submitError },\n isRequired\n } = useInput({ source, defaultValue, ...rest });\n\n const [keyword, setKeyword] = useState(defaultValue); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n const throttledFetchLexicon = useMemo(\n () =>\n throttle((keyword, callback) => {\n fetchLexicon({ keyword, locale })\n .then(data => callback(data))\n .catch(e => notify(e.message, { type: 'error' }));\n }, 200),\n [locale, fetchLexicon, notify]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty\n if (!keyword) {\n return undefined;\n }\n throttledFetchLexicon(keyword, results => setOptions(results));\n }, [value, keyword, throttledFetchLexicon]);\n\n return (\n {\n // Suggest the creation of a new value\n if (keyword) {\n options.push({\n label: capitalizeFirstLetter(keyword),\n summary: `Ajouter \"${capitalizeFirstLetter(keyword)}\" au dictionnaire`,\n icon: AddIcon\n });\n }\n return options;\n }}\n clearOnBlur // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n selectOnFocus // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n handleHomeEndKeys // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n },\n onFocus: e => {\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n }\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!(isTouched && (error || submitError))}\n helperText={}\n />\n );\n }}\n renderOption={(props, option) => {\n const matches = highlightMatch(option.label, keyword);\n const parts = highlightParse(option.label, matches);\n return (\n \n {React.createElement(option.icon || LanguageIcon, { className: classes.icon })}\n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.summary}\n \n \n \n );\n }}\n />\n );\n }\n);\n\nLexiconAutocompleteInput.defaultProps = {\n optionText: 'label'\n};\n\nexport default LexiconAutocompleteInput;\n","import React, { useState } from 'react';\nimport { SimpleForm } from 'react-admin';\nimport { Box, Tabs, Tab, Divider, useMediaQuery } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ImportForm from './ImportForm';\n\nconst useStyles = makeStyles(() => ({\n tab: {\n maxWidth: 'unset',\n padding: '6px 24px'\n }\n}));\n\nconst CreateOrImportForm = ({ stripProperties, ...rest }) => {\n const [tab, setTab] = useState(0);\n const classes = useStyles();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n return (\n <>\n \n setTab(v)} indicatorColor=\"primary\">\n \n \n \n \n \n {tab === 0 && }\n {tab === 1 && }\n >\n );\n};\n\nexport default CreateOrImportForm;\n","import React, { useCallback, useEffect } from 'react';\nimport { SimpleForm, TextInput, RadioButtonGroupInput, useResourceContext } from 'react-admin';\nimport { useFormContext } from 'react-hook-form';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\nimport { ReferenceInput, MultiServerAutocompleteInput } from '@semapps/input-components';\nimport useFork from '../hooks/useFork';\nimport useSync from '../hooks/useSync';\n\nconst ImportFormInputs = () => {\n const resource = useResourceContext();\n const containers = useContainers(resource, '@remote');\n const dataModel = useDataModel(resource);\n\n const { watch, setValue } = useFormContext();\n const watchRemoteUri = watch('remoteUri');\n const watchPlainUri = watch('plainUri');\n\n useEffect(() => {\n if (watchRemoteUri) {\n setValue('plainUri', watchRemoteUri);\n }\n }, [watchRemoteUri]);\n\n useEffect(() => {\n if (watchPlainUri && watchPlainUri !== watchRemoteUri) {\n setValue('remoteUri', null);\n }\n }, [watchRemoteUri, watchPlainUri]);\n\n if (!dataModel) return null;\n\n return (\n <>\n {containers && Object.keys(containers).length > 0 && (\n !!(q && q.length > 1)}\n >\n value.length > 1}\n noOptionsText=\"Tapez au moins deux lettres\"\n emptyText=\"Rechercher...\"\n label=\"Resource distante\"\n fullWidth\n />\n \n )}\n \n \n >\n );\n};\n\nconst ImportForm = ({ stripProperties }) => {\n const resource = useResourceContext();\n const fork = useFork(resource);\n const sync = useSync(resource);\n\n const onSubmit = useCallback(\n async ({ plainUri, method }) => {\n if (method === 'fork') {\n await fork(plainUri, stripProperties);\n } else {\n await sync(plainUri);\n }\n },\n [fork, sync, stripProperties]\n );\n\n return (\n \n \n \n );\n};\n\nexport default ImportForm;\n","import { useCallback } from 'react';\nimport { useDataProvider, useRedirect, useNotify } from 'react-admin';\n\nconst useFork = resourceId => {\n const dataProvider = useDataProvider();\n const redirect = useRedirect();\n const notify = useNotify();\n\n return useCallback(\n async (remoteRecordUri, stripProperties = []) => {\n const { data: remoteData } = await dataProvider.getOne(resourceId, { id: remoteRecordUri });\n\n const strippedData = { ...remoteData };\n strippedData['http://www.w3.org/ns/prov#wasDerivedFrom'] = strippedData.id;\n delete strippedData.id;\n delete strippedData['@context'];\n stripProperties.forEach(prop => {\n delete strippedData[prop];\n });\n\n const { data: localData } = await dataProvider.create(resourceId, { data: strippedData });\n\n redirect(`/${resourceId}/${encodeURIComponent(localData.id)}/show`);\n notify('La ressource a bien été copiée', { type: 'success' });\n },\n [resourceId, dataProvider, redirect, notify]\n );\n};\n\nexport default useFork;\n","import { useCallback } from 'react';\nimport { useNotify, useDataProvider, useRedirect } from 'react-admin';\n\nconst useSync = resourceId => {\n const dataProvider = useDataProvider();\n const notify = useNotify();\n const redirect = useRedirect();\n\n return useCallback(\n async remoteRecordUri => {\n await dataProvider.create(resourceId, { id: remoteRecordUri });\n\n redirect(`/${resourceId}/${encodeURIComponent(remoteRecordUri)}/show`);\n notify('La ressource a bien été importée', { type: 'success' });\n },\n [dataProvider, redirect, notify]\n );\n};\n\nexport default useSync;\n","import React, { useCallback } from 'react';\nimport { required, SimpleForm, useSaveContext } from 'react-admin';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconImportForm = ({ fetchLexicon, selectData }) => {\n const { save } = useSaveContext();\n\n const onSubmit = useCallback(\n async ({ lexicon }) => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!lexicon.uri) delete lexicon.summary;\n\n // If the user doesn't select any option, use the text as the label\n if (typeof lexicon === 'string') {\n lexicon = { label: lexicon };\n }\n\n await save(selectData(lexicon));\n },\n [selectData, save]\n );\n\n return (\n \n \n \n );\n};\n\nexport default LexiconImportForm;\n","import LanguageIcon from '@mui/icons-material/Language';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchWikidata =\n (apiUrl = 'https://www.wikidata.org/w/api.php') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n `${apiUrl}?action=wbsearchentities&format=json&language=${locale}&uselang=${locale}&type=item&limit=10&origin=*&search=${encodeURIComponent(\n keyword\n )}`\n );\n if (response.ok) {\n const json = await response.json();\n return json.search.map(r => ({\n uri: r.concepturi,\n label: capitalize(r.match.text),\n summary: capitalize(r.description),\n icon: LanguageIcon\n }));\n }\n throw new Error('Failed to fetch Wikidata server');\n };\n\nexport default fetchWikidata;\n","import urlJoin from 'url-join';\nimport StarBorderIcon from '@mui/icons-material/StarBorder';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchESCO =\n (apiUrl = 'https://ec.europa.eu/esco/api', type = 'skill') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n urlJoin(\n apiUrl,\n `suggest2?text=${encodeURIComponent(\n keyword\n )}&language=${locale}&type=${type}&isInScheme=&facet=&offset=&limit=&full=&selectedVersion=&viewObsolete=`\n )\n );\n if (response.ok) {\n const json = await response.json();\n return json._embedded.results.map(r => ({\n uri: r.uri,\n label: capitalize(r.title.replace('’', \"'\")),\n icon: StarBorderIcon\n }));\n }\n throw new Error('Failed to fetch ESCO server');\n };\n\nexport default fetchESCO;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/interop-components/dist/index.es.js b/src/frontend/packages/interop-components/dist/index.es.js
index 7094f54bd..7376e8d2e 100644
--- a/src/frontend/packages/interop-components/dist/index.es.js
+++ b/src/frontend/packages/interop-components/dist/index.es.js
@@ -525,7 +525,7 @@ const $1cadde849f110c85$var$fetchESCO = (apiUrl = "https://ec.europa.eu/esco/api
const json = await response.json();
return json._embedded.results.map((r)=>({
uri: r.uri,
- label: $1cadde849f110c85$var$capitalize(r.title.replace("’", "'")),
+ label: $1cadde849f110c85$var$capitalize(r.title.replace("\u2019", "'")),
icon: (0, $e5Hbp$muiiconsmaterialStarBorder)
}));
}
diff --git a/src/frontend/packages/interop-components/dist/index.es.js.map b/src/frontend/packages/interop-components/dist/index.es.js.map
index 8bcb811e4..aceb62c73 100644
--- a/src/frontend/packages/interop-components/dist/index.es.js.map
+++ b/src/frontend/packages/interop-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/interop-components/src/index.js","packages/interop-components/src/dialogs/LexiconCreateDialog.js","packages/interop-components/src/inputs/LexiconAutocompleteInput.js","packages/interop-components/src/forms/CreateOrImportForm.js","packages/interop-components/src/forms/ImportForm.js","packages/interop-components/src/hooks/useFork.js","packages/interop-components/src/hooks/useSync.js","packages/interop-components/src/forms/LexiconImportForm.js","packages/interop-components/src/fetch/fetchWikidata.js","packages/interop-components/src/fetch/fetchESCO.js"],"sourcesContent":["// Dialogs\nexport { default as LexiconCreateDialog } from './dialogs/LexiconCreateDialog';\n\n// Forms\nexport { default as CreateOrImportForm } from './forms/CreateOrImportForm';\nexport { default as ImportForm } from './forms/ImportForm';\nexport { default as LexiconImportForm } from './forms/LexiconImportForm';\n\n// Inputs\nexport { default as LexiconAutocompleteInput } from './inputs/LexiconAutocompleteInput';\n\n// Fetch\nexport { default as fetchWikidata } from './fetch/fetchWikidata';\nexport { default as fetchESCO } from './fetch/fetchESCO';\n\n// Hooks\nexport { default as useFork } from './hooks/useFork';\nexport { default as useSync } from './hooks/useSync';\n","import React, { useCallback, useState } from 'react';\nimport { useCreate, useCreateSuggestionContext, useResourceContext } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent } from '@mui/material';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconCreateDialog = ({ fetchLexicon, selectData }) => {\n const { filter, onCancel, onCreate } = useCreateSuggestionContext();\n const resource = useResourceContext();\n const [value, setValue] = useState(filter || '');\n const [create] = useCreate();\n\n const onClose = useCallback(() => {\n setValue('');\n onCancel();\n }, [setValue, onCancel]);\n\n const onSubmit = useCallback(() => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!value.uri) delete value.summary;\n create(\n resource,\n { data: selectData(value) },\n {\n onSuccess: data => {\n console.log('onSuccess', data);\n setValue('');\n onCreate(data);\n }\n }\n );\n }, [create, onCreate, selectData, value, setValue, resource]);\n\n return (\n \n );\n};\n\nexport default LexiconCreateDialog;\n","import React, { useState, useMemo, useEffect, forwardRef } from 'react';\nimport {\n FieldTitle,\n useInput,\n useTranslate,\n useLocale,\n useNotify,\n useResourceContext,\n InputHelperText\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport AddIcon from '@mui/icons-material/Add';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n }\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (typeof option === 'string') {\n return option;\n }\n if (option.label) {\n return option.label;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst capitalizeFirstLetter = string => string && string.charAt(0).toUpperCase() + string.slice(1);\n\nconst LexiconAutocompleteInput = forwardRef(\n ({ fetchLexicon, source, defaultValue, label, parse, optionText, helperText, ...rest }, ref) => {\n const resource = useResourceContext();\n const classes = useStyles();\n const locale = useLocale();\n const translate = useTranslate();\n const notify = useNotify();\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur },\n fieldState: { isTouched, error },\n formState: { submitError },\n isRequired\n } = useInput({ source, defaultValue, ...rest });\n\n const [keyword, setKeyword] = useState(defaultValue); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n const throttledFetchLexicon = useMemo(\n () =>\n throttle((keyword, callback) => {\n fetchLexicon({ keyword, locale })\n .then(data => callback(data))\n .catch(e => notify(e.message, { type: 'error' }));\n }, 200),\n [locale, fetchLexicon, notify]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty\n if (!keyword) {\n return undefined;\n }\n throttledFetchLexicon(keyword, results => setOptions(results));\n }, [value, keyword, throttledFetchLexicon]);\n\n return (\n {\n // Suggest the creation of a new value\n if (keyword) {\n options.push({\n label: capitalizeFirstLetter(keyword),\n summary: `Ajouter \"${capitalizeFirstLetter(keyword)}\" au dictionnaire`,\n icon: AddIcon\n });\n }\n return options;\n }}\n clearOnBlur // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n selectOnFocus // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n handleHomeEndKeys // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n },\n onFocus: e => {\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n }\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!(isTouched && (error || submitError))}\n helperText={}\n />\n );\n }}\n renderOption={(props, option) => {\n const matches = highlightMatch(option.label, keyword);\n const parts = highlightParse(option.label, matches);\n return (\n \n {React.createElement(option.icon || LanguageIcon, { className: classes.icon })}\n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.summary}\n \n \n \n );\n }}\n />\n );\n }\n);\n\nLexiconAutocompleteInput.defaultProps = {\n optionText: 'label'\n};\n\nexport default LexiconAutocompleteInput;\n","import React, { useState } from 'react';\nimport { SimpleForm } from 'react-admin';\nimport { Box, Tabs, Tab, Divider, useMediaQuery } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ImportForm from './ImportForm';\n\nconst useStyles = makeStyles(() => ({\n tab: {\n maxWidth: 'unset',\n padding: '6px 24px'\n }\n}));\n\nconst CreateOrImportForm = ({ stripProperties, ...rest }) => {\n const [tab, setTab] = useState(0);\n const classes = useStyles();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n return (\n <>\n \n setTab(v)} indicatorColor=\"primary\">\n \n \n \n \n \n {tab === 0 && }\n {tab === 1 && }\n >\n );\n};\n\nexport default CreateOrImportForm;\n","import React, { useCallback, useEffect } from 'react';\nimport { SimpleForm, TextInput, RadioButtonGroupInput, useResourceContext } from 'react-admin';\nimport { useFormContext } from 'react-hook-form';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\nimport { ReferenceInput, MultiServerAutocompleteInput } from '@semapps/input-components';\nimport useFork from '../hooks/useFork';\nimport useSync from '../hooks/useSync';\n\nconst ImportFormInputs = () => {\n const resource = useResourceContext();\n const containers = useContainers(resource, '@remote');\n const dataModel = useDataModel(resource);\n\n const { watch, setValue } = useFormContext();\n const watchRemoteUri = watch('remoteUri');\n const watchPlainUri = watch('plainUri');\n\n useEffect(() => {\n if (watchRemoteUri) {\n setValue('plainUri', watchRemoteUri);\n }\n }, [watchRemoteUri]);\n\n useEffect(() => {\n if (watchPlainUri && watchPlainUri !== watchRemoteUri) {\n setValue('remoteUri', null);\n }\n }, [watchRemoteUri, watchPlainUri]);\n\n if (!dataModel) return null;\n\n return (\n <>\n {containers && Object.keys(containers).length > 0 && (\n !!(q && q.length > 1)}\n >\n value.length > 1}\n noOptionsText=\"Tapez au moins deux lettres\"\n emptyText=\"Rechercher...\"\n label=\"Resource distante\"\n fullWidth\n />\n \n )}\n \n \n >\n );\n};\n\nconst ImportForm = ({ stripProperties }) => {\n const resource = useResourceContext();\n const fork = useFork(resource);\n const sync = useSync(resource);\n\n const onSubmit = useCallback(\n async ({ plainUri, method }) => {\n if (method === 'fork') {\n await fork(plainUri, stripProperties);\n } else {\n await sync(plainUri);\n }\n },\n [fork, sync, stripProperties]\n );\n\n return (\n \n \n \n );\n};\n\nexport default ImportForm;\n","import { useCallback } from 'react';\nimport { useDataProvider, useRedirect, useNotify } from 'react-admin';\n\nconst useFork = resourceId => {\n const dataProvider = useDataProvider();\n const redirect = useRedirect();\n const notify = useNotify();\n\n return useCallback(\n async (remoteRecordUri, stripProperties = []) => {\n const { data: remoteData } = await dataProvider.getOne(resourceId, { id: remoteRecordUri });\n\n const strippedData = { ...remoteData };\n strippedData['http://www.w3.org/ns/prov#wasDerivedFrom'] = strippedData.id;\n delete strippedData.id;\n delete strippedData['@context'];\n stripProperties.forEach(prop => {\n delete strippedData[prop];\n });\n\n const { data: localData } = await dataProvider.create(resourceId, { data: strippedData });\n\n redirect(`/${resourceId}/${encodeURIComponent(localData.id)}/show`);\n notify('La ressource a bien été copiée', { type: 'success' });\n },\n [resourceId, dataProvider, redirect, notify]\n );\n};\n\nexport default useFork;\n","import { useCallback } from 'react';\nimport { useNotify, useDataProvider, useRedirect } from 'react-admin';\n\nconst useSync = resourceId => {\n const dataProvider = useDataProvider();\n const notify = useNotify();\n const redirect = useRedirect();\n\n return useCallback(\n async remoteRecordUri => {\n await dataProvider.create(resourceId, { id: remoteRecordUri });\n\n redirect(`/${resourceId}/${encodeURIComponent(remoteRecordUri)}/show`);\n notify('La ressource a bien été importée', { type: 'success' });\n },\n [dataProvider, redirect, notify]\n );\n};\n\nexport default useSync;\n","import React, { useCallback } from 'react';\nimport { required, SimpleForm, useSaveContext } from 'react-admin';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconImportForm = ({ fetchLexicon, selectData }) => {\n const { save } = useSaveContext();\n\n const onSubmit = useCallback(\n async ({ lexicon }) => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!lexicon.uri) delete lexicon.summary;\n\n // If the user doesn't select any option, use the text as the label\n if (typeof lexicon === 'string') {\n lexicon = { label: lexicon };\n }\n\n await save(selectData(lexicon));\n },\n [selectData, save]\n );\n\n return (\n \n \n \n );\n};\n\nexport default LexiconImportForm;\n","import LanguageIcon from '@mui/icons-material/Language';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchWikidata =\n (apiUrl = 'https://www.wikidata.org/w/api.php') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n `${apiUrl}?action=wbsearchentities&format=json&language=${locale}&uselang=${locale}&type=item&limit=10&origin=*&search=${encodeURIComponent(\n keyword\n )}`\n );\n if (response.ok) {\n const json = await response.json();\n return json.search.map(r => ({\n uri: r.concepturi,\n label: capitalize(r.match.text),\n summary: capitalize(r.description),\n icon: LanguageIcon\n }));\n }\n throw new Error('Failed to fetch Wikidata server');\n };\n\nexport default fetchWikidata;\n","import urlJoin from 'url-join';\nimport StarBorderIcon from '@mui/icons-material/StarBorder';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchESCO =\n (apiUrl = 'https://ec.europa.eu/esco/api', type = 'skill') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n urlJoin(\n apiUrl,\n `suggest2?text=${encodeURIComponent(\n keyword\n )}&language=${locale}&type=${type}&isInScheme=&facet=&offset=&limit=&full=&selectedVersion=&viewObsolete=`\n )\n );\n if (response.ok) {\n const json = await response.json();\n return json._embedded.results.map(r => ({\n uri: r.uri,\n label: capitalize(r.title.replace('’', \"'\")),\n icon: StarBorderIcon\n }));\n }\n throw new Error('Failed to fetch ESCO server');\n };\n\nexport default fetchESCO;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/interop-components/src/index.js","packages/interop-components/src/dialogs/LexiconCreateDialog.js","packages/interop-components/src/inputs/LexiconAutocompleteInput.js","packages/interop-components/src/forms/CreateOrImportForm.js","packages/interop-components/src/forms/ImportForm.js","packages/interop-components/src/hooks/useFork.js","packages/interop-components/src/hooks/useSync.js","packages/interop-components/src/forms/LexiconImportForm.js","packages/interop-components/src/fetch/fetchWikidata.js","packages/interop-components/src/fetch/fetchESCO.js"],"sourcesContent":["// Dialogs\nexport { default as LexiconCreateDialog } from './dialogs/LexiconCreateDialog';\n\n// Forms\nexport { default as CreateOrImportForm } from './forms/CreateOrImportForm';\nexport { default as ImportForm } from './forms/ImportForm';\nexport { default as LexiconImportForm } from './forms/LexiconImportForm';\n\n// Inputs\nexport { default as LexiconAutocompleteInput } from './inputs/LexiconAutocompleteInput';\n\n// Fetch\nexport { default as fetchWikidata } from './fetch/fetchWikidata';\nexport { default as fetchESCO } from './fetch/fetchESCO';\n\n// Hooks\nexport { default as useFork } from './hooks/useFork';\nexport { default as useSync } from './hooks/useSync';\n","import React, { useCallback, useState } from 'react';\nimport { useCreate, useCreateSuggestionContext, useResourceContext } from 'react-admin';\nimport { Button, Dialog, DialogActions, DialogContent } from '@mui/material';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconCreateDialog = ({ fetchLexicon, selectData }) => {\n const { filter, onCancel, onCreate } = useCreateSuggestionContext();\n const resource = useResourceContext();\n const [value, setValue] = useState(filter || '');\n const [create] = useCreate();\n\n const onClose = useCallback(() => {\n setValue('');\n onCancel();\n }, [setValue, onCancel]);\n\n const onSubmit = useCallback(() => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!value.uri) delete value.summary;\n create(\n resource,\n { data: selectData(value) },\n {\n onSuccess: data => {\n console.log('onSuccess', data);\n setValue('');\n onCreate(data);\n }\n }\n );\n }, [create, onCreate, selectData, value, setValue, resource]);\n\n return (\n \n );\n};\n\nexport default LexiconCreateDialog;\n","import React, { useState, useMemo, useEffect, forwardRef } from 'react';\nimport {\n FieldTitle,\n useInput,\n useTranslate,\n useLocale,\n useNotify,\n useResourceContext,\n InputHelperText\n} from 'react-admin';\nimport { TextField, Typography, Grid } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport LanguageIcon from '@mui/icons-material/Language';\nimport AddIcon from '@mui/icons-material/Add';\nimport { default as highlightMatch } from 'autosuggest-highlight/match';\nimport { default as highlightParse } from 'autosuggest-highlight/parse';\nimport throttle from 'lodash.throttle';\n\nconst useStyles = makeStyles(theme => ({\n icon: {\n color: theme.palette.text.secondary,\n marginRight: theme.spacing(2)\n }\n}));\n\nconst selectOptionText = (option, optionText) => {\n if (typeof option === 'string') {\n return option;\n }\n if (option.label) {\n return option.label;\n }\n if (typeof optionText === 'string') {\n return option[optionText];\n }\n if (typeof optionText === 'function') {\n return optionText(option);\n }\n};\n\nconst capitalizeFirstLetter = string => string && string.charAt(0).toUpperCase() + string.slice(1);\n\nconst LexiconAutocompleteInput = forwardRef(\n ({ fetchLexicon, source, defaultValue, label, parse, optionText, helperText, ...rest }, ref) => {\n const resource = useResourceContext();\n const classes = useStyles();\n const locale = useLocale();\n const translate = useTranslate();\n const notify = useNotify();\n\n // Do not pass the `parse` prop to useInput, as we manually call it on the onChange prop below\n const {\n field: { value, onChange, onBlur },\n fieldState: { isTouched, error },\n formState: { submitError },\n isRequired\n } = useInput({ source, defaultValue, ...rest });\n\n const [keyword, setKeyword] = useState(defaultValue); // Typed keywords\n const [options, setOptions] = useState([]); // Options returned by MapBox\n\n const throttledFetchLexicon = useMemo(\n () =>\n throttle((keyword, callback) => {\n fetchLexicon({ keyword, locale })\n .then(data => callback(data))\n .catch(e => notify(e.message, { type: 'error' }));\n }, 200),\n [locale, fetchLexicon, notify]\n );\n\n useEffect(() => {\n // Do not trigger search if text input is empty\n if (!keyword) {\n return undefined;\n }\n throttledFetchLexicon(keyword, results => setOptions(results));\n }, [value, keyword, throttledFetchLexicon]);\n\n return (\n {\n // Suggest the creation of a new value\n if (keyword) {\n options.push({\n label: capitalizeFirstLetter(keyword),\n summary: `Ajouter \"${capitalizeFirstLetter(keyword)}\" au dictionnaire`,\n icon: AddIcon\n });\n }\n return options;\n }}\n clearOnBlur // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n selectOnFocus // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n handleHomeEndKeys // Recommended for https://v4.mui.com/components/autocomplete/#creatable\n getOptionLabel={option => selectOptionText(option, optionText)}\n isOptionEqualToValue={(option, value) =>\n selectOptionText(option, optionText) === selectOptionText(value, optionText)\n }\n // This function is called when the user selects an option\n onChange={(event, newValue) => {\n // Parse only if the value is not null (happens if the user clears the value)\n if (newValue && parse) newValue = parse(newValue);\n onChange(newValue);\n setOptions([]);\n }}\n onInputChange={(event, newKeyword) => setKeyword(newKeyword)}\n noOptionsText={translate('ra.navigation.no_results')}\n renderInput={params => {\n // Autocomplete=off doesn't work anymore in modern browsers\n // https://stackoverflow.com/a/40791726/7900695\n params.inputProps.autoComplete = 'new-password';\n return (\n {\n onBlur(e);\n if (params.inputProps.onBlur) {\n params.inputProps.onBlur(e);\n }\n },\n onFocus: e => {\n if (params.inputProps.onFocus) {\n params.inputProps.onFocus(e);\n }\n }\n }}\n label={\n label !== '' &&\n label !== false && (\n \n )\n }\n error={!!(isTouched && (error || submitError))}\n helperText={}\n />\n );\n }}\n renderOption={(props, option) => {\n const matches = highlightMatch(option.label, keyword);\n const parts = highlightParse(option.label, matches);\n return (\n \n {React.createElement(option.icon || LanguageIcon, { className: classes.icon })}\n \n {typeof parts === 'string'\n ? parts\n : parts.map((part, index) => (\n \n {part.text}\n \n ))}\n \n {option.summary}\n \n \n \n );\n }}\n />\n );\n }\n);\n\nLexiconAutocompleteInput.defaultProps = {\n optionText: 'label'\n};\n\nexport default LexiconAutocompleteInput;\n","import React, { useState } from 'react';\nimport { SimpleForm } from 'react-admin';\nimport { Box, Tabs, Tab, Divider, useMediaQuery } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport ImportForm from './ImportForm';\n\nconst useStyles = makeStyles(() => ({\n tab: {\n maxWidth: 'unset',\n padding: '6px 24px'\n }\n}));\n\nconst CreateOrImportForm = ({ stripProperties, ...rest }) => {\n const [tab, setTab] = useState(0);\n const classes = useStyles();\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'), { noSsr: true });\n return (\n <>\n \n setTab(v)} indicatorColor=\"primary\">\n \n \n \n \n \n {tab === 0 && }\n {tab === 1 && }\n >\n );\n};\n\nexport default CreateOrImportForm;\n","import React, { useCallback, useEffect } from 'react';\nimport { SimpleForm, TextInput, RadioButtonGroupInput, useResourceContext } from 'react-admin';\nimport { useFormContext } from 'react-hook-form';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\nimport { ReferenceInput, MultiServerAutocompleteInput } from '@semapps/input-components';\nimport useFork from '../hooks/useFork';\nimport useSync from '../hooks/useSync';\n\nconst ImportFormInputs = () => {\n const resource = useResourceContext();\n const containers = useContainers(resource, '@remote');\n const dataModel = useDataModel(resource);\n\n const { watch, setValue } = useFormContext();\n const watchRemoteUri = watch('remoteUri');\n const watchPlainUri = watch('plainUri');\n\n useEffect(() => {\n if (watchRemoteUri) {\n setValue('plainUri', watchRemoteUri);\n }\n }, [watchRemoteUri]);\n\n useEffect(() => {\n if (watchPlainUri && watchPlainUri !== watchRemoteUri) {\n setValue('remoteUri', null);\n }\n }, [watchRemoteUri, watchPlainUri]);\n\n if (!dataModel) return null;\n\n return (\n <>\n {containers && Object.keys(containers).length > 0 && (\n !!(q && q.length > 1)}\n >\n value.length > 1}\n noOptionsText=\"Tapez au moins deux lettres\"\n emptyText=\"Rechercher...\"\n label=\"Resource distante\"\n fullWidth\n />\n \n )}\n \n \n >\n );\n};\n\nconst ImportForm = ({ stripProperties }) => {\n const resource = useResourceContext();\n const fork = useFork(resource);\n const sync = useSync(resource);\n\n const onSubmit = useCallback(\n async ({ plainUri, method }) => {\n if (method === 'fork') {\n await fork(plainUri, stripProperties);\n } else {\n await sync(plainUri);\n }\n },\n [fork, sync, stripProperties]\n );\n\n return (\n \n \n \n );\n};\n\nexport default ImportForm;\n","import { useCallback } from 'react';\nimport { useDataProvider, useRedirect, useNotify } from 'react-admin';\n\nconst useFork = resourceId => {\n const dataProvider = useDataProvider();\n const redirect = useRedirect();\n const notify = useNotify();\n\n return useCallback(\n async (remoteRecordUri, stripProperties = []) => {\n const { data: remoteData } = await dataProvider.getOne(resourceId, { id: remoteRecordUri });\n\n const strippedData = { ...remoteData };\n strippedData['http://www.w3.org/ns/prov#wasDerivedFrom'] = strippedData.id;\n delete strippedData.id;\n delete strippedData['@context'];\n stripProperties.forEach(prop => {\n delete strippedData[prop];\n });\n\n const { data: localData } = await dataProvider.create(resourceId, { data: strippedData });\n\n redirect(`/${resourceId}/${encodeURIComponent(localData.id)}/show`);\n notify('La ressource a bien été copiée', { type: 'success' });\n },\n [resourceId, dataProvider, redirect, notify]\n );\n};\n\nexport default useFork;\n","import { useCallback } from 'react';\nimport { useNotify, useDataProvider, useRedirect } from 'react-admin';\n\nconst useSync = resourceId => {\n const dataProvider = useDataProvider();\n const notify = useNotify();\n const redirect = useRedirect();\n\n return useCallback(\n async remoteRecordUri => {\n await dataProvider.create(resourceId, { id: remoteRecordUri });\n\n redirect(`/${resourceId}/${encodeURIComponent(remoteRecordUri)}/show`);\n notify('La ressource a bien été importée', { type: 'success' });\n },\n [dataProvider, redirect, notify]\n );\n};\n\nexport default useSync;\n","import React, { useCallback } from 'react';\nimport { required, SimpleForm, useSaveContext } from 'react-admin';\nimport LexiconAutocompleteInput from '../inputs/LexiconAutocompleteInput';\n\nconst LexiconImportForm = ({ fetchLexicon, selectData }) => {\n const { save } = useSaveContext();\n\n const onSubmit = useCallback(\n async ({ lexicon }) => {\n // If we have no URI, it means we are creating a new definition\n // Delete the summary as it is \"Ajouter XXX au dictionaire\"\n if (!lexicon.uri) delete lexicon.summary;\n\n // If the user doesn't select any option, use the text as the label\n if (typeof lexicon === 'string') {\n lexicon = { label: lexicon };\n }\n\n await save(selectData(lexicon));\n },\n [selectData, save]\n );\n\n return (\n \n \n \n );\n};\n\nexport default LexiconImportForm;\n","import LanguageIcon from '@mui/icons-material/Language';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchWikidata =\n (apiUrl = 'https://www.wikidata.org/w/api.php') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n `${apiUrl}?action=wbsearchentities&format=json&language=${locale}&uselang=${locale}&type=item&limit=10&origin=*&search=${encodeURIComponent(\n keyword\n )}`\n );\n if (response.ok) {\n const json = await response.json();\n return json.search.map(r => ({\n uri: r.concepturi,\n label: capitalize(r.match.text),\n summary: capitalize(r.description),\n icon: LanguageIcon\n }));\n }\n throw new Error('Failed to fetch Wikidata server');\n };\n\nexport default fetchWikidata;\n","import urlJoin from 'url-join';\nimport StarBorderIcon from '@mui/icons-material/StarBorder';\n\nconst capitalize = s => (s && s[0].toUpperCase() + s.slice(1)) || '';\n\nconst fetchESCO =\n (apiUrl = 'https://ec.europa.eu/esco/api', type = 'skill') =>\n async ({ keyword, locale }) => {\n const response = await fetch(\n urlJoin(\n apiUrl,\n `suggest2?text=${encodeURIComponent(\n keyword\n )}&language=${locale}&type=${type}&isInScheme=&facet=&offset=&limit=&full=&selectedVersion=&viewObsolete=`\n )\n );\n if (response.ok) {\n const json = await response.json();\n return json._embedded.results.map(r => ({\n uri: r.uri,\n label: capitalize(r.title.replace('’', \"'\")),\n icon: StarBorderIcon\n }));\n }\n throw new Error('Failed to fetch ESCO server');\n };\n\nexport default fetchESCO;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/list-components/dist/index.cjs.js b/src/frontend/packages/list-components/dist/index.cjs.js
index 33de17b39..b9833f3ae 100644
--- a/src/frontend/packages/list-components/dist/index.cjs.js
+++ b/src/frontend/packages/list-components/dist/index.cjs.js
@@ -9,9 +9,11 @@ var $1w0zd$semappssemanticdataprovider = require("@semapps/semantic-data-provide
var $1w0zd$reactmasonrycss = require("react-masonry-css");
var $1w0zd$reactrouter = require("react-router");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
diff --git a/src/frontend/packages/list-components/dist/index.cjs.js.map b/src/frontend/packages/list-components/dist/index.cjs.js.map
index ad27aa05a..02caeb635 100644
--- a/src/frontend/packages/list-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/list-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/list-components/src/index.js","packages/list-components/src/ChipList.js","packages/list-components/src/GridList.js","packages/list-components/src/MasonryList.js","packages/list-components/src/ReferenceFilter.js","packages/list-components/src/MultiViewsList/MultiViewsList.js","packages/list-components/src/MultiViewsList/ListActionsWithViews.js","packages/list-components/src/MultiViewsList/ViewsButtons.js","packages/list-components/src/MultiViewsList/ListViewContext.js"],"sourcesContent":["export { default as ChipList } from './ChipList';\nexport { default as GridList } from './GridList';\nexport { default as MasonryList } from './MasonryList';\nexport { default as ReferenceFilter } from './ReferenceFilter';\n\nexport { default as MultiViewsList } from './MultiViewsList/MultiViewsList';\nexport { default as ListActionsWithViews } from './MultiViewsList/ListActionsWithViews';\nexport { default as ListViewContext } from './MultiViewsList/ListViewContext';\nexport { default as ViewsButtons } from './MultiViewsList/ViewsButtons';\n","import React from 'react';\nimport {\n ChipField,\n useCreatePath,\n useListContext,\n sanitizeListRestProps,\n RecordContextProvider,\n Link\n} from 'react-admin';\nimport { LinearProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddCircleIcon from '@mui/icons-material/AddCircle';\nimport LaunchIcon from '@mui/icons-material/Launch';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(() => ({\n root: {\n display: 'flex',\n flexWrap: 'wrap'\n },\n link: {\n textDecoration: 'none',\n maxWidth: '100%'\n },\n chipField: {\n maxWidth: '100%'\n },\n addIcon: {\n cursor: 'pointer',\n fontSize: 35,\n position: 'relative',\n top: 2\n },\n launchIcon: {\n width: 20,\n paddingRight: 6,\n marginLeft: -10\n }\n}));\n\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst ChipList = props => {\n const {\n classes: classesOverride,\n className,\n children,\n linkType = 'edit',\n component = 'div',\n primaryText,\n appendLink,\n externalLinks = false,\n ...rest\n } = props;\n const { data, isLoading, resource } = useListContext(props);\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n\n const classes = useStyles(props);\n const Component = component;\n\n if (isLoading) return ;\n\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n if (externalLink) {\n return (\n \n \n }\n // Workaround to force ChipField to be clickable\n onClick={handleClick}\n // Required to display the delete icon\n onDelete={handleClick}\n />\n \n \n );\n }\n if (linkType) {\n return (\n \n \n \n \n \n );\n }\n return (\n \n \n \n );\n })}\n {appendLink && }\n \n );\n};\n\nexport default ChipList;\n","import * as React from 'react';\nimport { useListContext, useCreatePath, Link, RecordContextProvider } from 'react-admin';\nimport { Grid } from '@mui/material';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst GridList = ({ children, linkType, externalLinks, spacing, xs, sm, md, lg, xl }) => {\n const { data, resource, isLoading } = useListContext();\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n if (isLoading || !data) return null;\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n let child;\n\n if (externalLink) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n externalLink: true,\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else if (linkType) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else {\n child = children;\n }\n\n return (\n \n {child}\n \n );\n })}\n \n );\n};\n\nGridList.defaultProps = {\n xs: 6,\n spacing: 3,\n linkType: 'edit',\n externalLinks: false\n};\n\nexport default GridList;\n","import React from 'react';\nimport { useListContext, Link, useCreatePath, RecordContextProvider } from 'react-admin';\nimport { Card, CardActionArea, CardMedia, CardContent, CardActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Masonry from 'react-masonry-css';\n\nconst useStyles = makeStyles(() => ({\n grid: {\n display: 'flex',\n marginLeft: -20,\n marginBottom: -20,\n width: 'auto'\n },\n column: {\n paddingLeft: 20,\n backgroundClip: 'padding-box'\n },\n card: {\n marginBottom: 20\n },\n media: {\n height: 0,\n paddingTop: '56.25%' // 16:9\n }\n}));\n\n/**\n * @example\n * \n * record.image}\n * content={record => (\n * <>\n * {record.title}\n * {record.description}\n * >\n * )}\n * linkType=\"show\"\n * />\n *
\n */\nconst MasonryList = ({ image, content, actions, breakpointCols, linkType }) => {\n const classes = useStyles();\n const { data, resource } = useListContext();\n const createPath = useCreatePath();\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const imageUrl = typeof image === 'function' ? image(record) : image;\n return (\n \n \n \n \n {imageUrl && }\n {content && {content(record)}}\n \n \n {actions && {actions.map(action => React.createElement(action))}}\n \n \n );\n })}\n \n );\n};\n\nMasonryList.defaultProps = {\n breakpointCols: { default: 3, 1050: 2, 700: 1 },\n linkType: 'edit'\n};\n\nexport default MasonryList;\n","import React, { useEffect } from 'react';\nimport {\n FilterList,\n FilterListItem,\n useGetList,\n useResourceContext,\n useListContext,\n useResourceDefinition\n} from 'react-admin';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\n\n/**\n * @example\n * const FilterAside = () => (\n * \n * \n * \n * \n * \n * \n * \n * );\n */\n\nconst ReferenceFilterCounter = ({ source, id }) => {\n const resourceContext = useResourceContext();\n const { data, isLoading } = useGetList(resourceContext);\n return (\n <>\n \n {!isLoading && (\n {`(${\n Object.values(data).filter(d => [].concat(d[source]).includes(id)).length\n })`}\n )}\n >\n );\n};\n\nconst ReferenceFilter = ({ reference, source, inverseSource, limit, sort, filter, label, icon, showCounters }) => {\n const { data, isLoading } = useGetList(reference, { page: 1, perPage: limit }, sort, filter);\n const currentResource = useResourceDefinition({ resource: reference });\n const resourceContext = useResourceContext();\n const resourceContextDataModel = useDataModel(resourceContext);\n const resourceContextContainers = useContainers(resourceContext);\n\n const { displayedFilters, filterValues, setFilters, hideFilter } = useListContext();\n useEffect(() => {\n // Needed when filter item is active and its last relation is removed\n const urlSearchParams = new URLSearchParams(window.location.search);\n const params = Object.fromEntries(urlSearchParams.entries());\n if (!params.filter && !isLoading) {\n setFilters({});\n }\n }, []);\n\n const itemIsUsed = itemData => {\n if (!inverseSource) {\n return true;\n }\n if (!resourceContextContainers || !itemData) {\n return false;\n }\n let itemIsUsed = false;\n Object.values(resourceContextContainers).forEach(value => {\n value.forEach(containerUrl => {\n [].concat(itemData[inverseSource]).forEach(inverseSourceData => {\n if (inverseSourceData?.startsWith(containerUrl)) {\n itemIsUsed = true;\n }\n });\n });\n });\n return itemIsUsed;\n };\n\n return (\n \n {data &&\n data\n .filter(itemData => itemIsUsed(itemData))\n .map(itemData => (\n \n {itemData['pair:label']}\n {showCounters && }\n \n }\n value={{ [source]: itemData.id }}\n />\n ))}\n \n );\n};\n\nReferenceFilter.defaultProps = {\n limit: 25,\n showCounters: true\n};\n\nexport default ReferenceFilter;\n","import React, { useState } from 'react';\nimport { List } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListActionsWithViews from './ListActionsWithViews';\nimport ListViewContext from './ListViewContext';\n\nconst MultiViewsList = ({ children, actions, views, ListComponent, ...otherProps }) => {\n const query = new URLSearchParams(useLocation().search);\n const initialView = query.has('view') ? query.get('view') : Object.keys(views)[0];\n const [currentView, setView] = useState(initialView);\n return (\n \n \n {views[currentView].list}\n \n \n );\n};\n\nMultiViewsList.defaultProps = {\n actions: ,\n ListComponent: List\n};\n\nexport default MultiViewsList;\n","import React from 'react';\nimport { CreateButton, ExportButton, useResourceDefinition, TopToolbar, useResourceContext } from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport ViewsButtons from './ViewsButtons';\n\nconst ListActionsWithViews = ({\n bulkActions,\n basePath,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total,\n ...rest\n}) => {\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'));\n const resourceDefinition = useResourceDefinition(rest);\n return (\n \n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && }\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithViews;\n","import React from 'react';\nimport { Button, Link } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListViewContext from './ListViewContext';\n\nconst ViewsButtons = () => {\n const query = new URLSearchParams(useLocation().search);\n const { views, currentView, setView } = React.useContext(ListViewContext);\n return views\n ? Object.entries(views)\n .filter(([key]) => key !== currentView)\n .map(([key, view]) => {\n query.set('view', key);\n query.set('page', 1);\n query.set('perPage', view.perPage);\n if (view.sort) {\n query.set('sort', view.sort.field);\n query.set('order', view.sort.order);\n }\n return (\n \n \n \n );\n })\n : null;\n};\n\nexport default ViewsButtons;\n","import React from 'react';\n\nconst ListViewContext = React.createContext({ views: null, currentView: null, setView: () => null });\n\nexport default ListViewContext;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/list-components/src/index.js","packages/list-components/src/ChipList.js","packages/list-components/src/GridList.js","packages/list-components/src/MasonryList.js","packages/list-components/src/ReferenceFilter.js","packages/list-components/src/MultiViewsList/MultiViewsList.js","packages/list-components/src/MultiViewsList/ListActionsWithViews.js","packages/list-components/src/MultiViewsList/ViewsButtons.js","packages/list-components/src/MultiViewsList/ListViewContext.js"],"sourcesContent":["export { default as ChipList } from './ChipList';\nexport { default as GridList } from './GridList';\nexport { default as MasonryList } from './MasonryList';\nexport { default as ReferenceFilter } from './ReferenceFilter';\n\nexport { default as MultiViewsList } from './MultiViewsList/MultiViewsList';\nexport { default as ListActionsWithViews } from './MultiViewsList/ListActionsWithViews';\nexport { default as ListViewContext } from './MultiViewsList/ListViewContext';\nexport { default as ViewsButtons } from './MultiViewsList/ViewsButtons';\n","import React from 'react';\nimport {\n ChipField,\n useCreatePath,\n useListContext,\n sanitizeListRestProps,\n RecordContextProvider,\n Link\n} from 'react-admin';\nimport { LinearProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddCircleIcon from '@mui/icons-material/AddCircle';\nimport LaunchIcon from '@mui/icons-material/Launch';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(() => ({\n root: {\n display: 'flex',\n flexWrap: 'wrap'\n },\n link: {\n textDecoration: 'none',\n maxWidth: '100%'\n },\n chipField: {\n maxWidth: '100%'\n },\n addIcon: {\n cursor: 'pointer',\n fontSize: 35,\n position: 'relative',\n top: 2\n },\n launchIcon: {\n width: 20,\n paddingRight: 6,\n marginLeft: -10\n }\n}));\n\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst ChipList = props => {\n const {\n classes: classesOverride,\n className,\n children,\n linkType = 'edit',\n component = 'div',\n primaryText,\n appendLink,\n externalLinks = false,\n ...rest\n } = props;\n const { data, isLoading, resource } = useListContext(props);\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n\n const classes = useStyles(props);\n const Component = component;\n\n if (isLoading) return ;\n\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n if (externalLink) {\n return (\n \n \n }\n // Workaround to force ChipField to be clickable\n onClick={handleClick}\n // Required to display the delete icon\n onDelete={handleClick}\n />\n \n \n );\n }\n if (linkType) {\n return (\n \n \n \n \n \n );\n }\n return (\n \n \n \n );\n })}\n {appendLink && }\n \n );\n};\n\nexport default ChipList;\n","import * as React from 'react';\nimport { useListContext, useCreatePath, Link, RecordContextProvider } from 'react-admin';\nimport { Grid } from '@mui/material';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst GridList = ({ children, linkType, externalLinks, spacing, xs, sm, md, lg, xl }) => {\n const { data, resource, isLoading } = useListContext();\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n if (isLoading || !data) return null;\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n let child;\n\n if (externalLink) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n externalLink: true,\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else if (linkType) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else {\n child = children;\n }\n\n return (\n \n {child}\n \n );\n })}\n \n );\n};\n\nGridList.defaultProps = {\n xs: 6,\n spacing: 3,\n linkType: 'edit',\n externalLinks: false\n};\n\nexport default GridList;\n","import React from 'react';\nimport { useListContext, Link, useCreatePath, RecordContextProvider } from 'react-admin';\nimport { Card, CardActionArea, CardMedia, CardContent, CardActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Masonry from 'react-masonry-css';\n\nconst useStyles = makeStyles(() => ({\n grid: {\n display: 'flex',\n marginLeft: -20,\n marginBottom: -20,\n width: 'auto'\n },\n column: {\n paddingLeft: 20,\n backgroundClip: 'padding-box'\n },\n card: {\n marginBottom: 20\n },\n media: {\n height: 0,\n paddingTop: '56.25%' // 16:9\n }\n}));\n\n/**\n * @example\n * \n * record.image}\n * content={record => (\n * <>\n * {record.title}\n * {record.description}\n * >\n * )}\n * linkType=\"show\"\n * />\n *
\n */\nconst MasonryList = ({ image, content, actions, breakpointCols, linkType }) => {\n const classes = useStyles();\n const { data, resource } = useListContext();\n const createPath = useCreatePath();\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const imageUrl = typeof image === 'function' ? image(record) : image;\n return (\n \n \n \n \n {imageUrl && }\n {content && {content(record)}}\n \n \n {actions && {actions.map(action => React.createElement(action))}}\n \n \n );\n })}\n \n );\n};\n\nMasonryList.defaultProps = {\n breakpointCols: { default: 3, 1050: 2, 700: 1 },\n linkType: 'edit'\n};\n\nexport default MasonryList;\n","import React, { useEffect } from 'react';\nimport {\n FilterList,\n FilterListItem,\n useGetList,\n useResourceContext,\n useListContext,\n useResourceDefinition\n} from 'react-admin';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\n\n/**\n * @example\n * const FilterAside = () => (\n * \n * \n * \n * \n * \n * \n * \n * );\n */\n\nconst ReferenceFilterCounter = ({ source, id }) => {\n const resourceContext = useResourceContext();\n const { data, isLoading } = useGetList(resourceContext);\n return (\n <>\n \n {!isLoading && (\n {`(${\n Object.values(data).filter(d => [].concat(d[source]).includes(id)).length\n })`}\n )}\n >\n );\n};\n\nconst ReferenceFilter = ({ reference, source, inverseSource, limit, sort, filter, label, icon, showCounters }) => {\n const { data, isLoading } = useGetList(reference, { page: 1, perPage: limit }, sort, filter);\n const currentResource = useResourceDefinition({ resource: reference });\n const resourceContext = useResourceContext();\n const resourceContextDataModel = useDataModel(resourceContext);\n const resourceContextContainers = useContainers(resourceContext);\n\n const { displayedFilters, filterValues, setFilters, hideFilter } = useListContext();\n useEffect(() => {\n // Needed when filter item is active and its last relation is removed\n const urlSearchParams = new URLSearchParams(window.location.search);\n const params = Object.fromEntries(urlSearchParams.entries());\n if (!params.filter && !isLoading) {\n setFilters({});\n }\n }, []);\n\n const itemIsUsed = itemData => {\n if (!inverseSource) {\n return true;\n }\n if (!resourceContextContainers || !itemData) {\n return false;\n }\n let itemIsUsed = false;\n Object.values(resourceContextContainers).forEach(value => {\n value.forEach(containerUrl => {\n [].concat(itemData[inverseSource]).forEach(inverseSourceData => {\n if (inverseSourceData?.startsWith(containerUrl)) {\n itemIsUsed = true;\n }\n });\n });\n });\n return itemIsUsed;\n };\n\n return (\n \n {data &&\n data\n .filter(itemData => itemIsUsed(itemData))\n .map(itemData => (\n \n {itemData['pair:label']}\n {showCounters && }\n \n }\n value={{ [source]: itemData.id }}\n />\n ))}\n \n );\n};\n\nReferenceFilter.defaultProps = {\n limit: 25,\n showCounters: true\n};\n\nexport default ReferenceFilter;\n","import React, { useState } from 'react';\nimport { List } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListActionsWithViews from './ListActionsWithViews';\nimport ListViewContext from './ListViewContext';\n\nconst MultiViewsList = ({ children, actions, views, ListComponent, ...otherProps }) => {\n const query = new URLSearchParams(useLocation().search);\n const initialView = query.has('view') ? query.get('view') : Object.keys(views)[0];\n const [currentView, setView] = useState(initialView);\n return (\n \n \n {views[currentView].list}\n \n \n );\n};\n\nMultiViewsList.defaultProps = {\n actions: ,\n ListComponent: List\n};\n\nexport default MultiViewsList;\n","import React from 'react';\nimport { CreateButton, ExportButton, useResourceDefinition, TopToolbar, useResourceContext } from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport ViewsButtons from './ViewsButtons';\n\nconst ListActionsWithViews = ({\n bulkActions,\n basePath,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total,\n ...rest\n}) => {\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'));\n const resourceDefinition = useResourceDefinition(rest);\n return (\n \n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && }\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithViews;\n","import React from 'react';\nimport { Button, Link } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListViewContext from './ListViewContext';\n\nconst ViewsButtons = () => {\n const query = new URLSearchParams(useLocation().search);\n const { views, currentView, setView } = React.useContext(ListViewContext);\n return views\n ? Object.entries(views)\n .filter(([key]) => key !== currentView)\n .map(([key, view]) => {\n query.set('view', key);\n query.set('page', 1);\n query.set('perPage', view.perPage);\n if (view.sort) {\n query.set('sort', view.sort.field);\n query.set('order', view.sort.order);\n }\n return (\n \n \n \n );\n })\n : null;\n};\n\nexport default ViewsButtons;\n","import React from 'react';\n\nconst ListViewContext = React.createContext({ views: null, currentView: null, setView: () => null });\n\nexport default ListViewContext;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/list-components/dist/index.es.js.map b/src/frontend/packages/list-components/dist/index.es.js.map
index 7c33c6cb4..3113064e1 100644
--- a/src/frontend/packages/list-components/dist/index.es.js.map
+++ b/src/frontend/packages/list-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/list-components/src/index.js","packages/list-components/src/ChipList.js","packages/list-components/src/GridList.js","packages/list-components/src/MasonryList.js","packages/list-components/src/ReferenceFilter.js","packages/list-components/src/MultiViewsList/MultiViewsList.js","packages/list-components/src/MultiViewsList/ListActionsWithViews.js","packages/list-components/src/MultiViewsList/ViewsButtons.js","packages/list-components/src/MultiViewsList/ListViewContext.js"],"sourcesContent":["export { default as ChipList } from './ChipList';\nexport { default as GridList } from './GridList';\nexport { default as MasonryList } from './MasonryList';\nexport { default as ReferenceFilter } from './ReferenceFilter';\n\nexport { default as MultiViewsList } from './MultiViewsList/MultiViewsList';\nexport { default as ListActionsWithViews } from './MultiViewsList/ListActionsWithViews';\nexport { default as ListViewContext } from './MultiViewsList/ListViewContext';\nexport { default as ViewsButtons } from './MultiViewsList/ViewsButtons';\n","import React from 'react';\nimport {\n ChipField,\n useCreatePath,\n useListContext,\n sanitizeListRestProps,\n RecordContextProvider,\n Link\n} from 'react-admin';\nimport { LinearProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddCircleIcon from '@mui/icons-material/AddCircle';\nimport LaunchIcon from '@mui/icons-material/Launch';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(() => ({\n root: {\n display: 'flex',\n flexWrap: 'wrap'\n },\n link: {\n textDecoration: 'none',\n maxWidth: '100%'\n },\n chipField: {\n maxWidth: '100%'\n },\n addIcon: {\n cursor: 'pointer',\n fontSize: 35,\n position: 'relative',\n top: 2\n },\n launchIcon: {\n width: 20,\n paddingRight: 6,\n marginLeft: -10\n }\n}));\n\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst ChipList = props => {\n const {\n classes: classesOverride,\n className,\n children,\n linkType = 'edit',\n component = 'div',\n primaryText,\n appendLink,\n externalLinks = false,\n ...rest\n } = props;\n const { data, isLoading, resource } = useListContext(props);\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n\n const classes = useStyles(props);\n const Component = component;\n\n if (isLoading) return ;\n\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n if (externalLink) {\n return (\n \n \n }\n // Workaround to force ChipField to be clickable\n onClick={handleClick}\n // Required to display the delete icon\n onDelete={handleClick}\n />\n \n \n );\n }\n if (linkType) {\n return (\n \n \n \n \n \n );\n }\n return (\n \n \n \n );\n })}\n {appendLink && }\n \n );\n};\n\nexport default ChipList;\n","import * as React from 'react';\nimport { useListContext, useCreatePath, Link, RecordContextProvider } from 'react-admin';\nimport { Grid } from '@mui/material';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst GridList = ({ children, linkType, externalLinks, spacing, xs, sm, md, lg, xl }) => {\n const { data, resource, isLoading } = useListContext();\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n if (isLoading || !data) return null;\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n let child;\n\n if (externalLink) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n externalLink: true,\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else if (linkType) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else {\n child = children;\n }\n\n return (\n \n {child}\n \n );\n })}\n \n );\n};\n\nGridList.defaultProps = {\n xs: 6,\n spacing: 3,\n linkType: 'edit',\n externalLinks: false\n};\n\nexport default GridList;\n","import React from 'react';\nimport { useListContext, Link, useCreatePath, RecordContextProvider } from 'react-admin';\nimport { Card, CardActionArea, CardMedia, CardContent, CardActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Masonry from 'react-masonry-css';\n\nconst useStyles = makeStyles(() => ({\n grid: {\n display: 'flex',\n marginLeft: -20,\n marginBottom: -20,\n width: 'auto'\n },\n column: {\n paddingLeft: 20,\n backgroundClip: 'padding-box'\n },\n card: {\n marginBottom: 20\n },\n media: {\n height: 0,\n paddingTop: '56.25%' // 16:9\n }\n}));\n\n/**\n * @example\n * \n * record.image}\n * content={record => (\n * <>\n * {record.title}\n * {record.description}\n * >\n * )}\n * linkType=\"show\"\n * />\n *
\n */\nconst MasonryList = ({ image, content, actions, breakpointCols, linkType }) => {\n const classes = useStyles();\n const { data, resource } = useListContext();\n const createPath = useCreatePath();\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const imageUrl = typeof image === 'function' ? image(record) : image;\n return (\n \n \n \n \n {imageUrl && }\n {content && {content(record)}}\n \n \n {actions && {actions.map(action => React.createElement(action))}}\n \n \n );\n })}\n \n );\n};\n\nMasonryList.defaultProps = {\n breakpointCols: { default: 3, 1050: 2, 700: 1 },\n linkType: 'edit'\n};\n\nexport default MasonryList;\n","import React, { useEffect } from 'react';\nimport {\n FilterList,\n FilterListItem,\n useGetList,\n useResourceContext,\n useListContext,\n useResourceDefinition\n} from 'react-admin';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\n\n/**\n * @example\n * const FilterAside = () => (\n * \n * \n * \n * \n * \n * \n * \n * );\n */\n\nconst ReferenceFilterCounter = ({ source, id }) => {\n const resourceContext = useResourceContext();\n const { data, isLoading } = useGetList(resourceContext);\n return (\n <>\n \n {!isLoading && (\n {`(${\n Object.values(data).filter(d => [].concat(d[source]).includes(id)).length\n })`}\n )}\n >\n );\n};\n\nconst ReferenceFilter = ({ reference, source, inverseSource, limit, sort, filter, label, icon, showCounters }) => {\n const { data, isLoading } = useGetList(reference, { page: 1, perPage: limit }, sort, filter);\n const currentResource = useResourceDefinition({ resource: reference });\n const resourceContext = useResourceContext();\n const resourceContextDataModel = useDataModel(resourceContext);\n const resourceContextContainers = useContainers(resourceContext);\n\n const { displayedFilters, filterValues, setFilters, hideFilter } = useListContext();\n useEffect(() => {\n // Needed when filter item is active and its last relation is removed\n const urlSearchParams = new URLSearchParams(window.location.search);\n const params = Object.fromEntries(urlSearchParams.entries());\n if (!params.filter && !isLoading) {\n setFilters({});\n }\n }, []);\n\n const itemIsUsed = itemData => {\n if (!inverseSource) {\n return true;\n }\n if (!resourceContextContainers || !itemData) {\n return false;\n }\n let itemIsUsed = false;\n Object.values(resourceContextContainers).forEach(value => {\n value.forEach(containerUrl => {\n [].concat(itemData[inverseSource]).forEach(inverseSourceData => {\n if (inverseSourceData?.startsWith(containerUrl)) {\n itemIsUsed = true;\n }\n });\n });\n });\n return itemIsUsed;\n };\n\n return (\n \n {data &&\n data\n .filter(itemData => itemIsUsed(itemData))\n .map(itemData => (\n \n {itemData['pair:label']}\n {showCounters && }\n \n }\n value={{ [source]: itemData.id }}\n />\n ))}\n \n );\n};\n\nReferenceFilter.defaultProps = {\n limit: 25,\n showCounters: true\n};\n\nexport default ReferenceFilter;\n","import React, { useState } from 'react';\nimport { List } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListActionsWithViews from './ListActionsWithViews';\nimport ListViewContext from './ListViewContext';\n\nconst MultiViewsList = ({ children, actions, views, ListComponent, ...otherProps }) => {\n const query = new URLSearchParams(useLocation().search);\n const initialView = query.has('view') ? query.get('view') : Object.keys(views)[0];\n const [currentView, setView] = useState(initialView);\n return (\n \n \n {views[currentView].list}\n \n \n );\n};\n\nMultiViewsList.defaultProps = {\n actions: ,\n ListComponent: List\n};\n\nexport default MultiViewsList;\n","import React from 'react';\nimport { CreateButton, ExportButton, useResourceDefinition, TopToolbar, useResourceContext } from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport ViewsButtons from './ViewsButtons';\n\nconst ListActionsWithViews = ({\n bulkActions,\n basePath,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total,\n ...rest\n}) => {\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'));\n const resourceDefinition = useResourceDefinition(rest);\n return (\n \n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && }\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithViews;\n","import React from 'react';\nimport { Button, Link } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListViewContext from './ListViewContext';\n\nconst ViewsButtons = () => {\n const query = new URLSearchParams(useLocation().search);\n const { views, currentView, setView } = React.useContext(ListViewContext);\n return views\n ? Object.entries(views)\n .filter(([key]) => key !== currentView)\n .map(([key, view]) => {\n query.set('view', key);\n query.set('page', 1);\n query.set('perPage', view.perPage);\n if (view.sort) {\n query.set('sort', view.sort.field);\n query.set('order', view.sort.order);\n }\n return (\n \n \n \n );\n })\n : null;\n};\n\nexport default ViewsButtons;\n","import React from 'react';\n\nconst ListViewContext = React.createContext({ views: null, currentView: null, setView: () => null });\n\nexport default ListViewContext;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/list-components/src/index.js","packages/list-components/src/ChipList.js","packages/list-components/src/GridList.js","packages/list-components/src/MasonryList.js","packages/list-components/src/ReferenceFilter.js","packages/list-components/src/MultiViewsList/MultiViewsList.js","packages/list-components/src/MultiViewsList/ListActionsWithViews.js","packages/list-components/src/MultiViewsList/ViewsButtons.js","packages/list-components/src/MultiViewsList/ListViewContext.js"],"sourcesContent":["export { default as ChipList } from './ChipList';\nexport { default as GridList } from './GridList';\nexport { default as MasonryList } from './MasonryList';\nexport { default as ReferenceFilter } from './ReferenceFilter';\n\nexport { default as MultiViewsList } from './MultiViewsList/MultiViewsList';\nexport { default as ListActionsWithViews } from './MultiViewsList/ListActionsWithViews';\nexport { default as ListViewContext } from './MultiViewsList/ListViewContext';\nexport { default as ViewsButtons } from './MultiViewsList/ViewsButtons';\n","import React from 'react';\nimport {\n ChipField,\n useCreatePath,\n useListContext,\n sanitizeListRestProps,\n RecordContextProvider,\n Link\n} from 'react-admin';\nimport { LinearProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport AddCircleIcon from '@mui/icons-material/AddCircle';\nimport LaunchIcon from '@mui/icons-material/Launch';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\nconst useStyles = makeStyles(() => ({\n root: {\n display: 'flex',\n flexWrap: 'wrap'\n },\n link: {\n textDecoration: 'none',\n maxWidth: '100%'\n },\n chipField: {\n maxWidth: '100%'\n },\n addIcon: {\n cursor: 'pointer',\n fontSize: 35,\n position: 'relative',\n top: 2\n },\n launchIcon: {\n width: 20,\n paddingRight: 6,\n marginLeft: -10\n }\n}));\n\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst ChipList = props => {\n const {\n classes: classesOverride,\n className,\n children,\n linkType = 'edit',\n component = 'div',\n primaryText,\n appendLink,\n externalLinks = false,\n ...rest\n } = props;\n const { data, isLoading, resource } = useListContext(props);\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n\n const classes = useStyles(props);\n const Component = component;\n\n if (isLoading) return ;\n\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n if (externalLink) {\n return (\n \n \n }\n // Workaround to force ChipField to be clickable\n onClick={handleClick}\n // Required to display the delete icon\n onDelete={handleClick}\n />\n \n \n );\n }\n if (linkType) {\n return (\n \n \n \n \n \n );\n }\n return (\n \n \n \n );\n })}\n {appendLink && }\n \n );\n};\n\nexport default ChipList;\n","import * as React from 'react';\nimport { useListContext, useCreatePath, Link, RecordContextProvider } from 'react-admin';\nimport { Grid } from '@mui/material';\nimport { useGetExternalLink } from '@semapps/semantic-data-provider';\n\n// useful to prevent click bubbling in a datagrid with rowClick\nconst stopPropagation = e => e.stopPropagation();\n\n// Our handleClick does nothing as we wrap the children inside a Link but it is\n// required by ChipField, which uses a Chip from material-ui.\n// The material-ui Chip requires an onClick handler to behave like a clickable element.\nconst handleClick = () => {};\n\nconst GridList = ({ children, linkType, externalLinks, spacing, xs, sm, md, lg, xl }) => {\n const { data, resource, isLoading } = useListContext();\n const getExternalLink = useGetExternalLink(externalLinks);\n const createPath = useCreatePath();\n if (isLoading || !data) return null;\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const externalLink = getExternalLink(record);\n let child;\n\n if (externalLink) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n externalLink: true,\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else if (linkType) {\n child = (\n \n {React.cloneElement(React.Children.only(children), {\n // Workaround to force ChipField to be clickable\n onClick: handleClick\n })}\n \n );\n } else {\n child = children;\n }\n\n return (\n \n {child}\n \n );\n })}\n \n );\n};\n\nGridList.defaultProps = {\n xs: 6,\n spacing: 3,\n linkType: 'edit',\n externalLinks: false\n};\n\nexport default GridList;\n","import React from 'react';\nimport { useListContext, Link, useCreatePath, RecordContextProvider } from 'react-admin';\nimport { Card, CardActionArea, CardMedia, CardContent, CardActions } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Masonry from 'react-masonry-css';\n\nconst useStyles = makeStyles(() => ({\n grid: {\n display: 'flex',\n marginLeft: -20,\n marginBottom: -20,\n width: 'auto'\n },\n column: {\n paddingLeft: 20,\n backgroundClip: 'padding-box'\n },\n card: {\n marginBottom: 20\n },\n media: {\n height: 0,\n paddingTop: '56.25%' // 16:9\n }\n}));\n\n/**\n * @example\n * \n * record.image}\n * content={record => (\n * <>\n * {record.title}\n * {record.description}\n * >\n * )}\n * linkType=\"show\"\n * />\n *
\n */\nconst MasonryList = ({ image, content, actions, breakpointCols, linkType }) => {\n const classes = useStyles();\n const { data, resource } = useListContext();\n const createPath = useCreatePath();\n return (\n \n {data.map(record => {\n if (!record || record._error) return null;\n const imageUrl = typeof image === 'function' ? image(record) : image;\n return (\n \n \n \n \n {imageUrl && }\n {content && {content(record)}}\n \n \n {actions && {actions.map(action => React.createElement(action))}}\n \n \n );\n })}\n \n );\n};\n\nMasonryList.defaultProps = {\n breakpointCols: { default: 3, 1050: 2, 700: 1 },\n linkType: 'edit'\n};\n\nexport default MasonryList;\n","import React, { useEffect } from 'react';\nimport {\n FilterList,\n FilterListItem,\n useGetList,\n useResourceContext,\n useListContext,\n useResourceDefinition\n} from 'react-admin';\nimport { useContainers, useDataModel } from '@semapps/semantic-data-provider';\n\n/**\n * @example\n * const FilterAside = () => (\n * \n * \n * \n * \n * \n * \n * \n * );\n */\n\nconst ReferenceFilterCounter = ({ source, id }) => {\n const resourceContext = useResourceContext();\n const { data, isLoading } = useGetList(resourceContext);\n return (\n <>\n \n {!isLoading && (\n {`(${\n Object.values(data).filter(d => [].concat(d[source]).includes(id)).length\n })`}\n )}\n >\n );\n};\n\nconst ReferenceFilter = ({ reference, source, inverseSource, limit, sort, filter, label, icon, showCounters }) => {\n const { data, isLoading } = useGetList(reference, { page: 1, perPage: limit }, sort, filter);\n const currentResource = useResourceDefinition({ resource: reference });\n const resourceContext = useResourceContext();\n const resourceContextDataModel = useDataModel(resourceContext);\n const resourceContextContainers = useContainers(resourceContext);\n\n const { displayedFilters, filterValues, setFilters, hideFilter } = useListContext();\n useEffect(() => {\n // Needed when filter item is active and its last relation is removed\n const urlSearchParams = new URLSearchParams(window.location.search);\n const params = Object.fromEntries(urlSearchParams.entries());\n if (!params.filter && !isLoading) {\n setFilters({});\n }\n }, []);\n\n const itemIsUsed = itemData => {\n if (!inverseSource) {\n return true;\n }\n if (!resourceContextContainers || !itemData) {\n return false;\n }\n let itemIsUsed = false;\n Object.values(resourceContextContainers).forEach(value => {\n value.forEach(containerUrl => {\n [].concat(itemData[inverseSource]).forEach(inverseSourceData => {\n if (inverseSourceData?.startsWith(containerUrl)) {\n itemIsUsed = true;\n }\n });\n });\n });\n return itemIsUsed;\n };\n\n return (\n \n {data &&\n data\n .filter(itemData => itemIsUsed(itemData))\n .map(itemData => (\n \n {itemData['pair:label']}\n {showCounters && }\n \n }\n value={{ [source]: itemData.id }}\n />\n ))}\n \n );\n};\n\nReferenceFilter.defaultProps = {\n limit: 25,\n showCounters: true\n};\n\nexport default ReferenceFilter;\n","import React, { useState } from 'react';\nimport { List } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListActionsWithViews from './ListActionsWithViews';\nimport ListViewContext from './ListViewContext';\n\nconst MultiViewsList = ({ children, actions, views, ListComponent, ...otherProps }) => {\n const query = new URLSearchParams(useLocation().search);\n const initialView = query.has('view') ? query.get('view') : Object.keys(views)[0];\n const [currentView, setView] = useState(initialView);\n return (\n \n \n {views[currentView].list}\n \n \n );\n};\n\nMultiViewsList.defaultProps = {\n actions: ,\n ListComponent: List\n};\n\nexport default MultiViewsList;\n","import React from 'react';\nimport { CreateButton, ExportButton, useResourceDefinition, TopToolbar, useResourceContext } from 'react-admin';\nimport { useMediaQuery } from '@mui/material';\nimport ViewsButtons from './ViewsButtons';\n\nconst ListActionsWithViews = ({\n bulkActions,\n basePath,\n sort,\n displayedFilters,\n exporter,\n filters,\n filterValues,\n onUnselectItems,\n selectedIds,\n showFilter,\n total,\n ...rest\n}) => {\n const xs = useMediaQuery(theme => theme.breakpoints.down('sm'));\n const resourceDefinition = useResourceDefinition(rest);\n return (\n \n \n {filters &&\n React.cloneElement(filters, {\n showFilter,\n displayedFilters,\n filterValues,\n context: 'button'\n })}\n {resourceDefinition.hasCreate && }\n {!xs && exporter !== false && (\n \n )}\n {bulkActions &&\n React.cloneElement(bulkActions, {\n filterValues,\n selectedIds,\n onUnselectItems\n })}\n \n );\n};\n\nexport default ListActionsWithViews;\n","import React from 'react';\nimport { Button, Link } from 'react-admin';\nimport { useLocation } from 'react-router';\nimport ListViewContext from './ListViewContext';\n\nconst ViewsButtons = () => {\n const query = new URLSearchParams(useLocation().search);\n const { views, currentView, setView } = React.useContext(ListViewContext);\n return views\n ? Object.entries(views)\n .filter(([key]) => key !== currentView)\n .map(([key, view]) => {\n query.set('view', key);\n query.set('page', 1);\n query.set('perPage', view.perPage);\n if (view.sort) {\n query.set('sort', view.sort.field);\n query.set('order', view.sort.order);\n }\n return (\n \n \n \n );\n })\n : null;\n};\n\nexport default ViewsButtons;\n","import React from 'react';\n\nconst ListViewContext = React.createContext({ views: null, currentView: null, setView: () => null });\n\nexport default ListViewContext;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/markdown-components/dist/index.cjs.js b/src/frontend/packages/markdown-components/dist/index.cjs.js
index f0dd464a4..f057d0f1f 100644
--- a/src/frontend/packages/markdown-components/dist/index.cjs.js
+++ b/src/frontend/packages/markdown-components/dist/index.cjs.js
@@ -7,9 +7,11 @@ var $7rG7r$reactmde = require("react-mde");
var $7rG7r$muimaterial = require("@mui/material");
var $7rG7r$muimaterialstyles = require("@mui/material/styles");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
diff --git a/src/frontend/packages/markdown-components/dist/index.cjs.js.map b/src/frontend/packages/markdown-components/dist/index.cjs.js.map
index 1e7f1bb40..a11c472d7 100644
--- a/src/frontend/packages/markdown-components/dist/index.cjs.js.map
+++ b/src/frontend/packages/markdown-components/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/markdown-components/src/index.ts","packages/markdown-components/src/MarkdownField.js","packages/markdown-components/src/MarkdownInput.tsx","packages/markdown-components/src/useLoadLinks.js"],"sourcesContent":["export { default as MarkdownField } from './MarkdownField';\nexport { default as MarkdownInput } from './MarkdownInput';\nexport { default as useLoadLinks } from './useLoadLinks';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport Markdown from 'markdown-to-jsx';\nimport get from 'lodash/get';\n\nconst MarkdownField = ({ source, LabelComponent, overrides = {}, ...rest }) => {\n const record = useRecordContext();\n if (!record || !get(record, source)) return null;\n\n return (\n \n {props.label}\n {React.createElement(type, props, children)}\n >\n );\n }\n return React.createElement(type, props, children);\n },\n overrides: {\n h1: LabelComponent,\n ...overrides\n },\n ...rest\n }}\n >\n {get(record, source)}\n \n );\n};\n\nMarkdownField.defaultProps = {\n LabelComponent: 'h2'\n};\n\nexport default MarkdownField;\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useState, FunctionComponent } from 'react';\nimport ReactMde, { ReactMdeProps } from 'react-mde';\nimport Markdown, { MarkdownToJSX } from 'markdown-to-jsx';\nimport { useInput, InputHelperText, useTranslateLabel, TextInputProps } from 'react-admin';\nimport { FormControl, FormHelperText } from '@mui/material';\nimport { styled } from '@mui/material/styles';\n\nconst StyledFormControl = styled(FormControl)(({ theme }) => ({\n '& > fieldset': {\n borderWidth: 1,\n borderStyle: 'solid',\n padding: 0,\n borderRadius: theme.shape.borderRadius,\n margin: 1\n },\n\n '& > fieldset:hover': {\n borderColor: theme.palette.text.primary\n },\n\n '& > fieldset:focus-within': {\n borderColor: theme.palette.primary.main,\n borderWidth: 2,\n marginLeft: 0\n },\n\n '& > fieldset > legend': {\n color: theme.palette.text.secondary,\n marginLeft: 10,\n fontSize: theme.typography.caption.fontSize\n },\n\n '& > fieldset:focus-within > legend': {\n color: theme.palette.primary.main\n },\n\n '& .react-mde': {\n borderWidth: 0,\n borderRadius: theme.shape.borderRadius,\n marginTop: -5\n },\n\n '& .mde-header': {\n background: 'transparent'\n },\n\n '& .mde-text:focus': {\n outline: 'none'\n },\n\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n\n '&.empty': {\n '& > fieldset': {\n paddingTop: 10,\n marginTop: 9\n },\n '& > fieldset:focus-within': {\n paddingTop: 0,\n margin: 0,\n marginTop: 1\n },\n '& > fieldset > legend': {\n display: 'none'\n },\n '& > fieldset:focus-within > legend': {\n display: 'block'\n }\n },\n\n '&.validationError': {\n '& > fieldset': {\n borderColor: theme.palette.error.main\n },\n '& > fieldset > legend, & .mde-text::placeholder': {\n color: theme.palette.error.main\n },\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n '& p.MuiFormHelperText-root': {\n color: theme.palette.error.main\n }\n }\n}));\n\ntype Props = TextInputProps & {\n overrides?: MarkdownToJSX.Overrides;\n reactMdeProps?: ReactMdeProps;\n};\n\nconst MarkdownInput: FunctionComponent = props => {\n const { label, source, helperText, fullWidth, validate, overrides, reactMdeProps } = props;\n const [tab, setTab] = useState<'write' | 'preview'>('write');\n const {\n field: { value, onChange },\n fieldState: { isDirty, invalid, error, isTouched },\n formState: { isSubmitted },\n isRequired\n } = useInput({ source, validate });\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = `${translateLabel({ label, source })}${isRequired ? '*' : ''}`;\n\n return (\n \n \n \n \n \n \n );\n};\n\nexport default MarkdownInput;\n","import { useDataProvider, useTranslate } from 'react-admin';\n\nconst useLoadLinks = (resourceType, labelProp) => {\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n return async keyword => {\n if (keyword) {\n const results = await dataProvider.getList(resourceType, {\n pagination: {\n page: 1,\n perPage: 5\n },\n filter: { q: keyword }\n });\n if (results.total > 0) {\n return results.data.map(record => ({\n preview: record[labelProp],\n value: `[${record[labelProp]}](/${resourceType}/${encodeURIComponent(record.id)}/show)`\n }));\n }\n return [{ preview: translate('ra.navigation.no_results'), value: `[${keyword}` }];\n }\n return [{ preview: translate('ra.action.search'), value: `[${keyword}` }];\n };\n};\n\nexport default useLoadLinks;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/markdown-components/src/index.ts","packages/markdown-components/src/MarkdownField.js","packages/markdown-components/src/MarkdownInput.tsx","packages/markdown-components/src/useLoadLinks.js"],"sourcesContent":["export { default as MarkdownField } from './MarkdownField';\nexport { default as MarkdownInput } from './MarkdownInput';\nexport { default as useLoadLinks } from './useLoadLinks';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport Markdown from 'markdown-to-jsx';\nimport get from 'lodash/get';\n\nconst MarkdownField = ({ source, LabelComponent, overrides = {}, ...rest }) => {\n const record = useRecordContext();\n if (!record || !get(record, source)) return null;\n\n return (\n \n {props.label}\n {React.createElement(type, props, children)}\n >\n );\n }\n return React.createElement(type, props, children);\n },\n overrides: {\n h1: LabelComponent,\n ...overrides\n },\n ...rest\n }}\n >\n {get(record, source)}\n \n );\n};\n\nMarkdownField.defaultProps = {\n LabelComponent: 'h2'\n};\n\nexport default MarkdownField;\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useState, FunctionComponent } from 'react';\nimport ReactMde, { ReactMdeProps } from 'react-mde';\nimport Markdown, { MarkdownToJSX } from 'markdown-to-jsx';\nimport { useInput, InputHelperText, useTranslateLabel, TextInputProps } from 'react-admin';\nimport { FormControl, FormHelperText } from '@mui/material';\nimport { styled } from '@mui/material/styles';\n\nconst StyledFormControl = styled(FormControl)(({ theme }) => ({\n '& > fieldset': {\n borderWidth: 1,\n borderStyle: 'solid',\n padding: 0,\n borderRadius: theme.shape.borderRadius,\n margin: 1\n },\n\n '& > fieldset:hover': {\n borderColor: theme.palette.text.primary\n },\n\n '& > fieldset:focus-within': {\n borderColor: theme.palette.primary.main,\n borderWidth: 2,\n marginLeft: 0\n },\n\n '& > fieldset > legend': {\n color: theme.palette.text.secondary,\n marginLeft: 10,\n fontSize: theme.typography.caption.fontSize\n },\n\n '& > fieldset:focus-within > legend': {\n color: theme.palette.primary.main\n },\n\n '& .react-mde': {\n borderWidth: 0,\n borderRadius: theme.shape.borderRadius,\n marginTop: -5\n },\n\n '& .mde-header': {\n background: 'transparent'\n },\n\n '& .mde-text:focus': {\n outline: 'none'\n },\n\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n\n '&.empty': {\n '& > fieldset': {\n paddingTop: 10,\n marginTop: 9\n },\n '& > fieldset:focus-within': {\n paddingTop: 0,\n margin: 0,\n marginTop: 1\n },\n '& > fieldset > legend': {\n display: 'none'\n },\n '& > fieldset:focus-within > legend': {\n display: 'block'\n }\n },\n\n '&.validationError': {\n '& > fieldset': {\n borderColor: theme.palette.error.main\n },\n '& > fieldset > legend, & .mde-text::placeholder': {\n color: theme.palette.error.main\n },\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n '& p.MuiFormHelperText-root': {\n color: theme.palette.error.main\n }\n }\n}));\n\ntype Props = TextInputProps & {\n overrides?: MarkdownToJSX.Overrides;\n reactMdeProps?: ReactMdeProps;\n};\n\nconst MarkdownInput: FunctionComponent = props => {\n const { label, source, helperText, fullWidth, validate, overrides, reactMdeProps } = props;\n const [tab, setTab] = useState<'write' | 'preview'>('write');\n const {\n field: { value, onChange },\n fieldState: { isDirty, invalid, error, isTouched },\n formState: { isSubmitted },\n isRequired\n } = useInput({ source, validate });\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = `${translateLabel({ label, source })}${isRequired ? '*' : ''}`;\n\n return (\n \n \n \n \n \n \n );\n};\n\nexport default MarkdownInput;\n","import { useDataProvider, useTranslate } from 'react-admin';\n\nconst useLoadLinks = (resourceType, labelProp) => {\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n return async keyword => {\n if (keyword) {\n const results = await dataProvider.getList(resourceType, {\n pagination: {\n page: 1,\n perPage: 5\n },\n filter: { q: keyword }\n });\n if (results.total > 0) {\n return results.data.map(record => ({\n preview: record[labelProp],\n value: `[${record[labelProp]}](/${resourceType}/${encodeURIComponent(record.id)}/show)`\n }));\n }\n return [{ preview: translate('ra.navigation.no_results'), value: `[${keyword}` }];\n }\n return [{ preview: translate('ra.action.search'), value: `[${keyword}` }];\n };\n};\n\nexport default useLoadLinks;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/markdown-components/dist/index.es.js.map b/src/frontend/packages/markdown-components/dist/index.es.js.map
index 2365c5811..ea0413b3b 100644
--- a/src/frontend/packages/markdown-components/dist/index.es.js.map
+++ b/src/frontend/packages/markdown-components/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/markdown-components/src/index.ts","packages/markdown-components/src/MarkdownField.js","packages/markdown-components/src/MarkdownInput.tsx","packages/markdown-components/src/useLoadLinks.js"],"sourcesContent":["export { default as MarkdownField } from './MarkdownField';\nexport { default as MarkdownInput } from './MarkdownInput';\nexport { default as useLoadLinks } from './useLoadLinks';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport Markdown from 'markdown-to-jsx';\nimport get from 'lodash/get';\n\nconst MarkdownField = ({ source, LabelComponent, overrides = {}, ...rest }) => {\n const record = useRecordContext();\n if (!record || !get(record, source)) return null;\n\n return (\n \n {props.label}\n {React.createElement(type, props, children)}\n >\n );\n }\n return React.createElement(type, props, children);\n },\n overrides: {\n h1: LabelComponent,\n ...overrides\n },\n ...rest\n }}\n >\n {get(record, source)}\n \n );\n};\n\nMarkdownField.defaultProps = {\n LabelComponent: 'h2'\n};\n\nexport default MarkdownField;\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useState, FunctionComponent } from 'react';\nimport ReactMde, { ReactMdeProps } from 'react-mde';\nimport Markdown, { MarkdownToJSX } from 'markdown-to-jsx';\nimport { useInput, InputHelperText, useTranslateLabel, TextInputProps } from 'react-admin';\nimport { FormControl, FormHelperText } from '@mui/material';\nimport { styled } from '@mui/material/styles';\n\nconst StyledFormControl = styled(FormControl)(({ theme }) => ({\n '& > fieldset': {\n borderWidth: 1,\n borderStyle: 'solid',\n padding: 0,\n borderRadius: theme.shape.borderRadius,\n margin: 1\n },\n\n '& > fieldset:hover': {\n borderColor: theme.palette.text.primary\n },\n\n '& > fieldset:focus-within': {\n borderColor: theme.palette.primary.main,\n borderWidth: 2,\n marginLeft: 0\n },\n\n '& > fieldset > legend': {\n color: theme.palette.text.secondary,\n marginLeft: 10,\n fontSize: theme.typography.caption.fontSize\n },\n\n '& > fieldset:focus-within > legend': {\n color: theme.palette.primary.main\n },\n\n '& .react-mde': {\n borderWidth: 0,\n borderRadius: theme.shape.borderRadius,\n marginTop: -5\n },\n\n '& .mde-header': {\n background: 'transparent'\n },\n\n '& .mde-text:focus': {\n outline: 'none'\n },\n\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n\n '&.empty': {\n '& > fieldset': {\n paddingTop: 10,\n marginTop: 9\n },\n '& > fieldset:focus-within': {\n paddingTop: 0,\n margin: 0,\n marginTop: 1\n },\n '& > fieldset > legend': {\n display: 'none'\n },\n '& > fieldset:focus-within > legend': {\n display: 'block'\n }\n },\n\n '&.validationError': {\n '& > fieldset': {\n borderColor: theme.palette.error.main\n },\n '& > fieldset > legend, & .mde-text::placeholder': {\n color: theme.palette.error.main\n },\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n '& p.MuiFormHelperText-root': {\n color: theme.palette.error.main\n }\n }\n}));\n\ntype Props = TextInputProps & {\n overrides?: MarkdownToJSX.Overrides;\n reactMdeProps?: ReactMdeProps;\n};\n\nconst MarkdownInput: FunctionComponent = props => {\n const { label, source, helperText, fullWidth, validate, overrides, reactMdeProps } = props;\n const [tab, setTab] = useState<'write' | 'preview'>('write');\n const {\n field: { value, onChange },\n fieldState: { isDirty, invalid, error, isTouched },\n formState: { isSubmitted },\n isRequired\n } = useInput({ source, validate });\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = `${translateLabel({ label, source })}${isRequired ? '*' : ''}`;\n\n return (\n \n \n \n \n \n \n );\n};\n\nexport default MarkdownInput;\n","import { useDataProvider, useTranslate } from 'react-admin';\n\nconst useLoadLinks = (resourceType, labelProp) => {\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n return async keyword => {\n if (keyword) {\n const results = await dataProvider.getList(resourceType, {\n pagination: {\n page: 1,\n perPage: 5\n },\n filter: { q: keyword }\n });\n if (results.total > 0) {\n return results.data.map(record => ({\n preview: record[labelProp],\n value: `[${record[labelProp]}](/${resourceType}/${encodeURIComponent(record.id)}/show)`\n }));\n }\n return [{ preview: translate('ra.navigation.no_results'), value: `[${keyword}` }];\n }\n return [{ preview: translate('ra.action.search'), value: `[${keyword}` }];\n };\n};\n\nexport default useLoadLinks;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/markdown-components/src/index.ts","packages/markdown-components/src/MarkdownField.js","packages/markdown-components/src/MarkdownInput.tsx","packages/markdown-components/src/useLoadLinks.js"],"sourcesContent":["export { default as MarkdownField } from './MarkdownField';\nexport { default as MarkdownInput } from './MarkdownInput';\nexport { default as useLoadLinks } from './useLoadLinks';\n","import React from 'react';\nimport { useRecordContext } from 'react-admin';\nimport Markdown from 'markdown-to-jsx';\nimport get from 'lodash/get';\n\nconst MarkdownField = ({ source, LabelComponent, overrides = {}, ...rest }) => {\n const record = useRecordContext();\n if (!record || !get(record, source)) return null;\n\n return (\n \n {props.label}\n {React.createElement(type, props, children)}\n >\n );\n }\n return React.createElement(type, props, children);\n },\n overrides: {\n h1: LabelComponent,\n ...overrides\n },\n ...rest\n }}\n >\n {get(record, source)}\n \n );\n};\n\nMarkdownField.defaultProps = {\n LabelComponent: 'h2'\n};\n\nexport default MarkdownField;\n","/* eslint-disable react/react-in-jsx-scope */\n/* eslint-disable react/require-default-props */\nimport { useState, FunctionComponent } from 'react';\nimport ReactMde, { ReactMdeProps } from 'react-mde';\nimport Markdown, { MarkdownToJSX } from 'markdown-to-jsx';\nimport { useInput, InputHelperText, useTranslateLabel, TextInputProps } from 'react-admin';\nimport { FormControl, FormHelperText } from '@mui/material';\nimport { styled } from '@mui/material/styles';\n\nconst StyledFormControl = styled(FormControl)(({ theme }) => ({\n '& > fieldset': {\n borderWidth: 1,\n borderStyle: 'solid',\n padding: 0,\n borderRadius: theme.shape.borderRadius,\n margin: 1\n },\n\n '& > fieldset:hover': {\n borderColor: theme.palette.text.primary\n },\n\n '& > fieldset:focus-within': {\n borderColor: theme.palette.primary.main,\n borderWidth: 2,\n marginLeft: 0\n },\n\n '& > fieldset > legend': {\n color: theme.palette.text.secondary,\n marginLeft: 10,\n fontSize: theme.typography.caption.fontSize\n },\n\n '& > fieldset:focus-within > legend': {\n color: theme.palette.primary.main\n },\n\n '& .react-mde': {\n borderWidth: 0,\n borderRadius: theme.shape.borderRadius,\n marginTop: -5\n },\n\n '& .mde-header': {\n background: 'transparent'\n },\n\n '& .mde-text:focus': {\n outline: 'none'\n },\n\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n\n '&.empty': {\n '& > fieldset': {\n paddingTop: 10,\n marginTop: 9\n },\n '& > fieldset:focus-within': {\n paddingTop: 0,\n margin: 0,\n marginTop: 1\n },\n '& > fieldset > legend': {\n display: 'none'\n },\n '& > fieldset:focus-within > legend': {\n display: 'block'\n }\n },\n\n '&.validationError': {\n '& > fieldset': {\n borderColor: theme.palette.error.main\n },\n '& > fieldset > legend, & .mde-text::placeholder': {\n color: theme.palette.error.main\n },\n '& .mde-text:focus::placeholder': {\n color: 'transparent'\n },\n '& p.MuiFormHelperText-root': {\n color: theme.palette.error.main\n }\n }\n}));\n\ntype Props = TextInputProps & {\n overrides?: MarkdownToJSX.Overrides;\n reactMdeProps?: ReactMdeProps;\n};\n\nconst MarkdownInput: FunctionComponent = props => {\n const { label, source, helperText, fullWidth, validate, overrides, reactMdeProps } = props;\n const [tab, setTab] = useState<'write' | 'preview'>('write');\n const {\n field: { value, onChange },\n fieldState: { isDirty, invalid, error, isTouched },\n formState: { isSubmitted },\n isRequired\n } = useInput({ source, validate });\n\n const translateLabel = useTranslateLabel();\n const translatedLabel = `${translateLabel({ label, source })}${isRequired ? '*' : ''}`;\n\n return (\n \n \n \n \n \n \n );\n};\n\nexport default MarkdownInput;\n","import { useDataProvider, useTranslate } from 'react-admin';\n\nconst useLoadLinks = (resourceType, labelProp) => {\n const dataProvider = useDataProvider();\n const translate = useTranslate();\n return async keyword => {\n if (keyword) {\n const results = await dataProvider.getList(resourceType, {\n pagination: {\n page: 1,\n perPage: 5\n },\n filter: { q: keyword }\n });\n if (results.total > 0) {\n return results.data.map(record => ({\n preview: record[labelProp],\n value: `[${record[labelProp]}](/${resourceType}/${encodeURIComponent(record.id)}/show)`\n }));\n }\n return [{ preview: translate('ra.navigation.no_results'), value: `[${keyword}` }];\n }\n return [{ preview: translate('ra.action.search'), value: `[${keyword}` }];\n };\n};\n\nexport default useLoadLinks;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/markdown-components/package.json b/src/frontend/packages/markdown-components/package.json
index c978d1dbe..5c8318091 100644
--- a/src/frontend/packages/markdown-components/package.json
+++ b/src/frontend/packages/markdown-components/package.json
@@ -30,11 +30,8 @@
"access": "public"
},
"devDependencies": {
- "@mui/material": "^5.13.1",
"@parcel/packager-ts": "^2.9.3",
"@parcel/transformer-typescript-types": "^2.9.3",
- "parcel": "^2.9.3",
- "react": "^18.2.0",
- "react-admin": "^4.11.0"
+ "parcel": "^2.9.3"
}
}
diff --git a/src/frontend/packages/semantic-data-provider/dist/index.cjs.js b/src/frontend/packages/semantic-data-provider/dist/index.cjs.js
index 008db519c..35ad4f10b 100644
--- a/src/frontend/packages/semantic-data-provider/dist/index.cjs.js
+++ b/src/frontend/packages/semantic-data-provider/dist/index.cjs.js
@@ -11,9 +11,11 @@ var $3pVuQ$react = require("react");
var $3pVuQ$reactjsxruntime = require("react/jsx-runtime");
var $3pVuQ$muistylesmakeStyles = require("@mui/styles/makeStyles");
+
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
+
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
diff --git a/src/frontend/packages/semantic-data-provider/dist/index.cjs.js.map b/src/frontend/packages/semantic-data-provider/dist/index.cjs.js.map
index c55ceed7b..f9905f3aa 100644
--- a/src/frontend/packages/semantic-data-provider/dist/index.cjs.js.map
+++ b/src/frontend/packages/semantic-data-provider/dist/index.cjs.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/semantic-data-provider/src/index.js","packages/semantic-data-provider/src/dataProvider/dataProvider.js","packages/semantic-data-provider/src/dataProvider/methods/create.js","packages/semantic-data-provider/src/dataProvider/methods/getOne.js","packages/semantic-data-provider/src/dataProvider/utils/fetchResource.js","packages/semantic-data-provider/src/dataProvider/utils/uploadAllFiles.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithTypes.js","packages/semantic-data-provider/src/dataProvider/utils/parseServerKeys.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromType.js","packages/semantic-data-provider/src/dataProvider/methods/delete.js","packages/semantic-data-provider/src/dataProvider/methods/deleteMany.js","packages/semantic-data-provider/src/dataProvider/methods/getDataServers.js","packages/semantic-data-provider/src/dataProvider/methods/getDataModels.js","packages/semantic-data-provider/src/dataProvider/methods/getList.js","packages/semantic-data-provider/src/dataProvider/utils/fetchContainers.js","packages/semantic-data-provider/src/dataProvider/utils/fetchSparqlEndpoints.js","packages/semantic-data-provider/src/dataProvider/utils/getEmbedFrame.js","packages/semantic-data-provider/src/dataProvider/utils/buildSparqlQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildBaseQuery.js","packages/semantic-data-provider/src/dataProvider/utils/resolvePrefix.js","packages/semantic-data-provider/src/dataProvider/utils/buildBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildAutoDetectBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithPath.js","packages/semantic-data-provider/src/dataProvider/methods/getMany.js","packages/semantic-data-provider/src/dataProvider/methods/getManyReference.js","packages/semantic-data-provider/src/dataProvider/methods/update.js","packages/semantic-data-provider/src/dataProvider/utils/fetchUserConfig.js","packages/semantic-data-provider/src/dataProvider/utils/fetchVoidEndpoints.js","packages/semantic-data-provider/src/dataProvider/httpClient.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromUri.js","packages/semantic-data-provider/src/hooks/useGetExternalLink.js","packages/semantic-data-provider/src/hooks/useContainers.js","packages/semantic-data-provider/src/hooks/useDataModel.js","packages/semantic-data-provider/src/hooks/useDataServers.js","packages/semantic-data-provider/src/hooks/useCreateContainer.js","packages/semantic-data-provider/src/dataProvider/utils/findCreateContainerWithTypes.js","packages/semantic-data-provider/src/hooks/useDataModels.js","packages/semantic-data-provider/src/reification/FilterHandler.js","packages/semantic-data-provider/src/reification/GroupedReferenceHandler.js","packages/semantic-data-provider/src/reification/ReificationArrayInput.js"],"sourcesContent":["export { default as dataProvider } from './dataProvider/dataProvider';\n\nexport { default as buildSparqlQuery } from './dataProvider/utils/buildSparqlQuery';\nexport { default as buildBlankNodesQuery } from './dataProvider/utils/buildBlankNodesQuery';\n\nexport { default as useGetExternalLink } from './hooks/useGetExternalLink';\nexport { default as useContainers } from './hooks/useContainers';\nexport { default as useCreateContainer } from './hooks/useCreateContainer';\nexport { default as useDataModel } from './hooks/useDataModel';\nexport { default as useDataModels } from './hooks/useDataModels';\nexport { default as useDataServers } from './hooks/useDataServers';\n\nexport { default as FilterHandler } from './reification/FilterHandler';\nexport { default as GroupedReferenceHandler } from './reification/GroupedReferenceHandler';\nexport { default as ReificationArrayInput } from './reification/ReificationArrayInput';\n","import createMethod from './methods/create';\nimport deleteMethod from './methods/delete';\nimport deleteManyMethod from './methods/deleteMany';\nimport getDataServersMethod from './methods/getDataServers';\nimport getDataModelsMethod from './methods/getDataModels';\nimport getListMethod from './methods/getList';\nimport getManyMethod from './methods/getMany';\nimport getManyReferenceMethod from './methods/getManyReference';\nimport getOneMethod from './methods/getOne';\nimport updateMethod from './methods/update';\nimport fetchUserConfig from './utils/fetchUserConfig';\nimport fetchVoidEndpoints from './utils/fetchVoidEndpoints';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\nimport httpClient from './httpClient';\n\nconst dataProvider = config => {\n // TODO verify all data provider config + data models\n if (!getServerKeyFromType('default', config.dataServers))\n throw new Error('You must define a default server in your dataServers config');\n\n if (!config.jsonContext) config.jsonContext = Object.fromEntries(config.ontologies.map(o => [o.prefix, o.url]));\n if (!config.returnFailedResources) config.returnFailedResources = false;\n\n // Configure httpClient with data servers (this is needed for proxy calls)\n config.httpClient = httpClient(config.dataServers);\n\n const fetchUserConfigPromise = fetchUserConfig(config);\n const fetchVoidEndpointsPromise = fetchVoidEndpoints(config);\n\n const waitForVoidEndpoints =\n method =>\n async (...arg) => {\n await fetchUserConfigPromise;\n await fetchVoidEndpointsPromise; // Return immediately if promise is fulfilled\n return await method(...arg);\n };\n\n return {\n getList: waitForVoidEndpoints(getListMethod(config)),\n getMany: waitForVoidEndpoints(getManyMethod(config)),\n getManyReference: waitForVoidEndpoints(getManyReferenceMethod(config)),\n getOne: waitForVoidEndpoints(getOneMethod(config)),\n create: waitForVoidEndpoints(createMethod(config)),\n update: waitForVoidEndpoints(updateMethod(config)),\n updateMany: () => {\n throw new Error('updateMany is not implemented yet');\n },\n delete: waitForVoidEndpoints(deleteMethod(config)),\n deleteMany: waitForVoidEndpoints(deleteManyMethod(config)),\n // Custom methods\n getDataModels: waitForVoidEndpoints(getDataModelsMethod(config)),\n getDataServers: waitForVoidEndpoints(getDataServersMethod(config)),\n getLocalDataServers: getDataServersMethod(config),\n fetch: waitForVoidEndpoints(config.httpClient)\n };\n};\n\nexport default dataProvider;\n","import urlJoin from 'url-join';\nimport getOne from './getOne';\nimport uploadAllFiles from '../utils/uploadAllFiles';\nimport findContainersWithTypes from '../utils/findContainersWithTypes';\n\nconst createMethod = config => async (resourceId, params) => {\n const { dataServers, resources, httpClient, jsonContext } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const headers = new Headers();\n\n let containerUri;\n let serverKey;\n if (dataModel.create?.container) {\n serverKey = Object.keys(dataModel.create.container)[0];\n containerUri = urlJoin(dataServers[serverKey].baseUrl, Object.values(dataModel.create.container)[0]);\n } else {\n serverKey = dataModel.create?.server || Object.keys(dataServers).find(key => dataServers[key].default === true);\n if (!serverKey) throw new Error('You must define a server for the creation, or a container, or a default server');\n\n const containers = findContainersWithTypes(dataModel.types, [serverKey], dataServers);\n // Extract the containerUri from the results (and ensure there is only one)\n const serverKeys = Object.keys(containers);\n\n if (!serverKeys || serverKeys.length === 0)\n throw new Error(`No container with types ${JSON.stringify(dataModel.types)} found on server ${serverKey}`);\n if (serverKeys.length > 1 || containers[serverKeys[0]].length > 1)\n throw new Error(\n `More than one container detected with types ${JSON.stringify(dataModel.types)} on server ${serverKey}`\n );\n containerUri = containers[serverKeys[0]][0];\n }\n\n if (params.data) {\n if (dataModel.fieldsMapping?.title) {\n if (Array.isArray(dataModel.fieldsMapping.title)) {\n headers.set('Slug', dataModel.fieldsMapping.title.map(f => params.data[f]).join(' '));\n } else {\n headers.set('Slug', params.data[dataModel.fieldsMapping.title]);\n }\n }\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n const { headers: responseHeaders } = await httpClient(containerUri, {\n method: 'POST',\n headers,\n body: JSON.stringify({\n '@context': jsonContext,\n '@type': dataModel.types,\n ...params.data\n })\n });\n\n // Retrieve newly-created resource\n const resourceUri = responseHeaders.get('Location');\n return await getOne(config)(resourceId, { id: resourceUri });\n }\n if (params.id) {\n headers.set('Content-Type', 'application/sparql-update');\n\n await httpClient(containerUri, {\n method: 'PATCH',\n headers,\n body: `\n PREFIX ldp: \n INSERT DATA { <${containerUri}> ldp:contains <${params.id}>. };\n `\n });\n\n // Create must return the new data, so get them from the remote URI\n return await getOne(config)(resourceId, { id: params.id });\n }\n};\n\nexport default createMethod;\n","import fetchResource from '../utils/fetchResource';\n\nconst getOneMethod = config => async (resourceId, params) => {\n const { resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const data = await fetchResource(params.id, config);\n\n // Transform single value into array if forceArray is set\n if (dataModel.list?.forceArray) {\n for (const forceArrayItem of dataModel.list?.forceArray || []) {\n if (data[forceArrayItem] && !Array.isArray(data[forceArrayItem])) {\n data[forceArrayItem] = [data[forceArrayItem]];\n }\n }\n }\n\n // TODO activate defaultFetchPlan option\n // if (dataModel.list?.defaultFetchPlan) {\n // for (const node of dataModel.list?.defaultFetchPlan) {\n // if (\n // data[node] &&\n // typeof data[node] === 'string' &&\n // data[node].startsWith('http')\n // ) {\n // try {\n // const dataToEmbed = await fetchResource(data[node], config);\n // delete dataToEmbed['@context'];\n // data[node] = dataToEmbed;\n // } catch (e) {\n // // Ignore errors (this may happen if user does not have rights to see the resource)\n // }\n // }\n // }\n // }\n\n return { data };\n};\n\nexport default getOneMethod;\n","import jsonld from 'jsonld';\n\nconst fetchResource = async (resourceUri, config) => {\n const { httpClient, jsonContext } = config;\n\n let { json: data } = await httpClient(resourceUri);\n\n if (!data) throw new Error(`Not a valid JSON: ${resourceUri}`);\n\n data.id = data.id || data['@id'];\n\n // We compact only if the context is different between the frontend and the middleware\n // TODO deep compare if the context is an object\n if (data['@context'] !== jsonContext) {\n data = await jsonld.compact(data, jsonContext);\n }\n\n return data;\n};\n\nexport default fetchResource;\n","import createSlug from 'speakingurl';\nimport urlJoin from 'url-join';\n\nexport const getSlugWithExtension = fileName => {\n let fileExtension = '';\n const splitFileName = fileName.split('.');\n if (splitFileName.length > 1) {\n fileExtension = splitFileName.pop();\n fileName = splitFileName.join('.');\n }\n return `${createSlug(fileName, { lang: 'fr' })}.${fileExtension}`;\n};\n\nexport const isFile = o => o?.rawFile && o.rawFile instanceof File;\n\nconst getUploadsContainerUri = config => {\n const serverKey = Object.keys(config.dataServers).find(key => config.dataServers[key].uploadsContainer);\n if (serverKey) {\n return urlJoin(config.dataServers[serverKey].baseUrl, config.dataServers[serverKey].uploadsContainer);\n }\n};\n\nconst uploadFile = async (rawFile, config) => {\n const uploadsContainerUri = getUploadsContainerUri(config);\n if (!uploadsContainerUri) throw new Error(\"You must define an uploadsContainer in one of the server's configuration\");\n\n const response = await config.httpClient(uploadsContainerUri, {\n method: 'POST',\n body: rawFile,\n headers: new Headers({\n // We must sluggify the file name, because we can't use non-ASCII characters in the header\n // However we keep the extension apart (if it exists) so that it is not replaced with a -\n // TODO let the middleware guess the extension based on the content type\n Slug: getSlugWithExtension(rawFile.name),\n 'Content-Type': rawFile.type\n })\n });\n\n if (response.status === 201) {\n return response.headers.get('Location');\n }\n};\n\n/*\n * Look for raw files in the record data.\n * If there are any, upload them and replace the file by its URL.\n */\nconst uploadAllFiles = async (record, config) => {\n for (const property in record) {\n if (Object.prototype.hasOwnProperty.call(record, property)) {\n if (Array.isArray(record[property])) {\n for (let i = 0; i < record[property].length; i++) {\n if (isFile(record[property][i])) {\n record[property][i] = await uploadFile(record[property][i].rawFile, config);\n }\n }\n } else if (isFile(record[property])) {\n record[property] = await uploadFile(record[property].rawFile, config);\n }\n }\n }\n return record;\n};\n\nexport default uploadAllFiles;\n","import urlJoin from 'url-join';\nimport parseServerKeys from './parseServerKeys';\n\nconst findContainersWithTypes = (types, serverKeys, dataServers) => {\n const containers = {};\n const existingContainers = [];\n\n serverKeys = parseServerKeys(serverKeys, dataServers);\n\n Object.keys(dataServers).forEach(key1 => {\n Object.keys(dataServers[key1].containers).forEach(key2 => {\n if (!serverKeys || serverKeys.includes(key2)) {\n Object.keys(dataServers[key1].containers[key2]).forEach(type => {\n if (types.includes(type)) {\n dataServers[key1].containers[key2][type].map(path => {\n const containerUri = urlJoin(dataServers[key2].baseUrl, path);\n\n // Avoid returning the same container several times\n if (!existingContainers.includes(containerUri)) {\n existingContainers.push(containerUri);\n\n if (!containers[key1]) containers[key1] = [];\n containers[key1].push(containerUri);\n }\n });\n }\n });\n }\n });\n });\n return containers;\n};\n\nexport default findContainersWithTypes;\n","import getServerKeyFromType from './getServerKeyFromType';\n\nconst parseServerKey = (serverKey, dataServers) => {\n switch (serverKey) {\n case '@default':\n return getServerKeyFromType('default', dataServers);\n case '@pod':\n return getServerKeyFromType('pod', dataServers);\n case '@authServer':\n return getServerKeyFromType('authServer', dataServers);\n default:\n return serverKey;\n }\n};\n\n// Return the list of servers keys in an array\n// parsing keywords like @all, @default, @pod and @authServer\nconst parseServerKeys = (serverKeys, dataServers) => {\n if (Array.isArray(serverKeys)) {\n if (serverKeys.includes('@all')) {\n return Object.keys(dataServers);\n }\n return serverKeys.map(serverKey => parseServerKey(serverKey, dataServers));\n }\n if (typeof serverKeys === 'string') {\n if (serverKeys === '@all') {\n return Object.keys(dataServers);\n }\n if (serverKeys === '@remote') {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n return Object.keys(dataServers).filter(serverKey => serverKey !== defaultServerKey);\n }\n return [parseServerKey(serverKeys, dataServers)];\n }\n // If server key is empty\n return false;\n};\n\nexport default parseServerKeys;\n","const getServerKeyFromType = (type, dataServers) => {\n return Object.keys(dataServers).find(key => {\n return dataServers[key][type];\n });\n};\n\nexport default getServerKeyFromType;\n","const deleteMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n\n await httpClient(params.id, {\n method: 'DELETE'\n });\n\n return { data: { id: params.id } };\n};\n\nexport default deleteMethod;\n","const deleteManyMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n const ids = [];\n\n for (const id of params.ids) {\n try {\n await httpClient(id, {\n method: 'DELETE'\n });\n ids.push(id);\n } catch (e) {\n // Do nothing if we fail to delete a resource\n }\n }\n\n return { data: ids };\n};\n\nexport default deleteManyMethod;\n","const getDataServers = config => () => {\n return config.dataServers;\n};\n\nexport default getDataServers;\n","const getDataModels = config => () => {\n return config.resources;\n};\n\nexport default getDataModels;\n","import findContainersWithTypes from '../utils/findContainersWithTypes';\nimport fetchContainers from '../utils/fetchContainers';\nimport fetchSparqlEndpoints from '../utils/fetchSparqlEndpoints';\nimport findContainersWithPaths from '../utils/findContainersWithPath';\n\nconst getListMethod =\n config =>\n async (resourceId, params = {}) => {\n const { dataServers, resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n let containers;\n if (!params.filter?._servers && dataModel.list?.containers) {\n if (Array.isArray(dataModel.list?.containers))\n throw new Error(\n `The list.containers property of ${resourceId} dataModel must be of type object ({ serverKey: [containerUri] })`\n );\n // If containers are set explicitly, use them\n containers = findContainersWithPaths(dataModel.list.containers, dataServers);\n } else {\n // Otherwise find the container URIs on the given servers (either in the filter or the data model)\n containers = findContainersWithTypes(\n dataModel.types,\n params.filter?._servers || dataModel.list?.servers,\n dataServers\n );\n }\n\n if (dataModel.list?.fetchContainer) {\n return fetchContainers(containers, resourceId, params, config);\n }\n return fetchSparqlEndpoints(containers, resourceId, params, config);\n };\n\nexport default getListMethod;\n","import jsonld from 'jsonld';\nimport isobject from 'isobject';\n\nexport const isType = (type, resource) => {\n const resourceType = resource.type || resource['@type'];\n return Array.isArray(resourceType) ? resourceType.includes(type) : resourceType === type;\n};\n\nconst fetchContainers = async (containers, resourceId, params, config) => {\n const { httpClient, jsonContext } = config;\n\n // Transform in an containerUri:serverKey object\n const containersServers = Object.keys(containers).reduce(\n (acc, serverKey) => ({\n ...acc,\n ...Object.fromEntries(containers[serverKey].map(containerUri => [containerUri, serverKey]))\n }),\n {}\n );\n\n const fetchPromises = Object.keys(containersServers).map(containerUri =>\n httpClient(containerUri)\n .then(({ json }) => {\n // If container's context is different, compact it to have an uniform result\n // TODO deep compare if the context is an object\n if (json['@context'] !== jsonContext) {\n return jsonld.compact(json, jsonContext);\n }\n return json;\n })\n .then(json => {\n if (isType('ldp:Container', json)) {\n return json['ldp:contains'];\n }\n throw new Error(`${containerUri} is not a LDP container`);\n })\n );\n\n // Fetch simultaneously all containers\n let results = await Promise.all(fetchPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat.apply(...results);\n\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // Apply filter to results\n if (params.filter) {\n // For SPARQL queries, we use \"a\" to filter types, but in containers it must be \"type\"\n if (params.filter.a) {\n params.filter.type = params.filter.a;\n delete params.filter.a;\n }\n\n if (Object.keys(params.filter).length > 0) {\n returnData = returnData.filter(resource => {\n return Object.entries(params.filter).every(([k, v]) => {\n if (k == 'q') {\n return Object.entries(resource).some(([kr, vr]) => {\n if (!isobject(vr)) {\n const arrayValues = Array.isArray(vr) ? vr : [vr];\n return arrayValues.some(va => {\n if (typeof va === 'string' || va instanceof String) {\n return va.toLowerCase().normalize('NFD').includes(v.toLowerCase().normalize('NFD'));\n }\n });\n }\n return false;\n });\n }\n if (resource[k]) {\n return Array.isArray(resource[k]) ? resource[k].some(va => va.includes(v)) : resource[k].includes(v);\n }\n return false;\n });\n });\n }\n }\n\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] && b[params.sort.field]) {\n if (params.sort.order === 'ASC') {\n return a[params.sort.field].localeCompare(b[params.sort.field]);\n }\n return b[params.sort.field].localeCompare(a[params.sort.field]);\n }\n return true;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchContainers;\n","import jsonld from 'jsonld';\nimport getEmbedFrame from './getEmbedFrame';\nimport buildSparqlQuery from './buildSparqlQuery';\n\nconst compare = (a, b) => {\n switch (typeof a) {\n case 'string':\n return a.localeCompare(b);\n case 'number':\n case 'bigint':\n return a - b;\n default:\n return 0;\n }\n};\n\nconst fetchSparqlEndpoints = async (containers, resourceId, params, config) => {\n const { dataServers, resources, httpClient, jsonContext, ontologies } = config;\n const dataModel = resources[resourceId];\n\n const sparqlQueryPromises = Object.keys(containers).map(\n serverKey =>\n new Promise((resolve, reject) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n\n // When the SPARQL request comes from the browser's URL, it comes as JSON string which must must be parsed\n if (\n params.filter?.sparqlWhere &&\n (typeof params.filter.sparqlWhere === 'string' || params.filter.sparqlWhere instanceof String)\n ) {\n params.filter.sparqlWhere = JSON.parse(decodeURIComponent(params.filter.sparqlWhere));\n }\n const sparqlQuery = buildSparqlQuery({\n containers: containers[serverKey],\n params,\n dataModel,\n ontologies\n });\n\n httpClient(dataServers[serverKey].sparqlEndpoint, {\n method: 'POST',\n body: sparqlQuery\n })\n .then(({ json }) => {\n // By default, embed only the blank nodes we explicitly asked to dereference\n // Otherwise we may have same-type resources embedded in other resources\n // To increase performances, you can set explicitEmbedOnFraming to false (make sure the result is still OK)\n const frame =\n dataModel.list?.explicitEmbedOnFraming !== false\n ? {\n '@context': jsonContext,\n '@type': dataModel.types,\n '@embed': '@never',\n ...getEmbedFrame(blankNodes)\n }\n : {\n '@context': jsonContext,\n '@type': dataModel.types\n };\n\n // omitGraph option force results to be in a @graph, even if we have a single result\n return jsonld.frame(json, frame, { omitGraph: false });\n })\n .then(compactJson => {\n if (compactJson['@id']) {\n const { '@context': context, ...rest } = compactJson;\n compactJson = {\n '@context': context,\n '@graph': [rest]\n };\n }\n resolve(compactJson['@graph'] || []);\n })\n .catch(e => reject(e));\n })\n );\n\n // Run simultaneous SPARQL queries\n let results = await Promise.all(sparqlQueryPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat(...results);\n\n // Add id in addition to @id, as this is what React-Admin expects\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // TODO sort and paginate the results in the SPARQL query to improve performances\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] !== undefined && b[params.sort.field] !== undefined) {\n if (params.sort.order === 'ASC') {\n return compare(a[params.sort.field], b[params.sort.field]);\n }\n return compare(b[params.sort.field], a[params.sort.field]);\n }\n return 0;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchSparqlEndpoints;\n","const getEmbedFrame = blankNodes => {\n let embedFrame = {};\n let predicates;\n if (blankNodes) {\n for (const blankNode of blankNodes) {\n if (blankNode.includes('/')) {\n predicates = blankNode.split('/').reverse();\n } else {\n predicates = [blankNode];\n }\n embedFrame = {\n ...embedFrame,\n ...predicates.reduce(\n (accumulator, predicate) => ({\n [predicate]: {\n '@embed': '@last',\n ...accumulator\n }\n }),\n {}\n )\n };\n }\n return embedFrame;\n }\n};\n\nexport default getEmbedFrame;\n","import DataFactory from '@rdfjs/data-model';\nimport { Generator as SparqlGenerator } from 'sparqljs';\nimport buildBaseQuery from './buildBaseQuery';\nimport buildBlankNodesQuery from './buildBlankNodesQuery';\nimport buildAutoDetectBlankNodesQuery from './buildAutoDetectBlankNodesQuery';\nimport resolvePrefix from './resolvePrefix';\n\nconst { literal, namedNode, triple, variable } = DataFactory;\n\nconst generator = new SparqlGenerator({\n /* prefixes, baseIRI, factory, sparqlStar */\n});\n\nconst reservedFilterKeys = ['q', 'sparqlWhere', 'blankNodes', 'blankNodesDepth', '_servers', '_predicates'];\n\nconst buildSparqlQuery = ({ containers, params, dataModel, ontologies }) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n const predicates = params.filter?._predicates || dataModel.list?.predicates;\n const blankNodesDepth = params.filter?.blankNodesDepth ?? dataModel.list?.blankNodesDepth ?? 2;\n const filter = { ...dataModel.list?.filter, ...params.filter };\n const baseQuery = buildBaseQuery(predicates, ontologies);\n\n const sparqlJsParams = {\n queryType: 'CONSTRUCT',\n template: baseQuery.construct,\n where: [],\n type: 'query',\n prefixes: Object.fromEntries(ontologies.map(ontology => [ontology.prefix, ontology.url]))\n };\n\n const containerWhere = [\n {\n type: 'values',\n values: containers.map(containerUri => ({ '?containerUri': namedNode(containerUri) }))\n },\n triple(variable('containerUri'), namedNode('http://www.w3.org/ns/ldp#contains'), variable('s1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isiri',\n args: [variable('s1')]\n }\n }\n ];\n\n let resourceWhere = [];\n\n if (filter && Object.keys(filter).length > 0) {\n const hasSPARQLFilter = filter.sparqlWhere && Object.keys(filter.sparqlWhere).length > 0;\n const hasFullTextSearch = filter.q && filter.q.length > 0;\n\n if (hasSPARQLFilter) {\n /* \n Example of usage :\n {\n \"sparqlWhere\": {\n \"type\": \"bgp\",\n \"triples\": [{\n \"subject\": {\"termType\": \"Variable\", \"value\": \"s1\"},\n \"predicate\": {\"termType\": \"NameNode\", \"value\": \"http://virtual-assembly.org/ontologies/pair#label\"},\n \"object\": {\"termType\": \"Literal\", \"value\": \"My Organization\"}\n }]\n }\n }\n */\n // initialize array in case of single value :\n [].concat(filter.sparqlWhere).forEach(sw => {\n resourceWhere.push(sw);\n });\n }\n\n if (hasFullTextSearch) {\n resourceWhere.push({\n type: 'group',\n patterns: [\n {\n queryType: 'SELECT',\n variables: [variable('s1')],\n where: [\n triple(variable('s1'), variable('p1'), variable('o1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isliteral',\n args: [variable('o1')]\n }\n },\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'regex',\n args: [\n {\n type: 'operation',\n operator: 'lcase',\n args: [\n {\n type: 'operation',\n operator: 'str',\n args: [variable('o1')]\n }\n ]\n },\n literal(filter.q.toLowerCase(), '', namedNode('http://www.w3.org/2001/XMLSchema#string'))\n ]\n }\n }\n ],\n type: 'query'\n }\n ]\n });\n }\n\n // Other filters\n // SPARQL keyword a = filter based on the class of a resource (example => 'a': 'pair:OrganizationType')\n // Other filters are based on a value (example => 'petr:hasAudience': 'http://localhost:3000/audiences/tout-public')\n Object.entries(filter).forEach(([predicate, object]) => {\n if (!reservedFilterKeys.includes(predicate)) {\n resourceWhere.unshift(\n triple(\n variable('s1'),\n namedNode(resolvePrefix(predicate, ontologies)),\n namedNode(resolvePrefix(object, ontologies))\n )\n );\n }\n });\n }\n\n // Blank nodes\n const blankNodesQuery = blankNodes\n ? buildBlankNodesQuery(blankNodes, baseQuery, ontologies)\n : buildAutoDetectBlankNodesQuery(blankNodesDepth, baseQuery);\n\n if (blankNodesQuery && blankNodesQuery.construct) {\n resourceWhere = resourceWhere.concat(blankNodesQuery.where);\n sparqlJsParams.template = sparqlJsParams.template.concat(blankNodesQuery.construct);\n } else {\n resourceWhere.push(baseQuery.where);\n }\n\n sparqlJsParams.where.push(\n {\n type: 'union',\n patterns: [\n containerWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: containerWhere\n }\n ]\n },\n {\n type: 'union',\n patterns: [\n resourceWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: resourceWhere\n }\n ]\n }\n );\n\n return generator.stringify(sparqlJsParams);\n};\n\nexport default buildSparqlQuery;\n","import { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\nconst defaultToArray = value => (!value ? [] : Array.isArray(value) ? value : [value]);\n\n// We need to always include the type or React-Admin will not work properly\nconst typeQuery = triple(\n variable('s1'),\n namedNode('http://www.w3.org/1999/02/22-rdf-syntax-ns#type'),\n variable('type')\n);\n\nconst buildBaseQuery = (predicates, ontologies) => {\n let baseTriples;\n if (predicates) {\n baseTriples = defaultToArray(predicates).map((predicate, i) =>\n triple(variable('s1'), namedNode(resolvePrefix(predicate, ontologies)), variable(`o${i + 1}`))\n );\n return {\n construct: [typeQuery, ...baseTriples],\n where: [typeQuery, ...baseTriples.map(triple => ({ type: 'optional', patterns: [triple] }))]\n };\n }\n baseTriples = [triple(variable('s1'), variable('p1'), variable('o1'))];\n return {\n construct: baseTriples,\n where: baseTriples\n };\n};\n\nexport default buildBaseQuery;\n","const resolvePrefix = (item, ontologies) => {\n if (item.startsWith('http://') || item.startsWith('https://')) {\n // Already resolved, return the URI\n return item;\n }\n if (item === 'a') {\n // Special case\n return 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';\n }\n const [prefix, value] = item.split(':');\n if (value) {\n const ontology = ontologies.find(ontology => ontology.prefix === prefix);\n if (ontology) {\n return ontology.url + value;\n }\n throw new Error(`No ontology found with prefix ${prefix}`);\n } else {\n throw new Error(`The value \"${item}\" is not correct. It must include a prefix or be a full URI.`);\n }\n};\n\nexport default resolvePrefix;\n","import md5 from 'crypto-js/md5';\nimport { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\n// Transform ['ont:predicate1/ont:predicate2'] to ['ont:predicate1', 'ont:predicate1/ont:predicate2']\nconst extractNodes = blankNodes => {\n const nodes = [];\n if (blankNodes) {\n for (const predicate of blankNodes) {\n if (predicate.includes('/')) {\n const nodeNames = predicate.split('/');\n for (let i = 1; i <= nodeNames.length; i++) {\n nodes.push(nodeNames.slice(0, i).join('/'));\n }\n } else {\n nodes.push(predicate);\n }\n }\n }\n return nodes;\n};\n\nconst generateSparqlVarName = node => md5(node);\n\nconst getParentNode = node => node.includes('/') && node.split('/')[0];\n\nconst getPredicate = node => (node.includes('/') ? node.split('/')[1] : node);\n\nconst buildUnionQuery = queries =>\n queries.map(q => {\n let triples = q.query;\n const firstTriple = queries.find(q2 => q.parentNode === q2.node);\n if (firstTriple !== undefined) {\n triples = triples.concat(firstTriple.query[0]);\n }\n return {\n type: 'bgp',\n triples\n };\n });\n\nconst buildBlankNodesQuery = (blankNodes, baseQuery, ontologies) => {\n const queries = [];\n const nodes = extractNodes(blankNodes);\n\n if (nodes && ontologies && ontologies.length > 0) {\n for (const node of nodes) {\n const parentNode = getParentNode(node);\n const predicate = getPredicate(node);\n const varName = generateSparqlVarName(node);\n const parentVarName = parentNode ? generateSparqlVarName(parentNode) : '1';\n\n const query = [\n triple(variable(`s${parentVarName}`), namedNode(resolvePrefix(predicate, ontologies)), variable(`s${varName}`)),\n triple(variable(`s${varName}`), variable(`p${varName}`), variable(`o${varName}`))\n ];\n\n queries.push({\n node,\n parentNode,\n query,\n filter: '' // `FILTER(isBLANK(?s${varName})) .`\n });\n }\n\n return {\n construct: queries.length > 0 ? queries.map(q => q.query).reduce((pre, cur) => pre.concat(cur)) : null,\n where: {\n type: 'union',\n patterns: [baseQuery.where, ...buildUnionQuery(queries)]\n }\n };\n }\n return {\n construct: '',\n where: ''\n };\n};\n\nexport default buildBlankNodesQuery;\n","import { triple, variable } from '@rdfjs/data-model';\n\nconst buildAutoDetectBlankNodesQuery = (depth, baseQuery) => {\n const construct = [...baseQuery.construct];\n let where = {};\n if (depth > 0) {\n const whereQueries = [];\n whereQueries.push([baseQuery.where]);\n for (let i = 1; i <= depth; i++) {\n construct.push(triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`)));\n whereQueries.push([\n ...whereQueries[whereQueries.length - 1],\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isblank',\n args: [variable(`o${i}`)]\n }\n },\n triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`))\n ]);\n }\n where = {\n type: 'union',\n patterns: whereQueries\n };\n } else if (depth === 0) {\n where = baseQuery.where;\n } else {\n throw new Error('The depth of buildAutoDetectBlankNodesQuery should be 0 or more');\n }\n\n return { construct, where };\n};\n\nexport default buildAutoDetectBlankNodesQuery;\n","import urlJoin from 'url-join';\n\nconst findContainersWithPaths = (paths, dataServers) => {\n const containers = {};\n Object.keys(paths).forEach(serverKey => {\n if (dataServers[serverKey]) {\n containers[serverKey] = [];\n paths[serverKey].forEach(path => {\n containers[serverKey].push(urlJoin(dataServers[serverKey].baseUrl, path));\n });\n } else {\n throw new Error(`No server found with key ${serverKey}`);\n }\n });\n return containers;\n};\n\nexport default findContainersWithPaths;\n","import getOne from './getOne';\n\nconst getManyMethod = config => async (resourceId, params) => {\n const { returnFailedResources } = config;\n\n let returnData = await Promise.all(\n params.ids.map(id =>\n getOne(config)(resourceId, { id: typeof id === 'object' ? id['@id'] : id })\n .then(({ data }) => data)\n .catch(() => {\n // Catch if one resource fails to load\n // Otherwise no references will be show if only one is missing\n // See https://github.com/marmelab/react-admin/issues/5190\n if (returnFailedResources) {\n return { id, _error: true };\n }\n // Returning nothing\n })\n )\n );\n\n // We don't want undefined results to appear in the results as it will break with react-admin\n returnData = returnData.filter(e => e);\n\n return { data: returnData };\n};\n\nexport default getManyMethod;\n","import getList from './getList';\n\nconst getManyReferenceMethod = config => async (resourceId, params) => {\n params.filter = { ...params.filter, [params.target]: params.id };\n delete params.target;\n return await getList(config)(resourceId, params);\n};\n\nexport default getManyReferenceMethod;\n","import uploadAllFiles from '../utils/uploadAllFiles';\n\nconst updateMethod = config => async (resourceId, params) => {\n const { httpClient, jsonContext } = config;\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n await httpClient(params.id, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': jsonContext,\n ...params.data\n })\n });\n\n return { data: params.data };\n};\n\nexport default updateMethod;\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport getServerKeyFromType from './getServerKeyFromType';\n\nconst fetchUserConfig = async config => {\n const { dataServers, httpClient } = config;\n const token = localStorage.getItem('token');\n const podKey = getServerKeyFromType('pod', dataServers);\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n\n // If the user is logged in\n if (token) {\n const { webId } = jwtDecode(token);\n let userData;\n\n try {\n const { json } = await httpClient(webId);\n userData = json;\n } catch (e) {\n console.error(e);\n // If the webId cannot be fetched, assume an invalid token and disconnect the user\n localStorage.clear();\n window.location.reload();\n return;\n }\n\n // If we have a POD server\n if (podKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[podKey].name = 'My Pod';\n config.dataServers[podKey].baseUrl = urlJoin(webId, 'data'); // TODO find POD URI from user profile\n config.dataServers[podKey].sparqlEndpoint =\n userData.endpoints?.['void:sparqlEndpoint'] || urlJoin(webId, 'sparql');\n }\n\n if (authServerKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[authServerKey].proxyUrl = userData.endpoints?.proxyUrl;\n }\n } else if (podKey) {\n // If the user is not logged in, ignore the POD server\n delete config.dataServers[podKey];\n }\n};\n\nexport default fetchUserConfig;\n","const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\nconst fetchVoidEndpoints = async config => {\n const fetchPromises = Object.entries(config.dataServers)\n .filter(([key, server]) => server.pod !== true)\n .map(([key, server]) =>\n config\n .httpClient(new URL('/.well-known/void', server.baseUrl).toString())\n .then(result => ({ key, datasets: result.json['@graph'] }))\n .catch(e => {\n if (e.status === 404 || e.status === 401 || e.status === 500) {\n return { key, error: e };\n }\n throw e;\n })\n );\n\n let results = [];\n\n try {\n results = await Promise.all(fetchPromises);\n } catch (e) {\n // Do not throw error if no endpoint found\n }\n\n for (const result of results) {\n config.dataServers[result.key].containers = config.dataServers[result.key].containers || {};\n config.dataServers[result.key].blankNodes = config.dataServers[result.key].blankNodes || {};\n\n // Ignore unfetchable endpoints\n if (result.datasets) {\n for (const dataset of result.datasets) {\n const datasetServerKey = Object.keys(config.dataServers).find(\n key => dataset['void:uriSpace'] === config.dataServers[key].baseUrl\n );\n\n // If the dataset is not part of a server mapped in the dataServers, ignore it\n if (datasetServerKey) {\n // If this is the local dataset, add the base information\n if (datasetServerKey === result.key) {\n config.dataServers[result.key].name = config.dataServers[result.key].name || dataset['dc:title'];\n config.dataServers[result.key].description =\n config.dataServers[result.key].description || dataset['dc:description'];\n config.dataServers[result.key].sparqlEndpoint =\n config.dataServers[result.key].sparqlEndpoint || dataset['void:sparqlEndpoint'];\n }\n\n config.dataServers[result.key].containers[datasetServerKey] =\n config.dataServers[result.key].containers[datasetServerKey] || {};\n\n for (const partition of defaultToArray(dataset['void:classPartition'])) {\n for (const type of defaultToArray(partition['void:class'])) {\n // Set containers by type\n const path = partition['void:uriSpace'].replace(dataset['void:uriSpace'], '/');\n if (config.dataServers[result.key].containers[datasetServerKey][type]) {\n config.dataServers[result.key].containers[datasetServerKey][type].push(path);\n } else {\n config.dataServers[result.key].containers[datasetServerKey][type] = [path];\n }\n }\n }\n }\n }\n }\n }\n};\n\nexport default fetchVoidEndpoints;\n","import { fetchUtils } from 'react-admin';\nimport getServerKeyFromUri from './utils/getServerKeyFromUri';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\n\n/*\n * HTTP client used by all calls in data provider and auth provider\n * Do proxy calls if a proxy endpoint is available and the server is different from the auth server\n */\nconst httpClient =\n dataServers =>\n (url, options = {}) => {\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n const serverKey = getServerKeyFromUri(url, dataServers);\n const useProxy =\n serverKey !== authServerKey && dataServers[authServerKey]?.proxyUrl && dataServers[serverKey]?.noProxy !== true;\n\n if (!options.headers) options.headers = new Headers();\n\n switch (options.method) {\n case 'POST':\n case 'PATCH':\n case 'PUT':\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n if (!options.headers.has('Content-Type')) options.headers.set('Content-Type', 'application/ld+json');\n break;\n\n case 'DELETE':\n break;\n\n case 'GET':\n default:\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n break;\n }\n\n if (useProxy) {\n const formData = new FormData();\n\n formData.append('id', url);\n formData.append('method', options.method || 'GET');\n formData.append('headers', JSON.stringify(Object.fromEntries(options.headers.entries())));\n\n if (options.body) {\n if (options.body instanceof File) {\n formData.append('body', options.body, options.body.name);\n } else {\n formData.append('body', options.body);\n }\n }\n\n // Post to proxy endpoint with multipart/form-data format\n return fetchUtils.fetchJson(dataServers[authServerKey].proxyUrl, {\n method: 'POST',\n headers: new Headers({\n Authorization: `Bearer ${localStorage.getItem('token')}`\n }),\n body: formData\n });\n }\n // Add token if the server is the same as the auth server\n if (serverKey === authServerKey) {\n const token = localStorage.getItem('token');\n if (token) options.headers.set('Authorization', `Bearer ${token}`);\n }\n return fetchUtils.fetchJson(url, options);\n };\n\nexport default httpClient;\n","// Return the first server matching with the baseUrl\nconst getServerKeyFromUri = (uri, dataServers) => {\n return Object.keys(dataServers).find(key => {\n if (dataServers[key].pod) {\n // The baseUrl ends with /data so remove this part to match with the webId and webId-related URLs (/inbox, /outbox...)\n return dataServers[key].baseUrl && uri.startsWith(dataServers[key].baseUrl.replace('/data', ''));\n }\n return uri.startsWith(dataServers[key].baseUrl);\n });\n};\n\nexport default getServerKeyFromUri;\n","import { useCallback, useMemo, useContext } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst compute = (externalLinks, record) =>\n typeof externalLinks === 'function' ? externalLinks(record) : externalLinks;\nconst isURL = url => typeof url === 'string' && url.startsWith('http');\n\nconst useGetExternalLink = componentExternalLinks => {\n // Since the externalLinks config is defined only locally, we don't need to wait for VOID endpoints fetching\n const dataProvider = useContext(DataProviderContext);\n const dataServers = dataProvider.getLocalDataServers();\n\n const serversExternalLinks = useMemo(() => {\n if (dataServers) {\n return Object.fromEntries(\n Object.values(dataServers).map(server => {\n // If externalLinks is not defined in the data server, use external links for non-default servers\n const externalLinks = server.externalLinks !== undefined ? server.externalLinks : !server.default;\n return [server.baseUrl, externalLinks];\n })\n );\n }\n }, [dataServers]);\n\n return useCallback(\n record => {\n const computedComponentExternalLinks = compute(componentExternalLinks, record);\n // If the component explicitly asks not to display as external links, use an internal link\n if (computedComponentExternalLinks === false) return false;\n\n if (!record?.id) return false;\n\n const serverBaseUrl = Object.keys(serversExternalLinks).find(baseUrl => record?.id.startsWith(baseUrl));\n // If no matching data servers could be found, assume we have an internal link\n if (!serverBaseUrl) return false;\n\n const computedServerExternalLinks = compute(serversExternalLinks[serverBaseUrl], record);\n // If the data server explicitly asks not to display as external links, use an internal link\n if (computedServerExternalLinks === false) return false;\n\n if (isURL(computedComponentExternalLinks)) {\n return computedComponentExternalLinks;\n }\n if (isURL(computedServerExternalLinks)) {\n return computedServerExternalLinks;\n }\n return record.id;\n },\n [serversExternalLinks, componentExternalLinks]\n );\n};\n\nexport default useGetExternalLink;\n","import { useState, useEffect } from 'react';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findContainersWithTypes from '../dataProvider/utils/findContainersWithTypes';\n\nconst useContainers = (resourceId, serverKeys = '@all') => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [containers, setContainers] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n setContainers(findContainersWithTypes(dataModel.types, serverKeys, dataServers));\n }\n }, [dataModel, dataServers, serverKeys]);\n\n return containers;\n};\n\nexport default useContainers;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModel = resourceId => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModel, setDataModel] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModel(results[resourceId]));\n }, [dataProvider, resourceId, setDataModel]);\n\n return dataModel;\n};\n\nexport default useDataModel;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataServers = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataServers, setDataServers] = useState();\n\n useEffect(() => {\n dataProvider.getDataServers().then(results => setDataServers(results));\n }, [dataProvider, setDataServers]);\n\n return dataServers;\n};\n\nexport default useDataServers;\n","import { useState, useEffect } from 'react';\nimport urlJoin from 'url-join';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findCreateContainerWithTypes from '../dataProvider/utils/findCreateContainerWithTypes';\nimport getServerKeyFromType from '../dataProvider/utils/getServerKeyFromType';\n\nconst useCreateContainer = resourceId => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [createContainer, setCreateContainer] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n if (dataModel.create?.container) {\n const [serverKey, path] = Object.entries(dataModel.create.container)[0];\n if (!serverKey || !dataServers[serverKey]) {\n throw new Error(`Wrong key for the dataModel.create.container config of resource ${resourceId}`);\n }\n setCreateContainer(urlJoin(dataServers[serverKey].baseUrl, path));\n } else if (dataModel.create?.server) {\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, dataModel.create?.server, dataServers));\n } else {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, defaultServerKey, dataServers));\n }\n }\n }, [dataModel, dataServers, setCreateContainer]);\n\n return createContainer;\n};\n\nexport default useCreateContainer;\n","import urlJoin from 'url-join';\n\nconst findCreateContainerWithTypes = (types, createServerKey, dataServers) => {\n const containers = [];\n\n if (Object.keys(dataServers[createServerKey].containers[createServerKey]).length > 0) {\n Object.keys(dataServers[createServerKey].containers[createServerKey]).forEach(type => {\n if (types.includes(type)) {\n dataServers[createServerKey].containers[createServerKey][type].map(path => {\n const containerUri = urlJoin(dataServers[createServerKey].baseUrl, path);\n if (!containers.includes(containerUri)) {\n containers.push(containerUri);\n }\n });\n }\n });\n }\n\n if (containers.length === 0) {\n throw new Error(\n `No container found matching with types ${JSON.stringify(\n types\n )}. You can set explicitely the create.container property of the resource.`\n );\n } else if (containers.length > 1) {\n throw new Error(\n `More than one container found matching with types ${JSON.stringify(\n types\n )}. You must set the create.server or create.container property for the resource.`\n );\n }\n\n return containers[0];\n};\n\nexport default findCreateContainerWithTypes;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModels = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModels, setDataModels] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModels(results));\n }, [dataProvider, setDataModels]);\n\n return dataModels;\n};\n\nexport default useDataModels;\n","import React, { useState, useEffect } from 'react';\n\n/**\n * @example\n * \n * \n * \n * \n * \n * \n */\n\nconst FilterHandler = ({ children, record, filter, source, ...otherProps }) => {\n const [filtered, setFiltered] = useState();\n useEffect(() => {\n if (record && source && Array.isArray(record?.[source])) {\n const filteredData = record?.[source].filter(r => {\n let eq = true;\n for (const key in filter) {\n const value = r[key];\n if (Array.isArray(value)) {\n if (!value.includes(filter[key])) {\n eq = false;\n }\n } else if (value !== filter[key]) {\n eq = false;\n }\n }\n return eq;\n });\n const newRecord = {\n ...record\n };\n // undefined setted if no data to obtain no render in RightLabel or equivalent\n newRecord[source] = filteredData.length > 0 ? filteredData : undefined;\n setFiltered(newRecord);\n }\n }, [record, source, filter]);\n\n return (\n <>\n {React.Children.map(children, (child, i) => {\n return React.cloneElement(child, {\n ...otherProps,\n record: filtered,\n source\n });\n })}\n >\n );\n};\nexport default FilterHandler;\n","import React from 'react';\nimport { useGetList } from 'react-admin';\nimport { default as FilterHandler } from './FilterHandler';\n\n/*\n * @example Label used in examples\n * const Label = ({label, ...otherProps})=>{\n * return {label}
\n * }\n *\n * @example show header for each group with group property thanks to groupHeader\n * }\n * filterProperty=\"property of source filtered by groupReference\"\n * >\n * // same props as GroupedArrayField source\n * \n * \n * \n * \n *\n * @example call chhildren with label thanks to groupLabel\n * \n * \n *\n * @example conditional show of group if no data in source. Conditionale groupHeader is not possible because GroupedArrayField define group before filter ; need use chhildren.\n * const ConditionalSourceDefinedHandler = ({record,source,children,...otherProps})=>{\n * if (record?.[source] && (!Array.isArray(record[source])||record[source].length>0)){\n * return React.Children.map(children, (child, i) => {\n * return React.cloneElement(child, {...otherProps,record,source});\n * })\n * }else{\n * return <>>\n * }\n * }\n *\n * \n * \n * \n * \n *\n *\n */\nconst GroupedReferenceHandler = ({\n children,\n groupReference,\n groupLabel,\n groupHeader,\n filterProperty,\n ...otherProps\n}) => {\n const { data } = useGetList({\n resource: groupReference,\n payload: {}\n });\n\n return (\n <>\n {data?.map((data, index) => {\n const filter = {};\n filter[filterProperty] = data.id;\n return (\n <>\n {groupHeader && groupHeader({ ...otherProps, group: data })}\n \n {children}\n \n >\n );\n })}\n >\n );\n};\n\nexport default GroupedReferenceHandler;\n","import React, { useEffect, useState } from 'react';\nimport { ArrayInput, SimpleFormIterator, TextInput } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useReferenceInputStyles = makeStyles({\n form: {\n display: 'flex'\n },\n input: {\n paddingRight: '20px'\n }\n});\n\nconst useHideInputStyles = makeStyles({\n root: {\n display: 'none'\n }\n});\n\nconst ReificationArrayInput = props => {\n const { reificationClass, children, ...otherProps } = props;\n const flexFormClasses = useReferenceInputStyles();\n const hideInputStyles = useHideInputStyles();\n\n return (\n \n \n {React.Children.map(props.children, (child, i) => {\n return React.cloneElement(child, {\n className: flexFormClasses.input\n });\n })}\n \n \n \n );\n};\n\nexport default ReificationArrayInput;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/semantic-data-provider/src/index.js","packages/semantic-data-provider/src/dataProvider/dataProvider.js","packages/semantic-data-provider/src/dataProvider/methods/create.js","packages/semantic-data-provider/src/dataProvider/methods/getOne.js","packages/semantic-data-provider/src/dataProvider/utils/fetchResource.js","packages/semantic-data-provider/src/dataProvider/utils/uploadAllFiles.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithTypes.js","packages/semantic-data-provider/src/dataProvider/utils/parseServerKeys.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromType.js","packages/semantic-data-provider/src/dataProvider/methods/delete.js","packages/semantic-data-provider/src/dataProvider/methods/deleteMany.js","packages/semantic-data-provider/src/dataProvider/methods/getDataServers.js","packages/semantic-data-provider/src/dataProvider/methods/getDataModels.js","packages/semantic-data-provider/src/dataProvider/methods/getList.js","packages/semantic-data-provider/src/dataProvider/utils/fetchContainers.js","packages/semantic-data-provider/src/dataProvider/utils/fetchSparqlEndpoints.js","packages/semantic-data-provider/src/dataProvider/utils/getEmbedFrame.js","packages/semantic-data-provider/src/dataProvider/utils/buildSparqlQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildBaseQuery.js","packages/semantic-data-provider/src/dataProvider/utils/resolvePrefix.js","packages/semantic-data-provider/src/dataProvider/utils/buildBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildAutoDetectBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithPath.js","packages/semantic-data-provider/src/dataProvider/methods/getMany.js","packages/semantic-data-provider/src/dataProvider/methods/getManyReference.js","packages/semantic-data-provider/src/dataProvider/methods/update.js","packages/semantic-data-provider/src/dataProvider/utils/fetchUserConfig.js","packages/semantic-data-provider/src/dataProvider/utils/fetchVoidEndpoints.js","packages/semantic-data-provider/src/dataProvider/httpClient.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromUri.js","packages/semantic-data-provider/src/hooks/useGetExternalLink.js","packages/semantic-data-provider/src/hooks/useContainers.js","packages/semantic-data-provider/src/hooks/useDataModel.js","packages/semantic-data-provider/src/hooks/useDataServers.js","packages/semantic-data-provider/src/hooks/useCreateContainer.js","packages/semantic-data-provider/src/dataProvider/utils/findCreateContainerWithTypes.js","packages/semantic-data-provider/src/hooks/useDataModels.js","packages/semantic-data-provider/src/reification/FilterHandler.js","packages/semantic-data-provider/src/reification/GroupedReferenceHandler.js","packages/semantic-data-provider/src/reification/ReificationArrayInput.js"],"sourcesContent":["export { default as dataProvider } from './dataProvider/dataProvider';\n\nexport { default as buildSparqlQuery } from './dataProvider/utils/buildSparqlQuery';\nexport { default as buildBlankNodesQuery } from './dataProvider/utils/buildBlankNodesQuery';\n\nexport { default as useGetExternalLink } from './hooks/useGetExternalLink';\nexport { default as useContainers } from './hooks/useContainers';\nexport { default as useCreateContainer } from './hooks/useCreateContainer';\nexport { default as useDataModel } from './hooks/useDataModel';\nexport { default as useDataModels } from './hooks/useDataModels';\nexport { default as useDataServers } from './hooks/useDataServers';\n\nexport { default as FilterHandler } from './reification/FilterHandler';\nexport { default as GroupedReferenceHandler } from './reification/GroupedReferenceHandler';\nexport { default as ReificationArrayInput } from './reification/ReificationArrayInput';\n","import createMethod from './methods/create';\nimport deleteMethod from './methods/delete';\nimport deleteManyMethod from './methods/deleteMany';\nimport getDataServersMethod from './methods/getDataServers';\nimport getDataModelsMethod from './methods/getDataModels';\nimport getListMethod from './methods/getList';\nimport getManyMethod from './methods/getMany';\nimport getManyReferenceMethod from './methods/getManyReference';\nimport getOneMethod from './methods/getOne';\nimport updateMethod from './methods/update';\nimport fetchUserConfig from './utils/fetchUserConfig';\nimport fetchVoidEndpoints from './utils/fetchVoidEndpoints';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\nimport httpClient from './httpClient';\n\nconst dataProvider = config => {\n // TODO verify all data provider config + data models\n if (!getServerKeyFromType('default', config.dataServers))\n throw new Error('You must define a default server in your dataServers config');\n\n if (!config.jsonContext) config.jsonContext = Object.fromEntries(config.ontologies.map(o => [o.prefix, o.url]));\n if (!config.returnFailedResources) config.returnFailedResources = false;\n\n // Configure httpClient with data servers (this is needed for proxy calls)\n config.httpClient = httpClient(config.dataServers);\n\n const fetchUserConfigPromise = fetchUserConfig(config);\n const fetchVoidEndpointsPromise = fetchVoidEndpoints(config);\n\n const waitForVoidEndpoints =\n method =>\n async (...arg) => {\n await fetchUserConfigPromise;\n await fetchVoidEndpointsPromise; // Return immediately if promise is fulfilled\n return await method(...arg);\n };\n\n return {\n getList: waitForVoidEndpoints(getListMethod(config)),\n getMany: waitForVoidEndpoints(getManyMethod(config)),\n getManyReference: waitForVoidEndpoints(getManyReferenceMethod(config)),\n getOne: waitForVoidEndpoints(getOneMethod(config)),\n create: waitForVoidEndpoints(createMethod(config)),\n update: waitForVoidEndpoints(updateMethod(config)),\n updateMany: () => {\n throw new Error('updateMany is not implemented yet');\n },\n delete: waitForVoidEndpoints(deleteMethod(config)),\n deleteMany: waitForVoidEndpoints(deleteManyMethod(config)),\n // Custom methods\n getDataModels: waitForVoidEndpoints(getDataModelsMethod(config)),\n getDataServers: waitForVoidEndpoints(getDataServersMethod(config)),\n getLocalDataServers: getDataServersMethod(config),\n fetch: waitForVoidEndpoints(config.httpClient)\n };\n};\n\nexport default dataProvider;\n","import urlJoin from 'url-join';\nimport getOne from './getOne';\nimport uploadAllFiles from '../utils/uploadAllFiles';\nimport findContainersWithTypes from '../utils/findContainersWithTypes';\n\nconst createMethod = config => async (resourceId, params) => {\n const { dataServers, resources, httpClient, jsonContext } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const headers = new Headers();\n\n let containerUri;\n let serverKey;\n if (dataModel.create?.container) {\n serverKey = Object.keys(dataModel.create.container)[0];\n containerUri = urlJoin(dataServers[serverKey].baseUrl, Object.values(dataModel.create.container)[0]);\n } else {\n serverKey = dataModel.create?.server || Object.keys(dataServers).find(key => dataServers[key].default === true);\n if (!serverKey) throw new Error('You must define a server for the creation, or a container, or a default server');\n\n const containers = findContainersWithTypes(dataModel.types, [serverKey], dataServers);\n // Extract the containerUri from the results (and ensure there is only one)\n const serverKeys = Object.keys(containers);\n\n if (!serverKeys || serverKeys.length === 0)\n throw new Error(`No container with types ${JSON.stringify(dataModel.types)} found on server ${serverKey}`);\n if (serverKeys.length > 1 || containers[serverKeys[0]].length > 1)\n throw new Error(\n `More than one container detected with types ${JSON.stringify(dataModel.types)} on server ${serverKey}`\n );\n containerUri = containers[serverKeys[0]][0];\n }\n\n if (params.data) {\n if (dataModel.fieldsMapping?.title) {\n if (Array.isArray(dataModel.fieldsMapping.title)) {\n headers.set('Slug', dataModel.fieldsMapping.title.map(f => params.data[f]).join(' '));\n } else {\n headers.set('Slug', params.data[dataModel.fieldsMapping.title]);\n }\n }\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n const { headers: responseHeaders } = await httpClient(containerUri, {\n method: 'POST',\n headers,\n body: JSON.stringify({\n '@context': jsonContext,\n '@type': dataModel.types,\n ...params.data\n })\n });\n\n // Retrieve newly-created resource\n const resourceUri = responseHeaders.get('Location');\n return await getOne(config)(resourceId, { id: resourceUri });\n }\n if (params.id) {\n headers.set('Content-Type', 'application/sparql-update');\n\n await httpClient(containerUri, {\n method: 'PATCH',\n headers,\n body: `\n PREFIX ldp: \n INSERT DATA { <${containerUri}> ldp:contains <${params.id}>. };\n `\n });\n\n // Create must return the new data, so get them from the remote URI\n return await getOne(config)(resourceId, { id: params.id });\n }\n};\n\nexport default createMethod;\n","import fetchResource from '../utils/fetchResource';\n\nconst getOneMethod = config => async (resourceId, params) => {\n const { resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const data = await fetchResource(params.id, config);\n\n // Transform single value into array if forceArray is set\n if (dataModel.list?.forceArray) {\n for (const forceArrayItem of dataModel.list?.forceArray || []) {\n if (data[forceArrayItem] && !Array.isArray(data[forceArrayItem])) {\n data[forceArrayItem] = [data[forceArrayItem]];\n }\n }\n }\n\n // TODO activate defaultFetchPlan option\n // if (dataModel.list?.defaultFetchPlan) {\n // for (const node of dataModel.list?.defaultFetchPlan) {\n // if (\n // data[node] &&\n // typeof data[node] === 'string' &&\n // data[node].startsWith('http')\n // ) {\n // try {\n // const dataToEmbed = await fetchResource(data[node], config);\n // delete dataToEmbed['@context'];\n // data[node] = dataToEmbed;\n // } catch (e) {\n // // Ignore errors (this may happen if user does not have rights to see the resource)\n // }\n // }\n // }\n // }\n\n return { data };\n};\n\nexport default getOneMethod;\n","import jsonld from 'jsonld';\n\nconst fetchResource = async (resourceUri, config) => {\n const { httpClient, jsonContext } = config;\n\n let { json: data } = await httpClient(resourceUri);\n\n if (!data) throw new Error(`Not a valid JSON: ${resourceUri}`);\n\n data.id = data.id || data['@id'];\n\n // We compact only if the context is different between the frontend and the middleware\n // TODO deep compare if the context is an object\n if (data['@context'] !== jsonContext) {\n data = await jsonld.compact(data, jsonContext);\n }\n\n return data;\n};\n\nexport default fetchResource;\n","import createSlug from 'speakingurl';\nimport urlJoin from 'url-join';\n\nexport const getSlugWithExtension = fileName => {\n let fileExtension = '';\n const splitFileName = fileName.split('.');\n if (splitFileName.length > 1) {\n fileExtension = splitFileName.pop();\n fileName = splitFileName.join('.');\n }\n return `${createSlug(fileName, { lang: 'fr' })}.${fileExtension}`;\n};\n\nexport const isFile = o => o?.rawFile && o.rawFile instanceof File;\n\nconst getUploadsContainerUri = config => {\n const serverKey = Object.keys(config.dataServers).find(key => config.dataServers[key].uploadsContainer);\n if (serverKey) {\n return urlJoin(config.dataServers[serverKey].baseUrl, config.dataServers[serverKey].uploadsContainer);\n }\n};\n\nconst uploadFile = async (rawFile, config) => {\n const uploadsContainerUri = getUploadsContainerUri(config);\n if (!uploadsContainerUri) throw new Error(\"You must define an uploadsContainer in one of the server's configuration\");\n\n const response = await config.httpClient(uploadsContainerUri, {\n method: 'POST',\n body: rawFile,\n headers: new Headers({\n // We must sluggify the file name, because we can't use non-ASCII characters in the header\n // However we keep the extension apart (if it exists) so that it is not replaced with a -\n // TODO let the middleware guess the extension based on the content type\n Slug: getSlugWithExtension(rawFile.name),\n 'Content-Type': rawFile.type\n })\n });\n\n if (response.status === 201) {\n return response.headers.get('Location');\n }\n};\n\n/*\n * Look for raw files in the record data.\n * If there are any, upload them and replace the file by its URL.\n */\nconst uploadAllFiles = async (record, config) => {\n for (const property in record) {\n if (Object.prototype.hasOwnProperty.call(record, property)) {\n if (Array.isArray(record[property])) {\n for (let i = 0; i < record[property].length; i++) {\n if (isFile(record[property][i])) {\n record[property][i] = await uploadFile(record[property][i].rawFile, config);\n }\n }\n } else if (isFile(record[property])) {\n record[property] = await uploadFile(record[property].rawFile, config);\n }\n }\n }\n return record;\n};\n\nexport default uploadAllFiles;\n","import urlJoin from 'url-join';\nimport parseServerKeys from './parseServerKeys';\n\nconst findContainersWithTypes = (types, serverKeys, dataServers) => {\n const containers = {};\n const existingContainers = [];\n\n serverKeys = parseServerKeys(serverKeys, dataServers);\n\n Object.keys(dataServers).forEach(key1 => {\n Object.keys(dataServers[key1].containers).forEach(key2 => {\n if (!serverKeys || serverKeys.includes(key2)) {\n Object.keys(dataServers[key1].containers[key2]).forEach(type => {\n if (types.includes(type)) {\n dataServers[key1].containers[key2][type].map(path => {\n const containerUri = urlJoin(dataServers[key2].baseUrl, path);\n\n // Avoid returning the same container several times\n if (!existingContainers.includes(containerUri)) {\n existingContainers.push(containerUri);\n\n if (!containers[key1]) containers[key1] = [];\n containers[key1].push(containerUri);\n }\n });\n }\n });\n }\n });\n });\n return containers;\n};\n\nexport default findContainersWithTypes;\n","import getServerKeyFromType from './getServerKeyFromType';\n\nconst parseServerKey = (serverKey, dataServers) => {\n switch (serverKey) {\n case '@default':\n return getServerKeyFromType('default', dataServers);\n case '@pod':\n return getServerKeyFromType('pod', dataServers);\n case '@authServer':\n return getServerKeyFromType('authServer', dataServers);\n default:\n return serverKey;\n }\n};\n\n// Return the list of servers keys in an array\n// parsing keywords like @all, @default, @pod and @authServer\nconst parseServerKeys = (serverKeys, dataServers) => {\n if (Array.isArray(serverKeys)) {\n if (serverKeys.includes('@all')) {\n return Object.keys(dataServers);\n }\n return serverKeys.map(serverKey => parseServerKey(serverKey, dataServers));\n }\n if (typeof serverKeys === 'string') {\n if (serverKeys === '@all') {\n return Object.keys(dataServers);\n }\n if (serverKeys === '@remote') {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n return Object.keys(dataServers).filter(serverKey => serverKey !== defaultServerKey);\n }\n return [parseServerKey(serverKeys, dataServers)];\n }\n // If server key is empty\n return false;\n};\n\nexport default parseServerKeys;\n","const getServerKeyFromType = (type, dataServers) => {\n return Object.keys(dataServers).find(key => {\n return dataServers[key][type];\n });\n};\n\nexport default getServerKeyFromType;\n","const deleteMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n\n await httpClient(params.id, {\n method: 'DELETE'\n });\n\n return { data: { id: params.id } };\n};\n\nexport default deleteMethod;\n","const deleteManyMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n const ids = [];\n\n for (const id of params.ids) {\n try {\n await httpClient(id, {\n method: 'DELETE'\n });\n ids.push(id);\n } catch (e) {\n // Do nothing if we fail to delete a resource\n }\n }\n\n return { data: ids };\n};\n\nexport default deleteManyMethod;\n","const getDataServers = config => () => {\n return config.dataServers;\n};\n\nexport default getDataServers;\n","const getDataModels = config => () => {\n return config.resources;\n};\n\nexport default getDataModels;\n","import findContainersWithTypes from '../utils/findContainersWithTypes';\nimport fetchContainers from '../utils/fetchContainers';\nimport fetchSparqlEndpoints from '../utils/fetchSparqlEndpoints';\nimport findContainersWithPaths from '../utils/findContainersWithPath';\n\nconst getListMethod =\n config =>\n async (resourceId, params = {}) => {\n const { dataServers, resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n let containers;\n if (!params.filter?._servers && dataModel.list?.containers) {\n if (Array.isArray(dataModel.list?.containers))\n throw new Error(\n `The list.containers property of ${resourceId} dataModel must be of type object ({ serverKey: [containerUri] })`\n );\n // If containers are set explicitly, use them\n containers = findContainersWithPaths(dataModel.list.containers, dataServers);\n } else {\n // Otherwise find the container URIs on the given servers (either in the filter or the data model)\n containers = findContainersWithTypes(\n dataModel.types,\n params.filter?._servers || dataModel.list?.servers,\n dataServers\n );\n }\n\n if (dataModel.list?.fetchContainer) {\n return fetchContainers(containers, resourceId, params, config);\n }\n return fetchSparqlEndpoints(containers, resourceId, params, config);\n };\n\nexport default getListMethod;\n","import jsonld from 'jsonld';\nimport isobject from 'isobject';\n\nexport const isType = (type, resource) => {\n const resourceType = resource.type || resource['@type'];\n return Array.isArray(resourceType) ? resourceType.includes(type) : resourceType === type;\n};\n\nconst fetchContainers = async (containers, resourceId, params, config) => {\n const { httpClient, jsonContext } = config;\n\n // Transform in an containerUri:serverKey object\n const containersServers = Object.keys(containers).reduce(\n (acc, serverKey) => ({\n ...acc,\n ...Object.fromEntries(containers[serverKey].map(containerUri => [containerUri, serverKey]))\n }),\n {}\n );\n\n const fetchPromises = Object.keys(containersServers).map(containerUri =>\n httpClient(containerUri)\n .then(({ json }) => {\n // If container's context is different, compact it to have an uniform result\n // TODO deep compare if the context is an object\n if (json['@context'] !== jsonContext) {\n return jsonld.compact(json, jsonContext);\n }\n return json;\n })\n .then(json => {\n if (isType('ldp:Container', json)) {\n return json['ldp:contains'];\n }\n throw new Error(`${containerUri} is not a LDP container`);\n })\n );\n\n // Fetch simultaneously all containers\n let results = await Promise.all(fetchPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat.apply(...results);\n\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // Apply filter to results\n if (params.filter) {\n // For SPARQL queries, we use \"a\" to filter types, but in containers it must be \"type\"\n if (params.filter.a) {\n params.filter.type = params.filter.a;\n delete params.filter.a;\n }\n\n if (Object.keys(params.filter).length > 0) {\n returnData = returnData.filter(resource => {\n return Object.entries(params.filter).every(([k, v]) => {\n if (k == 'q') {\n return Object.entries(resource).some(([kr, vr]) => {\n if (!isobject(vr)) {\n const arrayValues = Array.isArray(vr) ? vr : [vr];\n return arrayValues.some(va => {\n if (typeof va === 'string' || va instanceof String) {\n return va.toLowerCase().normalize('NFD').includes(v.toLowerCase().normalize('NFD'));\n }\n });\n }\n return false;\n });\n }\n if (resource[k]) {\n return Array.isArray(resource[k]) ? resource[k].some(va => va.includes(v)) : resource[k].includes(v);\n }\n return false;\n });\n });\n }\n }\n\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] && b[params.sort.field]) {\n if (params.sort.order === 'ASC') {\n return a[params.sort.field].localeCompare(b[params.sort.field]);\n }\n return b[params.sort.field].localeCompare(a[params.sort.field]);\n }\n return true;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchContainers;\n","import jsonld from 'jsonld';\nimport getEmbedFrame from './getEmbedFrame';\nimport buildSparqlQuery from './buildSparqlQuery';\n\nconst compare = (a, b) => {\n switch (typeof a) {\n case 'string':\n return a.localeCompare(b);\n case 'number':\n case 'bigint':\n return a - b;\n default:\n return 0;\n }\n};\n\nconst fetchSparqlEndpoints = async (containers, resourceId, params, config) => {\n const { dataServers, resources, httpClient, jsonContext, ontologies } = config;\n const dataModel = resources[resourceId];\n\n const sparqlQueryPromises = Object.keys(containers).map(\n serverKey =>\n new Promise((resolve, reject) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n\n // When the SPARQL request comes from the browser's URL, it comes as JSON string which must must be parsed\n if (\n params.filter?.sparqlWhere &&\n (typeof params.filter.sparqlWhere === 'string' || params.filter.sparqlWhere instanceof String)\n ) {\n params.filter.sparqlWhere = JSON.parse(decodeURIComponent(params.filter.sparqlWhere));\n }\n const sparqlQuery = buildSparqlQuery({\n containers: containers[serverKey],\n params,\n dataModel,\n ontologies\n });\n\n httpClient(dataServers[serverKey].sparqlEndpoint, {\n method: 'POST',\n body: sparqlQuery\n })\n .then(({ json }) => {\n // By default, embed only the blank nodes we explicitly asked to dereference\n // Otherwise we may have same-type resources embedded in other resources\n // To increase performances, you can set explicitEmbedOnFraming to false (make sure the result is still OK)\n const frame =\n dataModel.list?.explicitEmbedOnFraming !== false\n ? {\n '@context': jsonContext,\n '@type': dataModel.types,\n '@embed': '@never',\n ...getEmbedFrame(blankNodes)\n }\n : {\n '@context': jsonContext,\n '@type': dataModel.types\n };\n\n // omitGraph option force results to be in a @graph, even if we have a single result\n return jsonld.frame(json, frame, { omitGraph: false });\n })\n .then(compactJson => {\n if (compactJson['@id']) {\n const { '@context': context, ...rest } = compactJson;\n compactJson = {\n '@context': context,\n '@graph': [rest]\n };\n }\n resolve(compactJson['@graph'] || []);\n })\n .catch(e => reject(e));\n })\n );\n\n // Run simultaneous SPARQL queries\n let results = await Promise.all(sparqlQueryPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat(...results);\n\n // Add id in addition to @id, as this is what React-Admin expects\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // TODO sort and paginate the results in the SPARQL query to improve performances\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] !== undefined && b[params.sort.field] !== undefined) {\n if (params.sort.order === 'ASC') {\n return compare(a[params.sort.field], b[params.sort.field]);\n }\n return compare(b[params.sort.field], a[params.sort.field]);\n }\n return 0;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchSparqlEndpoints;\n","const getEmbedFrame = blankNodes => {\n let embedFrame = {};\n let predicates;\n if (blankNodes) {\n for (const blankNode of blankNodes) {\n if (blankNode.includes('/')) {\n predicates = blankNode.split('/').reverse();\n } else {\n predicates = [blankNode];\n }\n embedFrame = {\n ...embedFrame,\n ...predicates.reduce(\n (accumulator, predicate) => ({\n [predicate]: {\n '@embed': '@last',\n ...accumulator\n }\n }),\n {}\n )\n };\n }\n return embedFrame;\n }\n};\n\nexport default getEmbedFrame;\n","import DataFactory from '@rdfjs/data-model';\nimport { Generator as SparqlGenerator } from 'sparqljs';\nimport buildBaseQuery from './buildBaseQuery';\nimport buildBlankNodesQuery from './buildBlankNodesQuery';\nimport buildAutoDetectBlankNodesQuery from './buildAutoDetectBlankNodesQuery';\nimport resolvePrefix from './resolvePrefix';\n\nconst { literal, namedNode, triple, variable } = DataFactory;\n\nconst generator = new SparqlGenerator({\n /* prefixes, baseIRI, factory, sparqlStar */\n});\n\nconst reservedFilterKeys = ['q', 'sparqlWhere', 'blankNodes', 'blankNodesDepth', '_servers', '_predicates'];\n\nconst buildSparqlQuery = ({ containers, params, dataModel, ontologies }) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n const predicates = params.filter?._predicates || dataModel.list?.predicates;\n const blankNodesDepth = params.filter?.blankNodesDepth ?? dataModel.list?.blankNodesDepth ?? 2;\n const filter = { ...dataModel.list?.filter, ...params.filter };\n const baseQuery = buildBaseQuery(predicates, ontologies);\n\n const sparqlJsParams = {\n queryType: 'CONSTRUCT',\n template: baseQuery.construct,\n where: [],\n type: 'query',\n prefixes: Object.fromEntries(ontologies.map(ontology => [ontology.prefix, ontology.url]))\n };\n\n const containerWhere = [\n {\n type: 'values',\n values: containers.map(containerUri => ({ '?containerUri': namedNode(containerUri) }))\n },\n triple(variable('containerUri'), namedNode('http://www.w3.org/ns/ldp#contains'), variable('s1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isiri',\n args: [variable('s1')]\n }\n }\n ];\n\n let resourceWhere = [];\n\n if (filter && Object.keys(filter).length > 0) {\n const hasSPARQLFilter = filter.sparqlWhere && Object.keys(filter.sparqlWhere).length > 0;\n const hasFullTextSearch = filter.q && filter.q.length > 0;\n\n if (hasSPARQLFilter) {\n /* \n Example of usage :\n {\n \"sparqlWhere\": {\n \"type\": \"bgp\",\n \"triples\": [{\n \"subject\": {\"termType\": \"Variable\", \"value\": \"s1\"},\n \"predicate\": {\"termType\": \"NameNode\", \"value\": \"http://virtual-assembly.org/ontologies/pair#label\"},\n \"object\": {\"termType\": \"Literal\", \"value\": \"My Organization\"}\n }]\n }\n }\n */\n // initialize array in case of single value :\n [].concat(filter.sparqlWhere).forEach(sw => {\n resourceWhere.push(sw);\n });\n }\n\n if (hasFullTextSearch) {\n resourceWhere.push({\n type: 'group',\n patterns: [\n {\n queryType: 'SELECT',\n variables: [variable('s1')],\n where: [\n triple(variable('s1'), variable('p1'), variable('o1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isliteral',\n args: [variable('o1')]\n }\n },\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'regex',\n args: [\n {\n type: 'operation',\n operator: 'lcase',\n args: [\n {\n type: 'operation',\n operator: 'str',\n args: [variable('o1')]\n }\n ]\n },\n literal(filter.q.toLowerCase(), '', namedNode('http://www.w3.org/2001/XMLSchema#string'))\n ]\n }\n }\n ],\n type: 'query'\n }\n ]\n });\n }\n\n // Other filters\n // SPARQL keyword a = filter based on the class of a resource (example => 'a': 'pair:OrganizationType')\n // Other filters are based on a value (example => 'petr:hasAudience': 'http://localhost:3000/audiences/tout-public')\n Object.entries(filter).forEach(([predicate, object]) => {\n if (!reservedFilterKeys.includes(predicate)) {\n resourceWhere.unshift(\n triple(\n variable('s1'),\n namedNode(resolvePrefix(predicate, ontologies)),\n namedNode(resolvePrefix(object, ontologies))\n )\n );\n }\n });\n }\n\n // Blank nodes\n const blankNodesQuery = blankNodes\n ? buildBlankNodesQuery(blankNodes, baseQuery, ontologies)\n : buildAutoDetectBlankNodesQuery(blankNodesDepth, baseQuery);\n\n if (blankNodesQuery && blankNodesQuery.construct) {\n resourceWhere = resourceWhere.concat(blankNodesQuery.where);\n sparqlJsParams.template = sparqlJsParams.template.concat(blankNodesQuery.construct);\n } else {\n resourceWhere.push(baseQuery.where);\n }\n\n sparqlJsParams.where.push(\n {\n type: 'union',\n patterns: [\n containerWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: containerWhere\n }\n ]\n },\n {\n type: 'union',\n patterns: [\n resourceWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: resourceWhere\n }\n ]\n }\n );\n\n return generator.stringify(sparqlJsParams);\n};\n\nexport default buildSparqlQuery;\n","import { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\nconst defaultToArray = value => (!value ? [] : Array.isArray(value) ? value : [value]);\n\n// We need to always include the type or React-Admin will not work properly\nconst typeQuery = triple(\n variable('s1'),\n namedNode('http://www.w3.org/1999/02/22-rdf-syntax-ns#type'),\n variable('type')\n);\n\nconst buildBaseQuery = (predicates, ontologies) => {\n let baseTriples;\n if (predicates) {\n baseTriples = defaultToArray(predicates).map((predicate, i) =>\n triple(variable('s1'), namedNode(resolvePrefix(predicate, ontologies)), variable(`o${i + 1}`))\n );\n return {\n construct: [typeQuery, ...baseTriples],\n where: [typeQuery, ...baseTriples.map(triple => ({ type: 'optional', patterns: [triple] }))]\n };\n }\n baseTriples = [triple(variable('s1'), variable('p1'), variable('o1'))];\n return {\n construct: baseTriples,\n where: baseTriples\n };\n};\n\nexport default buildBaseQuery;\n","const resolvePrefix = (item, ontologies) => {\n if (item.startsWith('http://') || item.startsWith('https://')) {\n // Already resolved, return the URI\n return item;\n }\n if (item === 'a') {\n // Special case\n return 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';\n }\n const [prefix, value] = item.split(':');\n if (value) {\n const ontology = ontologies.find(ontology => ontology.prefix === prefix);\n if (ontology) {\n return ontology.url + value;\n }\n throw new Error(`No ontology found with prefix ${prefix}`);\n } else {\n throw new Error(`The value \"${item}\" is not correct. It must include a prefix or be a full URI.`);\n }\n};\n\nexport default resolvePrefix;\n","import md5 from 'crypto-js/md5';\nimport { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\n// Transform ['ont:predicate1/ont:predicate2'] to ['ont:predicate1', 'ont:predicate1/ont:predicate2']\nconst extractNodes = blankNodes => {\n const nodes = [];\n if (blankNodes) {\n for (const predicate of blankNodes) {\n if (predicate.includes('/')) {\n const nodeNames = predicate.split('/');\n for (let i = 1; i <= nodeNames.length; i++) {\n nodes.push(nodeNames.slice(0, i).join('/'));\n }\n } else {\n nodes.push(predicate);\n }\n }\n }\n return nodes;\n};\n\nconst generateSparqlVarName = node => md5(node);\n\nconst getParentNode = node => node.includes('/') && node.split('/')[0];\n\nconst getPredicate = node => (node.includes('/') ? node.split('/')[1] : node);\n\nconst buildUnionQuery = queries =>\n queries.map(q => {\n let triples = q.query;\n const firstTriple = queries.find(q2 => q.parentNode === q2.node);\n if (firstTriple !== undefined) {\n triples = triples.concat(firstTriple.query[0]);\n }\n return {\n type: 'bgp',\n triples\n };\n });\n\nconst buildBlankNodesQuery = (blankNodes, baseQuery, ontologies) => {\n const queries = [];\n const nodes = extractNodes(blankNodes);\n\n if (nodes && ontologies && ontologies.length > 0) {\n for (const node of nodes) {\n const parentNode = getParentNode(node);\n const predicate = getPredicate(node);\n const varName = generateSparqlVarName(node);\n const parentVarName = parentNode ? generateSparqlVarName(parentNode) : '1';\n\n const query = [\n triple(variable(`s${parentVarName}`), namedNode(resolvePrefix(predicate, ontologies)), variable(`s${varName}`)),\n triple(variable(`s${varName}`), variable(`p${varName}`), variable(`o${varName}`))\n ];\n\n queries.push({\n node,\n parentNode,\n query,\n filter: '' // `FILTER(isBLANK(?s${varName})) .`\n });\n }\n\n return {\n construct: queries.length > 0 ? queries.map(q => q.query).reduce((pre, cur) => pre.concat(cur)) : null,\n where: {\n type: 'union',\n patterns: [baseQuery.where, ...buildUnionQuery(queries)]\n }\n };\n }\n return {\n construct: '',\n where: ''\n };\n};\n\nexport default buildBlankNodesQuery;\n","import { triple, variable } from '@rdfjs/data-model';\n\nconst buildAutoDetectBlankNodesQuery = (depth, baseQuery) => {\n const construct = [...baseQuery.construct];\n let where = {};\n if (depth > 0) {\n const whereQueries = [];\n whereQueries.push([baseQuery.where]);\n for (let i = 1; i <= depth; i++) {\n construct.push(triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`)));\n whereQueries.push([\n ...whereQueries[whereQueries.length - 1],\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isblank',\n args: [variable(`o${i}`)]\n }\n },\n triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`))\n ]);\n }\n where = {\n type: 'union',\n patterns: whereQueries\n };\n } else if (depth === 0) {\n where = baseQuery.where;\n } else {\n throw new Error('The depth of buildAutoDetectBlankNodesQuery should be 0 or more');\n }\n\n return { construct, where };\n};\n\nexport default buildAutoDetectBlankNodesQuery;\n","import urlJoin from 'url-join';\n\nconst findContainersWithPaths = (paths, dataServers) => {\n const containers = {};\n Object.keys(paths).forEach(serverKey => {\n if (dataServers[serverKey]) {\n containers[serverKey] = [];\n paths[serverKey].forEach(path => {\n containers[serverKey].push(urlJoin(dataServers[serverKey].baseUrl, path));\n });\n } else {\n throw new Error(`No server found with key ${serverKey}`);\n }\n });\n return containers;\n};\n\nexport default findContainersWithPaths;\n","import getOne from './getOne';\n\nconst getManyMethod = config => async (resourceId, params) => {\n const { returnFailedResources } = config;\n\n let returnData = await Promise.all(\n params.ids.map(id =>\n getOne(config)(resourceId, { id: typeof id === 'object' ? id['@id'] : id })\n .then(({ data }) => data)\n .catch(() => {\n // Catch if one resource fails to load\n // Otherwise no references will be show if only one is missing\n // See https://github.com/marmelab/react-admin/issues/5190\n if (returnFailedResources) {\n return { id, _error: true };\n }\n // Returning nothing\n })\n )\n );\n\n // We don't want undefined results to appear in the results as it will break with react-admin\n returnData = returnData.filter(e => e);\n\n return { data: returnData };\n};\n\nexport default getManyMethod;\n","import getList from './getList';\n\nconst getManyReferenceMethod = config => async (resourceId, params) => {\n params.filter = { ...params.filter, [params.target]: params.id };\n delete params.target;\n return await getList(config)(resourceId, params);\n};\n\nexport default getManyReferenceMethod;\n","import uploadAllFiles from '../utils/uploadAllFiles';\n\nconst updateMethod = config => async (resourceId, params) => {\n const { httpClient, jsonContext } = config;\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n await httpClient(params.id, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': jsonContext,\n ...params.data\n })\n });\n\n return { data: params.data };\n};\n\nexport default updateMethod;\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport getServerKeyFromType from './getServerKeyFromType';\n\nconst fetchUserConfig = async config => {\n const { dataServers, httpClient } = config;\n const token = localStorage.getItem('token');\n const podKey = getServerKeyFromType('pod', dataServers);\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n\n // If the user is logged in\n if (token) {\n const { webId } = jwtDecode(token);\n let userData;\n\n try {\n const { json } = await httpClient(webId);\n userData = json;\n } catch (e) {\n console.error(e);\n // If the webId cannot be fetched, assume an invalid token and disconnect the user\n localStorage.clear();\n window.location.reload();\n return;\n }\n\n // If we have a POD server\n if (podKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[podKey].name = 'My Pod';\n config.dataServers[podKey].baseUrl = urlJoin(webId, 'data'); // TODO find POD URI from user profile\n config.dataServers[podKey].sparqlEndpoint =\n userData.endpoints?.['void:sparqlEndpoint'] || urlJoin(webId, 'sparql');\n }\n\n if (authServerKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[authServerKey].proxyUrl = userData.endpoints?.proxyUrl;\n }\n } else if (podKey) {\n // If the user is not logged in, ignore the POD server\n delete config.dataServers[podKey];\n }\n};\n\nexport default fetchUserConfig;\n","const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\nconst fetchVoidEndpoints = async config => {\n const fetchPromises = Object.entries(config.dataServers)\n .filter(([key, server]) => server.pod !== true)\n .map(([key, server]) =>\n config\n .httpClient(new URL('/.well-known/void', server.baseUrl).toString())\n .then(result => ({ key, datasets: result.json['@graph'] }))\n .catch(e => {\n if (e.status === 404 || e.status === 401 || e.status === 500) {\n return { key, error: e };\n }\n throw e;\n })\n );\n\n let results = [];\n\n try {\n results = await Promise.all(fetchPromises);\n } catch (e) {\n // Do not throw error if no endpoint found\n }\n\n for (const result of results) {\n config.dataServers[result.key].containers = config.dataServers[result.key].containers || {};\n config.dataServers[result.key].blankNodes = config.dataServers[result.key].blankNodes || {};\n\n // Ignore unfetchable endpoints\n if (result.datasets) {\n for (const dataset of result.datasets) {\n const datasetServerKey = Object.keys(config.dataServers).find(\n key => dataset['void:uriSpace'] === config.dataServers[key].baseUrl\n );\n\n // If the dataset is not part of a server mapped in the dataServers, ignore it\n if (datasetServerKey) {\n // If this is the local dataset, add the base information\n if (datasetServerKey === result.key) {\n config.dataServers[result.key].name = config.dataServers[result.key].name || dataset['dc:title'];\n config.dataServers[result.key].description =\n config.dataServers[result.key].description || dataset['dc:description'];\n config.dataServers[result.key].sparqlEndpoint =\n config.dataServers[result.key].sparqlEndpoint || dataset['void:sparqlEndpoint'];\n }\n\n config.dataServers[result.key].containers[datasetServerKey] =\n config.dataServers[result.key].containers[datasetServerKey] || {};\n\n for (const partition of defaultToArray(dataset['void:classPartition'])) {\n for (const type of defaultToArray(partition['void:class'])) {\n // Set containers by type\n const path = partition['void:uriSpace'].replace(dataset['void:uriSpace'], '/');\n if (config.dataServers[result.key].containers[datasetServerKey][type]) {\n config.dataServers[result.key].containers[datasetServerKey][type].push(path);\n } else {\n config.dataServers[result.key].containers[datasetServerKey][type] = [path];\n }\n }\n }\n }\n }\n }\n }\n};\n\nexport default fetchVoidEndpoints;\n","import { fetchUtils } from 'react-admin';\nimport getServerKeyFromUri from './utils/getServerKeyFromUri';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\n\n/*\n * HTTP client used by all calls in data provider and auth provider\n * Do proxy calls if a proxy endpoint is available and the server is different from the auth server\n */\nconst httpClient =\n dataServers =>\n (url, options = {}) => {\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n const serverKey = getServerKeyFromUri(url, dataServers);\n const useProxy =\n serverKey !== authServerKey && dataServers[authServerKey]?.proxyUrl && dataServers[serverKey]?.noProxy !== true;\n\n if (!options.headers) options.headers = new Headers();\n\n switch (options.method) {\n case 'POST':\n case 'PATCH':\n case 'PUT':\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n if (!options.headers.has('Content-Type')) options.headers.set('Content-Type', 'application/ld+json');\n break;\n\n case 'DELETE':\n break;\n\n case 'GET':\n default:\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n break;\n }\n\n if (useProxy) {\n const formData = new FormData();\n\n formData.append('id', url);\n formData.append('method', options.method || 'GET');\n formData.append('headers', JSON.stringify(Object.fromEntries(options.headers.entries())));\n\n if (options.body) {\n if (options.body instanceof File) {\n formData.append('body', options.body, options.body.name);\n } else {\n formData.append('body', options.body);\n }\n }\n\n // Post to proxy endpoint with multipart/form-data format\n return fetchUtils.fetchJson(dataServers[authServerKey].proxyUrl, {\n method: 'POST',\n headers: new Headers({\n Authorization: `Bearer ${localStorage.getItem('token')}`\n }),\n body: formData\n });\n }\n // Add token if the server is the same as the auth server\n if (serverKey === authServerKey) {\n const token = localStorage.getItem('token');\n if (token) options.headers.set('Authorization', `Bearer ${token}`);\n }\n return fetchUtils.fetchJson(url, options);\n };\n\nexport default httpClient;\n","// Return the first server matching with the baseUrl\nconst getServerKeyFromUri = (uri, dataServers) => {\n return Object.keys(dataServers).find(key => {\n if (dataServers[key].pod) {\n // The baseUrl ends with /data so remove this part to match with the webId and webId-related URLs (/inbox, /outbox...)\n return dataServers[key].baseUrl && uri.startsWith(dataServers[key].baseUrl.replace('/data', ''));\n }\n return uri.startsWith(dataServers[key].baseUrl);\n });\n};\n\nexport default getServerKeyFromUri;\n","import { useCallback, useMemo, useContext } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst compute = (externalLinks, record) =>\n typeof externalLinks === 'function' ? externalLinks(record) : externalLinks;\nconst isURL = url => typeof url === 'string' && url.startsWith('http');\n\nconst useGetExternalLink = componentExternalLinks => {\n // Since the externalLinks config is defined only locally, we don't need to wait for VOID endpoints fetching\n const dataProvider = useContext(DataProviderContext);\n const dataServers = dataProvider.getLocalDataServers();\n\n const serversExternalLinks = useMemo(() => {\n if (dataServers) {\n return Object.fromEntries(\n Object.values(dataServers).map(server => {\n // If externalLinks is not defined in the data server, use external links for non-default servers\n const externalLinks = server.externalLinks !== undefined ? server.externalLinks : !server.default;\n return [server.baseUrl, externalLinks];\n })\n );\n }\n }, [dataServers]);\n\n return useCallback(\n record => {\n const computedComponentExternalLinks = compute(componentExternalLinks, record);\n // If the component explicitly asks not to display as external links, use an internal link\n if (computedComponentExternalLinks === false) return false;\n\n if (!record?.id) return false;\n\n const serverBaseUrl = Object.keys(serversExternalLinks).find(baseUrl => record?.id.startsWith(baseUrl));\n // If no matching data servers could be found, assume we have an internal link\n if (!serverBaseUrl) return false;\n\n const computedServerExternalLinks = compute(serversExternalLinks[serverBaseUrl], record);\n // If the data server explicitly asks not to display as external links, use an internal link\n if (computedServerExternalLinks === false) return false;\n\n if (isURL(computedComponentExternalLinks)) {\n return computedComponentExternalLinks;\n }\n if (isURL(computedServerExternalLinks)) {\n return computedServerExternalLinks;\n }\n return record.id;\n },\n [serversExternalLinks, componentExternalLinks]\n );\n};\n\nexport default useGetExternalLink;\n","import { useState, useEffect } from 'react';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findContainersWithTypes from '../dataProvider/utils/findContainersWithTypes';\n\nconst useContainers = (resourceId, serverKeys = '@all') => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [containers, setContainers] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n setContainers(findContainersWithTypes(dataModel.types, serverKeys, dataServers));\n }\n }, [dataModel, dataServers, serverKeys]);\n\n return containers;\n};\n\nexport default useContainers;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModel = resourceId => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModel, setDataModel] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModel(results[resourceId]));\n }, [dataProvider, resourceId, setDataModel]);\n\n return dataModel;\n};\n\nexport default useDataModel;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataServers = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataServers, setDataServers] = useState();\n\n useEffect(() => {\n dataProvider.getDataServers().then(results => setDataServers(results));\n }, [dataProvider, setDataServers]);\n\n return dataServers;\n};\n\nexport default useDataServers;\n","import { useState, useEffect } from 'react';\nimport urlJoin from 'url-join';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findCreateContainerWithTypes from '../dataProvider/utils/findCreateContainerWithTypes';\nimport getServerKeyFromType from '../dataProvider/utils/getServerKeyFromType';\n\nconst useCreateContainer = resourceId => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [createContainer, setCreateContainer] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n if (dataModel.create?.container) {\n const [serverKey, path] = Object.entries(dataModel.create.container)[0];\n if (!serverKey || !dataServers[serverKey]) {\n throw new Error(`Wrong key for the dataModel.create.container config of resource ${resourceId}`);\n }\n setCreateContainer(urlJoin(dataServers[serverKey].baseUrl, path));\n } else if (dataModel.create?.server) {\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, dataModel.create?.server, dataServers));\n } else {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, defaultServerKey, dataServers));\n }\n }\n }, [dataModel, dataServers, setCreateContainer]);\n\n return createContainer;\n};\n\nexport default useCreateContainer;\n","import urlJoin from 'url-join';\n\nconst findCreateContainerWithTypes = (types, createServerKey, dataServers) => {\n const containers = [];\n\n if (Object.keys(dataServers[createServerKey].containers[createServerKey]).length > 0) {\n Object.keys(dataServers[createServerKey].containers[createServerKey]).forEach(type => {\n if (types.includes(type)) {\n dataServers[createServerKey].containers[createServerKey][type].map(path => {\n const containerUri = urlJoin(dataServers[createServerKey].baseUrl, path);\n if (!containers.includes(containerUri)) {\n containers.push(containerUri);\n }\n });\n }\n });\n }\n\n if (containers.length === 0) {\n throw new Error(\n `No container found matching with types ${JSON.stringify(\n types\n )}. You can set explicitely the create.container property of the resource.`\n );\n } else if (containers.length > 1) {\n throw new Error(\n `More than one container found matching with types ${JSON.stringify(\n types\n )}. You must set the create.server or create.container property for the resource.`\n );\n }\n\n return containers[0];\n};\n\nexport default findCreateContainerWithTypes;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModels = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModels, setDataModels] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModels(results));\n }, [dataProvider, setDataModels]);\n\n return dataModels;\n};\n\nexport default useDataModels;\n","import React, { useState, useEffect } from 'react';\n\n/**\n * @example\n * \n * \n * \n * \n * \n * \n */\n\nconst FilterHandler = ({ children, record, filter, source, ...otherProps }) => {\n const [filtered, setFiltered] = useState();\n useEffect(() => {\n if (record && source && Array.isArray(record?.[source])) {\n const filteredData = record?.[source].filter(r => {\n let eq = true;\n for (const key in filter) {\n const value = r[key];\n if (Array.isArray(value)) {\n if (!value.includes(filter[key])) {\n eq = false;\n }\n } else if (value !== filter[key]) {\n eq = false;\n }\n }\n return eq;\n });\n const newRecord = {\n ...record\n };\n // undefined setted if no data to obtain no render in RightLabel or equivalent\n newRecord[source] = filteredData.length > 0 ? filteredData : undefined;\n setFiltered(newRecord);\n }\n }, [record, source, filter]);\n\n return (\n <>\n {React.Children.map(children, (child, i) => {\n return React.cloneElement(child, {\n ...otherProps,\n record: filtered,\n source\n });\n })}\n >\n );\n};\nexport default FilterHandler;\n","import React from 'react';\nimport { useGetList } from 'react-admin';\nimport { default as FilterHandler } from './FilterHandler';\n\n/*\n * @example Label used in examples\n * const Label = ({label, ...otherProps})=>{\n * return {label}
\n * }\n *\n * @example show header for each group with group property thanks to groupHeader\n * }\n * filterProperty=\"property of source filtered by groupReference\"\n * >\n * // same props as GroupedArrayField source\n * \n * \n * \n * \n *\n * @example call chhildren with label thanks to groupLabel\n * \n * \n *\n * @example conditional show of group if no data in source. Conditionale groupHeader is not possible because GroupedArrayField define group before filter ; need use chhildren.\n * const ConditionalSourceDefinedHandler = ({record,source,children,...otherProps})=>{\n * if (record?.[source] && (!Array.isArray(record[source])||record[source].length>0)){\n * return React.Children.map(children, (child, i) => {\n * return React.cloneElement(child, {...otherProps,record,source});\n * })\n * }else{\n * return <>>\n * }\n * }\n *\n * \n * \n * \n * \n *\n *\n */\nconst GroupedReferenceHandler = ({\n children,\n groupReference,\n groupLabel,\n groupHeader,\n filterProperty,\n ...otherProps\n}) => {\n const { data } = useGetList({\n resource: groupReference,\n payload: {}\n });\n\n return (\n <>\n {data?.map((data, index) => {\n const filter = {};\n filter[filterProperty] = data.id;\n return (\n <>\n {groupHeader && groupHeader({ ...otherProps, group: data })}\n \n {children}\n \n >\n );\n })}\n >\n );\n};\n\nexport default GroupedReferenceHandler;\n","import React, { useEffect, useState } from 'react';\nimport { ArrayInput, SimpleFormIterator, TextInput } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useReferenceInputStyles = makeStyles({\n form: {\n display: 'flex'\n },\n input: {\n paddingRight: '20px'\n }\n});\n\nconst useHideInputStyles = makeStyles({\n root: {\n display: 'none'\n }\n});\n\nconst ReificationArrayInput = props => {\n const { reificationClass, children, ...otherProps } = props;\n const flexFormClasses = useReferenceInputStyles();\n const hideInputStyles = useHideInputStyles();\n\n return (\n \n \n {React.Children.map(props.children, (child, i) => {\n return React.cloneElement(child, {\n className: flexFormClasses.input\n });\n })}\n \n \n \n );\n};\n\nexport default ReificationArrayInput;\n"],"names":[],"version":3,"file":"index.cjs.js.map"}
\ No newline at end of file
diff --git a/src/frontend/packages/semantic-data-provider/dist/index.es.js.map b/src/frontend/packages/semantic-data-provider/dist/index.es.js.map
index 9dae623dc..98185967a 100644
--- a/src/frontend/packages/semantic-data-provider/dist/index.es.js.map
+++ b/src/frontend/packages/semantic-data-provider/dist/index.es.js.map
@@ -1 +1 @@
-{"mappings":"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","sources":["packages/semantic-data-provider/src/index.js","packages/semantic-data-provider/src/dataProvider/dataProvider.js","packages/semantic-data-provider/src/dataProvider/methods/create.js","packages/semantic-data-provider/src/dataProvider/methods/getOne.js","packages/semantic-data-provider/src/dataProvider/utils/fetchResource.js","packages/semantic-data-provider/src/dataProvider/utils/uploadAllFiles.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithTypes.js","packages/semantic-data-provider/src/dataProvider/utils/parseServerKeys.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromType.js","packages/semantic-data-provider/src/dataProvider/methods/delete.js","packages/semantic-data-provider/src/dataProvider/methods/deleteMany.js","packages/semantic-data-provider/src/dataProvider/methods/getDataServers.js","packages/semantic-data-provider/src/dataProvider/methods/getDataModels.js","packages/semantic-data-provider/src/dataProvider/methods/getList.js","packages/semantic-data-provider/src/dataProvider/utils/fetchContainers.js","packages/semantic-data-provider/src/dataProvider/utils/fetchSparqlEndpoints.js","packages/semantic-data-provider/src/dataProvider/utils/getEmbedFrame.js","packages/semantic-data-provider/src/dataProvider/utils/buildSparqlQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildBaseQuery.js","packages/semantic-data-provider/src/dataProvider/utils/resolvePrefix.js","packages/semantic-data-provider/src/dataProvider/utils/buildBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildAutoDetectBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithPath.js","packages/semantic-data-provider/src/dataProvider/methods/getMany.js","packages/semantic-data-provider/src/dataProvider/methods/getManyReference.js","packages/semantic-data-provider/src/dataProvider/methods/update.js","packages/semantic-data-provider/src/dataProvider/utils/fetchUserConfig.js","packages/semantic-data-provider/src/dataProvider/utils/fetchVoidEndpoints.js","packages/semantic-data-provider/src/dataProvider/httpClient.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromUri.js","packages/semantic-data-provider/src/hooks/useGetExternalLink.js","packages/semantic-data-provider/src/hooks/useContainers.js","packages/semantic-data-provider/src/hooks/useDataModel.js","packages/semantic-data-provider/src/hooks/useDataServers.js","packages/semantic-data-provider/src/hooks/useCreateContainer.js","packages/semantic-data-provider/src/dataProvider/utils/findCreateContainerWithTypes.js","packages/semantic-data-provider/src/hooks/useDataModels.js","packages/semantic-data-provider/src/reification/FilterHandler.js","packages/semantic-data-provider/src/reification/GroupedReferenceHandler.js","packages/semantic-data-provider/src/reification/ReificationArrayInput.js"],"sourcesContent":["export { default as dataProvider } from './dataProvider/dataProvider';\n\nexport { default as buildSparqlQuery } from './dataProvider/utils/buildSparqlQuery';\nexport { default as buildBlankNodesQuery } from './dataProvider/utils/buildBlankNodesQuery';\n\nexport { default as useGetExternalLink } from './hooks/useGetExternalLink';\nexport { default as useContainers } from './hooks/useContainers';\nexport { default as useCreateContainer } from './hooks/useCreateContainer';\nexport { default as useDataModel } from './hooks/useDataModel';\nexport { default as useDataModels } from './hooks/useDataModels';\nexport { default as useDataServers } from './hooks/useDataServers';\n\nexport { default as FilterHandler } from './reification/FilterHandler';\nexport { default as GroupedReferenceHandler } from './reification/GroupedReferenceHandler';\nexport { default as ReificationArrayInput } from './reification/ReificationArrayInput';\n","import createMethod from './methods/create';\nimport deleteMethod from './methods/delete';\nimport deleteManyMethod from './methods/deleteMany';\nimport getDataServersMethod from './methods/getDataServers';\nimport getDataModelsMethod from './methods/getDataModels';\nimport getListMethod from './methods/getList';\nimport getManyMethod from './methods/getMany';\nimport getManyReferenceMethod from './methods/getManyReference';\nimport getOneMethod from './methods/getOne';\nimport updateMethod from './methods/update';\nimport fetchUserConfig from './utils/fetchUserConfig';\nimport fetchVoidEndpoints from './utils/fetchVoidEndpoints';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\nimport httpClient from './httpClient';\n\nconst dataProvider = config => {\n // TODO verify all data provider config + data models\n if (!getServerKeyFromType('default', config.dataServers))\n throw new Error('You must define a default server in your dataServers config');\n\n if (!config.jsonContext) config.jsonContext = Object.fromEntries(config.ontologies.map(o => [o.prefix, o.url]));\n if (!config.returnFailedResources) config.returnFailedResources = false;\n\n // Configure httpClient with data servers (this is needed for proxy calls)\n config.httpClient = httpClient(config.dataServers);\n\n const fetchUserConfigPromise = fetchUserConfig(config);\n const fetchVoidEndpointsPromise = fetchVoidEndpoints(config);\n\n const waitForVoidEndpoints =\n method =>\n async (...arg) => {\n await fetchUserConfigPromise;\n await fetchVoidEndpointsPromise; // Return immediately if promise is fulfilled\n return await method(...arg);\n };\n\n return {\n getList: waitForVoidEndpoints(getListMethod(config)),\n getMany: waitForVoidEndpoints(getManyMethod(config)),\n getManyReference: waitForVoidEndpoints(getManyReferenceMethod(config)),\n getOne: waitForVoidEndpoints(getOneMethod(config)),\n create: waitForVoidEndpoints(createMethod(config)),\n update: waitForVoidEndpoints(updateMethod(config)),\n updateMany: () => {\n throw new Error('updateMany is not implemented yet');\n },\n delete: waitForVoidEndpoints(deleteMethod(config)),\n deleteMany: waitForVoidEndpoints(deleteManyMethod(config)),\n // Custom methods\n getDataModels: waitForVoidEndpoints(getDataModelsMethod(config)),\n getDataServers: waitForVoidEndpoints(getDataServersMethod(config)),\n getLocalDataServers: getDataServersMethod(config),\n fetch: waitForVoidEndpoints(config.httpClient)\n };\n};\n\nexport default dataProvider;\n","import urlJoin from 'url-join';\nimport getOne from './getOne';\nimport uploadAllFiles from '../utils/uploadAllFiles';\nimport findContainersWithTypes from '../utils/findContainersWithTypes';\n\nconst createMethod = config => async (resourceId, params) => {\n const { dataServers, resources, httpClient, jsonContext } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const headers = new Headers();\n\n let containerUri;\n let serverKey;\n if (dataModel.create?.container) {\n serverKey = Object.keys(dataModel.create.container)[0];\n containerUri = urlJoin(dataServers[serverKey].baseUrl, Object.values(dataModel.create.container)[0]);\n } else {\n serverKey = dataModel.create?.server || Object.keys(dataServers).find(key => dataServers[key].default === true);\n if (!serverKey) throw new Error('You must define a server for the creation, or a container, or a default server');\n\n const containers = findContainersWithTypes(dataModel.types, [serverKey], dataServers);\n // Extract the containerUri from the results (and ensure there is only one)\n const serverKeys = Object.keys(containers);\n\n if (!serverKeys || serverKeys.length === 0)\n throw new Error(`No container with types ${JSON.stringify(dataModel.types)} found on server ${serverKey}`);\n if (serverKeys.length > 1 || containers[serverKeys[0]].length > 1)\n throw new Error(\n `More than one container detected with types ${JSON.stringify(dataModel.types)} on server ${serverKey}`\n );\n containerUri = containers[serverKeys[0]][0];\n }\n\n if (params.data) {\n if (dataModel.fieldsMapping?.title) {\n if (Array.isArray(dataModel.fieldsMapping.title)) {\n headers.set('Slug', dataModel.fieldsMapping.title.map(f => params.data[f]).join(' '));\n } else {\n headers.set('Slug', params.data[dataModel.fieldsMapping.title]);\n }\n }\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n const { headers: responseHeaders } = await httpClient(containerUri, {\n method: 'POST',\n headers,\n body: JSON.stringify({\n '@context': jsonContext,\n '@type': dataModel.types,\n ...params.data\n })\n });\n\n // Retrieve newly-created resource\n const resourceUri = responseHeaders.get('Location');\n return await getOne(config)(resourceId, { id: resourceUri });\n }\n if (params.id) {\n headers.set('Content-Type', 'application/sparql-update');\n\n await httpClient(containerUri, {\n method: 'PATCH',\n headers,\n body: `\n PREFIX ldp: \n INSERT DATA { <${containerUri}> ldp:contains <${params.id}>. };\n `\n });\n\n // Create must return the new data, so get them from the remote URI\n return await getOne(config)(resourceId, { id: params.id });\n }\n};\n\nexport default createMethod;\n","import fetchResource from '../utils/fetchResource';\n\nconst getOneMethod = config => async (resourceId, params) => {\n const { resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const data = await fetchResource(params.id, config);\n\n // Transform single value into array if forceArray is set\n if (dataModel.list?.forceArray) {\n for (const forceArrayItem of dataModel.list?.forceArray || []) {\n if (data[forceArrayItem] && !Array.isArray(data[forceArrayItem])) {\n data[forceArrayItem] = [data[forceArrayItem]];\n }\n }\n }\n\n // TODO activate defaultFetchPlan option\n // if (dataModel.list?.defaultFetchPlan) {\n // for (const node of dataModel.list?.defaultFetchPlan) {\n // if (\n // data[node] &&\n // typeof data[node] === 'string' &&\n // data[node].startsWith('http')\n // ) {\n // try {\n // const dataToEmbed = await fetchResource(data[node], config);\n // delete dataToEmbed['@context'];\n // data[node] = dataToEmbed;\n // } catch (e) {\n // // Ignore errors (this may happen if user does not have rights to see the resource)\n // }\n // }\n // }\n // }\n\n return { data };\n};\n\nexport default getOneMethod;\n","import jsonld from 'jsonld';\n\nconst fetchResource = async (resourceUri, config) => {\n const { httpClient, jsonContext } = config;\n\n let { json: data } = await httpClient(resourceUri);\n\n if (!data) throw new Error(`Not a valid JSON: ${resourceUri}`);\n\n data.id = data.id || data['@id'];\n\n // We compact only if the context is different between the frontend and the middleware\n // TODO deep compare if the context is an object\n if (data['@context'] !== jsonContext) {\n data = await jsonld.compact(data, jsonContext);\n }\n\n return data;\n};\n\nexport default fetchResource;\n","import createSlug from 'speakingurl';\nimport urlJoin from 'url-join';\n\nexport const getSlugWithExtension = fileName => {\n let fileExtension = '';\n const splitFileName = fileName.split('.');\n if (splitFileName.length > 1) {\n fileExtension = splitFileName.pop();\n fileName = splitFileName.join('.');\n }\n return `${createSlug(fileName, { lang: 'fr' })}.${fileExtension}`;\n};\n\nexport const isFile = o => o?.rawFile && o.rawFile instanceof File;\n\nconst getUploadsContainerUri = config => {\n const serverKey = Object.keys(config.dataServers).find(key => config.dataServers[key].uploadsContainer);\n if (serverKey) {\n return urlJoin(config.dataServers[serverKey].baseUrl, config.dataServers[serverKey].uploadsContainer);\n }\n};\n\nconst uploadFile = async (rawFile, config) => {\n const uploadsContainerUri = getUploadsContainerUri(config);\n if (!uploadsContainerUri) throw new Error(\"You must define an uploadsContainer in one of the server's configuration\");\n\n const response = await config.httpClient(uploadsContainerUri, {\n method: 'POST',\n body: rawFile,\n headers: new Headers({\n // We must sluggify the file name, because we can't use non-ASCII characters in the header\n // However we keep the extension apart (if it exists) so that it is not replaced with a -\n // TODO let the middleware guess the extension based on the content type\n Slug: getSlugWithExtension(rawFile.name),\n 'Content-Type': rawFile.type\n })\n });\n\n if (response.status === 201) {\n return response.headers.get('Location');\n }\n};\n\n/*\n * Look for raw files in the record data.\n * If there are any, upload them and replace the file by its URL.\n */\nconst uploadAllFiles = async (record, config) => {\n for (const property in record) {\n if (Object.prototype.hasOwnProperty.call(record, property)) {\n if (Array.isArray(record[property])) {\n for (let i = 0; i < record[property].length; i++) {\n if (isFile(record[property][i])) {\n record[property][i] = await uploadFile(record[property][i].rawFile, config);\n }\n }\n } else if (isFile(record[property])) {\n record[property] = await uploadFile(record[property].rawFile, config);\n }\n }\n }\n return record;\n};\n\nexport default uploadAllFiles;\n","import urlJoin from 'url-join';\nimport parseServerKeys from './parseServerKeys';\n\nconst findContainersWithTypes = (types, serverKeys, dataServers) => {\n const containers = {};\n const existingContainers = [];\n\n serverKeys = parseServerKeys(serverKeys, dataServers);\n\n Object.keys(dataServers).forEach(key1 => {\n Object.keys(dataServers[key1].containers).forEach(key2 => {\n if (!serverKeys || serverKeys.includes(key2)) {\n Object.keys(dataServers[key1].containers[key2]).forEach(type => {\n if (types.includes(type)) {\n dataServers[key1].containers[key2][type].map(path => {\n const containerUri = urlJoin(dataServers[key2].baseUrl, path);\n\n // Avoid returning the same container several times\n if (!existingContainers.includes(containerUri)) {\n existingContainers.push(containerUri);\n\n if (!containers[key1]) containers[key1] = [];\n containers[key1].push(containerUri);\n }\n });\n }\n });\n }\n });\n });\n return containers;\n};\n\nexport default findContainersWithTypes;\n","import getServerKeyFromType from './getServerKeyFromType';\n\nconst parseServerKey = (serverKey, dataServers) => {\n switch (serverKey) {\n case '@default':\n return getServerKeyFromType('default', dataServers);\n case '@pod':\n return getServerKeyFromType('pod', dataServers);\n case '@authServer':\n return getServerKeyFromType('authServer', dataServers);\n default:\n return serverKey;\n }\n};\n\n// Return the list of servers keys in an array\n// parsing keywords like @all, @default, @pod and @authServer\nconst parseServerKeys = (serverKeys, dataServers) => {\n if (Array.isArray(serverKeys)) {\n if (serverKeys.includes('@all')) {\n return Object.keys(dataServers);\n }\n return serverKeys.map(serverKey => parseServerKey(serverKey, dataServers));\n }\n if (typeof serverKeys === 'string') {\n if (serverKeys === '@all') {\n return Object.keys(dataServers);\n }\n if (serverKeys === '@remote') {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n return Object.keys(dataServers).filter(serverKey => serverKey !== defaultServerKey);\n }\n return [parseServerKey(serverKeys, dataServers)];\n }\n // If server key is empty\n return false;\n};\n\nexport default parseServerKeys;\n","const getServerKeyFromType = (type, dataServers) => {\n return Object.keys(dataServers).find(key => {\n return dataServers[key][type];\n });\n};\n\nexport default getServerKeyFromType;\n","const deleteMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n\n await httpClient(params.id, {\n method: 'DELETE'\n });\n\n return { data: { id: params.id } };\n};\n\nexport default deleteMethod;\n","const deleteManyMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n const ids = [];\n\n for (const id of params.ids) {\n try {\n await httpClient(id, {\n method: 'DELETE'\n });\n ids.push(id);\n } catch (e) {\n // Do nothing if we fail to delete a resource\n }\n }\n\n return { data: ids };\n};\n\nexport default deleteManyMethod;\n","const getDataServers = config => () => {\n return config.dataServers;\n};\n\nexport default getDataServers;\n","const getDataModels = config => () => {\n return config.resources;\n};\n\nexport default getDataModels;\n","import findContainersWithTypes from '../utils/findContainersWithTypes';\nimport fetchContainers from '../utils/fetchContainers';\nimport fetchSparqlEndpoints from '../utils/fetchSparqlEndpoints';\nimport findContainersWithPaths from '../utils/findContainersWithPath';\n\nconst getListMethod =\n config =>\n async (resourceId, params = {}) => {\n const { dataServers, resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n let containers;\n if (!params.filter?._servers && dataModel.list?.containers) {\n if (Array.isArray(dataModel.list?.containers))\n throw new Error(\n `The list.containers property of ${resourceId} dataModel must be of type object ({ serverKey: [containerUri] })`\n );\n // If containers are set explicitly, use them\n containers = findContainersWithPaths(dataModel.list.containers, dataServers);\n } else {\n // Otherwise find the container URIs on the given servers (either in the filter or the data model)\n containers = findContainersWithTypes(\n dataModel.types,\n params.filter?._servers || dataModel.list?.servers,\n dataServers\n );\n }\n\n if (dataModel.list?.fetchContainer) {\n return fetchContainers(containers, resourceId, params, config);\n }\n return fetchSparqlEndpoints(containers, resourceId, params, config);\n };\n\nexport default getListMethod;\n","import jsonld from 'jsonld';\nimport isobject from 'isobject';\n\nexport const isType = (type, resource) => {\n const resourceType = resource.type || resource['@type'];\n return Array.isArray(resourceType) ? resourceType.includes(type) : resourceType === type;\n};\n\nconst fetchContainers = async (containers, resourceId, params, config) => {\n const { httpClient, jsonContext } = config;\n\n // Transform in an containerUri:serverKey object\n const containersServers = Object.keys(containers).reduce(\n (acc, serverKey) => ({\n ...acc,\n ...Object.fromEntries(containers[serverKey].map(containerUri => [containerUri, serverKey]))\n }),\n {}\n );\n\n const fetchPromises = Object.keys(containersServers).map(containerUri =>\n httpClient(containerUri)\n .then(({ json }) => {\n // If container's context is different, compact it to have an uniform result\n // TODO deep compare if the context is an object\n if (json['@context'] !== jsonContext) {\n return jsonld.compact(json, jsonContext);\n }\n return json;\n })\n .then(json => {\n if (isType('ldp:Container', json)) {\n return json['ldp:contains'];\n }\n throw new Error(`${containerUri} is not a LDP container`);\n })\n );\n\n // Fetch simultaneously all containers\n let results = await Promise.all(fetchPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat.apply(...results);\n\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // Apply filter to results\n if (params.filter) {\n // For SPARQL queries, we use \"a\" to filter types, but in containers it must be \"type\"\n if (params.filter.a) {\n params.filter.type = params.filter.a;\n delete params.filter.a;\n }\n\n if (Object.keys(params.filter).length > 0) {\n returnData = returnData.filter(resource => {\n return Object.entries(params.filter).every(([k, v]) => {\n if (k == 'q') {\n return Object.entries(resource).some(([kr, vr]) => {\n if (!isobject(vr)) {\n const arrayValues = Array.isArray(vr) ? vr : [vr];\n return arrayValues.some(va => {\n if (typeof va === 'string' || va instanceof String) {\n return va.toLowerCase().normalize('NFD').includes(v.toLowerCase().normalize('NFD'));\n }\n });\n }\n return false;\n });\n }\n if (resource[k]) {\n return Array.isArray(resource[k]) ? resource[k].some(va => va.includes(v)) : resource[k].includes(v);\n }\n return false;\n });\n });\n }\n }\n\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] && b[params.sort.field]) {\n if (params.sort.order === 'ASC') {\n return a[params.sort.field].localeCompare(b[params.sort.field]);\n }\n return b[params.sort.field].localeCompare(a[params.sort.field]);\n }\n return true;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchContainers;\n","import jsonld from 'jsonld';\nimport getEmbedFrame from './getEmbedFrame';\nimport buildSparqlQuery from './buildSparqlQuery';\n\nconst compare = (a, b) => {\n switch (typeof a) {\n case 'string':\n return a.localeCompare(b);\n case 'number':\n case 'bigint':\n return a - b;\n default:\n return 0;\n }\n};\n\nconst fetchSparqlEndpoints = async (containers, resourceId, params, config) => {\n const { dataServers, resources, httpClient, jsonContext, ontologies } = config;\n const dataModel = resources[resourceId];\n\n const sparqlQueryPromises = Object.keys(containers).map(\n serverKey =>\n new Promise((resolve, reject) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n\n // When the SPARQL request comes from the browser's URL, it comes as JSON string which must must be parsed\n if (\n params.filter?.sparqlWhere &&\n (typeof params.filter.sparqlWhere === 'string' || params.filter.sparqlWhere instanceof String)\n ) {\n params.filter.sparqlWhere = JSON.parse(decodeURIComponent(params.filter.sparqlWhere));\n }\n const sparqlQuery = buildSparqlQuery({\n containers: containers[serverKey],\n params,\n dataModel,\n ontologies\n });\n\n httpClient(dataServers[serverKey].sparqlEndpoint, {\n method: 'POST',\n body: sparqlQuery\n })\n .then(({ json }) => {\n // By default, embed only the blank nodes we explicitly asked to dereference\n // Otherwise we may have same-type resources embedded in other resources\n // To increase performances, you can set explicitEmbedOnFraming to false (make sure the result is still OK)\n const frame =\n dataModel.list?.explicitEmbedOnFraming !== false\n ? {\n '@context': jsonContext,\n '@type': dataModel.types,\n '@embed': '@never',\n ...getEmbedFrame(blankNodes)\n }\n : {\n '@context': jsonContext,\n '@type': dataModel.types\n };\n\n // omitGraph option force results to be in a @graph, even if we have a single result\n return jsonld.frame(json, frame, { omitGraph: false });\n })\n .then(compactJson => {\n if (compactJson['@id']) {\n const { '@context': context, ...rest } = compactJson;\n compactJson = {\n '@context': context,\n '@graph': [rest]\n };\n }\n resolve(compactJson['@graph'] || []);\n })\n .catch(e => reject(e));\n })\n );\n\n // Run simultaneous SPARQL queries\n let results = await Promise.all(sparqlQueryPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat(...results);\n\n // Add id in addition to @id, as this is what React-Admin expects\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // TODO sort and paginate the results in the SPARQL query to improve performances\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] !== undefined && b[params.sort.field] !== undefined) {\n if (params.sort.order === 'ASC') {\n return compare(a[params.sort.field], b[params.sort.field]);\n }\n return compare(b[params.sort.field], a[params.sort.field]);\n }\n return 0;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchSparqlEndpoints;\n","const getEmbedFrame = blankNodes => {\n let embedFrame = {};\n let predicates;\n if (blankNodes) {\n for (const blankNode of blankNodes) {\n if (blankNode.includes('/')) {\n predicates = blankNode.split('/').reverse();\n } else {\n predicates = [blankNode];\n }\n embedFrame = {\n ...embedFrame,\n ...predicates.reduce(\n (accumulator, predicate) => ({\n [predicate]: {\n '@embed': '@last',\n ...accumulator\n }\n }),\n {}\n )\n };\n }\n return embedFrame;\n }\n};\n\nexport default getEmbedFrame;\n","import DataFactory from '@rdfjs/data-model';\nimport { Generator as SparqlGenerator } from 'sparqljs';\nimport buildBaseQuery from './buildBaseQuery';\nimport buildBlankNodesQuery from './buildBlankNodesQuery';\nimport buildAutoDetectBlankNodesQuery from './buildAutoDetectBlankNodesQuery';\nimport resolvePrefix from './resolvePrefix';\n\nconst { literal, namedNode, triple, variable } = DataFactory;\n\nconst generator = new SparqlGenerator({\n /* prefixes, baseIRI, factory, sparqlStar */\n});\n\nconst reservedFilterKeys = ['q', 'sparqlWhere', 'blankNodes', 'blankNodesDepth', '_servers', '_predicates'];\n\nconst buildSparqlQuery = ({ containers, params, dataModel, ontologies }) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n const predicates = params.filter?._predicates || dataModel.list?.predicates;\n const blankNodesDepth = params.filter?.blankNodesDepth ?? dataModel.list?.blankNodesDepth ?? 2;\n const filter = { ...dataModel.list?.filter, ...params.filter };\n const baseQuery = buildBaseQuery(predicates, ontologies);\n\n const sparqlJsParams = {\n queryType: 'CONSTRUCT',\n template: baseQuery.construct,\n where: [],\n type: 'query',\n prefixes: Object.fromEntries(ontologies.map(ontology => [ontology.prefix, ontology.url]))\n };\n\n const containerWhere = [\n {\n type: 'values',\n values: containers.map(containerUri => ({ '?containerUri': namedNode(containerUri) }))\n },\n triple(variable('containerUri'), namedNode('http://www.w3.org/ns/ldp#contains'), variable('s1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isiri',\n args: [variable('s1')]\n }\n }\n ];\n\n let resourceWhere = [];\n\n if (filter && Object.keys(filter).length > 0) {\n const hasSPARQLFilter = filter.sparqlWhere && Object.keys(filter.sparqlWhere).length > 0;\n const hasFullTextSearch = filter.q && filter.q.length > 0;\n\n if (hasSPARQLFilter) {\n /* \n Example of usage :\n {\n \"sparqlWhere\": {\n \"type\": \"bgp\",\n \"triples\": [{\n \"subject\": {\"termType\": \"Variable\", \"value\": \"s1\"},\n \"predicate\": {\"termType\": \"NameNode\", \"value\": \"http://virtual-assembly.org/ontologies/pair#label\"},\n \"object\": {\"termType\": \"Literal\", \"value\": \"My Organization\"}\n }]\n }\n }\n */\n // initialize array in case of single value :\n [].concat(filter.sparqlWhere).forEach(sw => {\n resourceWhere.push(sw);\n });\n }\n\n if (hasFullTextSearch) {\n resourceWhere.push({\n type: 'group',\n patterns: [\n {\n queryType: 'SELECT',\n variables: [variable('s1')],\n where: [\n triple(variable('s1'), variable('p1'), variable('o1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isliteral',\n args: [variable('o1')]\n }\n },\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'regex',\n args: [\n {\n type: 'operation',\n operator: 'lcase',\n args: [\n {\n type: 'operation',\n operator: 'str',\n args: [variable('o1')]\n }\n ]\n },\n literal(filter.q.toLowerCase(), '', namedNode('http://www.w3.org/2001/XMLSchema#string'))\n ]\n }\n }\n ],\n type: 'query'\n }\n ]\n });\n }\n\n // Other filters\n // SPARQL keyword a = filter based on the class of a resource (example => 'a': 'pair:OrganizationType')\n // Other filters are based on a value (example => 'petr:hasAudience': 'http://localhost:3000/audiences/tout-public')\n Object.entries(filter).forEach(([predicate, object]) => {\n if (!reservedFilterKeys.includes(predicate)) {\n resourceWhere.unshift(\n triple(\n variable('s1'),\n namedNode(resolvePrefix(predicate, ontologies)),\n namedNode(resolvePrefix(object, ontologies))\n )\n );\n }\n });\n }\n\n // Blank nodes\n const blankNodesQuery = blankNodes\n ? buildBlankNodesQuery(blankNodes, baseQuery, ontologies)\n : buildAutoDetectBlankNodesQuery(blankNodesDepth, baseQuery);\n\n if (blankNodesQuery && blankNodesQuery.construct) {\n resourceWhere = resourceWhere.concat(blankNodesQuery.where);\n sparqlJsParams.template = sparqlJsParams.template.concat(blankNodesQuery.construct);\n } else {\n resourceWhere.push(baseQuery.where);\n }\n\n sparqlJsParams.where.push(\n {\n type: 'union',\n patterns: [\n containerWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: containerWhere\n }\n ]\n },\n {\n type: 'union',\n patterns: [\n resourceWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: resourceWhere\n }\n ]\n }\n );\n\n return generator.stringify(sparqlJsParams);\n};\n\nexport default buildSparqlQuery;\n","import { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\nconst defaultToArray = value => (!value ? [] : Array.isArray(value) ? value : [value]);\n\n// We need to always include the type or React-Admin will not work properly\nconst typeQuery = triple(\n variable('s1'),\n namedNode('http://www.w3.org/1999/02/22-rdf-syntax-ns#type'),\n variable('type')\n);\n\nconst buildBaseQuery = (predicates, ontologies) => {\n let baseTriples;\n if (predicates) {\n baseTriples = defaultToArray(predicates).map((predicate, i) =>\n triple(variable('s1'), namedNode(resolvePrefix(predicate, ontologies)), variable(`o${i + 1}`))\n );\n return {\n construct: [typeQuery, ...baseTriples],\n where: [typeQuery, ...baseTriples.map(triple => ({ type: 'optional', patterns: [triple] }))]\n };\n }\n baseTriples = [triple(variable('s1'), variable('p1'), variable('o1'))];\n return {\n construct: baseTriples,\n where: baseTriples\n };\n};\n\nexport default buildBaseQuery;\n","const resolvePrefix = (item, ontologies) => {\n if (item.startsWith('http://') || item.startsWith('https://')) {\n // Already resolved, return the URI\n return item;\n }\n if (item === 'a') {\n // Special case\n return 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';\n }\n const [prefix, value] = item.split(':');\n if (value) {\n const ontology = ontologies.find(ontology => ontology.prefix === prefix);\n if (ontology) {\n return ontology.url + value;\n }\n throw new Error(`No ontology found with prefix ${prefix}`);\n } else {\n throw new Error(`The value \"${item}\" is not correct. It must include a prefix or be a full URI.`);\n }\n};\n\nexport default resolvePrefix;\n","import md5 from 'crypto-js/md5';\nimport { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\n// Transform ['ont:predicate1/ont:predicate2'] to ['ont:predicate1', 'ont:predicate1/ont:predicate2']\nconst extractNodes = blankNodes => {\n const nodes = [];\n if (blankNodes) {\n for (const predicate of blankNodes) {\n if (predicate.includes('/')) {\n const nodeNames = predicate.split('/');\n for (let i = 1; i <= nodeNames.length; i++) {\n nodes.push(nodeNames.slice(0, i).join('/'));\n }\n } else {\n nodes.push(predicate);\n }\n }\n }\n return nodes;\n};\n\nconst generateSparqlVarName = node => md5(node);\n\nconst getParentNode = node => node.includes('/') && node.split('/')[0];\n\nconst getPredicate = node => (node.includes('/') ? node.split('/')[1] : node);\n\nconst buildUnionQuery = queries =>\n queries.map(q => {\n let triples = q.query;\n const firstTriple = queries.find(q2 => q.parentNode === q2.node);\n if (firstTriple !== undefined) {\n triples = triples.concat(firstTriple.query[0]);\n }\n return {\n type: 'bgp',\n triples\n };\n });\n\nconst buildBlankNodesQuery = (blankNodes, baseQuery, ontologies) => {\n const queries = [];\n const nodes = extractNodes(blankNodes);\n\n if (nodes && ontologies && ontologies.length > 0) {\n for (const node of nodes) {\n const parentNode = getParentNode(node);\n const predicate = getPredicate(node);\n const varName = generateSparqlVarName(node);\n const parentVarName = parentNode ? generateSparqlVarName(parentNode) : '1';\n\n const query = [\n triple(variable(`s${parentVarName}`), namedNode(resolvePrefix(predicate, ontologies)), variable(`s${varName}`)),\n triple(variable(`s${varName}`), variable(`p${varName}`), variable(`o${varName}`))\n ];\n\n queries.push({\n node,\n parentNode,\n query,\n filter: '' // `FILTER(isBLANK(?s${varName})) .`\n });\n }\n\n return {\n construct: queries.length > 0 ? queries.map(q => q.query).reduce((pre, cur) => pre.concat(cur)) : null,\n where: {\n type: 'union',\n patterns: [baseQuery.where, ...buildUnionQuery(queries)]\n }\n };\n }\n return {\n construct: '',\n where: ''\n };\n};\n\nexport default buildBlankNodesQuery;\n","import { triple, variable } from '@rdfjs/data-model';\n\nconst buildAutoDetectBlankNodesQuery = (depth, baseQuery) => {\n const construct = [...baseQuery.construct];\n let where = {};\n if (depth > 0) {\n const whereQueries = [];\n whereQueries.push([baseQuery.where]);\n for (let i = 1; i <= depth; i++) {\n construct.push(triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`)));\n whereQueries.push([\n ...whereQueries[whereQueries.length - 1],\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isblank',\n args: [variable(`o${i}`)]\n }\n },\n triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`))\n ]);\n }\n where = {\n type: 'union',\n patterns: whereQueries\n };\n } else if (depth === 0) {\n where = baseQuery.where;\n } else {\n throw new Error('The depth of buildAutoDetectBlankNodesQuery should be 0 or more');\n }\n\n return { construct, where };\n};\n\nexport default buildAutoDetectBlankNodesQuery;\n","import urlJoin from 'url-join';\n\nconst findContainersWithPaths = (paths, dataServers) => {\n const containers = {};\n Object.keys(paths).forEach(serverKey => {\n if (dataServers[serverKey]) {\n containers[serverKey] = [];\n paths[serverKey].forEach(path => {\n containers[serverKey].push(urlJoin(dataServers[serverKey].baseUrl, path));\n });\n } else {\n throw new Error(`No server found with key ${serverKey}`);\n }\n });\n return containers;\n};\n\nexport default findContainersWithPaths;\n","import getOne from './getOne';\n\nconst getManyMethod = config => async (resourceId, params) => {\n const { returnFailedResources } = config;\n\n let returnData = await Promise.all(\n params.ids.map(id =>\n getOne(config)(resourceId, { id: typeof id === 'object' ? id['@id'] : id })\n .then(({ data }) => data)\n .catch(() => {\n // Catch if one resource fails to load\n // Otherwise no references will be show if only one is missing\n // See https://github.com/marmelab/react-admin/issues/5190\n if (returnFailedResources) {\n return { id, _error: true };\n }\n // Returning nothing\n })\n )\n );\n\n // We don't want undefined results to appear in the results as it will break with react-admin\n returnData = returnData.filter(e => e);\n\n return { data: returnData };\n};\n\nexport default getManyMethod;\n","import getList from './getList';\n\nconst getManyReferenceMethod = config => async (resourceId, params) => {\n params.filter = { ...params.filter, [params.target]: params.id };\n delete params.target;\n return await getList(config)(resourceId, params);\n};\n\nexport default getManyReferenceMethod;\n","import uploadAllFiles from '../utils/uploadAllFiles';\n\nconst updateMethod = config => async (resourceId, params) => {\n const { httpClient, jsonContext } = config;\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n await httpClient(params.id, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': jsonContext,\n ...params.data\n })\n });\n\n return { data: params.data };\n};\n\nexport default updateMethod;\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport getServerKeyFromType from './getServerKeyFromType';\n\nconst fetchUserConfig = async config => {\n const { dataServers, httpClient } = config;\n const token = localStorage.getItem('token');\n const podKey = getServerKeyFromType('pod', dataServers);\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n\n // If the user is logged in\n if (token) {\n const { webId } = jwtDecode(token);\n let userData;\n\n try {\n const { json } = await httpClient(webId);\n userData = json;\n } catch (e) {\n console.error(e);\n // If the webId cannot be fetched, assume an invalid token and disconnect the user\n localStorage.clear();\n window.location.reload();\n return;\n }\n\n // If we have a POD server\n if (podKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[podKey].name = 'My Pod';\n config.dataServers[podKey].baseUrl = urlJoin(webId, 'data'); // TODO find POD URI from user profile\n config.dataServers[podKey].sparqlEndpoint =\n userData.endpoints?.['void:sparqlEndpoint'] || urlJoin(webId, 'sparql');\n }\n\n if (authServerKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[authServerKey].proxyUrl = userData.endpoints?.proxyUrl;\n }\n } else if (podKey) {\n // If the user is not logged in, ignore the POD server\n delete config.dataServers[podKey];\n }\n};\n\nexport default fetchUserConfig;\n","const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\nconst fetchVoidEndpoints = async config => {\n const fetchPromises = Object.entries(config.dataServers)\n .filter(([key, server]) => server.pod !== true)\n .map(([key, server]) =>\n config\n .httpClient(new URL('/.well-known/void', server.baseUrl).toString())\n .then(result => ({ key, datasets: result.json['@graph'] }))\n .catch(e => {\n if (e.status === 404 || e.status === 401 || e.status === 500) {\n return { key, error: e };\n }\n throw e;\n })\n );\n\n let results = [];\n\n try {\n results = await Promise.all(fetchPromises);\n } catch (e) {\n // Do not throw error if no endpoint found\n }\n\n for (const result of results) {\n config.dataServers[result.key].containers = config.dataServers[result.key].containers || {};\n config.dataServers[result.key].blankNodes = config.dataServers[result.key].blankNodes || {};\n\n // Ignore unfetchable endpoints\n if (result.datasets) {\n for (const dataset of result.datasets) {\n const datasetServerKey = Object.keys(config.dataServers).find(\n key => dataset['void:uriSpace'] === config.dataServers[key].baseUrl\n );\n\n // If the dataset is not part of a server mapped in the dataServers, ignore it\n if (datasetServerKey) {\n // If this is the local dataset, add the base information\n if (datasetServerKey === result.key) {\n config.dataServers[result.key].name = config.dataServers[result.key].name || dataset['dc:title'];\n config.dataServers[result.key].description =\n config.dataServers[result.key].description || dataset['dc:description'];\n config.dataServers[result.key].sparqlEndpoint =\n config.dataServers[result.key].sparqlEndpoint || dataset['void:sparqlEndpoint'];\n }\n\n config.dataServers[result.key].containers[datasetServerKey] =\n config.dataServers[result.key].containers[datasetServerKey] || {};\n\n for (const partition of defaultToArray(dataset['void:classPartition'])) {\n for (const type of defaultToArray(partition['void:class'])) {\n // Set containers by type\n const path = partition['void:uriSpace'].replace(dataset['void:uriSpace'], '/');\n if (config.dataServers[result.key].containers[datasetServerKey][type]) {\n config.dataServers[result.key].containers[datasetServerKey][type].push(path);\n } else {\n config.dataServers[result.key].containers[datasetServerKey][type] = [path];\n }\n }\n }\n }\n }\n }\n }\n};\n\nexport default fetchVoidEndpoints;\n","import { fetchUtils } from 'react-admin';\nimport getServerKeyFromUri from './utils/getServerKeyFromUri';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\n\n/*\n * HTTP client used by all calls in data provider and auth provider\n * Do proxy calls if a proxy endpoint is available and the server is different from the auth server\n */\nconst httpClient =\n dataServers =>\n (url, options = {}) => {\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n const serverKey = getServerKeyFromUri(url, dataServers);\n const useProxy =\n serverKey !== authServerKey && dataServers[authServerKey]?.proxyUrl && dataServers[serverKey]?.noProxy !== true;\n\n if (!options.headers) options.headers = new Headers();\n\n switch (options.method) {\n case 'POST':\n case 'PATCH':\n case 'PUT':\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n if (!options.headers.has('Content-Type')) options.headers.set('Content-Type', 'application/ld+json');\n break;\n\n case 'DELETE':\n break;\n\n case 'GET':\n default:\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n break;\n }\n\n if (useProxy) {\n const formData = new FormData();\n\n formData.append('id', url);\n formData.append('method', options.method || 'GET');\n formData.append('headers', JSON.stringify(Object.fromEntries(options.headers.entries())));\n\n if (options.body) {\n if (options.body instanceof File) {\n formData.append('body', options.body, options.body.name);\n } else {\n formData.append('body', options.body);\n }\n }\n\n // Post to proxy endpoint with multipart/form-data format\n return fetchUtils.fetchJson(dataServers[authServerKey].proxyUrl, {\n method: 'POST',\n headers: new Headers({\n Authorization: `Bearer ${localStorage.getItem('token')}`\n }),\n body: formData\n });\n }\n // Add token if the server is the same as the auth server\n if (serverKey === authServerKey) {\n const token = localStorage.getItem('token');\n if (token) options.headers.set('Authorization', `Bearer ${token}`);\n }\n return fetchUtils.fetchJson(url, options);\n };\n\nexport default httpClient;\n","// Return the first server matching with the baseUrl\nconst getServerKeyFromUri = (uri, dataServers) => {\n return Object.keys(dataServers).find(key => {\n if (dataServers[key].pod) {\n // The baseUrl ends with /data so remove this part to match with the webId and webId-related URLs (/inbox, /outbox...)\n return dataServers[key].baseUrl && uri.startsWith(dataServers[key].baseUrl.replace('/data', ''));\n }\n return uri.startsWith(dataServers[key].baseUrl);\n });\n};\n\nexport default getServerKeyFromUri;\n","import { useCallback, useMemo, useContext } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst compute = (externalLinks, record) =>\n typeof externalLinks === 'function' ? externalLinks(record) : externalLinks;\nconst isURL = url => typeof url === 'string' && url.startsWith('http');\n\nconst useGetExternalLink = componentExternalLinks => {\n // Since the externalLinks config is defined only locally, we don't need to wait for VOID endpoints fetching\n const dataProvider = useContext(DataProviderContext);\n const dataServers = dataProvider.getLocalDataServers();\n\n const serversExternalLinks = useMemo(() => {\n if (dataServers) {\n return Object.fromEntries(\n Object.values(dataServers).map(server => {\n // If externalLinks is not defined in the data server, use external links for non-default servers\n const externalLinks = server.externalLinks !== undefined ? server.externalLinks : !server.default;\n return [server.baseUrl, externalLinks];\n })\n );\n }\n }, [dataServers]);\n\n return useCallback(\n record => {\n const computedComponentExternalLinks = compute(componentExternalLinks, record);\n // If the component explicitly asks not to display as external links, use an internal link\n if (computedComponentExternalLinks === false) return false;\n\n if (!record?.id) return false;\n\n const serverBaseUrl = Object.keys(serversExternalLinks).find(baseUrl => record?.id.startsWith(baseUrl));\n // If no matching data servers could be found, assume we have an internal link\n if (!serverBaseUrl) return false;\n\n const computedServerExternalLinks = compute(serversExternalLinks[serverBaseUrl], record);\n // If the data server explicitly asks not to display as external links, use an internal link\n if (computedServerExternalLinks === false) return false;\n\n if (isURL(computedComponentExternalLinks)) {\n return computedComponentExternalLinks;\n }\n if (isURL(computedServerExternalLinks)) {\n return computedServerExternalLinks;\n }\n return record.id;\n },\n [serversExternalLinks, componentExternalLinks]\n );\n};\n\nexport default useGetExternalLink;\n","import { useState, useEffect } from 'react';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findContainersWithTypes from '../dataProvider/utils/findContainersWithTypes';\n\nconst useContainers = (resourceId, serverKeys = '@all') => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [containers, setContainers] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n setContainers(findContainersWithTypes(dataModel.types, serverKeys, dataServers));\n }\n }, [dataModel, dataServers, serverKeys]);\n\n return containers;\n};\n\nexport default useContainers;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModel = resourceId => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModel, setDataModel] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModel(results[resourceId]));\n }, [dataProvider, resourceId, setDataModel]);\n\n return dataModel;\n};\n\nexport default useDataModel;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataServers = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataServers, setDataServers] = useState();\n\n useEffect(() => {\n dataProvider.getDataServers().then(results => setDataServers(results));\n }, [dataProvider, setDataServers]);\n\n return dataServers;\n};\n\nexport default useDataServers;\n","import { useState, useEffect } from 'react';\nimport urlJoin from 'url-join';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findCreateContainerWithTypes from '../dataProvider/utils/findCreateContainerWithTypes';\nimport getServerKeyFromType from '../dataProvider/utils/getServerKeyFromType';\n\nconst useCreateContainer = resourceId => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [createContainer, setCreateContainer] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n if (dataModel.create?.container) {\n const [serverKey, path] = Object.entries(dataModel.create.container)[0];\n if (!serverKey || !dataServers[serverKey]) {\n throw new Error(`Wrong key for the dataModel.create.container config of resource ${resourceId}`);\n }\n setCreateContainer(urlJoin(dataServers[serverKey].baseUrl, path));\n } else if (dataModel.create?.server) {\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, dataModel.create?.server, dataServers));\n } else {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, defaultServerKey, dataServers));\n }\n }\n }, [dataModel, dataServers, setCreateContainer]);\n\n return createContainer;\n};\n\nexport default useCreateContainer;\n","import urlJoin from 'url-join';\n\nconst findCreateContainerWithTypes = (types, createServerKey, dataServers) => {\n const containers = [];\n\n if (Object.keys(dataServers[createServerKey].containers[createServerKey]).length > 0) {\n Object.keys(dataServers[createServerKey].containers[createServerKey]).forEach(type => {\n if (types.includes(type)) {\n dataServers[createServerKey].containers[createServerKey][type].map(path => {\n const containerUri = urlJoin(dataServers[createServerKey].baseUrl, path);\n if (!containers.includes(containerUri)) {\n containers.push(containerUri);\n }\n });\n }\n });\n }\n\n if (containers.length === 0) {\n throw new Error(\n `No container found matching with types ${JSON.stringify(\n types\n )}. You can set explicitely the create.container property of the resource.`\n );\n } else if (containers.length > 1) {\n throw new Error(\n `More than one container found matching with types ${JSON.stringify(\n types\n )}. You must set the create.server or create.container property for the resource.`\n );\n }\n\n return containers[0];\n};\n\nexport default findCreateContainerWithTypes;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModels = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModels, setDataModels] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModels(results));\n }, [dataProvider, setDataModels]);\n\n return dataModels;\n};\n\nexport default useDataModels;\n","import React, { useState, useEffect } from 'react';\n\n/**\n * @example\n * \n * \n * \n * \n * \n * \n */\n\nconst FilterHandler = ({ children, record, filter, source, ...otherProps }) => {\n const [filtered, setFiltered] = useState();\n useEffect(() => {\n if (record && source && Array.isArray(record?.[source])) {\n const filteredData = record?.[source].filter(r => {\n let eq = true;\n for (const key in filter) {\n const value = r[key];\n if (Array.isArray(value)) {\n if (!value.includes(filter[key])) {\n eq = false;\n }\n } else if (value !== filter[key]) {\n eq = false;\n }\n }\n return eq;\n });\n const newRecord = {\n ...record\n };\n // undefined setted if no data to obtain no render in RightLabel or equivalent\n newRecord[source] = filteredData.length > 0 ? filteredData : undefined;\n setFiltered(newRecord);\n }\n }, [record, source, filter]);\n\n return (\n <>\n {React.Children.map(children, (child, i) => {\n return React.cloneElement(child, {\n ...otherProps,\n record: filtered,\n source\n });\n })}\n >\n );\n};\nexport default FilterHandler;\n","import React from 'react';\nimport { useGetList } from 'react-admin';\nimport { default as FilterHandler } from './FilterHandler';\n\n/*\n * @example Label used in examples\n * const Label = ({label, ...otherProps})=>{\n * return {label}
\n * }\n *\n * @example show header for each group with group property thanks to groupHeader\n * }\n * filterProperty=\"property of source filtered by groupReference\"\n * >\n * // same props as GroupedArrayField source\n * \n * \n * \n * \n *\n * @example call chhildren with label thanks to groupLabel\n * \n * \n *\n * @example conditional show of group if no data in source. Conditionale groupHeader is not possible because GroupedArrayField define group before filter ; need use chhildren.\n * const ConditionalSourceDefinedHandler = ({record,source,children,...otherProps})=>{\n * if (record?.[source] && (!Array.isArray(record[source])||record[source].length>0)){\n * return React.Children.map(children, (child, i) => {\n * return React.cloneElement(child, {...otherProps,record,source});\n * })\n * }else{\n * return <>>\n * }\n * }\n *\n * \n * \n * \n * \n *\n *\n */\nconst GroupedReferenceHandler = ({\n children,\n groupReference,\n groupLabel,\n groupHeader,\n filterProperty,\n ...otherProps\n}) => {\n const { data } = useGetList({\n resource: groupReference,\n payload: {}\n });\n\n return (\n <>\n {data?.map((data, index) => {\n const filter = {};\n filter[filterProperty] = data.id;\n return (\n <>\n {groupHeader && groupHeader({ ...otherProps, group: data })}\n \n {children}\n \n >\n );\n })}\n >\n );\n};\n\nexport default GroupedReferenceHandler;\n","import React, { useEffect, useState } from 'react';\nimport { ArrayInput, SimpleFormIterator, TextInput } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useReferenceInputStyles = makeStyles({\n form: {\n display: 'flex'\n },\n input: {\n paddingRight: '20px'\n }\n});\n\nconst useHideInputStyles = makeStyles({\n root: {\n display: 'none'\n }\n});\n\nconst ReificationArrayInput = props => {\n const { reificationClass, children, ...otherProps } = props;\n const flexFormClasses = useReferenceInputStyles();\n const hideInputStyles = useHideInputStyles();\n\n return (\n \n \n {React.Children.map(props.children, (child, i) => {\n return React.cloneElement(child, {\n className: flexFormClasses.input\n });\n })}\n \n \n \n );\n};\n\nexport default ReificationArrayInput;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
+{"mappings":"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","sources":["packages/semantic-data-provider/src/index.js","packages/semantic-data-provider/src/dataProvider/dataProvider.js","packages/semantic-data-provider/src/dataProvider/methods/create.js","packages/semantic-data-provider/src/dataProvider/methods/getOne.js","packages/semantic-data-provider/src/dataProvider/utils/fetchResource.js","packages/semantic-data-provider/src/dataProvider/utils/uploadAllFiles.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithTypes.js","packages/semantic-data-provider/src/dataProvider/utils/parseServerKeys.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromType.js","packages/semantic-data-provider/src/dataProvider/methods/delete.js","packages/semantic-data-provider/src/dataProvider/methods/deleteMany.js","packages/semantic-data-provider/src/dataProvider/methods/getDataServers.js","packages/semantic-data-provider/src/dataProvider/methods/getDataModels.js","packages/semantic-data-provider/src/dataProvider/methods/getList.js","packages/semantic-data-provider/src/dataProvider/utils/fetchContainers.js","packages/semantic-data-provider/src/dataProvider/utils/fetchSparqlEndpoints.js","packages/semantic-data-provider/src/dataProvider/utils/getEmbedFrame.js","packages/semantic-data-provider/src/dataProvider/utils/buildSparqlQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildBaseQuery.js","packages/semantic-data-provider/src/dataProvider/utils/resolvePrefix.js","packages/semantic-data-provider/src/dataProvider/utils/buildBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/buildAutoDetectBlankNodesQuery.js","packages/semantic-data-provider/src/dataProvider/utils/findContainersWithPath.js","packages/semantic-data-provider/src/dataProvider/methods/getMany.js","packages/semantic-data-provider/src/dataProvider/methods/getManyReference.js","packages/semantic-data-provider/src/dataProvider/methods/update.js","packages/semantic-data-provider/src/dataProvider/utils/fetchUserConfig.js","packages/semantic-data-provider/src/dataProvider/utils/fetchVoidEndpoints.js","packages/semantic-data-provider/src/dataProvider/httpClient.js","packages/semantic-data-provider/src/dataProvider/utils/getServerKeyFromUri.js","packages/semantic-data-provider/src/hooks/useGetExternalLink.js","packages/semantic-data-provider/src/hooks/useContainers.js","packages/semantic-data-provider/src/hooks/useDataModel.js","packages/semantic-data-provider/src/hooks/useDataServers.js","packages/semantic-data-provider/src/hooks/useCreateContainer.js","packages/semantic-data-provider/src/dataProvider/utils/findCreateContainerWithTypes.js","packages/semantic-data-provider/src/hooks/useDataModels.js","packages/semantic-data-provider/src/reification/FilterHandler.js","packages/semantic-data-provider/src/reification/GroupedReferenceHandler.js","packages/semantic-data-provider/src/reification/ReificationArrayInput.js"],"sourcesContent":["export { default as dataProvider } from './dataProvider/dataProvider';\n\nexport { default as buildSparqlQuery } from './dataProvider/utils/buildSparqlQuery';\nexport { default as buildBlankNodesQuery } from './dataProvider/utils/buildBlankNodesQuery';\n\nexport { default as useGetExternalLink } from './hooks/useGetExternalLink';\nexport { default as useContainers } from './hooks/useContainers';\nexport { default as useCreateContainer } from './hooks/useCreateContainer';\nexport { default as useDataModel } from './hooks/useDataModel';\nexport { default as useDataModels } from './hooks/useDataModels';\nexport { default as useDataServers } from './hooks/useDataServers';\n\nexport { default as FilterHandler } from './reification/FilterHandler';\nexport { default as GroupedReferenceHandler } from './reification/GroupedReferenceHandler';\nexport { default as ReificationArrayInput } from './reification/ReificationArrayInput';\n","import createMethod from './methods/create';\nimport deleteMethod from './methods/delete';\nimport deleteManyMethod from './methods/deleteMany';\nimport getDataServersMethod from './methods/getDataServers';\nimport getDataModelsMethod from './methods/getDataModels';\nimport getListMethod from './methods/getList';\nimport getManyMethod from './methods/getMany';\nimport getManyReferenceMethod from './methods/getManyReference';\nimport getOneMethod from './methods/getOne';\nimport updateMethod from './methods/update';\nimport fetchUserConfig from './utils/fetchUserConfig';\nimport fetchVoidEndpoints from './utils/fetchVoidEndpoints';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\nimport httpClient from './httpClient';\n\nconst dataProvider = config => {\n // TODO verify all data provider config + data models\n if (!getServerKeyFromType('default', config.dataServers))\n throw new Error('You must define a default server in your dataServers config');\n\n if (!config.jsonContext) config.jsonContext = Object.fromEntries(config.ontologies.map(o => [o.prefix, o.url]));\n if (!config.returnFailedResources) config.returnFailedResources = false;\n\n // Configure httpClient with data servers (this is needed for proxy calls)\n config.httpClient = httpClient(config.dataServers);\n\n const fetchUserConfigPromise = fetchUserConfig(config);\n const fetchVoidEndpointsPromise = fetchVoidEndpoints(config);\n\n const waitForVoidEndpoints =\n method =>\n async (...arg) => {\n await fetchUserConfigPromise;\n await fetchVoidEndpointsPromise; // Return immediately if promise is fulfilled\n return await method(...arg);\n };\n\n return {\n getList: waitForVoidEndpoints(getListMethod(config)),\n getMany: waitForVoidEndpoints(getManyMethod(config)),\n getManyReference: waitForVoidEndpoints(getManyReferenceMethod(config)),\n getOne: waitForVoidEndpoints(getOneMethod(config)),\n create: waitForVoidEndpoints(createMethod(config)),\n update: waitForVoidEndpoints(updateMethod(config)),\n updateMany: () => {\n throw new Error('updateMany is not implemented yet');\n },\n delete: waitForVoidEndpoints(deleteMethod(config)),\n deleteMany: waitForVoidEndpoints(deleteManyMethod(config)),\n // Custom methods\n getDataModels: waitForVoidEndpoints(getDataModelsMethod(config)),\n getDataServers: waitForVoidEndpoints(getDataServersMethod(config)),\n getLocalDataServers: getDataServersMethod(config),\n fetch: waitForVoidEndpoints(config.httpClient)\n };\n};\n\nexport default dataProvider;\n","import urlJoin from 'url-join';\nimport getOne from './getOne';\nimport uploadAllFiles from '../utils/uploadAllFiles';\nimport findContainersWithTypes from '../utils/findContainersWithTypes';\n\nconst createMethod = config => async (resourceId, params) => {\n const { dataServers, resources, httpClient, jsonContext } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const headers = new Headers();\n\n let containerUri;\n let serverKey;\n if (dataModel.create?.container) {\n serverKey = Object.keys(dataModel.create.container)[0];\n containerUri = urlJoin(dataServers[serverKey].baseUrl, Object.values(dataModel.create.container)[0]);\n } else {\n serverKey = dataModel.create?.server || Object.keys(dataServers).find(key => dataServers[key].default === true);\n if (!serverKey) throw new Error('You must define a server for the creation, or a container, or a default server');\n\n const containers = findContainersWithTypes(dataModel.types, [serverKey], dataServers);\n // Extract the containerUri from the results (and ensure there is only one)\n const serverKeys = Object.keys(containers);\n\n if (!serverKeys || serverKeys.length === 0)\n throw new Error(`No container with types ${JSON.stringify(dataModel.types)} found on server ${serverKey}`);\n if (serverKeys.length > 1 || containers[serverKeys[0]].length > 1)\n throw new Error(\n `More than one container detected with types ${JSON.stringify(dataModel.types)} on server ${serverKey}`\n );\n containerUri = containers[serverKeys[0]][0];\n }\n\n if (params.data) {\n if (dataModel.fieldsMapping?.title) {\n if (Array.isArray(dataModel.fieldsMapping.title)) {\n headers.set('Slug', dataModel.fieldsMapping.title.map(f => params.data[f]).join(' '));\n } else {\n headers.set('Slug', params.data[dataModel.fieldsMapping.title]);\n }\n }\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n const { headers: responseHeaders } = await httpClient(containerUri, {\n method: 'POST',\n headers,\n body: JSON.stringify({\n '@context': jsonContext,\n '@type': dataModel.types,\n ...params.data\n })\n });\n\n // Retrieve newly-created resource\n const resourceUri = responseHeaders.get('Location');\n return await getOne(config)(resourceId, { id: resourceUri });\n }\n if (params.id) {\n headers.set('Content-Type', 'application/sparql-update');\n\n await httpClient(containerUri, {\n method: 'PATCH',\n headers,\n body: `\n PREFIX ldp: \n INSERT DATA { <${containerUri}> ldp:contains <${params.id}>. };\n `\n });\n\n // Create must return the new data, so get them from the remote URI\n return await getOne(config)(resourceId, { id: params.id });\n }\n};\n\nexport default createMethod;\n","import fetchResource from '../utils/fetchResource';\n\nconst getOneMethod = config => async (resourceId, params) => {\n const { resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n const data = await fetchResource(params.id, config);\n\n // Transform single value into array if forceArray is set\n if (dataModel.list?.forceArray) {\n for (const forceArrayItem of dataModel.list?.forceArray || []) {\n if (data[forceArrayItem] && !Array.isArray(data[forceArrayItem])) {\n data[forceArrayItem] = [data[forceArrayItem]];\n }\n }\n }\n\n // TODO activate defaultFetchPlan option\n // if (dataModel.list?.defaultFetchPlan) {\n // for (const node of dataModel.list?.defaultFetchPlan) {\n // if (\n // data[node] &&\n // typeof data[node] === 'string' &&\n // data[node].startsWith('http')\n // ) {\n // try {\n // const dataToEmbed = await fetchResource(data[node], config);\n // delete dataToEmbed['@context'];\n // data[node] = dataToEmbed;\n // } catch (e) {\n // // Ignore errors (this may happen if user does not have rights to see the resource)\n // }\n // }\n // }\n // }\n\n return { data };\n};\n\nexport default getOneMethod;\n","import jsonld from 'jsonld';\n\nconst fetchResource = async (resourceUri, config) => {\n const { httpClient, jsonContext } = config;\n\n let { json: data } = await httpClient(resourceUri);\n\n if (!data) throw new Error(`Not a valid JSON: ${resourceUri}`);\n\n data.id = data.id || data['@id'];\n\n // We compact only if the context is different between the frontend and the middleware\n // TODO deep compare if the context is an object\n if (data['@context'] !== jsonContext) {\n data = await jsonld.compact(data, jsonContext);\n }\n\n return data;\n};\n\nexport default fetchResource;\n","import createSlug from 'speakingurl';\nimport urlJoin from 'url-join';\n\nexport const getSlugWithExtension = fileName => {\n let fileExtension = '';\n const splitFileName = fileName.split('.');\n if (splitFileName.length > 1) {\n fileExtension = splitFileName.pop();\n fileName = splitFileName.join('.');\n }\n return `${createSlug(fileName, { lang: 'fr' })}.${fileExtension}`;\n};\n\nexport const isFile = o => o?.rawFile && o.rawFile instanceof File;\n\nconst getUploadsContainerUri = config => {\n const serverKey = Object.keys(config.dataServers).find(key => config.dataServers[key].uploadsContainer);\n if (serverKey) {\n return urlJoin(config.dataServers[serverKey].baseUrl, config.dataServers[serverKey].uploadsContainer);\n }\n};\n\nconst uploadFile = async (rawFile, config) => {\n const uploadsContainerUri = getUploadsContainerUri(config);\n if (!uploadsContainerUri) throw new Error(\"You must define an uploadsContainer in one of the server's configuration\");\n\n const response = await config.httpClient(uploadsContainerUri, {\n method: 'POST',\n body: rawFile,\n headers: new Headers({\n // We must sluggify the file name, because we can't use non-ASCII characters in the header\n // However we keep the extension apart (if it exists) so that it is not replaced with a -\n // TODO let the middleware guess the extension based on the content type\n Slug: getSlugWithExtension(rawFile.name),\n 'Content-Type': rawFile.type\n })\n });\n\n if (response.status === 201) {\n return response.headers.get('Location');\n }\n};\n\n/*\n * Look for raw files in the record data.\n * If there are any, upload them and replace the file by its URL.\n */\nconst uploadAllFiles = async (record, config) => {\n for (const property in record) {\n if (Object.prototype.hasOwnProperty.call(record, property)) {\n if (Array.isArray(record[property])) {\n for (let i = 0; i < record[property].length; i++) {\n if (isFile(record[property][i])) {\n record[property][i] = await uploadFile(record[property][i].rawFile, config);\n }\n }\n } else if (isFile(record[property])) {\n record[property] = await uploadFile(record[property].rawFile, config);\n }\n }\n }\n return record;\n};\n\nexport default uploadAllFiles;\n","import urlJoin from 'url-join';\nimport parseServerKeys from './parseServerKeys';\n\nconst findContainersWithTypes = (types, serverKeys, dataServers) => {\n const containers = {};\n const existingContainers = [];\n\n serverKeys = parseServerKeys(serverKeys, dataServers);\n\n Object.keys(dataServers).forEach(key1 => {\n Object.keys(dataServers[key1].containers).forEach(key2 => {\n if (!serverKeys || serverKeys.includes(key2)) {\n Object.keys(dataServers[key1].containers[key2]).forEach(type => {\n if (types.includes(type)) {\n dataServers[key1].containers[key2][type].map(path => {\n const containerUri = urlJoin(dataServers[key2].baseUrl, path);\n\n // Avoid returning the same container several times\n if (!existingContainers.includes(containerUri)) {\n existingContainers.push(containerUri);\n\n if (!containers[key1]) containers[key1] = [];\n containers[key1].push(containerUri);\n }\n });\n }\n });\n }\n });\n });\n return containers;\n};\n\nexport default findContainersWithTypes;\n","import getServerKeyFromType from './getServerKeyFromType';\n\nconst parseServerKey = (serverKey, dataServers) => {\n switch (serverKey) {\n case '@default':\n return getServerKeyFromType('default', dataServers);\n case '@pod':\n return getServerKeyFromType('pod', dataServers);\n case '@authServer':\n return getServerKeyFromType('authServer', dataServers);\n default:\n return serverKey;\n }\n};\n\n// Return the list of servers keys in an array\n// parsing keywords like @all, @default, @pod and @authServer\nconst parseServerKeys = (serverKeys, dataServers) => {\n if (Array.isArray(serverKeys)) {\n if (serverKeys.includes('@all')) {\n return Object.keys(dataServers);\n }\n return serverKeys.map(serverKey => parseServerKey(serverKey, dataServers));\n }\n if (typeof serverKeys === 'string') {\n if (serverKeys === '@all') {\n return Object.keys(dataServers);\n }\n if (serverKeys === '@remote') {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n return Object.keys(dataServers).filter(serverKey => serverKey !== defaultServerKey);\n }\n return [parseServerKey(serverKeys, dataServers)];\n }\n // If server key is empty\n return false;\n};\n\nexport default parseServerKeys;\n","const getServerKeyFromType = (type, dataServers) => {\n return Object.keys(dataServers).find(key => {\n return dataServers[key][type];\n });\n};\n\nexport default getServerKeyFromType;\n","const deleteMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n\n await httpClient(params.id, {\n method: 'DELETE'\n });\n\n return { data: { id: params.id } };\n};\n\nexport default deleteMethod;\n","const deleteManyMethod = config => async (resourceId, params) => {\n const { httpClient } = config;\n const ids = [];\n\n for (const id of params.ids) {\n try {\n await httpClient(id, {\n method: 'DELETE'\n });\n ids.push(id);\n } catch (e) {\n // Do nothing if we fail to delete a resource\n }\n }\n\n return { data: ids };\n};\n\nexport default deleteManyMethod;\n","const getDataServers = config => () => {\n return config.dataServers;\n};\n\nexport default getDataServers;\n","const getDataModels = config => () => {\n return config.resources;\n};\n\nexport default getDataModels;\n","import findContainersWithTypes from '../utils/findContainersWithTypes';\nimport fetchContainers from '../utils/fetchContainers';\nimport fetchSparqlEndpoints from '../utils/fetchSparqlEndpoints';\nimport findContainersWithPaths from '../utils/findContainersWithPath';\n\nconst getListMethod =\n config =>\n async (resourceId, params = {}) => {\n const { dataServers, resources } = config;\n const dataModel = resources[resourceId];\n\n if (!dataModel) throw new Error(`Resource ${resourceId} is not mapped in resources file`);\n\n let containers;\n if (!params.filter?._servers && dataModel.list?.containers) {\n if (Array.isArray(dataModel.list?.containers))\n throw new Error(\n `The list.containers property of ${resourceId} dataModel must be of type object ({ serverKey: [containerUri] })`\n );\n // If containers are set explicitly, use them\n containers = findContainersWithPaths(dataModel.list.containers, dataServers);\n } else {\n // Otherwise find the container URIs on the given servers (either in the filter or the data model)\n containers = findContainersWithTypes(\n dataModel.types,\n params.filter?._servers || dataModel.list?.servers,\n dataServers\n );\n }\n\n if (dataModel.list?.fetchContainer) {\n return fetchContainers(containers, resourceId, params, config);\n }\n return fetchSparqlEndpoints(containers, resourceId, params, config);\n };\n\nexport default getListMethod;\n","import jsonld from 'jsonld';\nimport isobject from 'isobject';\n\nexport const isType = (type, resource) => {\n const resourceType = resource.type || resource['@type'];\n return Array.isArray(resourceType) ? resourceType.includes(type) : resourceType === type;\n};\n\nconst fetchContainers = async (containers, resourceId, params, config) => {\n const { httpClient, jsonContext } = config;\n\n // Transform in an containerUri:serverKey object\n const containersServers = Object.keys(containers).reduce(\n (acc, serverKey) => ({\n ...acc,\n ...Object.fromEntries(containers[serverKey].map(containerUri => [containerUri, serverKey]))\n }),\n {}\n );\n\n const fetchPromises = Object.keys(containersServers).map(containerUri =>\n httpClient(containerUri)\n .then(({ json }) => {\n // If container's context is different, compact it to have an uniform result\n // TODO deep compare if the context is an object\n if (json['@context'] !== jsonContext) {\n return jsonld.compact(json, jsonContext);\n }\n return json;\n })\n .then(json => {\n if (isType('ldp:Container', json)) {\n return json['ldp:contains'];\n }\n throw new Error(`${containerUri} is not a LDP container`);\n })\n );\n\n // Fetch simultaneously all containers\n let results = await Promise.all(fetchPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat.apply(...results);\n\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // Apply filter to results\n if (params.filter) {\n // For SPARQL queries, we use \"a\" to filter types, but in containers it must be \"type\"\n if (params.filter.a) {\n params.filter.type = params.filter.a;\n delete params.filter.a;\n }\n\n if (Object.keys(params.filter).length > 0) {\n returnData = returnData.filter(resource => {\n return Object.entries(params.filter).every(([k, v]) => {\n if (k == 'q') {\n return Object.entries(resource).some(([kr, vr]) => {\n if (!isobject(vr)) {\n const arrayValues = Array.isArray(vr) ? vr : [vr];\n return arrayValues.some(va => {\n if (typeof va === 'string' || va instanceof String) {\n return va.toLowerCase().normalize('NFD').includes(v.toLowerCase().normalize('NFD'));\n }\n });\n }\n return false;\n });\n }\n if (resource[k]) {\n return Array.isArray(resource[k]) ? resource[k].some(va => va.includes(v)) : resource[k].includes(v);\n }\n return false;\n });\n });\n }\n }\n\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] && b[params.sort.field]) {\n if (params.sort.order === 'ASC') {\n return a[params.sort.field].localeCompare(b[params.sort.field]);\n }\n return b[params.sort.field].localeCompare(a[params.sort.field]);\n }\n return true;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchContainers;\n","import jsonld from 'jsonld';\nimport getEmbedFrame from './getEmbedFrame';\nimport buildSparqlQuery from './buildSparqlQuery';\n\nconst compare = (a, b) => {\n switch (typeof a) {\n case 'string':\n return a.localeCompare(b);\n case 'number':\n case 'bigint':\n return a - b;\n default:\n return 0;\n }\n};\n\nconst fetchSparqlEndpoints = async (containers, resourceId, params, config) => {\n const { dataServers, resources, httpClient, jsonContext, ontologies } = config;\n const dataModel = resources[resourceId];\n\n const sparqlQueryPromises = Object.keys(containers).map(\n serverKey =>\n new Promise((resolve, reject) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n\n // When the SPARQL request comes from the browser's URL, it comes as JSON string which must must be parsed\n if (\n params.filter?.sparqlWhere &&\n (typeof params.filter.sparqlWhere === 'string' || params.filter.sparqlWhere instanceof String)\n ) {\n params.filter.sparqlWhere = JSON.parse(decodeURIComponent(params.filter.sparqlWhere));\n }\n const sparqlQuery = buildSparqlQuery({\n containers: containers[serverKey],\n params,\n dataModel,\n ontologies\n });\n\n httpClient(dataServers[serverKey].sparqlEndpoint, {\n method: 'POST',\n body: sparqlQuery\n })\n .then(({ json }) => {\n // By default, embed only the blank nodes we explicitly asked to dereference\n // Otherwise we may have same-type resources embedded in other resources\n // To increase performances, you can set explicitEmbedOnFraming to false (make sure the result is still OK)\n const frame =\n dataModel.list?.explicitEmbedOnFraming !== false\n ? {\n '@context': jsonContext,\n '@type': dataModel.types,\n '@embed': '@never',\n ...getEmbedFrame(blankNodes)\n }\n : {\n '@context': jsonContext,\n '@type': dataModel.types\n };\n\n // omitGraph option force results to be in a @graph, even if we have a single result\n return jsonld.frame(json, frame, { omitGraph: false });\n })\n .then(compactJson => {\n if (compactJson['@id']) {\n const { '@context': context, ...rest } = compactJson;\n compactJson = {\n '@context': context,\n '@graph': [rest]\n };\n }\n resolve(compactJson['@graph'] || []);\n })\n .catch(e => reject(e));\n })\n );\n\n // Run simultaneous SPARQL queries\n let results = await Promise.all(sparqlQueryPromises);\n\n if (results.length === 0) {\n return { data: [], total: 0 };\n }\n // Merge all results in one array\n results = [].concat(...results);\n\n // Add id in addition to @id, as this is what React-Admin expects\n let returnData = results.map(item => {\n item.id = item.id || item['@id'];\n return item;\n });\n\n // TODO sort and paginate the results in the SPARQL query to improve performances\n if (params.sort) {\n returnData = returnData.sort((a, b) => {\n if (a[params.sort.field] !== undefined && b[params.sort.field] !== undefined) {\n if (params.sort.order === 'ASC') {\n return compare(a[params.sort.field], b[params.sort.field]);\n }\n return compare(b[params.sort.field], a[params.sort.field]);\n }\n return 0;\n });\n }\n if (params.pagination) {\n returnData = returnData.slice(\n (params.pagination.page - 1) * params.pagination.perPage,\n params.pagination.page * params.pagination.perPage\n );\n }\n\n return { data: returnData, total: results.length };\n};\n\nexport default fetchSparqlEndpoints;\n","const getEmbedFrame = blankNodes => {\n let embedFrame = {};\n let predicates;\n if (blankNodes) {\n for (const blankNode of blankNodes) {\n if (blankNode.includes('/')) {\n predicates = blankNode.split('/').reverse();\n } else {\n predicates = [blankNode];\n }\n embedFrame = {\n ...embedFrame,\n ...predicates.reduce(\n (accumulator, predicate) => ({\n [predicate]: {\n '@embed': '@last',\n ...accumulator\n }\n }),\n {}\n )\n };\n }\n return embedFrame;\n }\n};\n\nexport default getEmbedFrame;\n","import DataFactory from '@rdfjs/data-model';\nimport { Generator as SparqlGenerator } from 'sparqljs';\nimport buildBaseQuery from './buildBaseQuery';\nimport buildBlankNodesQuery from './buildBlankNodesQuery';\nimport buildAutoDetectBlankNodesQuery from './buildAutoDetectBlankNodesQuery';\nimport resolvePrefix from './resolvePrefix';\n\nconst { literal, namedNode, triple, variable } = DataFactory;\n\nconst generator = new SparqlGenerator({\n /* prefixes, baseIRI, factory, sparqlStar */\n});\n\nconst reservedFilterKeys = ['q', 'sparqlWhere', 'blankNodes', 'blankNodesDepth', '_servers', '_predicates'];\n\nconst buildSparqlQuery = ({ containers, params, dataModel, ontologies }) => {\n const blankNodes = params.filter?.blankNodes || dataModel.list?.blankNodes;\n const predicates = params.filter?._predicates || dataModel.list?.predicates;\n const blankNodesDepth = params.filter?.blankNodesDepth ?? dataModel.list?.blankNodesDepth ?? 2;\n const filter = { ...dataModel.list?.filter, ...params.filter };\n const baseQuery = buildBaseQuery(predicates, ontologies);\n\n const sparqlJsParams = {\n queryType: 'CONSTRUCT',\n template: baseQuery.construct,\n where: [],\n type: 'query',\n prefixes: Object.fromEntries(ontologies.map(ontology => [ontology.prefix, ontology.url]))\n };\n\n const containerWhere = [\n {\n type: 'values',\n values: containers.map(containerUri => ({ '?containerUri': namedNode(containerUri) }))\n },\n triple(variable('containerUri'), namedNode('http://www.w3.org/ns/ldp#contains'), variable('s1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isiri',\n args: [variable('s1')]\n }\n }\n ];\n\n let resourceWhere = [];\n\n if (filter && Object.keys(filter).length > 0) {\n const hasSPARQLFilter = filter.sparqlWhere && Object.keys(filter.sparqlWhere).length > 0;\n const hasFullTextSearch = filter.q && filter.q.length > 0;\n\n if (hasSPARQLFilter) {\n /* \n Example of usage :\n {\n \"sparqlWhere\": {\n \"type\": \"bgp\",\n \"triples\": [{\n \"subject\": {\"termType\": \"Variable\", \"value\": \"s1\"},\n \"predicate\": {\"termType\": \"NameNode\", \"value\": \"http://virtual-assembly.org/ontologies/pair#label\"},\n \"object\": {\"termType\": \"Literal\", \"value\": \"My Organization\"}\n }]\n }\n }\n */\n // initialize array in case of single value :\n [].concat(filter.sparqlWhere).forEach(sw => {\n resourceWhere.push(sw);\n });\n }\n\n if (hasFullTextSearch) {\n resourceWhere.push({\n type: 'group',\n patterns: [\n {\n queryType: 'SELECT',\n variables: [variable('s1')],\n where: [\n triple(variable('s1'), variable('p1'), variable('o1')),\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isliteral',\n args: [variable('o1')]\n }\n },\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'regex',\n args: [\n {\n type: 'operation',\n operator: 'lcase',\n args: [\n {\n type: 'operation',\n operator: 'str',\n args: [variable('o1')]\n }\n ]\n },\n literal(filter.q.toLowerCase(), '', namedNode('http://www.w3.org/2001/XMLSchema#string'))\n ]\n }\n }\n ],\n type: 'query'\n }\n ]\n });\n }\n\n // Other filters\n // SPARQL keyword a = filter based on the class of a resource (example => 'a': 'pair:OrganizationType')\n // Other filters are based on a value (example => 'petr:hasAudience': 'http://localhost:3000/audiences/tout-public')\n Object.entries(filter).forEach(([predicate, object]) => {\n if (!reservedFilterKeys.includes(predicate)) {\n resourceWhere.unshift(\n triple(\n variable('s1'),\n namedNode(resolvePrefix(predicate, ontologies)),\n namedNode(resolvePrefix(object, ontologies))\n )\n );\n }\n });\n }\n\n // Blank nodes\n const blankNodesQuery = blankNodes\n ? buildBlankNodesQuery(blankNodes, baseQuery, ontologies)\n : buildAutoDetectBlankNodesQuery(blankNodesDepth, baseQuery);\n\n if (blankNodesQuery && blankNodesQuery.construct) {\n resourceWhere = resourceWhere.concat(blankNodesQuery.where);\n sparqlJsParams.template = sparqlJsParams.template.concat(blankNodesQuery.construct);\n } else {\n resourceWhere.push(baseQuery.where);\n }\n\n sparqlJsParams.where.push(\n {\n type: 'union',\n patterns: [\n containerWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: containerWhere\n }\n ]\n },\n {\n type: 'union',\n patterns: [\n resourceWhere,\n {\n type: 'graph',\n name: namedNode('http://semapps.org/mirror'),\n patterns: resourceWhere\n }\n ]\n }\n );\n\n return generator.stringify(sparqlJsParams);\n};\n\nexport default buildSparqlQuery;\n","import { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\nconst defaultToArray = value => (!value ? [] : Array.isArray(value) ? value : [value]);\n\n// We need to always include the type or React-Admin will not work properly\nconst typeQuery = triple(\n variable('s1'),\n namedNode('http://www.w3.org/1999/02/22-rdf-syntax-ns#type'),\n variable('type')\n);\n\nconst buildBaseQuery = (predicates, ontologies) => {\n let baseTriples;\n if (predicates) {\n baseTriples = defaultToArray(predicates).map((predicate, i) =>\n triple(variable('s1'), namedNode(resolvePrefix(predicate, ontologies)), variable(`o${i + 1}`))\n );\n return {\n construct: [typeQuery, ...baseTriples],\n where: [typeQuery, ...baseTriples.map(triple => ({ type: 'optional', patterns: [triple] }))]\n };\n }\n baseTriples = [triple(variable('s1'), variable('p1'), variable('o1'))];\n return {\n construct: baseTriples,\n where: baseTriples\n };\n};\n\nexport default buildBaseQuery;\n","const resolvePrefix = (item, ontologies) => {\n if (item.startsWith('http://') || item.startsWith('https://')) {\n // Already resolved, return the URI\n return item;\n }\n if (item === 'a') {\n // Special case\n return 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';\n }\n const [prefix, value] = item.split(':');\n if (value) {\n const ontology = ontologies.find(ontology => ontology.prefix === prefix);\n if (ontology) {\n return ontology.url + value;\n }\n throw new Error(`No ontology found with prefix ${prefix}`);\n } else {\n throw new Error(`The value \"${item}\" is not correct. It must include a prefix or be a full URI.`);\n }\n};\n\nexport default resolvePrefix;\n","import md5 from 'crypto-js/md5';\nimport { namedNode, triple, variable } from '@rdfjs/data-model';\nimport resolvePrefix from './resolvePrefix';\n\n// Transform ['ont:predicate1/ont:predicate2'] to ['ont:predicate1', 'ont:predicate1/ont:predicate2']\nconst extractNodes = blankNodes => {\n const nodes = [];\n if (blankNodes) {\n for (const predicate of blankNodes) {\n if (predicate.includes('/')) {\n const nodeNames = predicate.split('/');\n for (let i = 1; i <= nodeNames.length; i++) {\n nodes.push(nodeNames.slice(0, i).join('/'));\n }\n } else {\n nodes.push(predicate);\n }\n }\n }\n return nodes;\n};\n\nconst generateSparqlVarName = node => md5(node);\n\nconst getParentNode = node => node.includes('/') && node.split('/')[0];\n\nconst getPredicate = node => (node.includes('/') ? node.split('/')[1] : node);\n\nconst buildUnionQuery = queries =>\n queries.map(q => {\n let triples = q.query;\n const firstTriple = queries.find(q2 => q.parentNode === q2.node);\n if (firstTriple !== undefined) {\n triples = triples.concat(firstTriple.query[0]);\n }\n return {\n type: 'bgp',\n triples\n };\n });\n\nconst buildBlankNodesQuery = (blankNodes, baseQuery, ontologies) => {\n const queries = [];\n const nodes = extractNodes(blankNodes);\n\n if (nodes && ontologies && ontologies.length > 0) {\n for (const node of nodes) {\n const parentNode = getParentNode(node);\n const predicate = getPredicate(node);\n const varName = generateSparqlVarName(node);\n const parentVarName = parentNode ? generateSparqlVarName(parentNode) : '1';\n\n const query = [\n triple(variable(`s${parentVarName}`), namedNode(resolvePrefix(predicate, ontologies)), variable(`s${varName}`)),\n triple(variable(`s${varName}`), variable(`p${varName}`), variable(`o${varName}`))\n ];\n\n queries.push({\n node,\n parentNode,\n query,\n filter: '' // `FILTER(isBLANK(?s${varName})) .`\n });\n }\n\n return {\n construct: queries.length > 0 ? queries.map(q => q.query).reduce((pre, cur) => pre.concat(cur)) : null,\n where: {\n type: 'union',\n patterns: [baseQuery.where, ...buildUnionQuery(queries)]\n }\n };\n }\n return {\n construct: '',\n where: ''\n };\n};\n\nexport default buildBlankNodesQuery;\n","import { triple, variable } from '@rdfjs/data-model';\n\nconst buildAutoDetectBlankNodesQuery = (depth, baseQuery) => {\n const construct = [...baseQuery.construct];\n let where = {};\n if (depth > 0) {\n const whereQueries = [];\n whereQueries.push([baseQuery.where]);\n for (let i = 1; i <= depth; i++) {\n construct.push(triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`)));\n whereQueries.push([\n ...whereQueries[whereQueries.length - 1],\n {\n type: 'filter',\n expression: {\n type: 'operation',\n operator: 'isblank',\n args: [variable(`o${i}`)]\n }\n },\n triple(variable(`o${i}`), variable(`p${i + 1}`), variable(`o${i + 1}`))\n ]);\n }\n where = {\n type: 'union',\n patterns: whereQueries\n };\n } else if (depth === 0) {\n where = baseQuery.where;\n } else {\n throw new Error('The depth of buildAutoDetectBlankNodesQuery should be 0 or more');\n }\n\n return { construct, where };\n};\n\nexport default buildAutoDetectBlankNodesQuery;\n","import urlJoin from 'url-join';\n\nconst findContainersWithPaths = (paths, dataServers) => {\n const containers = {};\n Object.keys(paths).forEach(serverKey => {\n if (dataServers[serverKey]) {\n containers[serverKey] = [];\n paths[serverKey].forEach(path => {\n containers[serverKey].push(urlJoin(dataServers[serverKey].baseUrl, path));\n });\n } else {\n throw new Error(`No server found with key ${serverKey}`);\n }\n });\n return containers;\n};\n\nexport default findContainersWithPaths;\n","import getOne from './getOne';\n\nconst getManyMethod = config => async (resourceId, params) => {\n const { returnFailedResources } = config;\n\n let returnData = await Promise.all(\n params.ids.map(id =>\n getOne(config)(resourceId, { id: typeof id === 'object' ? id['@id'] : id })\n .then(({ data }) => data)\n .catch(() => {\n // Catch if one resource fails to load\n // Otherwise no references will be show if only one is missing\n // See https://github.com/marmelab/react-admin/issues/5190\n if (returnFailedResources) {\n return { id, _error: true };\n }\n // Returning nothing\n })\n )\n );\n\n // We don't want undefined results to appear in the results as it will break with react-admin\n returnData = returnData.filter(e => e);\n\n return { data: returnData };\n};\n\nexport default getManyMethod;\n","import getList from './getList';\n\nconst getManyReferenceMethod = config => async (resourceId, params) => {\n params.filter = { ...params.filter, [params.target]: params.id };\n delete params.target;\n return await getList(config)(resourceId, params);\n};\n\nexport default getManyReferenceMethod;\n","import uploadAllFiles from '../utils/uploadAllFiles';\n\nconst updateMethod = config => async (resourceId, params) => {\n const { httpClient, jsonContext } = config;\n\n // Upload files, if there are any\n params.data = await uploadAllFiles(params.data, config);\n\n await httpClient(params.id, {\n method: 'PUT',\n body: JSON.stringify({\n '@context': jsonContext,\n ...params.data\n })\n });\n\n return { data: params.data };\n};\n\nexport default updateMethod;\n","import jwtDecode from 'jwt-decode';\nimport urlJoin from 'url-join';\nimport getServerKeyFromType from './getServerKeyFromType';\n\nconst fetchUserConfig = async config => {\n const { dataServers, httpClient } = config;\n const token = localStorage.getItem('token');\n const podKey = getServerKeyFromType('pod', dataServers);\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n\n // If the user is logged in\n if (token) {\n const { webId } = jwtDecode(token);\n let userData;\n\n try {\n const { json } = await httpClient(webId);\n userData = json;\n } catch (e) {\n console.error(e);\n // If the webId cannot be fetched, assume an invalid token and disconnect the user\n localStorage.clear();\n window.location.reload();\n return;\n }\n\n // If we have a POD server\n if (podKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[podKey].name = 'My Pod';\n config.dataServers[podKey].baseUrl = urlJoin(webId, 'data'); // TODO find POD URI from user profile\n config.dataServers[podKey].sparqlEndpoint =\n userData.endpoints?.['void:sparqlEndpoint'] || urlJoin(webId, 'sparql');\n }\n\n if (authServerKey) {\n // Fill the config provided to the data provider\n // We must modify the config object directly\n config.dataServers[authServerKey].proxyUrl = userData.endpoints?.proxyUrl;\n }\n } else if (podKey) {\n // If the user is not logged in, ignore the POD server\n delete config.dataServers[podKey];\n }\n};\n\nexport default fetchUserConfig;\n","const defaultToArray = value => (!value ? undefined : Array.isArray(value) ? value : [value]);\n\nconst fetchVoidEndpoints = async config => {\n const fetchPromises = Object.entries(config.dataServers)\n .filter(([key, server]) => server.pod !== true)\n .map(([key, server]) =>\n config\n .httpClient(new URL('/.well-known/void', server.baseUrl).toString())\n .then(result => ({ key, datasets: result.json['@graph'] }))\n .catch(e => {\n if (e.status === 404 || e.status === 401 || e.status === 500) {\n return { key, error: e };\n }\n throw e;\n })\n );\n\n let results = [];\n\n try {\n results = await Promise.all(fetchPromises);\n } catch (e) {\n // Do not throw error if no endpoint found\n }\n\n for (const result of results) {\n config.dataServers[result.key].containers = config.dataServers[result.key].containers || {};\n config.dataServers[result.key].blankNodes = config.dataServers[result.key].blankNodes || {};\n\n // Ignore unfetchable endpoints\n if (result.datasets) {\n for (const dataset of result.datasets) {\n const datasetServerKey = Object.keys(config.dataServers).find(\n key => dataset['void:uriSpace'] === config.dataServers[key].baseUrl\n );\n\n // If the dataset is not part of a server mapped in the dataServers, ignore it\n if (datasetServerKey) {\n // If this is the local dataset, add the base information\n if (datasetServerKey === result.key) {\n config.dataServers[result.key].name = config.dataServers[result.key].name || dataset['dc:title'];\n config.dataServers[result.key].description =\n config.dataServers[result.key].description || dataset['dc:description'];\n config.dataServers[result.key].sparqlEndpoint =\n config.dataServers[result.key].sparqlEndpoint || dataset['void:sparqlEndpoint'];\n }\n\n config.dataServers[result.key].containers[datasetServerKey] =\n config.dataServers[result.key].containers[datasetServerKey] || {};\n\n for (const partition of defaultToArray(dataset['void:classPartition'])) {\n for (const type of defaultToArray(partition['void:class'])) {\n // Set containers by type\n const path = partition['void:uriSpace'].replace(dataset['void:uriSpace'], '/');\n if (config.dataServers[result.key].containers[datasetServerKey][type]) {\n config.dataServers[result.key].containers[datasetServerKey][type].push(path);\n } else {\n config.dataServers[result.key].containers[datasetServerKey][type] = [path];\n }\n }\n }\n }\n }\n }\n }\n};\n\nexport default fetchVoidEndpoints;\n","import { fetchUtils } from 'react-admin';\nimport getServerKeyFromUri from './utils/getServerKeyFromUri';\nimport getServerKeyFromType from './utils/getServerKeyFromType';\n\n/*\n * HTTP client used by all calls in data provider and auth provider\n * Do proxy calls if a proxy endpoint is available and the server is different from the auth server\n */\nconst httpClient =\n dataServers =>\n (url, options = {}) => {\n const authServerKey = getServerKeyFromType('authServer', dataServers);\n const serverKey = getServerKeyFromUri(url, dataServers);\n const useProxy =\n serverKey !== authServerKey && dataServers[authServerKey]?.proxyUrl && dataServers[serverKey]?.noProxy !== true;\n\n if (!options.headers) options.headers = new Headers();\n\n switch (options.method) {\n case 'POST':\n case 'PATCH':\n case 'PUT':\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n if (!options.headers.has('Content-Type')) options.headers.set('Content-Type', 'application/ld+json');\n break;\n\n case 'DELETE':\n break;\n\n case 'GET':\n default:\n if (!options.headers.has('Accept')) options.headers.set('Accept', 'application/ld+json');\n break;\n }\n\n if (useProxy) {\n const formData = new FormData();\n\n formData.append('id', url);\n formData.append('method', options.method || 'GET');\n formData.append('headers', JSON.stringify(Object.fromEntries(options.headers.entries())));\n\n if (options.body) {\n if (options.body instanceof File) {\n formData.append('body', options.body, options.body.name);\n } else {\n formData.append('body', options.body);\n }\n }\n\n // Post to proxy endpoint with multipart/form-data format\n return fetchUtils.fetchJson(dataServers[authServerKey].proxyUrl, {\n method: 'POST',\n headers: new Headers({\n Authorization: `Bearer ${localStorage.getItem('token')}`\n }),\n body: formData\n });\n }\n // Add token if the server is the same as the auth server\n if (serverKey === authServerKey) {\n const token = localStorage.getItem('token');\n if (token) options.headers.set('Authorization', `Bearer ${token}`);\n }\n return fetchUtils.fetchJson(url, options);\n };\n\nexport default httpClient;\n","// Return the first server matching with the baseUrl\nconst getServerKeyFromUri = (uri, dataServers) => {\n return Object.keys(dataServers).find(key => {\n if (dataServers[key].pod) {\n // The baseUrl ends with /data so remove this part to match with the webId and webId-related URLs (/inbox, /outbox...)\n return dataServers[key].baseUrl && uri.startsWith(dataServers[key].baseUrl.replace('/data', ''));\n }\n return uri.startsWith(dataServers[key].baseUrl);\n });\n};\n\nexport default getServerKeyFromUri;\n","import { useCallback, useMemo, useContext } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst compute = (externalLinks, record) =>\n typeof externalLinks === 'function' ? externalLinks(record) : externalLinks;\nconst isURL = url => typeof url === 'string' && url.startsWith('http');\n\nconst useGetExternalLink = componentExternalLinks => {\n // Since the externalLinks config is defined only locally, we don't need to wait for VOID endpoints fetching\n const dataProvider = useContext(DataProviderContext);\n const dataServers = dataProvider.getLocalDataServers();\n\n const serversExternalLinks = useMemo(() => {\n if (dataServers) {\n return Object.fromEntries(\n Object.values(dataServers).map(server => {\n // If externalLinks is not defined in the data server, use external links for non-default servers\n const externalLinks = server.externalLinks !== undefined ? server.externalLinks : !server.default;\n return [server.baseUrl, externalLinks];\n })\n );\n }\n }, [dataServers]);\n\n return useCallback(\n record => {\n const computedComponentExternalLinks = compute(componentExternalLinks, record);\n // If the component explicitly asks not to display as external links, use an internal link\n if (computedComponentExternalLinks === false) return false;\n\n if (!record?.id) return false;\n\n const serverBaseUrl = Object.keys(serversExternalLinks).find(baseUrl => record?.id.startsWith(baseUrl));\n // If no matching data servers could be found, assume we have an internal link\n if (!serverBaseUrl) return false;\n\n const computedServerExternalLinks = compute(serversExternalLinks[serverBaseUrl], record);\n // If the data server explicitly asks not to display as external links, use an internal link\n if (computedServerExternalLinks === false) return false;\n\n if (isURL(computedComponentExternalLinks)) {\n return computedComponentExternalLinks;\n }\n if (isURL(computedServerExternalLinks)) {\n return computedServerExternalLinks;\n }\n return record.id;\n },\n [serversExternalLinks, componentExternalLinks]\n );\n};\n\nexport default useGetExternalLink;\n","import { useState, useEffect } from 'react';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findContainersWithTypes from '../dataProvider/utils/findContainersWithTypes';\n\nconst useContainers = (resourceId, serverKeys = '@all') => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [containers, setContainers] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n setContainers(findContainersWithTypes(dataModel.types, serverKeys, dataServers));\n }\n }, [dataModel, dataServers, serverKeys]);\n\n return containers;\n};\n\nexport default useContainers;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModel = resourceId => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModel, setDataModel] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModel(results[resourceId]));\n }, [dataProvider, resourceId, setDataModel]);\n\n return dataModel;\n};\n\nexport default useDataModel;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataServers = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataServers, setDataServers] = useState();\n\n useEffect(() => {\n dataProvider.getDataServers().then(results => setDataServers(results));\n }, [dataProvider, setDataServers]);\n\n return dataServers;\n};\n\nexport default useDataServers;\n","import { useState, useEffect } from 'react';\nimport urlJoin from 'url-join';\nimport useDataModel from './useDataModel';\nimport useDataServers from './useDataServers';\nimport findCreateContainerWithTypes from '../dataProvider/utils/findCreateContainerWithTypes';\nimport getServerKeyFromType from '../dataProvider/utils/getServerKeyFromType';\n\nconst useCreateContainer = resourceId => {\n const dataModel = useDataModel(resourceId);\n const dataServers = useDataServers();\n const [createContainer, setCreateContainer] = useState();\n\n useEffect(() => {\n if (dataModel && dataServers) {\n if (dataModel.create?.container) {\n const [serverKey, path] = Object.entries(dataModel.create.container)[0];\n if (!serverKey || !dataServers[serverKey]) {\n throw new Error(`Wrong key for the dataModel.create.container config of resource ${resourceId}`);\n }\n setCreateContainer(urlJoin(dataServers[serverKey].baseUrl, path));\n } else if (dataModel.create?.server) {\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, dataModel.create?.server, dataServers));\n } else {\n const defaultServerKey = getServerKeyFromType('default', dataServers);\n setCreateContainer(findCreateContainerWithTypes(dataModel.types, defaultServerKey, dataServers));\n }\n }\n }, [dataModel, dataServers, setCreateContainer]);\n\n return createContainer;\n};\n\nexport default useCreateContainer;\n","import urlJoin from 'url-join';\n\nconst findCreateContainerWithTypes = (types, createServerKey, dataServers) => {\n const containers = [];\n\n if (Object.keys(dataServers[createServerKey].containers[createServerKey]).length > 0) {\n Object.keys(dataServers[createServerKey].containers[createServerKey]).forEach(type => {\n if (types.includes(type)) {\n dataServers[createServerKey].containers[createServerKey][type].map(path => {\n const containerUri = urlJoin(dataServers[createServerKey].baseUrl, path);\n if (!containers.includes(containerUri)) {\n containers.push(containerUri);\n }\n });\n }\n });\n }\n\n if (containers.length === 0) {\n throw new Error(\n `No container found matching with types ${JSON.stringify(\n types\n )}. You can set explicitely the create.container property of the resource.`\n );\n } else if (containers.length > 1) {\n throw new Error(\n `More than one container found matching with types ${JSON.stringify(\n types\n )}. You must set the create.server or create.container property for the resource.`\n );\n }\n\n return containers[0];\n};\n\nexport default findCreateContainerWithTypes;\n","import { useContext, useState, useEffect } from 'react';\nimport { DataProviderContext } from 'react-admin';\n\nconst useDataModels = () => {\n // Get the raw data provider, since useDataProvider returns a wrapper\n const dataProvider = useContext(DataProviderContext);\n const [dataModels, setDataModels] = useState();\n\n useEffect(() => {\n dataProvider.getDataModels().then(results => setDataModels(results));\n }, [dataProvider, setDataModels]);\n\n return dataModels;\n};\n\nexport default useDataModels;\n","import React, { useState, useEffect } from 'react';\n\n/**\n * @example\n * \n * \n * \n * \n * \n * \n */\n\nconst FilterHandler = ({ children, record, filter, source, ...otherProps }) => {\n const [filtered, setFiltered] = useState();\n useEffect(() => {\n if (record && source && Array.isArray(record?.[source])) {\n const filteredData = record?.[source].filter(r => {\n let eq = true;\n for (const key in filter) {\n const value = r[key];\n if (Array.isArray(value)) {\n if (!value.includes(filter[key])) {\n eq = false;\n }\n } else if (value !== filter[key]) {\n eq = false;\n }\n }\n return eq;\n });\n const newRecord = {\n ...record\n };\n // undefined setted if no data to obtain no render in RightLabel or equivalent\n newRecord[source] = filteredData.length > 0 ? filteredData : undefined;\n setFiltered(newRecord);\n }\n }, [record, source, filter]);\n\n return (\n <>\n {React.Children.map(children, (child, i) => {\n return React.cloneElement(child, {\n ...otherProps,\n record: filtered,\n source\n });\n })}\n >\n );\n};\nexport default FilterHandler;\n","import React from 'react';\nimport { useGetList } from 'react-admin';\nimport { default as FilterHandler } from './FilterHandler';\n\n/*\n * @example Label used in examples\n * const Label = ({label, ...otherProps})=>{\n * return {label}
\n * }\n *\n * @example show header for each group with group property thanks to groupHeader\n * }\n * filterProperty=\"property of source filtered by groupReference\"\n * >\n * // same props as GroupedArrayField source\n * \n * \n * \n * \n *\n * @example call chhildren with label thanks to groupLabel\n * \n * \n *\n * @example conditional show of group if no data in source. Conditionale groupHeader is not possible because GroupedArrayField define group before filter ; need use chhildren.\n * const ConditionalSourceDefinedHandler = ({record,source,children,...otherProps})=>{\n * if (record?.[source] && (!Array.isArray(record[source])||record[source].length>0)){\n * return React.Children.map(children, (child, i) => {\n * return React.cloneElement(child, {...otherProps,record,source});\n * })\n * }else{\n * return <>>\n * }\n * }\n *\n * \n * \n * \n * \n *\n *\n */\nconst GroupedReferenceHandler = ({\n children,\n groupReference,\n groupLabel,\n groupHeader,\n filterProperty,\n ...otherProps\n}) => {\n const { data } = useGetList({\n resource: groupReference,\n payload: {}\n });\n\n return (\n <>\n {data?.map((data, index) => {\n const filter = {};\n filter[filterProperty] = data.id;\n return (\n <>\n {groupHeader && groupHeader({ ...otherProps, group: data })}\n \n {children}\n \n >\n );\n })}\n >\n );\n};\n\nexport default GroupedReferenceHandler;\n","import React, { useEffect, useState } from 'react';\nimport { ArrayInput, SimpleFormIterator, TextInput } from 'react-admin';\nimport makeStyles from '@mui/styles/makeStyles';\n\nconst useReferenceInputStyles = makeStyles({\n form: {\n display: 'flex'\n },\n input: {\n paddingRight: '20px'\n }\n});\n\nconst useHideInputStyles = makeStyles({\n root: {\n display: 'none'\n }\n});\n\nconst ReificationArrayInput = props => {\n const { reificationClass, children, ...otherProps } = props;\n const flexFormClasses = useReferenceInputStyles();\n const hideInputStyles = useHideInputStyles();\n\n return (\n \n \n {React.Children.map(props.children, (child, i) => {\n return React.cloneElement(child, {\n className: flexFormClasses.input\n });\n })}\n \n \n \n );\n};\n\nexport default ReificationArrayInput;\n"],"names":[],"version":3,"file":"index.es.js.map"}
\ No newline at end of file
diff --git a/src/frontend/yarn.lock b/src/frontend/yarn.lock
index 51fad269d..198a00a9a 100644
--- a/src/frontend/yarn.lock
+++ b/src/frontend/yarn.lock
@@ -4,430 +4,47 @@
"@aashutoshrathi/word-wrap@^1.2.3":
version "1.2.6"
- resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz"
+ resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf"
integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==
-"@ampproject/remapping@^2.2.0":
- version "2.2.1"
- resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz"
- integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==
- dependencies:
- "@jridgewell/gen-mapping" "^0.3.0"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz"
- integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==
- dependencies:
- "@babel/highlight" "^7.18.6"
-
-"@babel/code-frame@^7.21.4":
- version "7.21.4"
- resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz"
- integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==
- dependencies:
- "@babel/highlight" "^7.18.6"
-
-"@babel/compat-data@^7.21.5":
- version "7.21.7"
- resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz"
- integrity sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==
-
-"@babel/core@^7.20.2":
- version "7.21.8"
- resolved "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz"
- integrity sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==
- dependencies:
- "@ampproject/remapping" "^2.2.0"
- "@babel/code-frame" "^7.21.4"
- "@babel/generator" "^7.21.5"
- "@babel/helper-compilation-targets" "^7.21.5"
- "@babel/helper-module-transforms" "^7.21.5"
- "@babel/helpers" "^7.21.5"
- "@babel/parser" "^7.21.8"
- "@babel/template" "^7.20.7"
- "@babel/traverse" "^7.21.5"
- "@babel/types" "^7.21.5"
- convert-source-map "^1.7.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.2.2"
- semver "^6.3.0"
-
-"@babel/generator@^7.20.4", "@babel/generator@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz"
- integrity sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==
- dependencies:
- "@babel/types" "^7.21.5"
- "@jridgewell/gen-mapping" "^0.3.2"
- "@jridgewell/trace-mapping" "^0.3.17"
- jsesc "^2.5.1"
-
-"@babel/helper-compilation-targets@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz"
- integrity sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==
+"@babel/code-frame@^7.0.0":
+ version "7.22.13"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e"
+ integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==
dependencies:
- "@babel/compat-data" "^7.21.5"
- "@babel/helper-validator-option" "^7.21.0"
- browserslist "^4.21.3"
- lru-cache "^5.1.1"
- semver "^6.3.0"
-
-"@babel/helper-environment-visitor@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz"
- integrity sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==
-
-"@babel/helper-function-name@^7.21.0":
- version "7.21.0"
- resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz"
- integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==
- dependencies:
- "@babel/template" "^7.20.7"
- "@babel/types" "^7.21.0"
-
-"@babel/helper-hoist-variables@^7.18.6":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz"
- integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-module-imports@^7.16.7":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0"
- integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==
- dependencies:
- "@babel/types" "^7.22.15"
-
-"@babel/helper-module-imports@^7.21.4":
- version "7.21.4"
- resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz"
- integrity sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==
- dependencies:
- "@babel/types" "^7.21.4"
-
-"@babel/helper-module-transforms@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz"
- integrity sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==
- dependencies:
- "@babel/helper-environment-visitor" "^7.21.5"
- "@babel/helper-module-imports" "^7.21.4"
- "@babel/helper-simple-access" "^7.21.5"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/helper-validator-identifier" "^7.19.1"
- "@babel/template" "^7.20.7"
- "@babel/traverse" "^7.21.5"
- "@babel/types" "^7.21.5"
-
-"@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
- version "7.19.0"
- resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz"
- integrity sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==
-
-"@babel/helper-plugin-utils@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz"
- integrity sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==
-
-"@babel/helper-simple-access@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz"
- integrity sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==
- dependencies:
- "@babel/types" "^7.21.5"
-
-"@babel/helper-split-export-declaration@^7.18.6":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz"
- integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-string-parser@^7.18.10":
- version "7.18.10"
- resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz"
- integrity sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==
-
-"@babel/helper-string-parser@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz"
- integrity sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==
-
-"@babel/helper-string-parser@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f"
- integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==
-
-"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1":
- version "7.19.1"
- resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz"
- integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==
+ "@babel/highlight" "^7.22.13"
+ chalk "^2.4.2"
"@babel/helper-validator-identifier@^7.22.20":
version "7.22.20"
resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0"
integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==
-"@babel/helper-validator-option@^7.21.0":
- version "7.21.0"
- resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz"
- integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==
-
-"@babel/helpers@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz"
- integrity sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==
- dependencies:
- "@babel/template" "^7.20.7"
- "@babel/traverse" "^7.21.5"
- "@babel/types" "^7.21.5"
-
-"@babel/highlight@^7.18.6":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz"
- integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==
+"@babel/highlight@^7.22.13":
+ version "7.22.20"
+ resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54"
+ integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==
dependencies:
- "@babel/helper-validator-identifier" "^7.18.6"
- chalk "^2.0.0"
+ "@babel/helper-validator-identifier" "^7.22.20"
+ chalk "^2.4.2"
js-tokens "^4.0.0"
-"@babel/parser@^7.20.7", "@babel/parser@^7.21.5", "@babel/parser@^7.21.8":
- version "7.21.8"
- resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz"
- integrity sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==
-
-"@babel/plugin-proposal-export-namespace-from@^7.18.9":
- version "7.18.9"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz"
- integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.18.9"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-
-"@babel/plugin-syntax-dynamic-import@^7.8.3":
- version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz"
- integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-export-namespace-from@^7.8.3":
- version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz"
- integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.3"
-
-"@babel/plugin-transform-modules-commonjs@^7.19.6":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz"
- integrity sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==
- dependencies:
- "@babel/helper-module-transforms" "^7.21.5"
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-simple-access" "^7.21.5"
-
-"@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.22.15", "@babel/runtime@^7.3.1", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3":
- version "7.23.1"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.1.tgz#72741dc4d413338a91dcb044a86f3c0bc402646d"
- integrity sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g==
+"@babel/runtime@^7.20.7", "@babel/runtime@^7.23.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7":
+ version "7.23.2"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.2.tgz#062b0ac103261d68a966c4c7baf2ae3e62ec3885"
+ integrity sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==
dependencies:
regenerator-runtime "^0.14.0"
-"@babel/runtime@^7.20.7":
- version "7.22.6"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.6.tgz#57d64b9ae3cff1d67eb067ae117dac087f5bd438"
- integrity sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==
- dependencies:
- regenerator-runtime "^0.13.11"
-
-"@babel/runtime@^7.21.0":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.5.tgz"
- integrity sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==
- dependencies:
- regenerator-runtime "^0.13.11"
-
-"@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7":
- version "7.22.3"
- resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.3.tgz"
- integrity sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==
- dependencies:
- regenerator-runtime "^0.13.11"
-
-"@babel/template@^7.20.7":
- version "7.20.7"
- resolved "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz"
- integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==
- dependencies:
- "@babel/code-frame" "^7.18.6"
- "@babel/parser" "^7.20.7"
- "@babel/types" "^7.20.7"
-
-"@babel/traverse@^7.20.1", "@babel/traverse@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz"
- integrity sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==
- dependencies:
- "@babel/code-frame" "^7.21.4"
- "@babel/generator" "^7.21.5"
- "@babel/helper-environment-visitor" "^7.21.5"
- "@babel/helper-function-name" "^7.21.0"
- "@babel/helper-hoist-variables" "^7.18.6"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/parser" "^7.21.5"
- "@babel/types" "^7.21.5"
- debug "^4.1.0"
- globals "^11.1.0"
-
-"@babel/types@^7.18.6":
- version "7.19.3"
- resolved "https://registry.npmjs.org/@babel/types/-/types-7.19.3.tgz"
- integrity sha512-hGCaQzIY22DJlDh9CH7NOxgKkFjBk0Cw9xDO1Xmh2151ti7wiGfQ3LauXzL4HP1fmFlTX6XjpRETTpUcv7wQLw==
- dependencies:
- "@babel/helper-string-parser" "^7.18.10"
- "@babel/helper-validator-identifier" "^7.19.1"
- to-fast-properties "^2.0.0"
-
-"@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5":
- version "7.21.5"
- resolved "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz"
- integrity sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==
- dependencies:
- "@babel/helper-string-parser" "^7.21.5"
- "@babel/helper-validator-identifier" "^7.19.1"
- to-fast-properties "^2.0.0"
-
-"@babel/types@^7.22.15":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb"
- integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==
- dependencies:
- "@babel/helper-string-parser" "^7.22.5"
- "@babel/helper-validator-identifier" "^7.22.20"
- to-fast-properties "^2.0.0"
-
"@digitalbazaar/http-client@^1.1.0":
version "1.2.0"
- resolved "https://registry.npmjs.org/@digitalbazaar/http-client/-/http-client-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/@digitalbazaar/http-client/-/http-client-1.2.0.tgz#1ea3661e77000a15bd892a294f20dc6cc5d1c93b"
integrity sha512-W9KQQ5pUJcaR0I4c2HPJC0a7kRbZApIorZgPnEDwMBgj16iQzutGLrCXYaZOmxqVLVNqqlQ4aUJh+HBQZy4W6Q==
dependencies:
esm "^3.2.22"
ky "^0.25.1"
ky-universal "^0.8.2"
-"@emotion/babel-plugin@^11.11.0":
- version "11.11.0"
- resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c"
- integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==
- dependencies:
- "@babel/helper-module-imports" "^7.16.7"
- "@babel/runtime" "^7.18.3"
- "@emotion/hash" "^0.9.1"
- "@emotion/memoize" "^0.8.1"
- "@emotion/serialize" "^1.1.2"
- babel-plugin-macros "^3.1.0"
- convert-source-map "^1.5.0"
- escape-string-regexp "^4.0.0"
- find-root "^1.1.0"
- source-map "^0.5.7"
- stylis "4.2.0"
-
-"@emotion/cache@^11.11.0":
- version "11.11.0"
- resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff"
- integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==
- dependencies:
- "@emotion/memoize" "^0.8.1"
- "@emotion/sheet" "^1.2.2"
- "@emotion/utils" "^1.2.1"
- "@emotion/weak-memoize" "^0.3.1"
- stylis "4.2.0"
-
-"@emotion/hash@^0.9.1":
- version "0.9.1"
- resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43"
- integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==
-
-"@emotion/is-prop-valid@^1.2.1":
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc"
- integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==
- dependencies:
- "@emotion/memoize" "^0.8.1"
-
-"@emotion/memoize@^0.8.1":
- version "0.8.1"
- resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17"
- integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==
-
-"@emotion/react@^11.4.1":
- version "11.11.1"
- resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157"
- integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==
- dependencies:
- "@babel/runtime" "^7.18.3"
- "@emotion/babel-plugin" "^11.11.0"
- "@emotion/cache" "^11.11.0"
- "@emotion/serialize" "^1.1.2"
- "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1"
- "@emotion/utils" "^1.2.1"
- "@emotion/weak-memoize" "^0.3.1"
- hoist-non-react-statics "^3.3.1"
-
-"@emotion/serialize@^1.1.2":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51"
- integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==
- dependencies:
- "@emotion/hash" "^0.9.1"
- "@emotion/memoize" "^0.8.1"
- "@emotion/unitless" "^0.8.1"
- "@emotion/utils" "^1.2.1"
- csstype "^3.0.2"
-
-"@emotion/sheet@^1.2.2":
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec"
- integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==
-
-"@emotion/styled@^11.3.0":
- version "11.11.0"
- resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.11.0.tgz#26b75e1b5a1b7a629d7c0a8b708fbf5a9cdce346"
- integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==
- dependencies:
- "@babel/runtime" "^7.18.3"
- "@emotion/babel-plugin" "^11.11.0"
- "@emotion/is-prop-valid" "^1.2.1"
- "@emotion/serialize" "^1.1.2"
- "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1"
- "@emotion/utils" "^1.2.1"
-
-"@emotion/unitless@^0.8.1":
- version "0.8.1"
- resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3"
- integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==
-
-"@emotion/use-insertion-effect-with-fallbacks@^1.0.1":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963"
- integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==
-
-"@emotion/utils@^1.2.1":
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4"
- integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==
-
-"@emotion/weak-memoize@^0.3.1":
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6"
- integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==
-
"@es-joy/jsdoccomment@~0.40.1":
version "0.40.1"
resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.40.1.tgz#13acd77fb372ed1c83b7355edd865a3b370c9ec4"
@@ -437,22 +54,22 @@
esquery "^1.5.0"
jsdoc-type-pratt-parser "~4.0.0"
-"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.3.0":
+"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
version "4.4.0"
- resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
dependencies:
eslint-visitor-keys "^3.3.0"
-"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.5.0":
- version "4.5.1"
- resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz"
- integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
+"@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1":
+ version "4.9.1"
+ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.9.1.tgz#449dfa81a57a1d755b09aa58d826c1262e4283b4"
+ integrity sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==
-"@eslint/eslintrc@^2.1.0":
- version "2.1.0"
- resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz"
- integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==
+"@eslint/eslintrc@^2.1.2":
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.2.tgz#c6936b4b328c64496692f76944e755738be62396"
+ integrity sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==
dependencies:
ajv "^6.12.4"
debug "^4.3.2"
@@ -464,14 +81,14 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
-"@eslint/js@8.44.0":
- version "8.44.0"
- resolved "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz"
- integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==
+"@eslint/js@8.51.0":
+ version "8.51.0"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.51.0.tgz#6d419c240cfb2b66da37df230f7e7eef801c32fa"
+ integrity sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==
"@evocateur/libnpmaccess@^3.1.2":
version "3.1.2"
- resolved "https://registry.npmjs.org/@evocateur/libnpmaccess/-/libnpmaccess-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/@evocateur/libnpmaccess/-/libnpmaccess-3.1.2.tgz#ecf7f6ce6b004e9f942b098d92200be4a4b1c845"
integrity sha512-KSCAHwNWro0CF2ukxufCitT9K5LjL/KuMmNzSu8wuwN2rjyKHD8+cmOsiybK+W5hdnwc5M1SmRlVCaMHQo+3rg==
dependencies:
"@evocateur/npm-registry-fetch" "^4.0.0"
@@ -482,7 +99,7 @@
"@evocateur/libnpmpublish@^1.2.2":
version "1.2.2"
- resolved "https://registry.npmjs.org/@evocateur/libnpmpublish/-/libnpmpublish-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/@evocateur/libnpmpublish/-/libnpmpublish-1.2.2.tgz#55df09d2dca136afba9c88c759ca272198db9f1a"
integrity sha512-MJrrk9ct1FeY9zRlyeoyMieBjGDG9ihyyD9/Ft6MMrTxql9NyoEx2hw9casTIP4CdqEVu+3nQ2nXxoJ8RCXyFg==
dependencies:
"@evocateur/npm-registry-fetch" "^4.0.0"
@@ -497,7 +114,7 @@
"@evocateur/npm-registry-fetch@^4.0.0":
version "4.0.0"
- resolved "https://registry.npmjs.org/@evocateur/npm-registry-fetch/-/npm-registry-fetch-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/@evocateur/npm-registry-fetch/-/npm-registry-fetch-4.0.0.tgz#8c4c38766d8d32d3200fcb0a83f064b57365ed66"
integrity sha512-k1WGfKRQyhJpIr+P17O5vLIo2ko1PFLKwoetatdduUSt/aQ4J2sJrJwwatdI5Z3SiYk/mRH9S3JpdmMFd/IK4g==
dependencies:
JSONStream "^1.3.4"
@@ -510,7 +127,7 @@
"@evocateur/pacote@^9.6.3":
version "9.6.5"
- resolved "https://registry.npmjs.org/@evocateur/pacote/-/pacote-9.6.5.tgz"
+ resolved "https://registry.yarnpkg.com/@evocateur/pacote/-/pacote-9.6.5.tgz#33de32ba210b6f17c20ebab4d497efc6755f4ae5"
integrity sha512-EI552lf0aG2nOV8NnZpTxNo2PcXKPmDbF9K8eCBFQdIZwHNGN/mi815fxtmUMa2wTa1yndotICIDt/V0vpEx2w==
dependencies:
"@evocateur/npm-registry-fetch" "^4.0.0"
@@ -570,50 +187,50 @@
resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.1.6.tgz#22958c042e10b67463997bd6ea7115fe28cbcaf9"
integrity sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==
-"@fullcalendar/common@~5.11.2", "@fullcalendar/common@~5.11.3":
- version "5.11.3"
- resolved "https://registry.npmjs.org/@fullcalendar/common/-/common-5.11.3.tgz"
- integrity sha512-welVwyfQOXQQGfDwBMSfYEPbiO1cPfUD+C7jd3ZoweJR+dSO11ddFugxIQ7dGfABAGZ63oq/+LW9FsmAJezVNg==
+"@fullcalendar/common@~5.11.5":
+ version "5.11.5"
+ resolved "https://registry.yarnpkg.com/@fullcalendar/common/-/common-5.11.5.tgz#1a30a852b33ab5c1b04f4ee558941bed3c72d07f"
+ integrity sha512-3iAYiUbHXhjSVXnYWz27Od2cslztUPsOwiwKlfGvQxBixv2Kl6a8IPwaijKFYJHXdwYmfPoEgK7rvqAGVoIYwA==
dependencies:
tslib "^2.1.0"
"@fullcalendar/core@^5.7.2":
- version "5.11.3"
- resolved "https://registry.npmjs.org/@fullcalendar/core/-/core-5.11.3.tgz"
- integrity sha512-YUFxCvVJytUwFeXCx4J17kFMM7Ixwn9zBjVRw5NM2bMwgR6VAhSnlZc6yNQSOIy7Hj2TF0vDkO/4JNlTvxyAXw==
+ version "5.11.5"
+ resolved "https://registry.yarnpkg.com/@fullcalendar/core/-/core-5.11.5.tgz#0a5265a84f7c35969df64baf6417fa85a31cae7c"
+ integrity sha512-M/WQuq1+uUHxFDEIu2ib/aaPZ70VsRk2ITECo/WCLSLTVWcHPXwEg83reyP3G8JrMM4gRL4vScEHhX0U5aoNSw==
dependencies:
- "@fullcalendar/common" "~5.11.3"
- preact "^10.0.5"
+ "@fullcalendar/common" "~5.11.5"
+ preact "~10.12.1"
tslib "^2.1.0"
"@fullcalendar/daygrid@^5.7.2":
- version "5.11.3"
- resolved "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-5.11.3.tgz"
- integrity sha512-PCK0y80DRNCzWuC5lGpIWqCgKDvql1ah7rXql5lu+Gn2EeFj15ZQ8diMFjtNIQucEmFaNOXnR05Pgcry1n6Shg==
+ version "5.11.5"
+ resolved "https://registry.yarnpkg.com/@fullcalendar/daygrid/-/daygrid-5.11.5.tgz#2825ed691eadf72c6a2979bcde871de74681fc7a"
+ integrity sha512-hMpq0U3Nucys2jDD+crbkJCr+tVt3fDw04OE3fbpisuzqtrHxIzRmnUOdbWUjJQyToAAkt7UVUQ9E7hYdmvyGA==
dependencies:
- "@fullcalendar/common" "~5.11.3"
+ "@fullcalendar/common" "~5.11.5"
tslib "^2.1.0"
"@fullcalendar/list@^5.7.2":
- version "5.11.3"
- resolved "https://registry.npmjs.org/@fullcalendar/list/-/list-5.11.3.tgz"
- integrity sha512-6m9rJPzB5XfJZg+MlgVpha1cI3NUDeyV3GOmojJWZuti05NfDP4f0lzFUul8W7m1DQcjGS2UPRNE8HouA3guEA==
+ version "5.11.5"
+ resolved "https://registry.yarnpkg.com/@fullcalendar/list/-/list-5.11.5.tgz#0440383f795a6a754f0b62d089ed3ffdf5603845"
+ integrity sha512-ZYMPT4CVt9tIYkVVNx7CKkB2xc+n9L56+vgXkurptgYgPsacXYkcpF/1Hy/B5LKlg0ROEF9Qfftjow8xjANqaA==
dependencies:
- "@fullcalendar/common" "~5.11.3"
+ "@fullcalendar/common" "~5.11.5"
tslib "^2.1.0"
"@fullcalendar/react@^5.7.0":
- version "5.11.2"
- resolved "https://registry.npmjs.org/@fullcalendar/react/-/react-5.11.2.tgz"
- integrity sha512-OnLvfV406VEQcK4QGN8xR4ro6Manp9dKE7/n9dhs19J1kKpqS1w1sIEYg1dT11njbk0Ob+TdF3cXLDFq73jUlA==
+ version "5.11.5"
+ resolved "https://registry.yarnpkg.com/@fullcalendar/react/-/react-5.11.5.tgz#36e2f7b6d92dd1d8120003c6822323c32cb7223a"
+ integrity sha512-PbBlDyKJ8IQYf5mBdD1mjDas2v3eEU1UfWYLv0e6uGCktH+g4mgaG/LCDOwE65V5VH5FH8+kVkFjIScwA54WwA==
dependencies:
- "@fullcalendar/common" "~5.11.2"
+ "@fullcalendar/common" "~5.11.5"
tslib "^2.1.0"
-"@humanwhocodes/config-array@^0.11.10":
- version "0.11.10"
- resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz"
- integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
+"@humanwhocodes/config-array@^0.11.11":
+ version "0.11.11"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.11.tgz#88a04c570dbbc7dd943e4712429c3df09bc32844"
+ integrity sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==
dependencies:
"@humanwhocodes/object-schema" "^1.2.1"
debug "^4.1.1"
@@ -621,66 +238,17 @@
"@humanwhocodes/module-importer@^1.0.1":
version "1.0.1"
- resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
"@humanwhocodes/object-schema@^1.2.1":
version "1.2.1"
- resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
-"@jridgewell/gen-mapping@^0.3.0":
- version "0.3.3"
- resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz"
- integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
- dependencies:
- "@jridgewell/set-array" "^1.0.1"
- "@jridgewell/sourcemap-codec" "^1.4.10"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/gen-mapping@^0.3.2":
- version "0.3.2"
- resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz"
- integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==
- dependencies:
- "@jridgewell/set-array" "^1.0.1"
- "@jridgewell/sourcemap-codec" "^1.4.10"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3":
- version "3.1.0"
- resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz"
- integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
-
-"@jridgewell/set-array@^1.0.1":
- version "1.1.2"
- resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz"
- integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
-
-"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10":
- version "1.4.14"
- resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz"
- integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
-
-"@jridgewell/trace-mapping@^0.3.17":
- version "0.3.18"
- resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz"
- integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==
- dependencies:
- "@jridgewell/resolve-uri" "3.1.0"
- "@jridgewell/sourcemap-codec" "1.4.14"
-
-"@jridgewell/trace-mapping@^0.3.9":
- version "0.3.15"
- resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz"
- integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==
- dependencies:
- "@jridgewell/resolve-uri" "^3.0.3"
- "@jridgewell/sourcemap-codec" "^1.4.10"
-
"@lerna/add@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/add/-/add-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/add/-/add-3.21.0.tgz#27007bde71cc7b0a2969ab3c2f0ae41578b4577b"
integrity sha512-vhUXXF6SpufBE1EkNEXwz1VLW03f177G9uMOFMQkp6OJ30/PWg4Ekifuz9/3YfgB2/GH8Tu4Lk3O51P2Hskg/A==
dependencies:
"@evocateur/pacote" "^9.6.3"
@@ -696,7 +264,7 @@
"@lerna/bootstrap@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-3.21.0.tgz#bcd1b651be5b0970b20d8fae04c864548123aed6"
integrity sha512-mtNHlXpmvJn6JTu0KcuTTPl2jLsDNud0QacV/h++qsaKbhAaJr/FElNZ5s7MwZFUM3XaDmvWzHKaszeBMHIbBw==
dependencies:
"@lerna/command" "3.21.0"
@@ -725,7 +293,7 @@
"@lerna/changed@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/changed/-/changed-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-3.21.0.tgz#108e15f679bfe077af500f58248c634f1044ea0b"
integrity sha512-hzqoyf8MSHVjZp0gfJ7G8jaz+++mgXYiNs9iViQGA8JlN/dnWLI5sWDptEH3/B30Izo+fdVz0S0s7ydVE3pWIw==
dependencies:
"@lerna/collect-updates" "3.20.0"
@@ -735,7 +303,7 @@
"@lerna/check-working-tree@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-3.16.5.tgz#b4f8ae61bb4523561dfb9f8f8d874dd46bb44baa"
integrity sha512-xWjVBcuhvB8+UmCSb5tKVLB5OuzSpw96WEhS2uz6hkWVa/Euh1A0/HJwn2cemyK47wUrCQXtczBUiqnq9yX5VQ==
dependencies:
"@lerna/collect-uncommitted" "3.16.5"
@@ -744,7 +312,7 @@
"@lerna/child-process@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-3.16.5.tgz#38fa3c18064aa4ac0754ad80114776a7b36a69b2"
integrity sha512-vdcI7mzei9ERRV4oO8Y1LHBZ3A5+ampRKg1wq5nutLsUA4mEBN6H7JqjWOMY9xZemv6+kATm2ofjJ3lW5TszQg==
dependencies:
chalk "^2.3.1"
@@ -753,7 +321,7 @@
"@lerna/clean@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/clean/-/clean-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-3.21.0.tgz#c0b46b5300cc3dae2cda3bec14b803082da3856d"
integrity sha512-b/L9l+MDgE/7oGbrav6rG8RTQvRiZLO1zTcG17zgJAAuhlsPxJExMlh2DFwJEVi2les70vMhHfST3Ue1IMMjpg==
dependencies:
"@lerna/command" "3.21.0"
@@ -767,7 +335,7 @@
"@lerna/cli@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/cli/-/cli-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-3.18.5.tgz#c90c461542fcd35b6d5b015a290fb0dbfb41d242"
integrity sha512-erkbxkj9jfc89vVs/jBLY/fM0I80oLmJkFUV3Q3wk9J3miYhP14zgVEBsPZY68IZlEjT6T3Xlq2xO1AVaatHsA==
dependencies:
"@lerna/global-options" "3.13.0"
@@ -777,7 +345,7 @@
"@lerna/collect-uncommitted@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-3.16.5.tgz#a494d61aac31cdc7aec4bbe52c96550274132e63"
integrity sha512-ZgqnGwpDZiWyzIQVZtQaj9tRizsL4dUOhuOStWgTAw1EMe47cvAY2kL709DzxFhjr6JpJSjXV5rZEAeU3VE0Hg==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -787,7 +355,7 @@
"@lerna/collect-updates@3.20.0":
version "3.20.0"
- resolved "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-3.20.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-3.20.0.tgz#62f9d76ba21a25b7d9fbf31c02de88744a564bd1"
integrity sha512-qBTVT5g4fupVhBFuY4nI/3FSJtQVcDh7/gEPOpRxoXB/yCSnT38MFHXWl+y4einLciCjt/+0x6/4AG80fjay2Q==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -798,7 +366,7 @@
"@lerna/command@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/command/-/command-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/command/-/command-3.21.0.tgz#9a2383759dc7b700dacfa8a22b2f3a6e190121f7"
integrity sha512-T2bu6R8R3KkH5YoCKdutKv123iUgUbW8efVjdGCDnCMthAQzoentOJfDeodBwn0P2OqCl3ohsiNVtSn9h78fyQ==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -814,7 +382,7 @@
"@lerna/conventional-commits@3.22.0":
version "3.22.0"
- resolved "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-3.22.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-3.22.0.tgz#2798f4881ee2ef457bdae027ab7d0bf0af6f1e09"
integrity sha512-z4ZZk1e8Mhz7+IS8NxHr64wyklHctCJyWpJKEZZPJiLFJ8yKto/x38O80R10pIzC0rr8Sy/OsjSH4bl0TbbgqA==
dependencies:
"@lerna/validation-error" "3.13.0"
@@ -831,7 +399,7 @@
"@lerna/create-symlink@3.16.2":
version "3.16.2"
- resolved "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-3.16.2.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-3.16.2.tgz#412cb8e59a72f5a7d9463e4e4721ad2070149967"
integrity sha512-pzXIJp6av15P325sgiIRpsPXLFmkisLhMBCy4764d+7yjf2bzrJ4gkWVMhsv4AdF0NN3OyZ5jjzzTtLNqfR+Jw==
dependencies:
"@zkochan/cmd-shim" "^3.1.0"
@@ -840,7 +408,7 @@
"@lerna/create@3.22.0":
version "3.22.0"
- resolved "https://registry.npmjs.org/@lerna/create/-/create-3.22.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/create/-/create-3.22.0.tgz#d6bbd037c3dc5b425fe5f6d1b817057c278f7619"
integrity sha512-MdiQQzCcB4E9fBF1TyMOaAEz9lUjIHp1Ju9H7f3lXze5JK6Fl5NYkouAvsLgY6YSIhXMY8AHW2zzXeBDY4yWkw==
dependencies:
"@evocateur/pacote" "^9.6.3"
@@ -864,7 +432,7 @@
"@lerna/describe-ref@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-3.16.5.tgz#a338c25aaed837d3dc70b8a72c447c5c66346ac0"
integrity sha512-c01+4gUF0saOOtDBzbLMFOTJDHTKbDFNErEY6q6i9QaXuzy9LNN62z+Hw4acAAZuJQhrVWncVathcmkkjvSVGw==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -872,7 +440,7 @@
"@lerna/diff@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/diff/-/diff-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-3.21.0.tgz#e6df0d8b9916167ff5a49fcb02ac06424280a68d"
integrity sha512-5viTR33QV3S7O+bjruo1SaR40m7F2aUHJaDAC7fL9Ca6xji+aw1KFkpCtVlISS0G8vikUREGMJh+c/VMSc8Usw==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -882,7 +450,7 @@
"@lerna/exec@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/exec/-/exec-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-3.21.0.tgz#17f07533893cb918a17b41bcc566dc437016db26"
integrity sha512-iLvDBrIE6rpdd4GIKTY9mkXyhwsJ2RvQdB9ZU+/NhR3okXfqKc6py/24tV111jqpXTtZUW6HNydT4dMao2hi1Q==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -895,7 +463,7 @@
"@lerna/filter-options@3.20.0":
version "3.20.0"
- resolved "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-3.20.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-3.20.0.tgz#0f0f5d5a4783856eece4204708cc902cbc8af59b"
integrity sha512-bmcHtvxn7SIl/R9gpiNMVG7yjx7WyT0HSGw34YVZ9B+3xF/83N3r5Rgtjh4hheLZ+Q91Or0Jyu5O3Nr+AwZe2g==
dependencies:
"@lerna/collect-updates" "3.20.0"
@@ -906,7 +474,7 @@
"@lerna/filter-packages@3.18.0":
version "3.18.0"
- resolved "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-3.18.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-3.18.0.tgz#6a7a376d285208db03a82958cfb8172e179b4e70"
integrity sha512-6/0pMM04bCHNATIOkouuYmPg6KH3VkPCIgTfQmdkPJTullERyEQfNUKikrefjxo1vHOoCACDpy65JYyKiAbdwQ==
dependencies:
"@lerna/validation-error" "3.13.0"
@@ -915,14 +483,14 @@
"@lerna/get-npm-exec-opts@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.13.0.tgz#d1b552cb0088199fc3e7e126f914e39a08df9ea5"
integrity sha512-Y0xWL0rg3boVyJk6An/vurKzubyJKtrxYv2sj4bB8Mc5zZ3tqtv0ccbOkmkXKqbzvNNF7VeUt1OJ3DRgtC/QZw==
dependencies:
npmlog "^4.1.2"
"@lerna/get-packed@3.16.0":
version "3.16.0"
- resolved "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-3.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-3.16.0.tgz#1b316b706dcee86c7baa55e50b087959447852ff"
integrity sha512-AjsFiaJzo1GCPnJUJZiTW6J1EihrPkc2y3nMu6m3uWFxoleklsSCyImumzVZJssxMi3CPpztj8LmADLedl9kXw==
dependencies:
fs-extra "^8.1.0"
@@ -931,7 +499,7 @@
"@lerna/github-client@3.22.0":
version "3.22.0"
- resolved "https://registry.npmjs.org/@lerna/github-client/-/github-client-3.22.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-3.22.0.tgz#5d816aa4f76747ed736ae64ff962b8f15c354d95"
integrity sha512-O/GwPW+Gzr3Eb5bk+nTzTJ3uv+jh5jGho9BOqKlajXaOkMYGBELEAqV5+uARNGWZFvYAiF4PgqHb6aCUu7XdXg==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -942,7 +510,7 @@
"@lerna/gitlab-client@3.15.0":
version "3.15.0"
- resolved "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-3.15.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-3.15.0.tgz#91f4ec8c697b5ac57f7f25bd50fe659d24aa96a6"
integrity sha512-OsBvRSejHXUBMgwWQqNoioB8sgzL/Pf1pOUhHKtkiMl6aAWjklaaq5HPMvTIsZPfS6DJ9L5OK2GGZuooP/5c8Q==
dependencies:
node-fetch "^2.5.0"
@@ -951,12 +519,12 @@
"@lerna/global-options@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/global-options/-/global-options-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-3.13.0.tgz#217662290db06ad9cf2c49d8e3100ee28eaebae1"
integrity sha512-SlZvh1gVRRzYLVluz9fryY1nJpZ0FHDGB66U9tFfvnnxmueckRQxLopn3tXj3NU1kc3QANT2I5BsQkOqZ4TEFQ==
"@lerna/has-npm-version@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-3.16.5.tgz#ab83956f211d8923ea6afe9b979b38cc73b15326"
integrity sha512-WL7LycR9bkftyqbYop5rEGJ9sRFIV55tSGmbN1HLrF9idwOCD7CLrT64t235t3t4O5gehDnwKI5h2U3oxTrF8Q==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -964,7 +532,7 @@
"@lerna/import@3.22.0":
version "3.22.0"
- resolved "https://registry.npmjs.org/@lerna/import/-/import-3.22.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/import/-/import-3.22.0.tgz#1a5f0394f38e23c4f642a123e5e1517e70d068d2"
integrity sha512-uWOlexasM5XR6tXi4YehODtH9Y3OZrFht3mGUFFT3OIl2s+V85xIGFfqFGMTipMPAGb2oF1UBLL48kR43hRsOg==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -978,7 +546,7 @@
"@lerna/info@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/info/-/info-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/info/-/info-3.21.0.tgz#76696b676fdb0f35d48c83c63c1e32bb5e37814f"
integrity sha512-0XDqGYVBgWxUquFaIptW2bYSIu6jOs1BtkvRTWDDhw4zyEdp6q4eaMvqdSap1CG+7wM5jeLCi6z94wS0AuiuwA==
dependencies:
"@lerna/command" "3.21.0"
@@ -987,7 +555,7 @@
"@lerna/init@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/init/-/init-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/init/-/init-3.21.0.tgz#1e810934dc8bf4e5386c031041881d3b4096aa5c"
integrity sha512-6CM0z+EFUkFfurwdJCR+LQQF6MqHbYDCBPyhu/d086LRf58GtYZYj49J8mKG9ktayp/TOIxL/pKKjgLD8QBPOg==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -998,7 +566,7 @@
"@lerna/link@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/link/-/link-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/link/-/link-3.21.0.tgz#8be68ff0ccee104b174b5bbd606302c2f06e9d9b"
integrity sha512-tGu9GxrX7Ivs+Wl3w1+jrLi1nQ36kNI32dcOssij6bg0oZ2M2MDEFI9UF2gmoypTaN9uO5TSsjCFS7aR79HbdQ==
dependencies:
"@lerna/command" "3.21.0"
@@ -1009,7 +577,7 @@
"@lerna/list@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/list/-/list-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/list/-/list-3.21.0.tgz#42f76fafa56dea13b691ec8cab13832691d61da2"
integrity sha512-KehRjE83B1VaAbRRkRy6jLX1Cin8ltsrQ7FHf2bhwhRHK0S54YuA6LOoBnY/NtA8bHDX/Z+G5sMY78X30NS9tg==
dependencies:
"@lerna/command" "3.21.0"
@@ -1019,7 +587,7 @@
"@lerna/listable@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/listable/-/listable-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-3.18.5.tgz#e82798405b5ed8fc51843c8ef1e7a0e497388a1a"
integrity sha512-Sdr3pVyaEv5A7ZkGGYR7zN+tTl2iDcinryBPvtuv20VJrXBE8wYcOks1edBTcOWsPjCE/rMP4bo1pseyk3UTsg==
dependencies:
"@lerna/query-graph" "3.18.5"
@@ -1028,7 +596,7 @@
"@lerna/log-packed@3.16.0":
version "3.16.0"
- resolved "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-3.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-3.16.0.tgz#f83991041ee77b2495634e14470b42259fd2bc16"
integrity sha512-Fp+McSNBV/P2mnLUYTaSlG8GSmpXM7krKWcllqElGxvAqv6chk2K3c2k80MeVB4WvJ9tRjUUf+i7HUTiQ9/ckQ==
dependencies:
byte-size "^5.0.1"
@@ -1038,7 +606,7 @@
"@lerna/npm-conf@3.16.0":
version "3.16.0"
- resolved "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-3.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-3.16.0.tgz#1c10a89ae2f6c2ee96962557738685300d376827"
integrity sha512-HbO3DUrTkCAn2iQ9+FF/eisDpWY5POQAOF1m7q//CZjdC2HSW3UYbKEGsSisFxSfaF9Z4jtrV+F/wX6qWs3CuA==
dependencies:
config-chain "^1.1.11"
@@ -1046,7 +614,7 @@
"@lerna/npm-dist-tag@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-3.18.5.tgz#9ef9abb7c104077b31f6fab22cc73b314d54ac55"
integrity sha512-xw0HDoIG6HreVsJND9/dGls1c+lf6vhu7yJoo56Sz5bvncTloYGLUppIfDHQr4ZvmPCK8rsh0euCVh2giPxzKQ==
dependencies:
"@evocateur/npm-registry-fetch" "^4.0.0"
@@ -1057,7 +625,7 @@
"@lerna/npm-install@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-3.16.5.tgz#d6bfdc16f81285da66515ae47924d6e278d637d3"
integrity sha512-hfiKk8Eku6rB9uApqsalHHTHY+mOrrHeWEs+gtg7+meQZMTS3kzv4oVp5cBZigndQr3knTLjwthT/FX4KvseFg==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -1070,7 +638,7 @@
"@lerna/npm-publish@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-3.18.5.tgz#240e4039959fd9816b49c5b07421e11b5cb000af"
integrity sha512-3etLT9+2L8JAx5F8uf7qp6iAtOLSMj+ZYWY6oUgozPi/uLqU0/gsMsEXh3F0+YVW33q0M61RpduBoAlOOZnaTg==
dependencies:
"@evocateur/libnpmpublish" "^1.2.2"
@@ -1085,7 +653,7 @@
"@lerna/npm-run-script@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-3.16.5.tgz#9c2ec82453a26c0b46edc0bb7c15816c821f5c15"
integrity sha512-1asRi+LjmVn3pMjEdpqKJZFT/3ZNpb+VVeJMwrJaV/3DivdNg7XlPK9LTrORuKU4PSvhdEZvJmSlxCKyDpiXsQ==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -1094,7 +662,7 @@
"@lerna/otplease@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/otplease/-/otplease-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-3.18.5.tgz#b77b8e760b40abad9f7658d988f3ea77d4fd0231"
integrity sha512-S+SldXAbcXTEDhzdxYLU0ZBKuYyURP/ND2/dK6IpKgLxQYh/z4ScljPDMyKymmEvgiEJmBsPZAAPfmNPEzxjog==
dependencies:
"@lerna/prompt" "3.18.5"
@@ -1102,14 +670,14 @@
"@lerna/output@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/output/-/output-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/output/-/output-3.13.0.tgz#3ded7cc908b27a9872228a630d950aedae7a4989"
integrity sha512-7ZnQ9nvUDu/WD+bNsypmPG5MwZBwu86iRoiW6C1WBuXXDxM5cnIAC1m2WxHeFnjyMrYlRXM9PzOQ9VDD+C15Rg==
dependencies:
npmlog "^4.1.2"
"@lerna/pack-directory@3.16.4":
version "3.16.4"
- resolved "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-3.16.4.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-3.16.4.tgz#3eae5f91bdf5acfe0384510ed53faddc4c074693"
integrity sha512-uxSF0HZeGyKaaVHz5FroDY9A5NDDiCibrbYR6+khmrhZtY0Bgn6hWq8Gswl9iIlymA+VzCbshWIMX4o2O8C8ng==
dependencies:
"@lerna/get-packed" "3.16.0"
@@ -1123,7 +691,7 @@
"@lerna/package-graph@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-3.18.5.tgz#c740e2ea3578d059e551633e950690831b941f6b"
integrity sha512-8QDrR9T+dBegjeLr+n9WZTVxUYUhIUjUgZ0gvNxUBN8S1WB9r6H5Yk56/MVaB64tA3oGAN9IIxX6w0WvTfFudA==
dependencies:
"@lerna/prerelease-id-from-version" "3.16.0"
@@ -1134,7 +702,7 @@
"@lerna/package@3.16.0":
version "3.16.0"
- resolved "https://registry.npmjs.org/@lerna/package/-/package-3.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/package/-/package-3.16.0.tgz#7e0a46e4697ed8b8a9c14d59c7f890e0d38ba13c"
integrity sha512-2lHBWpaxcBoiNVbtyLtPUuTYEaB/Z+eEqRS9duxpZs6D+mTTZMNy6/5vpEVSCBmzvdYpyqhqaYjjSLvjjr5Riw==
dependencies:
load-json-file "^5.3.0"
@@ -1143,14 +711,14 @@
"@lerna/prerelease-id-from-version@3.16.0":
version "3.16.0"
- resolved "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-3.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-3.16.0.tgz#b24bfa789f5e1baab914d7b08baae9b7bd7d83a1"
integrity sha512-qZyeUyrE59uOK8rKdGn7jQz+9uOpAaF/3hbslJVFL1NqF9ELDTqjCPXivuejMX/lN4OgD6BugTO4cR7UTq/sZA==
dependencies:
semver "^6.2.0"
"@lerna/profiler@3.20.0":
version "3.20.0"
- resolved "https://registry.npmjs.org/@lerna/profiler/-/profiler-3.20.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-3.20.0.tgz#0f6dc236f4ea8f9ea5f358c6703305a4f32ad051"
integrity sha512-bh8hKxAlm6yu8WEOvbLENm42i2v9SsR4WbrCWSbsmOElx3foRnMlYk7NkGECa+U5c3K4C6GeBbwgqs54PP7Ljg==
dependencies:
figgy-pudding "^3.5.1"
@@ -1160,7 +728,7 @@
"@lerna/project@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/project/-/project-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/project/-/project-3.21.0.tgz#5d784d2d10c561a00f20320bcdb040997c10502d"
integrity sha512-xT1mrpET2BF11CY32uypV2GPtPVm6Hgtha7D81GQP9iAitk9EccrdNjYGt5UBYASl4CIDXBRxwmTTVGfrCx82A==
dependencies:
"@lerna/package" "3.16.0"
@@ -1178,7 +746,7 @@
"@lerna/prompt@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/prompt/-/prompt-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-3.18.5.tgz#628cd545f225887d060491ab95df899cfc5218a1"
integrity sha512-rkKj4nm1twSbBEb69+Em/2jAERK8htUuV8/xSjN0NPC+6UjzAwY52/x9n5cfmpa9lyKf/uItp7chCI7eDmNTKQ==
dependencies:
inquirer "^6.2.0"
@@ -1186,7 +754,7 @@
"@lerna/publish@3.22.1":
version "3.22.1"
- resolved "https://registry.npmjs.org/@lerna/publish/-/publish-3.22.1.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-3.22.1.tgz#b4f7ce3fba1e9afb28be4a1f3d88222269ba9519"
integrity sha512-PG9CM9HUYDreb1FbJwFg90TCBQooGjj+n/pb3gw/eH5mEDq0p8wKdLFe0qkiqUkm/Ub5C8DbVFertIo0Vd0zcw==
dependencies:
"@evocateur/libnpmaccess" "^3.1.2"
@@ -1222,14 +790,14 @@
"@lerna/pulse-till-done@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-3.13.0.tgz#c8e9ce5bafaf10d930a67d7ed0ccb5d958fe0110"
integrity sha512-1SOHpy7ZNTPulzIbargrgaJX387csN7cF1cLOGZiJQA6VqnS5eWs2CIrG8i8wmaUavj2QlQ5oEbRMVVXSsGrzA==
dependencies:
npmlog "^4.1.2"
"@lerna/query-graph@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-3.18.5.tgz#df4830bb5155273003bf35e8dda1c32d0927bd86"
integrity sha512-50Lf4uuMpMWvJ306be3oQDHrWV42nai9gbIVByPBYJuVW8dT8O8pA3EzitNYBUdLL9/qEVbrR0ry1HD7EXwtRA==
dependencies:
"@lerna/package-graph" "3.18.5"
@@ -1237,7 +805,7 @@
"@lerna/resolve-symlink@3.16.0":
version "3.16.0"
- resolved "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-3.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-3.16.0.tgz#37fc7095fabdbcf317c26eb74e0d0bde8efd2386"
integrity sha512-Ibj5e7njVHNJ/NOqT4HlEgPFPtPLWsO7iu59AM5bJDcAJcR96mLZ7KGVIsS2tvaO7akMEJvt2P+ErwCdloG3jQ==
dependencies:
fs-extra "^8.1.0"
@@ -1246,7 +814,7 @@
"@lerna/rimraf-dir@3.16.5":
version "3.16.5"
- resolved "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-3.16.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-3.16.5.tgz#04316ab5ffd2909657aaf388ea502cb8c2f20a09"
integrity sha512-bQlKmO0pXUsXoF8lOLknhyQjOZsCc0bosQDoX4lujBXSWxHVTg1VxURtWf2lUjz/ACsJVDfvHZbDm8kyBk5okA==
dependencies:
"@lerna/child-process" "3.16.5"
@@ -1256,7 +824,7 @@
"@lerna/run-lifecycle@3.16.2":
version "3.16.2"
- resolved "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-3.16.2.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-3.16.2.tgz#67b288f8ea964db9ea4fb1fbc7715d5bbb0bce00"
integrity sha512-RqFoznE8rDpyyF0rOJy3+KjZCeTkO8y/OB9orPauR7G2xQ7PTdCpgo7EO6ZNdz3Al+k1BydClZz/j78gNCmL2A==
dependencies:
"@lerna/npm-conf" "3.16.0"
@@ -1266,7 +834,7 @@
"@lerna/run-topologically@3.18.5":
version "3.18.5"
- resolved "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-3.18.5.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-3.18.5.tgz#3cd639da20e967d7672cb88db0f756b92f2fdfc3"
integrity sha512-6N1I+6wf4hLOnPW+XDZqwufyIQ6gqoPfHZFkfWlvTQ+Ue7CuF8qIVQ1Eddw5HKQMkxqN10thKOFfq/9NQZ4NUg==
dependencies:
"@lerna/query-graph" "3.18.5"
@@ -1275,7 +843,7 @@
"@lerna/run@3.21.0":
version "3.21.0"
- resolved "https://registry.npmjs.org/@lerna/run/-/run-3.21.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/run/-/run-3.21.0.tgz#2a35ec84979e4d6e42474fe148d32e5de1cac891"
integrity sha512-fJF68rT3veh+hkToFsBmUJ9MHc9yGXA7LSDvhziAojzOb0AI/jBDp6cEcDQyJ7dbnplba2Lj02IH61QUf9oW0Q==
dependencies:
"@lerna/command" "3.21.0"
@@ -1290,7 +858,7 @@
"@lerna/symlink-binary@3.17.0":
version "3.17.0"
- resolved "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-3.17.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-3.17.0.tgz#8f8031b309863814883d3f009877f82e38aef45a"
integrity sha512-RLpy9UY6+3nT5J+5jkM5MZyMmjNHxZIZvXLV+Q3MXrf7Eaa1hNqyynyj4RO95fxbS+EZc4XVSk25DGFQbcRNSQ==
dependencies:
"@lerna/create-symlink" "3.16.2"
@@ -1300,7 +868,7 @@
"@lerna/symlink-dependencies@3.17.0":
version "3.17.0"
- resolved "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-3.17.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-3.17.0.tgz#48d6360e985865a0e56cd8b51b308a526308784a"
integrity sha512-KmjU5YT1bpt6coOmdFueTJ7DFJL4H1w5eF8yAQ2zsGNTtZ+i5SGFBWpb9AQaw168dydc3s4eu0W0Sirda+F59Q==
dependencies:
"@lerna/create-symlink" "3.16.2"
@@ -1313,19 +881,19 @@
"@lerna/timer@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/timer/-/timer-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-3.13.0.tgz#bcd0904551db16e08364d6c18e5e2160fc870781"
integrity sha512-RHWrDl8U4XNPqY5MQHkToWS9jHPnkLZEt5VD+uunCKTfzlxGnRCr3/zVr8VGy/uENMYpVP3wJa4RKGY6M0vkRw==
"@lerna/validation-error@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-3.13.0.tgz#c86b8f07c5ab9539f775bd8a54976e926f3759c3"
integrity sha512-SiJP75nwB8GhgwLKQfdkSnDufAaCbkZWJqEDlKOUPUvVOplRGnfL+BPQZH5nvq2BYSRXsksXWZ4UHVnQZI/HYA==
dependencies:
npmlog "^4.1.2"
"@lerna/version@3.22.1":
version "3.22.1"
- resolved "https://registry.npmjs.org/@lerna/version/-/version-3.22.1.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/version/-/version-3.22.1.tgz#9805a9247a47ee62d6b81bd9fa5fb728b24b59e2"
integrity sha512-PSGt/K1hVqreAFoi3zjD0VEDupQ2WZVlVIwesrE5GbrL2BjXowjCsTDPqblahDUPy0hp6h7E2kG855yLTp62+g==
dependencies:
"@lerna/check-working-tree" "3.16.5"
@@ -1357,7 +925,7 @@
"@lerna/write-log-file@3.13.0":
version "3.13.0"
- resolved "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-3.13.0.tgz"
+ resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-3.13.0.tgz#b78d9e4cfc1349a8be64d91324c4c8199e822a26"
integrity sha512-RibeMnDPvlL8bFYW5C8cs4mbI3AHfQef73tnJCQ/SgrXZHehmHnsyWUiE7qDQCAo+B1RfTapvSyFF69iPj326A==
dependencies:
npmlog "^4.1.2"
@@ -1369,81 +937,41 @@
integrity sha512-XPIN3cYDXsoJI/oDWoR2tD++juVrhgIago9xyKhZ7IhGlzdDM9QgC8D8saKNCz5pindGcznFr2HBSsEQSWnSjw==
"@lezer/lr@^1.0.0":
- version "1.3.11"
- resolved "https://registry.yarnpkg.com/@lezer/lr/-/lr-1.3.11.tgz#67647b3af77bbd798cabc726b7a8151ff9b6d64b"
- integrity sha512-W7IZXXyi6BfVredTDk3jHe1V6zUcdjRcUlvTsrWGOvIOU2eg3sfEDtTDFHo1TRxZhtQGX1EyHHUXoXvJNSxcnA==
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@lezer/lr/-/lr-1.3.13.tgz#578e06c6c52e4dc38421368904585afa3eb82ec8"
+ integrity sha512-RLAbau/4uSzKgIKj96mI5WUtG1qtiR0Frn0Ei9zhPj8YOkHM+1Bb8SgdVvmR/aWJCFIzjo2KFnDiRZ75Xf5NdQ==
dependencies:
"@lezer/common" "^1.0.0"
-"@linaria/core@4.2.9":
- version "4.2.9"
- resolved "https://registry.npmjs.org/@linaria/core/-/core-4.2.9.tgz"
- integrity sha512-ELcu37VNVOT/PU0L6WDIN+aLzNFyJrqoBYT0CucGOCAmODbojUMCv8oJYRbWzA3N34w1t199dN4UFdfRWFG2rg==
- dependencies:
- "@linaria/logger" "^4.0.0"
- "@linaria/tags" "^4.3.4"
- "@linaria/utils" "^4.3.3"
+"@lmdb/lmdb-darwin-arm64@2.8.5":
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.8.5.tgz#895d8cb16a9d709ce5fedd8b60022903b875e08e"
+ integrity sha512-KPDeVScZgA1oq0CiPBcOa3kHIqU+pTOwRFDIhxvmf8CTNvqdZQYp5cCKW0bUk69VygB2PuTiINFWbY78aR2pQw==
-"@linaria/logger@^4.0.0":
- version "4.0.0"
- resolved "https://registry.npmjs.org/@linaria/logger/-/logger-4.0.0.tgz"
- integrity sha512-YnBq0JlDWMEkTOK+tMo5yEVR0f5V//6qMLToGcLhTyM9g9i+IDFn51Z+5q2hLk7RdG4NBPgbcCXYi2w4RKsPeg==
- dependencies:
- debug "^4.1.1"
- picocolors "^1.0.0"
+"@lmdb/lmdb-darwin-x64@2.8.5":
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.8.5.tgz#ca243534c8b37d5516c557e4624256d18dd63184"
+ integrity sha512-w/sLhN4T7MW1nB3R/U8WK5BgQLz904wh+/SmA2jD8NnF7BLLoUgflCNxOeSPOWp8geP6nP/+VjWzZVip7rZ1ug==
-"@linaria/tags@^4.3.4":
- version "4.3.4"
- resolved "https://registry.npmjs.org/@linaria/tags/-/tags-4.3.4.tgz"
- integrity sha512-W8zaLKtC4YFCwkZ9DMu2enCiD/zGyYmFSTzEvJP7ZycdftMizoOrWNOyF9kITyjGdq+jZvAXJz0BZDT6axgIRg==
- dependencies:
- "@babel/generator" "^7.20.4"
- "@linaria/logger" "^4.0.0"
- "@linaria/utils" "^4.3.3"
-
-"@linaria/utils@^4.3.3":
- version "4.3.3"
- resolved "https://registry.npmjs.org/@linaria/utils/-/utils-4.3.3.tgz"
- integrity sha512-xSe/tod9A44aIMbtds9fWLNe2TT080lLdRSaoqX+UHsBWqClkrw5cXEt3lm8Vr4hZiXT2r/1AldjuHb9YbUlMg==
- dependencies:
- "@babel/core" "^7.20.2"
- "@babel/plugin-proposal-export-namespace-from" "^7.18.9"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
- "@babel/plugin-transform-modules-commonjs" "^7.19.6"
- "@babel/traverse" "^7.20.1"
- "@babel/types" "^7.20.2"
- "@linaria/logger" "^4.0.0"
- babel-merge "^3.0.0"
-
-"@lmdb/lmdb-darwin-arm64@2.7.11":
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.7.11.tgz#b717e72f023d4215d14e4c57433c711a53c782cf"
- integrity sha512-r6+vYq2vKzE+vgj/rNVRMwAevq0+ZR9IeMFIqcSga+wMtMdXQ27KqQ7uS99/yXASg29bos7yHP3yk4x6Iio0lw==
-
-"@lmdb/lmdb-darwin-x64@2.7.11":
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.7.11.tgz#b42898b0742b4a82b8224b742b2d174c449cd170"
- integrity sha512-jhj1aB4K8ycRL1HOQT5OtzlqOq70jxUQEWRN9Gqh3TIDN30dxXtiHi6EWF516tzw6v2+3QqhDMJh8O6DtTGG8Q==
-
-"@lmdb/lmdb-linux-arm64@2.7.11":
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.7.11.tgz#a8dc8e386d27006cfccbf2a8598290b63d03a9ec"
- integrity sha512-7xGEfPPbmVJWcY2Nzqo11B9Nfxs+BAsiiaY/OcT4aaTDdykKeCjvKMQJA3KXCtZ1AtiC9ljyGLi+BfUwdulY5A==
-
-"@lmdb/lmdb-linux-arm@2.7.11":
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.7.11.tgz#2103f48af28336efccaac008fe882dfce33e4ac5"
- integrity sha512-dHfLFVSrw/v5X5lkwp0Vl7+NFpEeEYKfMG2DpdFJnnG1RgHQZngZxCaBagFoaJGykRpd2DYF1AeuXBFrAUAXfw==
-
-"@lmdb/lmdb-linux-x64@2.7.11":
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.7.11.tgz#d21ac368022a662610540f2ba8bb6ff0b96a9940"
- integrity sha512-vUKI3JrREMQsXX8q0Eq5zX2FlYCKWMmLiCyyJNfZK0Uyf14RBg9VtB3ObQ41b4swYh2EWaltasWVe93Y8+KDng==
-
-"@lmdb/lmdb-win32-x64@2.7.11":
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.7.11.tgz#af2cb4ae6d3a92ecdeb1503b73079417525476d2"
- integrity sha512-BJwkHlSUgtB+Ei52Ai32M1AOMerSlzyIGA/KC4dAGL+GGwVMdwG8HGCOA2TxP3KjhbgDPMYkv7bt/NmOmRIFng==
+"@lmdb/lmdb-linux-arm64@2.8.5":
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.8.5.tgz#b44a8023057e21512eefb9f6120096843b531c1e"
+ integrity sha512-vtbZRHH5UDlL01TT5jB576Zox3+hdyogvpcbvVJlmU5PdL3c5V7cj1EODdh1CHPksRl+cws/58ugEHi8bcj4Ww==
+
+"@lmdb/lmdb-linux-arm@2.8.5":
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.8.5.tgz#17bd54740779c3e4324e78e8f747c21416a84b3d"
+ integrity sha512-c0TGMbm2M55pwTDIfkDLB6BpIsgxV4PjYck2HiOX+cy/JWiBXz32lYbarPqejKs9Flm7YVAKSILUducU9g2RVg==
+
+"@lmdb/lmdb-linux-x64@2.8.5":
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.8.5.tgz#6c61835b6cc58efdf79dbd5e8c72a38300a90302"
+ integrity sha512-Xkc8IUx9aEhP0zvgeKy7IQ3ReX2N8N1L0WPcQwnZweWmOuKfwpS3GRIYqLtK5za/w3E60zhFfNdS+3pBZPytqQ==
+
+"@lmdb/lmdb-win32-x64@2.8.5":
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.8.5.tgz#8233e8762440b0f4632c47a09b1b6f23de8b934c"
+ integrity sha512-4wvrf5BgnR8RpogHhtpCPJMKBmvyZPhhUtEwMJbXh0ni2BucpfF07jlmyM11zRqQ2XIq6PbC2j7W7UCCcm1rRQ==
"@mischnic/json-sourcemap@^0.1.0":
version "0.1.1"
@@ -1456,7 +984,7 @@
"@mrmlnc/readdir-enhanced@^2.2.1":
version "2.2.1"
- resolved "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde"
integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==
dependencies:
call-me-maybe "^1.0.1"
@@ -1492,146 +1020,50 @@
resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.2.tgz#0f164b726869f71da3c594171df5ebc1c4b0a407"
integrity sha512-O+6Gs8UeDbyFpbSh2CPEz/UOrrdWPTBYNblZK5CxxLisYt4kGX3Sc+czffFonyjiGSq3jWLwJS/CCJc7tBr4sQ==
-"@mui/base@5.0.0-beta.17":
- version "5.0.0-beta.17"
- resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-beta.17.tgz#98b7ef6a3176b7aaf59ac8862d3271acb6876bc0"
- integrity sha512-xNbk7iOXrglNdIxFBN0k3ySsPIFLWCnFxqsAYl7CIcDkD9low4kJ7IUuy6ctwx/HAy2fenrT3KXHr1sGjAMgpQ==
+"@mui/base@^5.0.0-beta.17":
+ version "5.0.0-beta.19"
+ resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-beta.19.tgz#c1776e91b6a377c1a6a0079b5d6fec6e07a3bf9c"
+ integrity sha512-maNBgAscddyPNzFZQUJDF/puxM27Li+NqSBsr/lAP8TLns2VvWS2SoL3OKFOIoRnAMKGY/Ic6Aot6gCYeQnssA==
dependencies:
- "@babel/runtime" "^7.22.15"
+ "@babel/runtime" "^7.23.1"
"@floating-ui/react-dom" "^2.0.2"
- "@mui/types" "^7.2.4"
- "@mui/utils" "^5.14.11"
+ "@mui/types" "^7.2.6"
+ "@mui/utils" "^5.14.13"
"@popperjs/core" "^2.11.8"
clsx "^2.0.0"
prop-types "^15.8.1"
-"@mui/core-downloads-tracker@^5.14.11":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.11.tgz#e829aceb5c0bbfc3383ed90a6a85445344dd65a7"
- integrity sha512-uY8FLQURhXe3f3O4dS5OSGML9KDm9+IE226cBu78jarVIzdQGPlXwGIlSI9VJR8MvZDA6C0+6XfWDhWCHruC5Q==
+"@mui/types@^7.2.6":
+ version "7.2.6"
+ resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.2.6.tgz#d72b9e9eb0032e107e76033932d65c3f731d2608"
+ integrity sha512-7sjLQrUmBwufm/M7jw/quNiPK/oor2+pGUQP2CULRcFCArYTq78oJ3D5esTaL0UMkXKJvDqXn6Ike69yAOBQng==
-"@mui/icons-material@^5.0.1":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-5.14.11.tgz#ce563d1b6c7abc76f8a8048c970135601e7b49b5"
- integrity sha512-aHReLasBuS/+hhPzbZCgZ0eTcZ2QRnoC2WNK7XvdAf3l+LjC1flzjh6GWw1tZJ5NHnZ+bivdwtLFQ8XTR96JkA==
+"@mui/utils@^5.14.11", "@mui/utils@^5.14.13":
+ version "5.14.13"
+ resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.14.13.tgz#42c352b342da90b44a29a83d3dbda6ee1e56a0f8"
+ integrity sha512-2AFpyXWw7uDCIqRu7eU2i/EplZtks5LAMzQvIhC79sPV9IhOZU2qwOWVnPtdctRXiQJOAaXulg+A37pfhEueQw==
dependencies:
- "@babel/runtime" "^7.22.15"
-
-"@mui/material@^5.0.2", "@mui/material@^5.13.1":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/material/-/material-5.14.11.tgz#7537f07c383a6cfa32a00fabc9959593478bc5c4"
- integrity sha512-DnSdJzcR7lwG12JA5L2t8JF+RDzMygu5rCNW+logWb/KW2/TRzwLyVWO+CorHTBjBRd38DBxnwOCDiYkDd+N3A==
- dependencies:
- "@babel/runtime" "^7.22.15"
- "@mui/base" "5.0.0-beta.17"
- "@mui/core-downloads-tracker" "^5.14.11"
- "@mui/system" "^5.14.11"
- "@mui/types" "^7.2.4"
- "@mui/utils" "^5.14.11"
- "@types/react-transition-group" "^4.4.6"
- clsx "^2.0.0"
- csstype "^3.1.2"
+ "@babel/runtime" "^7.23.1"
+ "@types/prop-types" "^15.7.7"
prop-types "^15.8.1"
react-is "^18.2.0"
- react-transition-group "^4.4.5"
-
-"@mui/private-theming@^5.14.11":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-5.14.11.tgz#1543b4d13d5cb32018c5bd41b516db1c33f70344"
- integrity sha512-MSnNNzTu9pfKLCKs1ZAKwOTgE4bz+fQA0fNr8Jm7NDmuWmw0CaN9Vq2/MHsatE7+S0A25IAKby46Uv1u53rKVQ==
- dependencies:
- "@babel/runtime" "^7.22.15"
- "@mui/utils" "^5.14.11"
- prop-types "^15.8.1"
-
-"@mui/styled-engine@^5.14.11":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-5.14.11.tgz#22cb0047f211be4dbc133a5d1015369293bdff00"
- integrity sha512-jdUlqRgTYQ8RMtPX4MbRZqar6W2OiIb6J5KEFbIu4FqvPrk44Each4ppg/LAqp1qNlBYq5i+7Q10MYLMpDxX9A==
- dependencies:
- "@babel/runtime" "^7.22.15"
- "@emotion/cache" "^11.11.0"
- csstype "^3.1.2"
- prop-types "^15.8.1"
-
-"@mui/styles@^5.13.1":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/styles/-/styles-5.14.11.tgz#3a9c31e927b9115c62c5260c5614c178f849aa43"
- integrity sha512-43TTaH/QBNAvwFfN0Dz1UREZLs5Yd8X4XrsiYgIJJgdGsr2TtlKz/WRHqDNwWkNg/gs3qcWIbtNweTIoTkov/g==
- dependencies:
- "@babel/runtime" "^7.22.15"
- "@emotion/hash" "^0.9.1"
- "@mui/private-theming" "^5.14.11"
- "@mui/types" "^7.2.4"
- "@mui/utils" "^5.14.11"
- clsx "^2.0.0"
- csstype "^3.1.2"
- hoist-non-react-statics "^3.3.2"
- jss "^10.10.0"
- jss-plugin-camel-case "^10.10.0"
- jss-plugin-default-unit "^10.10.0"
- jss-plugin-global "^10.10.0"
- jss-plugin-nested "^10.10.0"
- jss-plugin-props-sort "^10.10.0"
- jss-plugin-rule-value-function "^10.10.0"
- jss-plugin-vendor-prefixer "^10.10.0"
- prop-types "^15.8.1"
-"@mui/system@^5.14.11":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/system/-/system-5.14.11.tgz#4f3aaf3e3d6d039e41a60f939056aa5fd371d291"
- integrity sha512-yl8xV+y0k7j6dzBsHabKwoShmjqLa8kTxrhUI3JpqLG358VRVMJRW/ES0HhvfcCi4IVXde+Tc2P3K1akGL8zoA==
+"@mui/x-date-pickers@^6.6.0":
+ version "6.16.2"
+ resolved "https://registry.yarnpkg.com/@mui/x-date-pickers/-/x-date-pickers-6.16.2.tgz#a21e9891d797287bd8aebb822eb26e70a81923f8"
+ integrity sha512-JFrDUeBkiKtfJ0WqwyPBICEP1U+Ujfsily3ZQ/Hv4zAOleG/5769EgS7TOO4cVgnuhtvQ/pqx2gmuCn8/gcC5w==
dependencies:
- "@babel/runtime" "^7.22.15"
- "@mui/private-theming" "^5.14.11"
- "@mui/styled-engine" "^5.14.11"
- "@mui/types" "^7.2.4"
+ "@babel/runtime" "^7.23.1"
+ "@mui/base" "^5.0.0-beta.17"
"@mui/utils" "^5.14.11"
+ "@types/react-transition-group" "^4.4.7"
clsx "^2.0.0"
- csstype "^3.1.2"
- prop-types "^15.8.1"
-
-"@mui/types@^7.2.4":
- version "7.2.4"
- resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.2.4.tgz#b6fade19323b754c5c6de679a38f068fd50b9328"
- integrity sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==
-
-"@mui/utils@^5.13.1":
- version "5.13.1"
- resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.13.1.tgz"
- integrity sha512-6lXdWwmlUbEU2jUI8blw38Kt+3ly7xkmV9ljzY4Q20WhsJMWiNry9CX8M+TaP/HbtuyR8XKsdMgQW7h7MM3n3A==
- dependencies:
- "@babel/runtime" "^7.21.0"
- "@types/prop-types" "^15.7.5"
- "@types/react-is" "^18.2.0"
- prop-types "^15.8.1"
- react-is "^18.2.0"
-
-"@mui/utils@^5.14.11":
- version "5.14.11"
- resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.14.11.tgz#d19a1d8725ffd16c6c6817f00b5172931958fb9a"
- integrity sha512-fmkIiCPKyDssYrJ5qk+dime1nlO3dmWfCtaPY/uVBqCRMBZ11JhddB9m8sjI2mgqQQwRJG5bq3biaosNdU/s4Q==
- dependencies:
- "@babel/runtime" "^7.22.15"
- "@types/prop-types" "^15.7.5"
- prop-types "^15.8.1"
- react-is "^18.2.0"
-
-"@mui/x-date-pickers@^6.6.0":
- version "6.6.0"
- resolved "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-6.6.0.tgz"
- integrity sha512-cF7Ijv0IgYi/tCQa2qdoCEHF5gtj/nn/gGdr3oOw/VI6QcKQkbLwA0baPfWEMS2weT9HR6JFerMQ5i57dWv+2A==
- dependencies:
- "@babel/runtime" "^7.21.0"
- "@mui/utils" "^5.13.1"
- "@types/react-transition-group" "^4.4.6"
- clsx "^1.2.1"
prop-types "^15.8.1"
react-transition-group "^4.4.5"
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
- resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
dependencies:
"@nodelib/fs.stat" "2.0.5"
@@ -1639,17 +1071,17 @@
"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
version "2.0.5"
- resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
"@nodelib/fs.stat@^1.1.2":
version "1.1.3"
- resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b"
integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==
"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
version "1.2.8"
- resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
dependencies:
"@nodelib/fs.scandir" "2.1.5"
@@ -1657,7 +1089,7 @@
"@nrwl/tao@16.5.1":
version "16.5.1"
- resolved "https://registry.npmjs.org/@nrwl/tao/-/tao-16.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/@nrwl/tao/-/tao-16.5.1.tgz#e6e6b1ab73238497d4d9f014b30af18722e73503"
integrity sha512-x+gi/fKdM6uQNIti9exFlm3V5LBP3Y8vOEziO42HdOigyrXa0S0HD2WMpccmp6PclYKhwEDUjKJ39xh5sdh4Ig==
dependencies:
nx "16.5.1"
@@ -1694,12 +1126,12 @@
"@nx/nx-linux-x64-gnu@16.5.1":
version "16.5.1"
- resolved "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-16.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-16.5.1.tgz#2b2ffbb80e29455b6900ec20d4249055590dc58f"
integrity sha512-igooWJ5YxQ94Zft7IqgL+Lw0qHaY15Btw4gfK756g/YTYLZEt4tTvR1y6RnK/wdpE3sa68bFTLVBNCGTyiTiDQ==
"@nx/nx-linux-x64-musl@16.5.1":
version "16.5.1"
- resolved "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-16.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-16.5.1.tgz#955b2eae615ee6cf1954e24d42c205b1de8772bf"
integrity sha512-zF/exnPqFYbrLAduGhTmZ7zNEyADid2bzNQiIjJkh8Y6NpDwrQIwVIyvIxqynsjMrIs51kBH+8TUjKjj2Jgf5A==
"@nx/nx-win32-arm64-msvc@16.5.1":
@@ -1714,14 +1146,14 @@
"@octokit/auth-token@^2.4.0":
version "2.5.0"
- resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36"
integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==
dependencies:
"@octokit/types" "^6.0.3"
"@octokit/endpoint@^6.0.1":
version "6.0.12"
- resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658"
integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==
dependencies:
"@octokit/types" "^6.0.3"
@@ -1730,29 +1162,29 @@
"@octokit/openapi-types@^12.11.0":
version "12.11.0"
- resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-12.11.0.tgz#da5638d64f2b919bca89ce6602d059f1b52d3ef0"
integrity sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==
"@octokit/plugin-enterprise-rest@^6.0.1":
version "6.0.1"
- resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437"
integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==
"@octokit/plugin-paginate-rest@^1.1.1":
version "1.1.2"
- resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz#004170acf8c2be535aba26727867d692f7b488fc"
integrity sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q==
dependencies:
"@octokit/types" "^2.0.1"
"@octokit/plugin-request-log@^1.0.0":
version "1.0.4"
- resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85"
integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==
"@octokit/plugin-rest-endpoint-methods@2.4.0":
version "2.4.0"
- resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz#3288ecf5481f68c494dd0602fc15407a59faf61e"
integrity sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ==
dependencies:
"@octokit/types" "^2.0.1"
@@ -1760,7 +1192,7 @@
"@octokit/request-error@^1.0.2":
version "1.2.1"
- resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-1.2.1.tgz#ede0714c773f32347576c25649dc013ae6b31801"
integrity sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==
dependencies:
"@octokit/types" "^2.0.0"
@@ -1769,7 +1201,7 @@
"@octokit/request-error@^2.1.0":
version "2.1.0"
- resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677"
integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==
dependencies:
"@octokit/types" "^6.0.3"
@@ -1778,7 +1210,7 @@
"@octokit/request@^5.2.0":
version "5.6.3"
- resolved "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0"
integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==
dependencies:
"@octokit/endpoint" "^6.0.1"
@@ -1790,7 +1222,7 @@
"@octokit/rest@^16.28.4":
version "16.43.2"
- resolved "https://registry.npmjs.org/@octokit/rest/-/rest-16.43.2.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-16.43.2.tgz#c53426f1e1d1044dee967023e3279c50993dd91b"
integrity sha512-ngDBevLbBTFfrHZeiS7SAMAZ6ssuVmXuya+F/7RaVvlysgGa1JKJkKWY+jV6TCJYcW0OALfJ7nTIGXcBXzycfQ==
dependencies:
"@octokit/auth-token" "^2.4.0"
@@ -1812,110 +1244,111 @@
"@octokit/types@^2.0.0", "@octokit/types@^2.0.1":
version "2.16.2"
- resolved "https://registry.npmjs.org/@octokit/types/-/types-2.16.2.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/types/-/types-2.16.2.tgz#4c5f8da3c6fecf3da1811aef678fda03edac35d2"
integrity sha512-O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q==
dependencies:
"@types/node" ">= 8"
"@octokit/types@^6.0.3", "@octokit/types@^6.16.1":
version "6.41.0"
- resolved "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz"
+ resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.41.0.tgz#e58ef78d78596d2fb7df9c6259802464b5f84a04"
integrity sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==
dependencies:
"@octokit/openapi-types" "^12.11.0"
-"@parcel/bundler-default@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/bundler-default/-/bundler-default-2.9.3.tgz#df18c4b8390a03f83ac6c89da302f9edf48c8fe2"
- integrity sha512-JjJK8dq39/UO/MWI/4SCbB1t/qgpQRFnFDetAAAezQ8oN++b24u1fkMDa/xqQGjbuPmGeTds5zxGgYs7id7PYg==
- dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/graph" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+"@parcel/bundler-default@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/bundler-default/-/bundler-default-2.10.0.tgz#f5a7be4610fcc62491eae4ae5377537443a3a962"
+ integrity sha512-pn8McDCuS02/D9jSo9QUTIv3tBQLlJl0PD4FvrndORXLAIFGoQR7jO4lxTSJB/eVBXwqKNVIR7WpB4sjsnBFyg==
+ dependencies:
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/graph" "3.0.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
-"@parcel/cache@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/cache/-/cache-2.9.3.tgz#3ed40b79858fcb7c2c73c0ed4c9807cf2388c8b4"
- integrity sha512-Bj/H2uAJJSXtysG7E/x4EgTrE2hXmm7td/bc97K8M9N7+vQjxf7xb0ebgqe84ePVMkj4MVQSMEJkEucXVx4b0Q==
+"@parcel/cache@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/cache/-/cache-2.10.0.tgz#c2f2b6fb1933c6fb3c763774da4bd0ea04ec9de0"
+ integrity sha512-4FzZpMTAAEFE65+O+Cf7f5kLLWRCiA+04IJdDYyQG5YzW1WujKXzrbh8B6tSSlw712dsQ/cUqNW4O0Q3FFKrfw==
dependencies:
- "@parcel/fs" "2.9.3"
- "@parcel/logger" "2.9.3"
- "@parcel/utils" "2.9.3"
- lmdb "2.7.11"
+ "@parcel/fs" "2.10.0"
+ "@parcel/logger" "2.10.0"
+ "@parcel/utils" "2.10.0"
+ lmdb "2.8.5"
-"@parcel/codeframe@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/codeframe/-/codeframe-2.9.3.tgz#056cacaeedae9318878bdee8ffc584178b10ba42"
- integrity sha512-z7yTyD6h3dvduaFoHpNqur74/2yDWL++33rjQjIjCaXREBN6dKHoMGMizzo/i4vbiI1p9dDox2FIDEHCMQxqdA==
+"@parcel/codeframe@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/codeframe/-/codeframe-2.10.0.tgz#03854005a55fb84fa975bc6c335cdc5f61c0519d"
+ integrity sha512-hHp457tddXEWrOgHHaA/NtkOhOAyt4mpBUzhnPbWDONLu5xeg1mu1Jffiu2rlw5xajhphrUFDWyJW0/xq1815g==
dependencies:
chalk "^4.1.0"
-"@parcel/compressor-raw@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/compressor-raw/-/compressor-raw-2.9.3.tgz#89f5a3667d844b277ecc3811faf44fc2eeacc8d3"
- integrity sha512-jz3t4/ICMsHEqgiTmv5i1DJva2k5QRpZlBELVxfY+QElJTVe8edKJ0TiKcBxh2hx7sm4aUigGmp7JiqqHRRYmA==
- dependencies:
- "@parcel/plugin" "2.9.3"
-
-"@parcel/config-default@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/config-default/-/config-default-2.9.3.tgz#343172f9f91563ee6024a323eea9825ae89eedc3"
- integrity sha512-tqN5tF7QnVABDZAu76co5E6N8mA9n8bxiWdK4xYyINYFIEHgX172oRTqXTnhEMjlMrdmASxvnGlbaPBaVnrCTw==
- dependencies:
- "@parcel/bundler-default" "2.9.3"
- "@parcel/compressor-raw" "2.9.3"
- "@parcel/namer-default" "2.9.3"
- "@parcel/optimizer-css" "2.9.3"
- "@parcel/optimizer-htmlnano" "2.9.3"
- "@parcel/optimizer-image" "2.9.3"
- "@parcel/optimizer-svgo" "2.9.3"
- "@parcel/optimizer-swc" "2.9.3"
- "@parcel/packager-css" "2.9.3"
- "@parcel/packager-html" "2.9.3"
- "@parcel/packager-js" "2.9.3"
- "@parcel/packager-raw" "2.9.3"
- "@parcel/packager-svg" "2.9.3"
- "@parcel/reporter-dev-server" "2.9.3"
- "@parcel/resolver-default" "2.9.3"
- "@parcel/runtime-browser-hmr" "2.9.3"
- "@parcel/runtime-js" "2.9.3"
- "@parcel/runtime-react-refresh" "2.9.3"
- "@parcel/runtime-service-worker" "2.9.3"
- "@parcel/transformer-babel" "2.9.3"
- "@parcel/transformer-css" "2.9.3"
- "@parcel/transformer-html" "2.9.3"
- "@parcel/transformer-image" "2.9.3"
- "@parcel/transformer-js" "2.9.3"
- "@parcel/transformer-json" "2.9.3"
- "@parcel/transformer-postcss" "2.9.3"
- "@parcel/transformer-posthtml" "2.9.3"
- "@parcel/transformer-raw" "2.9.3"
- "@parcel/transformer-react-refresh-wrap" "2.9.3"
- "@parcel/transformer-svg" "2.9.3"
-
-"@parcel/core@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/core/-/core-2.9.3.tgz#91346afa57d7b731e7c961451462a51af940acf3"
- integrity sha512-4KlM1Zr/jpsqWuMXr2zmGsaOUs1zMMFh9vfCNKRZkptf+uk8I3sugHbNdo+F5B+4e2yMuOEb1zgAmvJLeuH6ww==
+"@parcel/compressor-raw@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/compressor-raw/-/compressor-raw-2.10.0.tgz#e782c73f1ccc256dffb6d9bd427d206c170e7980"
+ integrity sha512-TXjosh5+kNN4lxENeIZ/2ZFQKWXpXlOoHhJbW4cGPXBMHxm0eimVpnFpD8xbWxg7VCcWzbEaUTp20GQ153X+9A==
+ dependencies:
+ "@parcel/plugin" "2.10.0"
+
+"@parcel/config-default@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/config-default/-/config-default-2.10.0.tgz#689cd864c69560a42254804c4eabe7fdf5b872d2"
+ integrity sha512-7Ucd+KNEC08To2NrduC/yIHBN5ayedBoiuI5OVrDeKvyqUnI1S1HRqPF3DsrM8pC2PIdnwJgoOviRXwJemW28A==
+ dependencies:
+ "@parcel/bundler-default" "2.10.0"
+ "@parcel/compressor-raw" "2.10.0"
+ "@parcel/namer-default" "2.10.0"
+ "@parcel/optimizer-css" "2.10.0"
+ "@parcel/optimizer-htmlnano" "2.10.0"
+ "@parcel/optimizer-image" "2.10.0"
+ "@parcel/optimizer-svgo" "2.10.0"
+ "@parcel/optimizer-swc" "2.10.0"
+ "@parcel/packager-css" "2.10.0"
+ "@parcel/packager-html" "2.10.0"
+ "@parcel/packager-js" "2.10.0"
+ "@parcel/packager-raw" "2.10.0"
+ "@parcel/packager-svg" "2.10.0"
+ "@parcel/packager-wasm" "2.10.0"
+ "@parcel/reporter-dev-server" "2.10.0"
+ "@parcel/resolver-default" "2.10.0"
+ "@parcel/runtime-browser-hmr" "2.10.0"
+ "@parcel/runtime-js" "2.10.0"
+ "@parcel/runtime-react-refresh" "2.10.0"
+ "@parcel/runtime-service-worker" "2.10.0"
+ "@parcel/transformer-babel" "2.10.0"
+ "@parcel/transformer-css" "2.10.0"
+ "@parcel/transformer-html" "2.10.0"
+ "@parcel/transformer-image" "2.10.0"
+ "@parcel/transformer-js" "2.10.0"
+ "@parcel/transformer-json" "2.10.0"
+ "@parcel/transformer-postcss" "2.10.0"
+ "@parcel/transformer-posthtml" "2.10.0"
+ "@parcel/transformer-raw" "2.10.0"
+ "@parcel/transformer-react-refresh-wrap" "2.10.0"
+ "@parcel/transformer-svg" "2.10.0"
+
+"@parcel/core@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/core/-/core-2.10.0.tgz#ee262df3d51f64ed3f5a121e16b3d71cf62fe957"
+ integrity sha512-8jvLhLC2503HIBphJe/C1qL3bfiTSw6WgIDH0e7B8EL0v7v2JYnlTZ8o9myf+bMAxzwNLiZ2uEDCri9EWbi4tQ==
dependencies:
"@mischnic/json-sourcemap" "^0.1.0"
- "@parcel/cache" "2.9.3"
- "@parcel/diagnostic" "2.9.3"
- "@parcel/events" "2.9.3"
- "@parcel/fs" "2.9.3"
- "@parcel/graph" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/logger" "2.9.3"
- "@parcel/package-manager" "2.9.3"
- "@parcel/plugin" "2.9.3"
- "@parcel/profiler" "2.9.3"
+ "@parcel/cache" "2.10.0"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/events" "2.10.0"
+ "@parcel/fs" "2.10.0"
+ "@parcel/graph" "3.0.0"
+ "@parcel/logger" "2.10.0"
+ "@parcel/package-manager" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/profiler" "2.10.0"
+ "@parcel/rust" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
- "@parcel/workers" "2.9.3"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
+ "@parcel/workers" "2.10.0"
abortcontroller-polyfill "^1.1.9"
base-x "^3.0.8"
browserslist "^4.6.6"
@@ -1927,304 +1360,307 @@
nullthrows "^1.1.1"
semver "^7.5.2"
-"@parcel/diagnostic@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/diagnostic/-/diagnostic-2.9.3.tgz#23befe6c3b78440fe1e3635086e637da1529b4db"
- integrity sha512-6jxBdyB3D7gP4iE66ghUGntWt2v64E6EbD4AetZk+hNJpgudOOPsKTovcMi/i7I4V0qD7WXSF4tvkZUoac0jwA==
+"@parcel/diagnostic@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/diagnostic/-/diagnostic-2.10.0.tgz#3407c2d8ffbc7e543e7e292493400ed47c8b8faf"
+ integrity sha512-ibr+sUZLc0MW75b+nThOa6YEi9QXTNYbUNCo067mtMIfhKNYTx24DaiGzDWgy1Yv49eucBaQ4u7gFI2Qa98uIA==
dependencies:
"@mischnic/json-sourcemap" "^0.1.0"
nullthrows "^1.1.1"
-"@parcel/events@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/events/-/events-2.9.3.tgz#b71253384c21f53fd3cced983cd2b287f7330e89"
- integrity sha512-K0Scx+Bx9f9p1vuShMzNwIgiaZUkxEnexaKYHYemJrM7pMAqxIuIqhnvwurRCsZOVLUJPDDNJ626cWTc5vIq+A==
-
-"@parcel/fs-search@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/fs-search/-/fs-search-2.9.3.tgz#4993d68478b15db404149a271bb0084382dd2040"
- integrity sha512-nsNz3bsOpwS+jphcd+XjZL3F3PDq9lik0O8HPm5f6LYkqKWT+u/kgQzA8OkAHCR3q96LGiHxUywHPEBc27vI4Q==
+"@parcel/events@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/events/-/events-2.10.0.tgz#4a2c693c7154b4b6a8913d25ed9f9684b10c324b"
+ integrity sha512-mhykJBnP3BPMI6A9hLZmTtmNHZuE+HGzsF6vzmA2YBuU3/BGlQUmxdObsmwQ1O24eq0EfJVwTM+R/bdu+/nFrA==
-"@parcel/fs@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/fs/-/fs-2.9.3.tgz#39abd0f71561efccaac3ba6e4b8227705b73e906"
- integrity sha512-/PrRKgCRw22G7rNPSpgN3Q+i2nIkZWuvIOAdMG4KWXC4XLp8C9jarNaWd5QEQ75amjhQSl3oUzABzkdCtkKrgg==
+"@parcel/fs@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/fs/-/fs-2.10.0.tgz#f1884249e090f40a623784870da82f5d1008c165"
+ integrity sha512-so39KdZ4o7tDekeuuQfQdbfTUvldUtzvIsuUtJMqxVOVJRZr9VjieR9GbeFhqRmi9fM5oYdzQn4lbduKdAtANA==
dependencies:
- "@parcel/fs-search" "2.9.3"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/rust" "2.10.0"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
"@parcel/watcher" "^2.0.7"
- "@parcel/workers" "2.9.3"
+ "@parcel/workers" "2.10.0"
-"@parcel/graph@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/graph/-/graph-2.9.3.tgz#38f6c403ff4a2741390708be510bbf328d311a63"
- integrity sha512-3LmRJmF8+OprAr6zJT3X2s8WAhLKkrhi6RsFlMWHifGU5ED1PFcJWFbOwJvSjcAhMQJP0fErcFIK1Ludv3Vm3g==
+"@parcel/graph@3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@parcel/graph/-/graph-3.0.0.tgz#0e7838e196912f011c37564a9fea40772a9d7c64"
+ integrity sha512-8Lussud6gWRM3Mysu+veBRsBdSlWgkM8y7PvF8AiRwEY2eiVxZ3Rgh8o9KJau3B8R8q+lyCaUElYpbnUT6Bkiw==
dependencies:
nullthrows "^1.1.1"
-"@parcel/hash@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/hash/-/hash-2.9.3.tgz#bc7727939b1211b0a5d67fd00a9a55b8393c644a"
- integrity sha512-qlH5B85XLzVAeijgKPjm1gQu35LoRYX/8igsjnN8vOlbc3O8BYAUIutU58fbHbtE8MJPbxQQUw7tkTjeoujcQQ==
- dependencies:
- xxhash-wasm "^0.4.2"
-
-"@parcel/logger@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/logger/-/logger-2.9.3.tgz#04362704d7af93d213de6587ff71a1a6d5f714ac"
- integrity sha512-5FNBszcV6ilGFcijEOvoNVG6IUJGsnMiaEnGQs7Fvc1dktTjEddnoQbIYhcSZL63wEmzBZOgkT5yDMajJ/41jw==
+"@parcel/logger@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/logger/-/logger-2.10.0.tgz#79fd4bf8b272294dfd0c67323fc7a8cff238685b"
+ integrity sha512-rDa48czGBZA313scvSEkuHSOQiGdoYLaWqInZBKtl0zke3qrgTFNG4b173H6IFdNq5KmKjafBxaV5jG87i4Gww==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/events" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/events" "2.10.0"
-"@parcel/markdown-ansi@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/markdown-ansi/-/markdown-ansi-2.9.3.tgz#b4de64eb252ce13e27f6e24e420b607db51097a5"
- integrity sha512-/Q4X8F2aN8UNjAJrQ5NfK2OmZf6shry9DqetUSEndQ0fHonk78WKt6LT0zSKEBEW/bB/bXk6mNMsCup6L8ibjQ==
+"@parcel/markdown-ansi@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/markdown-ansi/-/markdown-ansi-2.10.0.tgz#fb65d8cdcc21251c7f1e39724948278d1127c406"
+ integrity sha512-fuOuFglNANegE2nqVURwOJ/HzKM28O0hqy120Gl0NTbCAFbG34WCFxfkmVio8fondD4NcZcDj5GGv5P5TWcTIg==
dependencies:
chalk "^4.1.0"
-"@parcel/namer-default@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/namer-default/-/namer-default-2.9.3.tgz#6dca34cbd26b29f0fd200627848c8026d58052e1"
- integrity sha512-1ynFEcap48/Ngzwwn318eLYpLUwijuuZoXQPCsEQ21OOIOtfhFQJaPwXTsw6kRitshKq76P2aafE0BioGSqxcA==
+"@parcel/namer-default@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/namer-default/-/namer-default-2.10.0.tgz#4be6649b0e5e7acf1f3ede075ef029edeb1ac64a"
+ integrity sha512-N1IF6A8Y2fYz0BteU9IkhPQGezLA3cKkoSxoIOTiUf2LZPpUIuCGEAB1IgaUVNdAeMVsGw3UrdEYZg4xdMovEg==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
nullthrows "^1.1.1"
-"@parcel/node-resolver-core@3.0.3":
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/@parcel/node-resolver-core/-/node-resolver-core-3.0.3.tgz#cc890e66695b6d28745415106565499af9cb3c47"
- integrity sha512-AjxNcZVHHJoNT/A99PKIdFtwvoze8PAiC3yz8E/dRggrDIOboUEodeQYV5Aq++aK76uz/iOP0tST2T8A5rhb1A==
+"@parcel/node-resolver-core@3.1.0":
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/@parcel/node-resolver-core/-/node-resolver-core-3.1.0.tgz#28e83952a8bf39c4529b06bfb59d92cc0a3c2b2f"
+ integrity sha512-0KBdWIXCpnDzjoZgc1qHhgxtNe5CZ4r4+Iht+LExacXwG1A1O5qKLQE1bBAgcjqkgv1iglVuMx0kVe9G8oob8A==
dependencies:
"@mischnic/json-sourcemap" "^0.1.0"
- "@parcel/diagnostic" "2.9.3"
- "@parcel/fs" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/fs" "2.10.0"
+ "@parcel/rust" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
semver "^7.5.2"
-"@parcel/optimizer-css@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/optimizer-css/-/optimizer-css-2.9.3.tgz#76f2f77adde9dee7498611f6be3078d0bde0396d"
- integrity sha512-RK1QwcSdWDNUsFvuLy0hgnYKtPQebzCb0vPPzqs6LhL+vqUu9utOyRycGaQffHCkHVQP6zGlN+KFssd7YtFGhA==
+"@parcel/optimizer-css@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/optimizer-css/-/optimizer-css-2.10.0.tgz#7502237ed0b3a7086f72102d92864dcf2f679857"
+ integrity sha512-D7hFYjJpudlbSgMlzwSbSguLehwGe4vJrQ4s83jj7z0UlHd74Vir9fd9LQTPuUErgs2SOQIPxFwLGqR6Hi+mOg==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
+ "@parcel/utils" "2.10.0"
browserslist "^4.6.6"
lightningcss "^1.16.1"
nullthrows "^1.1.1"
-"@parcel/optimizer-htmlnano@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.9.3.tgz#d5953a98892e4ba437b6e2022ad85dadacb0c84f"
- integrity sha512-9g/KBck3c6DokmJfvJ5zpHFBiCSolaGrcsTGx8C3YPdCTVTI9P1TDCwUxvAr4LjpcIRSa82wlLCI+nF6sSgxKA==
+"@parcel/optimizer-htmlnano@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.10.0.tgz#36f4a34ba59d916f4fb1173538b7c7549bc51188"
+ integrity sha512-uYmluYpyyVumY7d/aHkGnFVLzOHoGqzVF9os/PkqVOnGEQ3qQibO3Hl9neTtm2GEUgeOfq1lrXLEfpW/k3qG1w==
dependencies:
- "@parcel/plugin" "2.9.3"
+ "@parcel/plugin" "2.10.0"
htmlnano "^2.0.0"
nullthrows "^1.1.1"
posthtml "^0.16.5"
svgo "^2.4.0"
-"@parcel/optimizer-image@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/optimizer-image/-/optimizer-image-2.9.3.tgz#80d9be617bf2c695960ff3c5644c87c1775e1f3a"
- integrity sha512-530YzthE7kmecnNhPbkAK+26yQNt69pfJrgE0Ev0BZaM1Wu2+33nki7o8qvkTkikhPrurEJLGIXt1qKmbKvCbA==
+"@parcel/optimizer-image@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/optimizer-image/-/optimizer-image-2.10.0.tgz#8a08898d1fc591d3bb19ca21fd17f57124b12b49"
+ integrity sha512-uR/nd3kRxiQuPxB0nP5WLlydTUwRHcpFPAY0iV12cyjCQs+MaZHrhwoDO8kWVaT7jN7WXKYcSIHeP1kvR0HEQw==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
- "@parcel/workers" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
+ "@parcel/utils" "2.10.0"
+ "@parcel/workers" "2.10.0"
-"@parcel/optimizer-svgo@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/optimizer-svgo/-/optimizer-svgo-2.9.3.tgz#e4d90f6bc1c8eeb39193759631db1bb86943bf4b"
- integrity sha512-ytQS0wY5JJhWU4mL0wfhYDUuHcfuw+Gy2+JcnTm1t1AZXHlOTbU6EzRWNqBShsgXjvdrQQXizAe3B6GFFlFJVQ==
+"@parcel/optimizer-svgo@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/optimizer-svgo/-/optimizer-svgo-2.10.0.tgz#a80782132ea3961725e5ce58affb7f76c1163730"
+ integrity sha512-2IXClEpjlafidKAiOh/+amdDWOHGtA4Sil/3flmhLkjNFh7z2bGTYodO5xvC3Umw6N11fPNL1Wch1jn54fMO1g==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
svgo "^2.4.0"
-"@parcel/optimizer-swc@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/optimizer-swc/-/optimizer-swc-2.9.3.tgz#794a909864f76a366331f023e38082b19213c016"
- integrity sha512-GQINNeqtdpL1ombq/Cpwi6IBk02wKJ/JJbYbyfHtk8lxlq13soenpwOlzJ5T9D2fdG+FUhai9NxpN5Ss4lNoAg==
+"@parcel/optimizer-swc@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/optimizer-swc/-/optimizer-swc-2.10.0.tgz#46d77c5183627291acc297dd33e466abb2aae5bb"
+ integrity sha512-yq17TG6uyzIbiouK57AngJa6rVwfJ8hPzgc2lqZ9LJxDX07t/5Z+k/+aq4Izy+7kQNR8kH+4asWaMXReSsXmNQ==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
+ "@parcel/utils" "2.10.0"
"@swc/core" "^1.3.36"
nullthrows "^1.1.1"
-"@parcel/package-manager@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/package-manager/-/package-manager-2.9.3.tgz#e8522671ba6c4f0a07b518957d22a038a7698b24"
- integrity sha512-NH6omcNTEupDmW4Lm1e4NUYBjdqkURxgZ4CNESESInHJe6tblVhNB8Rpr1ar7zDar7cly9ILr8P6N3Ei7bTEjg==
- dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/fs" "2.9.3"
- "@parcel/logger" "2.9.3"
- "@parcel/node-resolver-core" "3.0.3"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
- "@parcel/workers" "2.9.3"
+"@parcel/package-manager@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/package-manager/-/package-manager-2.10.0.tgz#be4170f832ab61dd3963de483c951baac0a8033f"
+ integrity sha512-BBUhwgX2Rz92SqGCyYp5Du4UEzm/bjrSSoeLtuRRevWKTVXhgHGbqcAlZmICoxb1lZGpn8x+pEivWd3w+5M7iA==
+ dependencies:
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/fs" "2.10.0"
+ "@parcel/logger" "2.10.0"
+ "@parcel/node-resolver-core" "3.1.0"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
+ "@parcel/workers" "2.10.0"
semver "^7.5.2"
-"@parcel/packager-css@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/packager-css/-/packager-css-2.9.3.tgz#a39a733b6e25e4f982d8b1af8bfc5d727475def0"
- integrity sha512-mePiWiYZOULY6e1RdAIJyRoYqXqGci0srOaVZYaP7mnrzvJgA63kaZFFsDiEWghunQpMUuUjM2x/vQVHzxmhKQ==
+"@parcel/packager-css@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-css/-/packager-css-2.10.0.tgz#212cb2b96084304e9597f4a07278dc9e4b9e65de"
+ integrity sha512-BY1PoPPOngiJ6gFD+mUQ6YZvwDxlth8oCU9328T8kFwhmA4qL6pfIxNPI1I53Ig5f38tf1nhFkHACDCbs4MxaQ==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
-"@parcel/packager-html@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/packager-html/-/packager-html-2.9.3.tgz#53657c13a25e744415ece2990902a2eb6434adbe"
- integrity sha512-0Ex+O0EaZf9APNERRNGgGto02hFJ6f5RQEvRWBK55WAV1rXeU+kpjC0c0qZvnUaUtXfpWMsEBkevJCwDkUMeMg==
+"@parcel/packager-html@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-html/-/packager-html-2.10.0.tgz#2faebaa136e498fce605300a284d7078f95bda5e"
+ integrity sha512-EtxQwuQXQ6zrPRG9/pIdIcvuDCzBEsAnjN9kZ+XuxEYGoReX7weN4oALA6gCnw3w7U4cq6+VR1R08F6Cd8T2MQ==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
posthtml "^0.16.5"
-"@parcel/packager-js@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/packager-js/-/packager-js-2.9.3.tgz#ef8d3dde67c4da3dd83374b8d13aba9a9f3a7444"
- integrity sha512-V5xwkoE3zQ3R+WqAWhA1KGQ791FvJeW6KonOlMI1q76Djjgox68hhObqcLu66AmYNhR2R/wUpkP18hP2z8dSFw==
+"@parcel/packager-js@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-js/-/packager-js-2.10.0.tgz#3f47411a3780090941cb0bec7525d019987105d8"
+ integrity sha512-9r1pv8GScZzgGempexikym9d1aehTAp0DxK71LUxBT0os9Br+nJOtV4wmJWnHapt4r108d75DcgtytdVM5nuqA==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
globals "^13.2.0"
nullthrows "^1.1.1"
-"@parcel/packager-raw@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/packager-raw/-/packager-raw-2.9.3.tgz#288335d1d1a928796dd07f13911acd2c3aefab8a"
- integrity sha512-oPQTNoYanQ2DdJyL61uPYK2py83rKOT8YVh2QWAx0zsSli6Kiy64U3+xOCYWgDVCrHw9+9NpQMuAdSiFg4cq8g==
+"@parcel/packager-raw@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-raw/-/packager-raw-2.10.0.tgz#ad3e83c50517a050d47bea97db3104c7ea6bf5cd"
+ integrity sha512-fk1XGqMP38uyWC1Jqg8/Mp1x0dLxfd9GnmLHQCUZ0OSQLwF9Nqpow1WR4tC8juxYNK5haGqKyL9X5pVN4KLNYQ==
dependencies:
- "@parcel/plugin" "2.9.3"
+ "@parcel/plugin" "2.10.0"
-"@parcel/packager-svg@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/packager-svg/-/packager-svg-2.9.3.tgz#16ae31fce0656bc8d9e9e1d5334925ed938c66d8"
- integrity sha512-p/Ya6UO9DAkaCUFxfFGyeHZDp9YPAlpdnh1OChuwqSFOXFjjeXuoK4KLT+ZRalVBo2Jo8xF70oKMZw4MVvaL7Q==
+"@parcel/packager-svg@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-svg/-/packager-svg-2.10.0.tgz#2f4416c91b15b94149b6cdd495ebe0c87053ede8"
+ integrity sha512-+vXXZwENinz/N2m04tH5BDSc8Zv7XNd/fsXZ3BAcEWmYpiTHBYMgbIy+fsdQb1tpFwku7CezthHFDsXejyNtrg==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
posthtml "^0.16.4"
"@parcel/packager-ts@^2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/packager-ts/-/packager-ts-2.9.3.tgz#3a17de9a20ba6dbf964a7d007d9244a47eeee034"
- integrity sha512-Vd9dm1FqaFDw/kWCh95zgGS08HvIpSLg5Aa+AIhFiM0G+kpRSItcBSNJVwC7JKmLk1rmQhmQKoCKX26+nvyAzA==
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-ts/-/packager-ts-2.10.0.tgz#546d230708d1e8c4210c93eab40213aba3f42253"
+ integrity sha512-N6P7wvg7jdqXbJIlu6beN6FGb3a9t9CUPC3fk0H/DgKqNliP48QCV8vLMynpI7mtPF3YzO9tM1fmNgnLkLMAyg==
dependencies:
- "@parcel/plugin" "2.9.3"
+ "@parcel/plugin" "2.10.0"
-"@parcel/plugin@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/plugin/-/plugin-2.9.3.tgz#90e9a9482fa27735494372f5643db01abcf3fdb6"
- integrity sha512-qN85Gqr2GMuxX1dT1mnuO9hOcvlEv1lrYrCxn7CJN2nUhbwcfG+LEvcrCzCOJ6XtIHm+ZBV9h9p7FfoPLvpw+g==
+"@parcel/packager-wasm@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/packager-wasm/-/packager-wasm-2.10.0.tgz#d09059cabb42ebf50eecd363db0b7472ba41d04b"
+ integrity sha512-G/OsV9Xpyu1D/mTwazw4FkWlFotcFMaRmejmc6km3+qjaFxMubRBLCNMCvGw2lDIhA40qz/DpZS/kblB/FGSPA==
dependencies:
- "@parcel/types" "2.9.3"
+ "@parcel/plugin" "2.10.0"
-"@parcel/profiler@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/profiler/-/profiler-2.9.3.tgz#6575ed6dc4275c0161dce74bd719961236673ce1"
- integrity sha512-pyHc9lw8VZDfgZoeZWZU9J0CVEv1Zw9O5+e0DJPDPHuXJYr72ZAOhbljtU3owWKAeW+++Q2AZWkbUGEOjI/e6g==
+"@parcel/plugin@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/plugin/-/plugin-2.10.0.tgz#03a963f713fa76d76469955e3a693e7c3b607138"
+ integrity sha512-FaWchkYJxLOohNNb3ah9R/9gckew+iGOzcGZ1bUtLGc/Dwz1mTVeaAanqOjlZ6C5FCe9lMctkH7h0eQsJ0mlVQ==
+ dependencies:
+ "@parcel/types" "2.10.0"
+
+"@parcel/profiler@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/profiler/-/profiler-2.10.0.tgz#839084002fa4323e71f65de604f7863e43a59524"
+ integrity sha512-SGkslseYA5TQOb8Z7gepi7YiIv3uH4BYAM9nwduMZrRZENcICbgTh1Pb+dp10y+6k9hFFH748eHtxJqSWARDBw==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/events" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/events" "2.10.0"
chrome-trace-event "^1.0.2"
-"@parcel/reporter-cli@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/reporter-cli/-/reporter-cli-2.9.3.tgz#c17e159e9b0099f7767ccfcc9cc67d28c0592763"
- integrity sha512-pZiEvQpuXFuQBafMHxkDmwH8CnnK9sWHwa3bSbsnt385aUahtE8dpY0LKt+K1zfB6degKoczN6aWVj9WycQuZQ==
+"@parcel/reporter-cli@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/reporter-cli/-/reporter-cli-2.10.0.tgz#3c26779362a296c3e1bad91986c0907687376fef"
+ integrity sha512-+OtZUdmHFgNY8+w3/U7dEZKMTtIFh7EiFw5VelKIGdvJrZNa9j7vbFuZziK6zUW2uopCk4qsDinn6Rfi7M16KA==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
chalk "^4.1.0"
term-size "^2.2.1"
-"@parcel/reporter-dev-server@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/reporter-dev-server/-/reporter-dev-server-2.9.3.tgz#5871d19138a1a282fa8b375d4160de7f30138f3d"
- integrity sha512-s6eboxdLEtRSvG52xi9IiNbcPKC0XMVmvTckieue2EqGDbDcaHQoHmmwkk0rNq0/Z/UxelGcQXoIYC/0xq3ykQ==
+"@parcel/reporter-dev-server@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/reporter-dev-server/-/reporter-dev-server-2.10.0.tgz#428b4784773c05c9ccd9a5849ce2f15d812165d7"
+ integrity sha512-1dMkVgbfx+AxRVjzX5on3LOY8Vhsr4wuwQdLhmN1kAveTNWUYBPSVzIt5ZPVj3Cmpwpaonj7tHkZ2YujaNWHQg==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
-"@parcel/reporter-tracer@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/reporter-tracer/-/reporter-tracer-2.9.3.tgz#6ab343f5fdaeda7e6724fbaa153ab2945595e735"
- integrity sha512-9cXpKWk0m6d6d+4+TlAdOe8XIPaFEIKGWMWG+5SFAQE08u3olet4PSvd49F4+ZZo5ftRE7YI3j6xNbXvJT8KGw==
+"@parcel/reporter-tracer@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/reporter-tracer/-/reporter-tracer-2.10.0.tgz#9650d2a04e0c78c516fca59ec75e9ab895b07504"
+ integrity sha512-mlxF3ozH6Kys4hewG1Bze1q8wHJL1ue276Qek9xPJly8ed08wU7rPGZF0vz8fJfKT8vx+nGvnKFXYiHjF+w6bg==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
chrome-trace-event "^1.0.3"
nullthrows "^1.1.1"
-"@parcel/resolver-default@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/resolver-default/-/resolver-default-2.9.3.tgz#9029e8be0efae586834243e8a8c607f739678040"
- integrity sha512-8ESJk1COKvDzkmOnppNXoDamNMlYVIvrKc2RuFPmp8nKVj47R6NwMgvwxEaatyPzvkmyTpq5RvG9I3HFc+r4Cw==
+"@parcel/resolver-default@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/resolver-default/-/resolver-default-2.10.0.tgz#47a55bf6d7552cf765b54fcd52a3e024a7037da6"
+ integrity sha512-KWtKrmjf/CAyZkk+SSwHhMMwN6cjJJRtUSLCvwbrlevd0onRl3erUdVYrJrNB5X+N8ylCO6Vb0wCyMegOo/OwQ==
dependencies:
- "@parcel/node-resolver-core" "3.0.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/node-resolver-core" "3.1.0"
+ "@parcel/plugin" "2.10.0"
-"@parcel/runtime-browser-hmr@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.9.3.tgz#9db567aaae92c9b2b8abd26ea25ec2b549eebb54"
- integrity sha512-EgiDIDrVAWpz7bOzWXqVinQkaFjLwT34wsonpXAbuI7f7r00d52vNAQC9AMu+pTijA3gyKoJ+Q4NWPMZf7ACDA==
+"@parcel/runtime-browser-hmr@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.10.0.tgz#dccfcef66af867100c3ad7b155aeaf7363df64e2"
+ integrity sha512-x22HHUAFuhycE/NGowkEaR7zeZsp8PcViHkmuNkSvLboe8PJvq4BFpnd+RUj+o8EjN31p+8K2pFqS1hYAmtdwg==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
-"@parcel/runtime-js@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/runtime-js/-/runtime-js-2.9.3.tgz#481c4f26705e684809bef097bf2cb75052c2982c"
- integrity sha512-EvIy+qXcKnB5qxHhe96zmJpSAViNVXHfQI5RSdZ2a7CPwORwhTI+zPNT9sb7xb/WwFw/WuTTgzT40b41DceU6Q==
+"@parcel/runtime-js@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/runtime-js/-/runtime-js-2.10.0.tgz#3c1cb3b5e8b3e6b6015e1b67a7b5d493eb3756e5"
+ integrity sha512-AyDY+tQ9jiip6YsDGbaw7Azj60qG4fWNniUMIRMsywKQZOySLpfMNGHUcwDkV8j1NTve87Cwr2EzMOMnQHaUsQ==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
-"@parcel/runtime-react-refresh@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.9.3.tgz#8d82cd4fbcdc228d439bae232eb3c65d36e62872"
- integrity sha512-XBgryZQIyCmi6JwEfMUCmINB3l1TpTp9a2iFxmYNpzHlqj4Ve0saKaqWOVRLvC945ZovWIBzcSW2IYqWKGtbAA==
+"@parcel/runtime-react-refresh@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.10.0.tgz#4b11085f5a69065de796e1cff239237ff78a55ad"
+ integrity sha512-hmiK9i6iitdjfcCaI0888+pecQHA0dzf6wMKnwtJsYQxCv2TrwXPsSOMHjkKr1K3ALXi8vlauG4K0Rm7c+vfdw==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
react-error-overlay "6.0.9"
react-refresh "^0.9.0"
-"@parcel/runtime-service-worker@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/runtime-service-worker/-/runtime-service-worker-2.9.3.tgz#93dba721477c84f44458a42b28f75c875f56974d"
- integrity sha512-qLJLqv1mMdWL7gyh8aKBFFAuEiJkhUUgLKpdn6eSfH/R7kTtb76WnOwqUrhvEI9bZFUM/8Pa1bzJnPpqSOM+Sw==
+"@parcel/runtime-service-worker@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/runtime-service-worker/-/runtime-service-worker-2.10.0.tgz#6c10e3b24a3d5d4d565439547d8eb50acf2aae05"
+ integrity sha512-vi84PwAsyPI1P/5FTt1uNKjH1NGizQRdS4CmjBMz+VBT6GVuXMgZ9iQy3OYC8MsiyHlyG7mScftI74RWqw1DDg==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
+"@parcel/rust@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/rust/-/rust-2.10.0.tgz#fc930715a3200bb05a58007fc11cb29f444382c9"
+ integrity sha512-9J7riqPI8mVlFSDphK9kVUH8nFQgeMbO/95Ycf4vaEOVE1ICQo1h18WHAy2DndmL1uSd/UTimirrP6yLt/I3KA==
+
"@parcel/source-map@^2.1.1":
version "2.1.1"
resolved "https://registry.yarnpkg.com/@parcel/source-map/-/source-map-2.1.1.tgz#fb193b82dba6dd62cc7a76b326f57bb35000a782"
@@ -2232,41 +1668,41 @@
dependencies:
detect-libc "^1.0.3"
-"@parcel/transformer-babel@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-babel/-/transformer-babel-2.9.3.tgz#3527388048c606c5ef5fb909959e63be2416e87d"
- integrity sha512-pURtEsnsp3h6tOBDuzh9wRvVtw4PgIlqwAArIWdrG7iwqOUYv9D8ME4+ePWEu7MQWAp58hv9pTJtqWv4T+Sq8A==
+"@parcel/transformer-babel@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-babel/-/transformer-babel-2.10.0.tgz#328573dd90948f3ec04646731e523cab9cde3b4e"
+ integrity sha512-XwlzHt7WPfueFlwl/bXItopgZ6ILSPzl5OmPeytHrM2TanymeLjJ1y3vxwY1C1BhNlrTwPHcf9U8aiuVSpE8RQ==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
+ "@parcel/utils" "2.10.0"
browserslist "^4.6.6"
json5 "^2.2.0"
nullthrows "^1.1.1"
semver "^7.5.2"
-"@parcel/transformer-css@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-css/-/transformer-css-2.9.3.tgz#2ed58f74983d2d7fc224a6df5d17b72eb38764e4"
- integrity sha512-duWMdbEBBPjg3fQdXF16iWIdThetDZvCs2TpUD7xOlXH6kR0V5BJy8ONFT15u1RCqIV9hSNGaS3v3I9YRNY5zQ==
+"@parcel/transformer-css@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-css/-/transformer-css-2.10.0.tgz#f23b2ffd901a02b189571d6ead752b7c1f3ec871"
+ integrity sha512-hITticpUE/qilpsTc7HQP04qhXwyUSKGZKgcFnvf8+BJO/LoclbVK1nzbR61eYl5Jhj1XB67p3tCt5fSvPhOsQ==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
+ "@parcel/utils" "2.10.0"
browserslist "^4.6.6"
lightningcss "^1.16.1"
nullthrows "^1.1.1"
-"@parcel/transformer-html@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-html/-/transformer-html-2.9.3.tgz#f8b3daa4b633d81dc37772051b4e075940fa8351"
- integrity sha512-0NU4omcHzFXA1seqftAXA2KNZaMByoKaNdXnLgBgtCGDiYvOcL+6xGHgY6pw9LvOh5um10KI5TxSIMILoI7VtA==
+"@parcel/transformer-html@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-html/-/transformer-html-2.10.0.tgz#de4d95c2124656b226620a49b7ea264c2cf19239"
+ integrity sha512-rc8YKjB+bE7yGHOf674CSzW8ii+m5caBo4akdRIUdhEHJS4FnSwxYIZlMcfV9pZM4Tj5PFMZyrlAHad6YrO8aA==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
nullthrows "^1.1.1"
posthtml "^0.16.5"
posthtml-parser "^0.10.1"
@@ -2274,91 +1710,92 @@
semver "^7.5.2"
srcset "4"
-"@parcel/transformer-image@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-image/-/transformer-image-2.9.3.tgz#dd380b949e923662d3c7ced48dbe9d5b919a94e7"
- integrity sha512-7CEe35RaPadQzLIuxzTtIxnItvOoy46hcbXtOdDt6lmVa4omuOygZYRIya2lsGIP4JHvAaALMb5nt99a1uTwJg==
+"@parcel/transformer-image@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-image/-/transformer-image-2.10.0.tgz#d7502a8139aea0997d00982151115e0dde422e58"
+ integrity sha512-qbNyAJvzqdO/OnHhCOoPAZN5aBD/xphyXvDNI0Fb3UPEr5MQtAnzv2lS1I63s4rKpphBntWj7nEIAio6s7c5bw==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
- "@parcel/workers" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
+ "@parcel/workers" "2.10.0"
nullthrows "^1.1.1"
-"@parcel/transformer-js@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-js/-/transformer-js-2.9.3.tgz#4b72022da9bf5aa743a89961c4d61b681bf5e7b9"
- integrity sha512-Z2MVVg5FYcPOfxlUwxqb5l9yjTMEqE3KI3zq2MBRUme6AV07KxLmCDF23b6glzZlHWQUE8MXzYCTAkOPCcPz+Q==
+"@parcel/transformer-js@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-js/-/transformer-js-2.10.0.tgz#142a70b77466e5359774d21939da06d5f579bb5e"
+ integrity sha512-39ZNnje8dlmME1ipjFyAFHyhHaGCwZZpXYN9SCTl/+AnjZLamnmVFkesgBbrRSBRQixRG1VwCvrWsjLLeLkTUg==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/utils" "2.9.3"
- "@parcel/workers" "2.9.3"
+ "@parcel/utils" "2.10.0"
+ "@parcel/workers" "2.10.0"
"@swc/helpers" "^0.5.0"
browserslist "^4.6.6"
nullthrows "^1.1.1"
regenerator-runtime "^0.13.7"
semver "^7.5.2"
-"@parcel/transformer-json@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-json/-/transformer-json-2.9.3.tgz#cd16bb657179f2978c7ca49c771555458cdbc307"
- integrity sha512-yNL27dbOLhkkrjaQjiQ7Im9VOxmkfuuSNSmS0rA3gEjVcm07SLKRzWkAaPnyx44Lb6bzyOTWwVrb9aMmxgADpA==
+"@parcel/transformer-json@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-json/-/transformer-json-2.10.0.tgz#77a684a2e631c3058fd8d70d4b05aaf704a6b928"
+ integrity sha512-4G6ZIt7IYu1l3BlsL55Hi3869X6KHE0CHybWf364h5ZUmzo3Xpc5i7cziQX+IhWDo1qn1jiziOPGY85LXlo8ug==
dependencies:
- "@parcel/plugin" "2.9.3"
+ "@parcel/plugin" "2.10.0"
json5 "^2.2.0"
-"@parcel/transformer-postcss@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-postcss/-/transformer-postcss-2.9.3.tgz#0358facea2ea882266508e18a79390590ee812ab"
- integrity sha512-HoDvPqKzhpmvMmHqQhDnt8F1vH61m6plpGiYaYnYv2Om4HHi5ZIq9bO+9QLBnTKfaZ7ndYSefTKOxTYElg7wyw==
+"@parcel/transformer-postcss@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-postcss/-/transformer-postcss-2.10.0.tgz#b38a4892e14cf82a5324a01ff2d063207b1a383e"
+ integrity sha512-Xhz+MHr9Q31d3u3hsBOtmFGEQx7FsNbTumGpqIqaGkDDq4IIMKbEwyrpkmf7/02kyxcbwr6uaBqnMHm55j10sQ==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
+ "@parcel/utils" "2.10.0"
clone "^2.1.1"
nullthrows "^1.1.1"
postcss-value-parser "^4.2.0"
semver "^7.5.2"
-"@parcel/transformer-posthtml@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-posthtml/-/transformer-posthtml-2.9.3.tgz#dcffc9f0d667b65f9fe701753334b48b65b958d8"
- integrity sha512-2fQGgrzRmaqbWf3y2/T6xhqrNjzqMMKksqJzvc8TMfK6f2kg3Ddjv158eaSW2JdkV39aY7tvAOn5f1uzo74BMA==
+"@parcel/transformer-posthtml@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-posthtml/-/transformer-posthtml-2.10.0.tgz#accca3feb46c367182a6ea56148e8b83e41733a2"
+ integrity sha512-kmz8Yip5hh2y3bfA76mC2QtI9VHdS7k5dV96/yjar0CkLHJnr33Jh7MTfuCN+01nVU20Tn3YMqEMQ/ErPVJwlg==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
posthtml "^0.16.5"
posthtml-parser "^0.10.1"
posthtml-render "^3.0.0"
semver "^7.5.2"
-"@parcel/transformer-raw@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-raw/-/transformer-raw-2.9.3.tgz#c8e23881ecb45a6dc3fcc5a271cf0d55476beabc"
- integrity sha512-oqdPzMC9QzWRbY9J6TZEqltknjno+dY24QWqf8ondmdF2+W+/2mRDu59hhCzQrqUHgTq4FewowRZmSfpzHxwaQ==
+"@parcel/transformer-raw@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-raw/-/transformer-raw-2.10.0.tgz#4e8fa1bdffca28bc7653cdbe49ab3ca464875399"
+ integrity sha512-1tR58kqzTh4baLq/++bp84H2lhOoAz8cJeJykgsYImva7aRWcjlTppNKjBF6Ef8etIRMPZOozTdbS53VdQ9IbA==
dependencies:
- "@parcel/plugin" "2.9.3"
+ "@parcel/plugin" "2.10.0"
-"@parcel/transformer-react-refresh-wrap@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.9.3.tgz#7775292909fa051f6dfd2668da8f34833a47d56c"
- integrity sha512-cb9NyU6oJlDblFIlzqIE8AkvRQVGl2IwJNKwD4PdE7Y6sq2okGEPG4hOw3k/Y9JVjM4/2pUORqvjSRhWwd9oVQ==
+"@parcel/transformer-react-refresh-wrap@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.10.0.tgz#3cf47430a31ec2402eba87fc0db8b18f8beb89e3"
+ integrity sha512-4ab1tiwUA2XznTh/eb/IVKEA+Ynkbqc5sgNuobf1MLKF82FXTUT5szVshff/ODpwublvVBD3YbXlapxV5xyFvA==
dependencies:
- "@parcel/plugin" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/utils" "2.10.0"
react-refresh "^0.9.0"
-"@parcel/transformer-svg@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-svg/-/transformer-svg-2.9.3.tgz#087a8ec63fa2377db0478a87d3e2829613b391fc"
- integrity sha512-ypmE+dzB09IMCdEAkOsSxq1dEIm2A3h67nAFz4qbfHbwNgXBUuy/jB3ZMwXN/cO0f7SBh/Ap8Jhq6vmGqB5tWw==
+"@parcel/transformer-svg@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-svg/-/transformer-svg-2.10.0.tgz#3277d04f8b1d5ebf9bf7259da25fc0ee491e7dab"
+ integrity sha512-qEZFk4gxyVNhm2V8R3YLo9qCyYNVBySWmZLjmwuhLLmAE+r0qGebc9oXyo7C6ML5d/4Tfj6NriCOeX+HMhPVxw==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
+ "@parcel/rust" "2.10.0"
nullthrows "^1.1.1"
posthtml "^0.16.5"
posthtml-parser "^0.10.1"
@@ -2366,47 +1803,47 @@
semver "^7.5.2"
"@parcel/transformer-typescript-types@^2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/transformer-typescript-types/-/transformer-typescript-types-2.9.3.tgz#6f74b807da228e8944aefa21d4a7c21e576dec85"
- integrity sha512-W+Ze3aUTdZuBQokXlkEQ/1hUApUm6VRyYzPqEs9jcqCqU8mv18i5ZGAz4bMuIJOBprp7M2wt10SJJx/SC1pl1A==
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/transformer-typescript-types/-/transformer-typescript-types-2.10.0.tgz#7a53d324f08c6efa8363df0690dfb47d83a42037"
+ integrity sha512-zcWQp7sGAI9bao+JvUHSHNF9ETJXrkB9G5v1Ca4WzxxGRKfTyt5pYRjile6zlfRagyQ4snSU3pYlCkY+sqQcWA==
dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/plugin" "2.9.3"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/plugin" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/ts-utils" "2.9.3"
- "@parcel/utils" "2.9.3"
+ "@parcel/ts-utils" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
-"@parcel/ts-utils@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/ts-utils/-/ts-utils-2.9.3.tgz#106a7251019a9301ac67b56c921d4cfc3999542a"
- integrity sha512-MiQoXFV8I4IWZT/q5yolKN/gnEY5gZfGB2X7W9WHJbRgyjlT/A5cPERXzVBj6mc3/VM1GdZJz76w637GUcQhow==
+"@parcel/ts-utils@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/ts-utils/-/ts-utils-2.10.0.tgz#258fbadd39aca67ef6325ca277baf23560254f28"
+ integrity sha512-vkbEEerb3hFhHxV78l978Z1ePengCGpEKcG4CY+IsfkExi9erQ8jMAv8HTWrBOs+pOdfhRrat6QZz9esNSt3rA==
dependencies:
nullthrows "^1.1.1"
-"@parcel/types@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/types/-/types-2.9.3.tgz#170a26203b9088a306862b2dc914c27375d77bbc"
- integrity sha512-NSNY8sYtRhvF1SqhnIGgGvJocyWt1K8Tnw5cVepm0g38ywtX6mwkBvMkmeehXkII4mSUn+frD9wGsydTunezvA==
+"@parcel/types@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/types/-/types-2.10.0.tgz#033f35dccb95c940847a8fb5f525a0494d07106b"
+ integrity sha512-iDFVvgN+jK02GY++V+WY3WuNTM6CGDPToGfL31/Sgf6/1PzT7kL6uXJ6+859u8wkTIrtkWD2XyTNkKJJ8jPwgg==
dependencies:
- "@parcel/cache" "2.9.3"
- "@parcel/diagnostic" "2.9.3"
- "@parcel/fs" "2.9.3"
- "@parcel/package-manager" "2.9.3"
+ "@parcel/cache" "2.10.0"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/fs" "2.10.0"
+ "@parcel/package-manager" "2.10.0"
"@parcel/source-map" "^2.1.1"
- "@parcel/workers" "2.9.3"
+ "@parcel/workers" "2.10.0"
utility-types "^3.10.0"
-"@parcel/utils@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/utils/-/utils-2.9.3.tgz#d4df6837658f773c725a4934967ab1128a05fdd7"
- integrity sha512-cesanjtj/oLehW8Waq9JFPmAImhoiHX03ihc3JTWkrvJYSbD7wYKCDgPAM3JiRAqvh1LZ6P699uITrYWNoRLUg==
- dependencies:
- "@parcel/codeframe" "2.9.3"
- "@parcel/diagnostic" "2.9.3"
- "@parcel/hash" "2.9.3"
- "@parcel/logger" "2.9.3"
- "@parcel/markdown-ansi" "2.9.3"
+"@parcel/utils@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/utils/-/utils-2.10.0.tgz#5764e53200cefb8fc1055638e49d746c40fba5ef"
+ integrity sha512-8qx9caJTjli6UKpKlcPjdSBblkwTc+BnIsSK3/7fX7kbtHLmEkQH/RWZbbOJItHbnzlsmaDJTfS7j6rrcFw2Pw==
+ dependencies:
+ "@parcel/codeframe" "2.10.0"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/logger" "2.10.0"
+ "@parcel/markdown-ansi" "2.10.0"
+ "@parcel/rust" "2.10.0"
"@parcel/source-map" "^2.1.1"
chalk "^4.1.0"
nullthrows "^1.1.1"
@@ -2473,7 +1910,7 @@
"@parcel/watcher@2.0.4":
version "2.0.4"
- resolved "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.4.tgz#f300fef4cc38008ff4b8c29d92588eced3ce014b"
integrity sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==
dependencies:
node-addon-api "^3.2.1"
@@ -2502,16 +1939,16 @@
"@parcel/watcher-win32-ia32" "2.3.0"
"@parcel/watcher-win32-x64" "2.3.0"
-"@parcel/workers@2.9.3":
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/@parcel/workers/-/workers-2.9.3.tgz#d1d84d3c767b840d0ed7123a03ab7e0f4a2c0731"
- integrity sha512-zRrDuZJzTevrrwElYosFztgldhqW6G9q5zOeQXfVQFkkEJCNfg36ixeiofKRU8uu2x+j+T6216mhMNB6HiuY+w==
- dependencies:
- "@parcel/diagnostic" "2.9.3"
- "@parcel/logger" "2.9.3"
- "@parcel/profiler" "2.9.3"
- "@parcel/types" "2.9.3"
- "@parcel/utils" "2.9.3"
+"@parcel/workers@2.10.0":
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/@parcel/workers/-/workers-2.10.0.tgz#90fdbe37e3522d11b56d38ef50611f1547c31e94"
+ integrity sha512-PILDag4aW7G9w2AvYvBsMHe/NRCoOt+L7HJzp6UIvy6ssbafH/8fzdGjSpA99GXzC5AXpAHVt8RXhGMXmMP6QA==
+ dependencies:
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/logger" "2.10.0"
+ "@parcel/profiler" "2.10.0"
+ "@parcel/types" "2.10.0"
+ "@parcel/utils" "2.10.0"
nullthrows "^1.1.1"
"@pkgr/utils@^2.3.1":
@@ -2526,55 +1963,46 @@
picocolors "^1.0.0"
tslib "^2.6.0"
-"@popperjs/core@^2.11.8":
+"@popperjs/core@^2.11.8", "@popperjs/core@^2.9.0":
version "2.11.8"
resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f"
integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==
-"@popperjs/core@^2.9.0":
- version "2.11.6"
- resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz"
- integrity sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==
-
"@rdfjs/data-model@^1.3.4":
version "1.3.4"
- resolved "https://registry.npmjs.org/@rdfjs/data-model/-/data-model-1.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/@rdfjs/data-model/-/data-model-1.3.4.tgz#2b1b3e52755ab1283bf66aa2d3ac97fd8a0332c2"
integrity sha512-iKzNcKvJotgbFDdti7GTQDCYmL7GsGldkYStiP0K8EYtN7deJu5t7U11rKTz+nR7RtesUggT+lriZ7BakFv8QQ==
dependencies:
"@rdfjs/types" ">=1.0.1"
"@rdfjs/types@*", "@rdfjs/types@>=1.0.1":
version "1.1.0"
- resolved "https://registry.npmjs.org/@rdfjs/types/-/types-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@rdfjs/types/-/types-1.1.0.tgz#098f180b7cccb03bb416c7b4d03baaa9d480e36b"
integrity sha512-5zm8bN2/CC634dTcn/0AhTRLaQRjXDZs3QfcAsQKNturHT7XVWcKy/8p3P5gXl+YkZTAmy7T5M/LyiT/jbkENw==
dependencies:
"@types/node" "*"
"@react-leaflet/core@^2.0.1", "@react-leaflet/core@^2.1.0":
version "2.1.0"
- resolved "https://registry.npmjs.org/@react-leaflet/core/-/core-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@react-leaflet/core/-/core-2.1.0.tgz#383acd31259d7c9ae8fb1b02d5e18fe613c2a13d"
integrity sha512-Qk7Pfu8BSarKGqILj4x7bCSZ1pjuAPZ+qmRwH5S7mDS91VSbVVsJSrW4qA+GPrro8t69gFYVMWb1Zc4yFmPiVg==
-"@remirror/core-constants@^2.0.1":
- version "2.0.1"
- resolved "https://registry.npmjs.org/@remirror/core-constants/-/core-constants-2.0.1.tgz"
- integrity sha512-ZR4aihtnnT9lMbhh5DEbsriJRlukRXmLZe7HmM+6ufJNNUDoazc75UX26xbgQlNUqgAqMcUdGFAnPc1JwgAdLQ==
- dependencies:
- "@babel/runtime" "^7.21.0"
+"@remirror/core-constants@^2.0.2":
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/@remirror/core-constants/-/core-constants-2.0.2.tgz#f05eccdc69e3a65e7d524b52548f567904a11a1a"
+ integrity sha512-dyHY+sMF0ihPus3O27ODd4+agdHMEmuRdyiZJ2CCWjPV5UFmn17ZbElvk6WOGVE4rdCJKZQCrPV2BcikOMLUGQ==
-"@remirror/core-helpers@^2.0.2":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@remirror/core-helpers/-/core-helpers-2.0.3.tgz"
- integrity sha512-LqIPF4stGG69l9qu/FFicv9d9B+YaItzgDMC5A0CEvDQfKkGD3BfabLmfpnuWbsc06oKGdTduilgWcALLZoYLg==
+"@remirror/core-helpers@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@remirror/core-helpers/-/core-helpers-3.0.0.tgz#3a35c2346bc23ebc3cee585b7840b5567755c5f1"
+ integrity sha512-tusEgQJIqg4qKj6HSBUFcyRnWnziw3neh4T9wOmsPGHFC3w9kl5KSrDb9UAgE8uX6y32FnS7vJ955mWOl3n50A==
dependencies:
- "@babel/runtime" "^7.21.0"
- "@linaria/core" "4.2.9"
- "@remirror/core-constants" "^2.0.1"
+ "@remirror/core-constants" "^2.0.2"
"@remirror/types" "^1.0.1"
"@types/object.omit" "^3.0.0"
"@types/object.pick" "^1.3.2"
"@types/throttle-debounce" "^2.1.0"
- case-anything "^2.1.10"
+ case-anything "^2.1.13"
dash-get "^1.0.2"
deepmerge "^4.3.1"
fast-deep-equal "^3.1.3"
@@ -2585,291 +2013,257 @@
"@remirror/types@^1.0.1":
version "1.0.1"
- resolved "https://registry.npmjs.org/@remirror/types/-/types-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@remirror/types/-/types-1.0.1.tgz#768502497a0fbbc23338a1586b893f729310cf70"
integrity sha512-VlZQxwGnt1jtQ18D6JqdIF+uFZo525WEqrfp9BOc3COPpK4+AWCgdnAWL+ho6imWcoINlGjR/+3b6y5C1vBVEA==
dependencies:
type-fest "^2.19.0"
-"@remix-run/router@1.9.0":
- version "1.9.0"
- resolved "https://registry.yarnpkg.com/@remix-run/router/-/router-1.9.0.tgz#9033238b41c4cbe1e961eccb3f79e2c588328cf6"
- integrity sha512-bV63itrKBC0zdT27qYm6SDZHlkXwFL1xMBuhkn+X7l0+IIhNaH5wuuvZKp6eKhCD4KFhujhfhCT1YxXW6esUIA==
-
-"@swc/core-darwin-arm64@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.86.tgz#f6e9a8c08579902dee51e1d94f8c166a5e53eae7"
- integrity sha512-hMvSDms0sJJHNtRa3Vhmr9StWN1vmikbf5VE0IZUYGnF1/JZTkXU1h6CdNUY4Hr6i7uCZjH6BEhxFHX1JtKV4w==
-
-"@swc/core-darwin-x64@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.3.86.tgz#7d925f86790365d58180ec0c3418ac5d5f1d6e80"
- integrity sha512-Jro6HVH4uSOBM7tTDaQNKLNc8BJV7n+SO+Ft2HAZINyeKJS/8MfEYneG7Vmqg18gv00c6dz9AOCcyz+BR7BFkQ==
-
-"@swc/core-linux-arm-gnueabihf@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.86.tgz#06effe83b3300e19a79039181887259d3806d08b"
- integrity sha512-wYB9m0pzXJVSzedXSl4JwS3gKtvcPinpe9MbkddezpqL7OjyDP6pHHW9qIucsfgCrtMtbPC2nqulXLPtAAyIjw==
-
-"@swc/core-linux-arm64-gnu@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.86.tgz#cedbdc53df450ff9e60c3079119ec2fab715c898"
- integrity sha512-fR44IyK5cdCaO8cC++IEH0Jn03tWnunJnjzA99LxlE5TRInSIOvFm+g5OSUQZDAvEXmQ38sd31LO2HOoDS1Edw==
-
-"@swc/core-linux-arm64-musl@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.86.tgz#52b7c08dbfd0766d00416b4415cf588ed57e6a9a"
- integrity sha512-EUPfdbK4dUk/nkX3Vmv/47XH+DqHOa9JI0CTthvJ8/ZXei1MKDUsUc+tI1zMQX2uCuSkSWsEIEpCmA0tMwFhtw==
-
-"@swc/core-linux-x64-gnu@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.86.tgz#08e2097f4d166c2db960f85b13168bc29289df0c"
- integrity sha512-snVZZWv8XgNVaKrTxtO3rUN+BbbB6I8Fqwe8zM/DWGJ096J13r89doQ48x5ZyO+bW4D48eZIWP5pdfSW7oBE3w==
-
-"@swc/core-linux-x64-musl@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.86.tgz#d1ccb82d3ba0bca8e2f6831f080c98f3cfa158c3"
- integrity sha512-PnnksUJymEJkdnbV2orOSOSB441UqsxYbJge9zbr5UTRXUfWO3eFRV0iTBegjTlOQGbW6yN+YRSDkenTbmCI6g==
-
-"@swc/core-win32-arm64-msvc@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.86.tgz#0bb58d4cece87cb6b99487b5ab444c593e6b617c"
- integrity sha512-XlGEGyHwLndm08VvgeAPGj40L+Hx575MQC+2fsyB1uSNUN+uf7fvke+wc7k50a92CaQe/8foLyIR5faayozEJA==
-
-"@swc/core-win32-ia32-msvc@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.86.tgz#41a5965a6ad41214068252337a251a0026b58d8d"
- integrity sha512-U1BhZa1x9yn+wZGTQmt1cYR79a0FzW/wL6Jas1Pn0bykKLxdRU4mCeZt2P+T3buLm8jr8LpPWiCrbvr658PzwA==
-
-"@swc/core-win32-x64-msvc@1.3.86":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.86.tgz#4907024fc0dec1e19f02be3b7e92597483eab08e"
- integrity sha512-wRoQUajqpE3wITHhZVj/6BPu/QwHriFHLHuJA+9y6PeGtUtTmntL42aBKXIFhfL767dYFtohyNg1uZ9eqbGyGQ==
+"@swc/core-darwin-arm64@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.93.tgz#aefd94625451988286bebccb1c072bae0a36bcdb"
+ integrity sha512-gEKgk7FVIgltnIfDO6GntyuQBBlAYg5imHpRgLxB1zSI27ijVVkksc6QwISzFZAhKYaBWIsFSVeL9AYSziAF7A==
+
+"@swc/core-darwin-x64@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.3.93.tgz#18409c6effdf508ddf1ebccfa77d35aaa6cd72f0"
+ integrity sha512-ZQPxm/fXdDQtn3yrYSL/gFfA8OfZ5jTi33yFQq6vcg/Y8talpZ+MgdSlYM0FkLrZdMTYYTNFiuBQuuvkA+av+Q==
+
+"@swc/core-linux-arm-gnueabihf@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.93.tgz#23a97bc94a8b2f23fb6cc4bc9d8936899e5eeff5"
+ integrity sha512-OYFMMI2yV+aNe3wMgYhODxHdqUB/jrK0SEMHHS44GZpk8MuBXEF+Mcz4qjkY5Q1EH7KVQqXb/gVWwdgTHpjM2A==
+
+"@swc/core-linux-arm64-gnu@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.93.tgz#7a17406a7cf76a959a617626d5ee2634ae9afa26"
+ integrity sha512-BT4dT78odKnJMNiq5HdjBsv29CiIdcCcImAPxeFqAeFw1LL6gh9nzI8E96oWc+0lVT5lfhoesCk4Qm7J6bty8w==
+
+"@swc/core-linux-arm64-musl@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.93.tgz#a30be7780090afefd3b8706398418cbe1d23db49"
+ integrity sha512-yH5fWEl1bktouC0mhh0Chuxp7HEO4uCtS/ly1Vmf18gs6wZ8DOOkgAEVv2dNKIryy+Na++ljx4Ym7C8tSJTrLw==
+
+"@swc/core-linux-x64-gnu@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.93.tgz#41e903fd82e059952d16051b442cbe65ee5b8cb3"
+ integrity sha512-OFUdx64qvrGJhXKEyxosHxgoUVgba2ztYh7BnMiU5hP8lbI8G13W40J0SN3CmFQwPP30+3oEbW7LWzhKEaYjlg==
+
+"@swc/core-linux-x64-musl@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.93.tgz#0866807545c44eac9b3254b374310ad5e1c573f9"
+ integrity sha512-4B8lSRwEq1XYm6xhxHhvHmKAS7pUp1Q7E33NQ2TlmFhfKvCOh86qvThcjAOo57x8DRwmpvEVrqvpXtYagMN6Ig==
+
+"@swc/core-win32-arm64-msvc@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.93.tgz#c72411dea2fd4f62a832f71a6e15424d849e7610"
+ integrity sha512-BHShlxtkven8ZjjvZ5QR6sC5fZCJ9bMujEkiha6W4cBUTY7ce7qGFyHmQd+iPC85d9kD/0cCiX/Xez8u0BhO7w==
+
+"@swc/core-win32-ia32-msvc@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.93.tgz#05c2b031b976af4ef81f5073ee114254678a5d5d"
+ integrity sha512-nEwNWnz4JzYAK6asVvb92yeylfxMYih7eMQOnT7ZVlZN5ba9WF29xJ6kcQKs9HRH6MvWhz9+wRgv3FcjlU6HYA==
+
+"@swc/core-win32-x64-msvc@1.3.93":
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.93.tgz#f8748b3fd1879f13084b1b0814edf328c662935c"
+ integrity sha512-jibQ0zUr4kwJaQVwgmH+svS04bYTPnPw/ZkNInzxS+wFAtzINBYcU8s2PMWbDb2NGYiRSEeoSGyAvS9H+24JFA==
"@swc/core@^1.3.36":
- version "1.3.86"
- resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.3.86.tgz#02e6c205602b51b9d039e2bf2374a3e8427a9c61"
- integrity sha512-bEXUtm37bcmJ3q+geG7Zy4rJNUzpxalXQUrrqX1ZoGj3HRtzdeVZ0L/um3fG2j16qe61t8TX/OIZ2G6j6dkG/w==
+ version "1.3.93"
+ resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.3.93.tgz#be4282aa44deffb0e5081a2613bac00335600630"
+ integrity sha512-690GRr1wUGmGYZHk7fUduX/JUwViMF2o74mnZYIWEcJaCcd9MQfkhsxPBtjeg6tF+h266/Cf3RPYhsFBzzxXcA==
dependencies:
- "@swc/types" "^0.1.4"
+ "@swc/counter" "^0.1.1"
+ "@swc/types" "^0.1.5"
optionalDependencies:
- "@swc/core-darwin-arm64" "1.3.86"
- "@swc/core-darwin-x64" "1.3.86"
- "@swc/core-linux-arm-gnueabihf" "1.3.86"
- "@swc/core-linux-arm64-gnu" "1.3.86"
- "@swc/core-linux-arm64-musl" "1.3.86"
- "@swc/core-linux-x64-gnu" "1.3.86"
- "@swc/core-linux-x64-musl" "1.3.86"
- "@swc/core-win32-arm64-msvc" "1.3.86"
- "@swc/core-win32-ia32-msvc" "1.3.86"
- "@swc/core-win32-x64-msvc" "1.3.86"
+ "@swc/core-darwin-arm64" "1.3.93"
+ "@swc/core-darwin-x64" "1.3.93"
+ "@swc/core-linux-arm-gnueabihf" "1.3.93"
+ "@swc/core-linux-arm64-gnu" "1.3.93"
+ "@swc/core-linux-arm64-musl" "1.3.93"
+ "@swc/core-linux-x64-gnu" "1.3.93"
+ "@swc/core-linux-x64-musl" "1.3.93"
+ "@swc/core-win32-arm64-msvc" "1.3.93"
+ "@swc/core-win32-ia32-msvc" "1.3.93"
+ "@swc/core-win32-x64-msvc" "1.3.93"
+
+"@swc/counter@^0.1.1":
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.2.tgz#bf06d0770e47c6f1102270b744e17b934586985e"
+ integrity sha512-9F4ys4C74eSTEUNndnER3VJ15oru2NumfQxS8geE+f3eB5xvfxpWyqE5XlVnxb/R14uoXi6SLbBwwiDSkv+XEw==
"@swc/helpers@^0.5.0":
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.2.tgz#85ea0c76450b61ad7d10a37050289eded783c27d"
- integrity sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==
+ version "0.5.3"
+ resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.3.tgz#98c6da1e196f5f08f977658b80d6bd941b5f294f"
+ integrity sha512-FaruWX6KdudYloq1AHD/4nU+UsMTdNE8CKyrseXWEcgjDAbvkwJg2QGPAnfIJLIWsjZOSPLOAykK6fuYp4vp4A==
dependencies:
tslib "^2.4.0"
-"@swc/types@^0.1.4":
+"@swc/types@^0.1.5":
version "0.1.5"
resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.5.tgz#043b731d4f56a79b4897a3de1af35e75d56bc63a"
integrity sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==
-"@tiptap/core@^2.0.0-beta.217", "@tiptap/core@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/core/-/core-2.0.3.tgz"
- integrity sha512-jLyVIWAdjjlNzrsRhSE2lVL/7N8228/1R1QtaVU85UlMIwHFAcdzhD8FeiKkqxpTnGpaDVaTy7VNEtEgaYdCyA==
-
-"@tiptap/core@^2.0.0-beta.95":
- version "2.0.0-beta.199"
- resolved "https://registry.npmjs.org/@tiptap/core/-/core-2.0.0-beta.199.tgz"
- integrity sha512-34GaXcBEmNFjW1R7nf1LSmOHo3Q81YjKqvLAXjDLLG7MTx+YTrQ4yWwUvMsZtmi4o/FchUzrs1NVCfr571Zxzg==
- dependencies:
- prosemirror-commands "^1.3.1"
- prosemirror-keymap "^1.2.0"
- prosemirror-model "^1.18.1"
- prosemirror-schema-list "^1.2.2"
- prosemirror-state "^1.4.1"
- prosemirror-transform "^1.7.0"
- prosemirror-view "^1.28.2"
-
-"@tiptap/extension-blockquote@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.0.3.tgz"
- integrity sha512-rkUcFv2iL6f86DBBHoa4XdKNG2StvkJ7tfY9GoMpT46k3nxOaMTqak9/qZOo79TWxMLYtXzoxtKIkmWsbbcj4A==
-
-"@tiptap/extension-bold@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.0.3.tgz"
- integrity sha512-OGT62fMRovSSayjehumygFWTg2Qn0IDbqyMpigg/RUAsnoOI2yBZFVrdM2gk1StyoSay7gTn2MLw97IUfr7FXg==
-
-"@tiptap/extension-bubble-menu@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.0.3.tgz"
- integrity sha512-lPt1ELrYCuoQrQEUukqjp9xt38EwgPUwaKHI3wwt2Rbv+C6q1gmRsK1yeO/KqCNmFxNqF2p9ZF9srOnug/RZDQ==
- dependencies:
- tippy.js "^6.3.7"
-
-"@tiptap/extension-bubble-menu@^2.1.7":
- version "2.1.7"
- resolved "https://registry.yarnpkg.com/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.1.7.tgz#62616c9ee456c8413ad6c120757978266052a1a0"
- integrity sha512-VcwwUgiG17TEDZda1JBbyKCHLIBTu8B2OAzYrnd4ZqeRs5KTVAB279o/TVjsLVgEfC+c7IWwhhaPPMoXn/lJ3g==
- dependencies:
- tippy.js "^6.3.7"
-
-"@tiptap/extension-bullet-list@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.0.3.tgz"
- integrity sha512-RtaLiRvZbMTOje+FW5bn+mYogiIgNxOm065wmyLPypnTbLSeHeYkoqVSqzZeqUn+7GLnwgn1shirUe6csVE/BA==
-
-"@tiptap/extension-code-block@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-code-block/-/extension-code-block-2.0.3.tgz"
- integrity sha512-F4xMy18EwgpyY9f5Te7UuF7UwxRLptOtCq1p2c2DfxBvHDWhAjQqVqcW/sq/I/WuED7FwCnPLyyAasPiVPkLPw==
-
-"@tiptap/extension-code@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-code/-/extension-code-2.0.3.tgz"
- integrity sha512-LsVCKVxgBtkstAr1FjxN8T3OjlC76a2X8ouoZpELMp+aXbjqyanCKzt+sjjUhE4H0yLFd4v+5v6UFoCv4EILiw==
+"@tiptap/core@^2.0.0-beta.95", "@tiptap/core@^2.0.3", "@tiptap/core@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/core/-/core-2.1.12.tgz#904fdf147e91b5e60561c76e7563c1b5a32f54ab"
+ integrity sha512-ZGc3xrBJA9KY8kln5AYTj8y+GDrKxi7u95xIl2eccrqTY5CQeRu6HRNM1yT4mAjuSaG9jmazyjGRlQuhyxCKxQ==
-"@tiptap/extension-color@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-color/-/extension-color-2.0.3.tgz"
- integrity sha512-LYj3CWahhuJOy4/bwOur+cob8eky7xx7wyyBFIYELuzLcZt9hBmZwXxinQzD7BaQv4YdT+3oqr8BhChuPNj52w==
+"@tiptap/extension-blockquote@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-blockquote/-/extension-blockquote-2.1.12.tgz#97b43419606acf9bfd93b9f482a1827dcac8c3e9"
+ integrity sha512-Qb3YRlCfugx9pw7VgLTb+jY37OY4aBJeZnqHzx4QThSm13edNYjasokbX0nTwL1Up4NPTcY19JUeHt6fVaVVGg==
-"@tiptap/extension-document@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.0.3.tgz"
- integrity sha512-PsYeNQQBYIU9ayz1R11Kv/kKNPFNIV8tApJ9pxelXjzcAhkjncNUazPN/dyho60mzo+WpsmS3ceTj/gK3bCtWA==
+"@tiptap/extension-bold@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-bold/-/extension-bold-2.1.12.tgz#5dbf41105fc0fbde8adbff629312187fbebc39b0"
+ integrity sha512-AZGxIxcGU1/y6V2YEbKsq6BAibL8yQrbRm6EdcBnby41vj1WziewEKswhLGmZx5IKM2r2ldxld03KlfSIlKQZg==
-"@tiptap/extension-dropcursor@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.0.3.tgz"
- integrity sha512-McthMrfusn6PjcaynJLheZJcXto8TaIW5iVitYh8qQrDXr31MALC/5GvWuiswmQ8bAXiWPwlLDYE/OJfwtggaw==
-
-"@tiptap/extension-floating-menu@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.0.3.tgz"
- integrity sha512-zN1vRGRvyK3pO2aHRmQSOTpl4UJraXYwKYM009n6WviYKUNm0LPGo+VD4OAtdzUhPXyccnlsTv2p6LIqFty6Bg==
+"@tiptap/extension-bubble-menu@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.1.12.tgz#4103a21a6433e58690c8f742ece39fad78dc26eb"
+ integrity sha512-gAGi21EQ4wvLmT7klgariAc2Hf+cIjaNU2NWze3ut6Ku9gUo5ZLqj1t9SKHmNf4d5JG63O8GxpErqpA7lHlRtw==
dependencies:
tippy.js "^6.3.7"
-"@tiptap/extension-floating-menu@^2.1.7":
- version "2.1.7"
- resolved "https://registry.yarnpkg.com/@tiptap/extension-floating-menu/-/extension-floating-menu-2.1.7.tgz#fe2def740b3136d38101634ae60d2fec5468c57e"
- integrity sha512-K0bO7JKHAvgLM5MkhNgoYcD6SB0Z2tNIFhZHs5SCTuhg7dwduMSM3pC6QBrJGUk99DGsKuMPYQn3c2oG7MLbyQ==
+"@tiptap/extension-bullet-list@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-bullet-list/-/extension-bullet-list-2.1.12.tgz#7c905a577ce30ef2cb335870a23f9d24fd26f6aa"
+ integrity sha512-vtD8vWtNlmAZX8LYqt2yU9w3mU9rPCiHmbp4hDXJs2kBnI0Ju/qAyXFx6iJ3C3XyuMnMbJdDI9ee0spAvFz7cQ==
+
+"@tiptap/extension-code-block@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-code-block/-/extension-code-block-2.1.12.tgz#20416baef1b5fc839490a8416e97fdcbb5fdf918"
+ integrity sha512-RXtSYCVsnk8D+K80uNZShClfZjvv1EgO42JlXLVGWQdIgaNyuOv/6I/Jdf+ZzhnpsBnHufW+6TJjwP5vJPSPHA==
+
+"@tiptap/extension-code@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-code/-/extension-code-2.1.12.tgz#86d2eb5f63725af472c5fd858e5a9c7ccae06ef3"
+ integrity sha512-CRiRq5OTC1lFgSx6IMrECqmtb93a0ZZKujEnaRhzWliPBjLIi66va05f/P1vnV6/tHaC3yfXys6dxB5A4J8jxw==
+
+"@tiptap/extension-color@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-color/-/extension-color-2.1.12.tgz#1076833f061c3eabf59aef32cd15f103fd6ec710"
+ integrity sha512-Myd6iSbPJvvclr+NRBEdE0k52QlQrXZnJljk4JKn0b25cl60ERA40FH9QLBjkpTed7SDbI3oX7LWIzTUoCj39w==
+
+"@tiptap/extension-document@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-document/-/extension-document-2.1.12.tgz#e19e4716dfad60cbeb6abaf2f362fed759963529"
+ integrity sha512-0QNfAkCcFlB9O8cUNSwTSIQMV9TmoEhfEaLz/GvbjwEq4skXK3bU+OQX7Ih07waCDVXIGAZ7YAZogbvrn/WbOw==
+
+"@tiptap/extension-dropcursor@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-dropcursor/-/extension-dropcursor-2.1.12.tgz#9da0c275291c9d47497d3db41b4d70d96366b4ff"
+ integrity sha512-0tT/q8nL4NBCYPxr9T0Brck+RQbWuczm9nV0bnxgt0IiQXoRHutfPWdS7GA65PTuVRBS/3LOco30fbjFhkfz/A==
+
+"@tiptap/extension-floating-menu@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-floating-menu/-/extension-floating-menu-2.1.12.tgz#68a658b2b9bdd3a0fc1afc5165231838061a8fde"
+ integrity sha512-uo0ydCJNg6AWwLT6cMUJYVChfvw2PY9ZfvKRhh9YJlGfM02jS4RUG/bJBts6R37f+a5FsOvAVwg8EvqPlNND1A==
dependencies:
tippy.js "^6.3.7"
-"@tiptap/extension-gapcursor@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.0.3.tgz"
- integrity sha512-6I9EzzsYOyyqDvDvxIK6Rv3EXB+fHKFj8ntHO8IXmeNJ6pkhOinuXVsW6Yo7TcDYoTj4D5I2MNFAW2rIkgassw==
-
-"@tiptap/extension-hard-break@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.0.3.tgz"
- integrity sha512-RCln6ARn16jvKTjhkcAD5KzYXYS0xRMc0/LrHeV8TKdCd4Yd0YYHe0PU4F9gAgAfPQn7Dgt4uTVJLN11ICl8sQ==
-
-"@tiptap/extension-heading@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.0.3.tgz"
- integrity sha512-f0IEv5ms6aCzL80WeZ1qLCXTkRVwbpRr1qAETjg3gG4eoJN18+lZNOJYpyZy3P92C5KwF2T3Av00eFyVLIbb8Q==
-
-"@tiptap/extension-highlight@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.0.3.tgz"
- integrity sha512-NrtibY8cZkIjZMQuHRrKd4php+plOvAoSo8g3uVFu275I/Ixt5HqJ53R4voCXs8W8BOBRs2HS2QX8Cjh79XhtA==
-
-"@tiptap/extension-history@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.0.3.tgz"
- integrity sha512-00KHIcJ8kivn2ARI6NQYphv2LfllVCXViHGm0EhzDW6NQxCrriJKE3tKDcTFCu7LlC5doMpq9Z6KXdljc4oVeQ==
-
-"@tiptap/extension-horizontal-rule@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.0.3.tgz"
- integrity sha512-SZRUSh07b/M0kJHNKnfBwBMWrZBEm/E2LrK1NbluwT3DBhE+gvwiEdBxgB32zKHNxaDEXUJwUIPNC3JSbKvPUA==
-
-"@tiptap/extension-image@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.0.3.tgz"
- integrity sha512-hS9ZJwz0md07EHsC+o4NuuJkhCZsZn7TuRz/2CvRSj2fWFIz+40CyNAHf/2J0qNugG9ommXaemetsADeEZP9ag==
-
-"@tiptap/extension-italic@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.0.3.tgz"
- integrity sha512-cfS5sW0gu7qf4ihwnLtW/QMTBrBEXaT0sJl3RwkhjIBg/65ywJKE5Nz9ewnQHmDeT18hvMJJ1VIb4j4ze9jj9A==
-
-"@tiptap/extension-link@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.0.3.tgz"
- integrity sha512-H72tXQ5rkVCkAhFaf08fbEU7EBUCK0uocsqOF+4th9sOlrhfgyJtc8Jv5EXPDpxNgG5jixSqWBo0zKXQm9s9eg==
+"@tiptap/extension-gapcursor@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-gapcursor/-/extension-gapcursor-2.1.12.tgz#63844c3abd1a38af915839cf0c097b6d2e5a86fe"
+ integrity sha512-zFYdZCqPgpwoB7whyuwpc8EYLYjUE5QYKb8vICvc+FraBUDM51ujYhFSgJC3rhs8EjI+8GcK8ShLbSMIn49YOQ==
+
+"@tiptap/extension-hard-break@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-hard-break/-/extension-hard-break-2.1.12.tgz#54d0c9996e1173594852394975a9356eec98bc9a"
+ integrity sha512-nqKcAYGEOafg9D+2cy1E4gHNGuL12LerVa0eS2SQOb+PT8vSel9OTKU1RyZldsWSQJ5rq/w4uIjmLnrSR2w6Yw==
+
+"@tiptap/extension-heading@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-heading/-/extension-heading-2.1.12.tgz#05ae4684d6f29ae611495ab114038e14a5d1dff6"
+ integrity sha512-MoANP3POAP68Ko9YXarfDKLM/kXtscgp6m+xRagPAghRNujVY88nK1qBMZ3JdvTVN6b/ATJhp8UdrZX96TLV2w==
+
+"@tiptap/extension-highlight@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-highlight/-/extension-highlight-2.1.12.tgz#184efb75238c9cbc6c18d523b735de4329f78ecc"
+ integrity sha512-buen31cYPyiiHA2i0o2i/UcjRTg/42mNDCizGr1OJwvv3AELG3qOFc4Y58WJWIvWNv+1Dr4ZxHA3GNVn0ANWyg==
+
+"@tiptap/extension-history@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-history/-/extension-history-2.1.12.tgz#03bcb9422e8ea2b82dc45207d1a1b0bc0241b055"
+ integrity sha512-6b7UFVkvPjq3LVoCTrYZAczt5sQrQUaoDWAieVClVZoFLfjga2Fwjcfgcie8IjdPt8YO2hG/sar/c07i9vM0Sg==
+
+"@tiptap/extension-horizontal-rule@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.1.12.tgz#2191d4ff68ed39381d65971ad8e2aa1be43e6d6b"
+ integrity sha512-RRuoK4KxrXRrZNAjJW5rpaxjiP0FJIaqpi7nFbAua2oHXgsCsG8qbW2Y0WkbIoS8AJsvLZ3fNGsQ8gpdliuq3A==
+
+"@tiptap/extension-image@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-image/-/extension-image-2.1.12.tgz#ab035db82f0961b1d906c4d426bf68be563fdcd3"
+ integrity sha512-VCgOTeNLuoR89WoCESLverpdZpPamOd7IprQbDIeG14sUySt7RHNgf2AEfyTYJEHij12rduvAwFzerPldVAIJg==
+
+"@tiptap/extension-italic@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-italic/-/extension-italic-2.1.12.tgz#e99480eb77f8b4e5444fc236add8a831d5aa2343"
+ integrity sha512-/XYrW4ZEWyqDvnXVKbgTXItpJOp2ycswk+fJ3vuexyolO6NSs0UuYC6X4f+FbHYL5VuWqVBv7EavGa+tB6sl3A==
+
+"@tiptap/extension-link@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-link/-/extension-link-2.1.12.tgz#a18f83a0b54342e6274ff9e5a5907ef7f15aa723"
+ integrity sha512-Sti5hhlkCqi5vzdQjU/gbmr8kb578p+u0J4kWS+SSz3BknNThEm/7Id67qdjBTOQbwuN07lHjDaabJL0hSkzGQ==
dependencies:
linkifyjs "^4.1.0"
-"@tiptap/extension-list-item@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.0.3.tgz"
- integrity sha512-p7cUsk0LpM1PfdAuFE8wYBNJ3gvA0UhNGR08Lo++rt9UaCeFLSN1SXRxg97c0oa5+Ski7SrCjIJ5Ynhz0viTjQ==
+"@tiptap/extension-list-item@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-list-item/-/extension-list-item-2.1.12.tgz#3eb28dc998490a98f14765783770b3cf6587d39e"
+ integrity sha512-Gk7hBFofAPmNQ8+uw8w5QSsZOMEGf7KQXJnx5B022YAUJTYYxO3jYVuzp34Drk9p+zNNIcXD4kc7ff5+nFOTrg==
"@tiptap/extension-mention@^2.0.0-beta.95":
- version "2.0.0-beta.199"
- resolved "https://registry.npmjs.org/@tiptap/extension-mention/-/extension-mention-2.0.0-beta.199.tgz"
- integrity sha512-zNCZbU03GNPaO9Aga/3AKUQBv0EridVdIFxUY3GVb5uixoxMeXDf/OI0GqnQ2KyW7ufmD5VdlZS0mP/9QCo+DA==
- dependencies:
- prosemirror-model "^1.18.1"
- prosemirror-state "^1.4.1"
-
-"@tiptap/extension-ordered-list@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.0.3.tgz"
- integrity sha512-ZB3MpZh/GEy1zKgw7XDQF4FIwycZWNof1k9WbDZOI063Ch4qHZowhVttH2mTCELuyvTMM/o9a8CS7qMqQB48bw==
-
-"@tiptap/extension-paragraph@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.0.3.tgz"
- integrity sha512-a+tKtmj4bU3GVCH1NE8VHWnhVexxX5boTVxsHIr4yGG3UoKo1c5AO7YMaeX2W5xB5iIA+BQqOPCDPEAx34dd2A==
-
-"@tiptap/extension-placeholder@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.3.tgz"
- integrity sha512-Z42jo0termRAf0S0L8oxrts94IWX5waU4isS2CUw8xCUigYyCFslkhQXkWATO1qRbjNFLKN2C9qvCgGf4UeBrw==
-
-"@tiptap/extension-placeholder@^2.0.0-beta.95":
- version "2.0.0-beta.206"
- resolved "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.0.0-beta.206.tgz"
- integrity sha512-v31hccx0IZMpz4wXKtKkqiNDbktmyJAoaS1gADt08uPYM+3sKX0hjVqs82rmt8FhtMJqpY5+awCZFnhrP+jO+A==
-
-"@tiptap/extension-strike@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.0.3.tgz"
- integrity sha512-RO4/EYe2iPD6ifDHORT8fF6O9tfdtnzxLGwZIKZXnEgtweH+MgoqevEzXYdS+54Wraq4TUQGNcsYhe49pv7Rlw==
-
-"@tiptap/extension-text-align@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-text-align/-/extension-text-align-2.0.3.tgz"
- integrity sha512-VlLgqncKdjMjVjbU60/ALYhFs0wUdjAyvjDXnH1OoM/HuzbILvufPMYz4DUieJIWVJOYUKHQgg4XwBWceAM2Tw==
-
-"@tiptap/extension-text-style@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-text-style/-/extension-text-style-2.0.3.tgz"
- integrity sha512-yHIYtZVewSwfBfI6TffnsDRiOuXzytppcCsaDlsZFm8OtLG8v9ioH0ItMoOstmZZBiWJOm8iOy2yWSc4rNQEJw==
-
-"@tiptap/extension-text@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.0.3.tgz"
- integrity sha512-LvzChcTCcPSMNLUjZe/A9SHXWGDHtvk73fR7CBqAeNU0MxhBPEBI03GFQ6RzW3xX0CmDmjpZoDxFMB+hDEtW1A==
-
-"@tiptap/extension-underline@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.0.3.tgz"
- integrity sha512-oMYa7qib/5wJjpUp79GZEe+E/iyf1oZBsgiG26IspEtVTHZmpn3+Ktud7l43y/hpTeEzFTKOF1/uVbayHtSERg==
-
-"@tiptap/pm@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/pm/-/pm-2.0.3.tgz"
- integrity sha512-I9dsInD89Agdm1QjFRO9dmJtU1ldVSILNPW0pEhv9wYqYVvl4HUj/JMtYNqu2jWrCHNXQcaX/WkdSdvGJtmg5g==
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-mention/-/extension-mention-2.1.12.tgz#a395e7757b45630ec3047f14b0ba2dde8e1c9c93"
+ integrity sha512-Nc8wFlyPp+/48IpOFPk2O3hYsF465wizcM3aihMvZM96Ahic7dvv9yVptyOfoOwgpExl2FIn1QPjRDXF60VAUg==
+
+"@tiptap/extension-ordered-list@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-ordered-list/-/extension-ordered-list-2.1.12.tgz#f41a45bc66b4d19e379d4833f303f2e0cd6b9d60"
+ integrity sha512-tF6VGl+D2avCgn9U/2YLJ8qVmV6sPE/iEzVAFZuOSe6L0Pj7SQw4K6AO640QBob/d8VrqqJFHCb6l10amJOnXA==
+
+"@tiptap/extension-paragraph@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-paragraph/-/extension-paragraph-2.1.12.tgz#922447b2aa1c7184787d351ceec593a74d24ed03"
+ integrity sha512-hoH/uWPX+KKnNAZagudlsrr4Xu57nusGekkJWBcrb5MCDE91BS+DN2xifuhwXiTHxnwOMVFjluc0bPzQbkArsw==
+
+"@tiptap/extension-placeholder@^2.0.0-beta.95", "@tiptap/extension-placeholder@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-placeholder/-/extension-placeholder-2.1.12.tgz#f6267a563d17a5ae8a04da32231eac8d8868519e"
+ integrity sha512-K52o7B1zkP4vaVy3z4ZwHn+tQy6KlXtedj1skLg+796ImwH2GYS5z6MFOTfKzBO2hLncUzLco/s0C5PLCD6SDw==
+
+"@tiptap/extension-strike@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-strike/-/extension-strike-2.1.12.tgz#2b049aedf2985e9c9e3c3f1cc0b203a574c85bd8"
+ integrity sha512-HlhrzIjYUT8oCH9nYzEL2QTTn8d1ECnVhKvzAe6x41xk31PjLMHTUy8aYjeQEkWZOWZ34tiTmslV1ce6R3Dt8g==
+
+"@tiptap/extension-text-align@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-text-align/-/extension-text-align-2.1.12.tgz#962dca4d284ce57ed345fd4b94ddb3a97944e0d1"
+ integrity sha512-siMlwrkgVrAxxgmZn8GOc75J7UZi2CVrP9vDHkUPPyKm/fjssYekXwGCEk4Vswii1BbOh2gt+MDsRkeYRGyDlQ==
+
+"@tiptap/extension-text-style@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-text-style/-/extension-text-style-2.1.12.tgz#ec6a025fc6785246c9fcf78e34088759c1d2b213"
+ integrity sha512-nfjWXX0JSRHLcscfiMESh+RN+Z7bG8nio/C9+8yQASM90VxU9f8oKgF8HnnSYsSrD4lLf44Q6XjmB7aMVUuikg==
+
+"@tiptap/extension-text@^2.1.12":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-text/-/extension-text-2.1.12.tgz#466e3244bdd9b2db2304c0c9a1d51ce59f5327d0"
+ integrity sha512-rCNUd505p/PXwU9Jgxo4ZJv4A3cIBAyAqlx/dtcY6cjztCQuXJhuQILPhjGhBTOLEEL4kW2wQtqzCmb7O8i2jg==
+
+"@tiptap/extension-underline@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/extension-underline/-/extension-underline-2.1.12.tgz#abd59c4b6c8434dbadb4ff9bff23eefcc6bc095e"
+ integrity sha512-NwwdhFT8gDD0VUNLQx85yFBhP9a8qg8GPuxlGzAP/lPTV8Ubh3vSeQ5N9k2ZF/vHlEvnugzeVCbmYn7wf8vn1g==
+
+"@tiptap/pm@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/pm/-/pm-2.1.12.tgz#88a4b19be0eabb13d42ddd540c19ba1bbe74b322"
+ integrity sha512-Q3MXXQABG4CZBesSp82yV84uhJh/W0Gag6KPm2HRWPimSFELM09Z9/5WK9RItAYE0aLhe4Krnyiczn9AAa1tQQ==
dependencies:
prosemirror-changeset "^2.2.0"
prosemirror-collab "^1.3.0"
@@ -2890,55 +2284,43 @@
prosemirror-transform "^1.7.0"
prosemirror-view "^1.28.2"
-"@tiptap/react@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/react/-/react-2.0.3.tgz"
- integrity sha512-fiAh8Lk+/NBPAR/PE4Kc/aLiBUbUYI/CpAopz8DI9eInNyV8h8LAGa9uFILJQF/TNu0tclJ4rV0sWc7Se0FZMw==
- dependencies:
- "@tiptap/extension-bubble-menu" "^2.0.3"
- "@tiptap/extension-floating-menu" "^2.0.3"
-
-"@tiptap/react@^2.0.0-beta.95":
- version "2.1.7"
- resolved "https://registry.yarnpkg.com/@tiptap/react/-/react-2.1.7.tgz#0c5a5407bcb398ff75234dd9c7a3f8878d943088"
- integrity sha512-jCs5z/rXZ7mEOTPcJ+r/OSTtLOGBahS7D3xDu3pRX4P0wtWHlprsdptxxlWjkBHLav01XXJ+OtGZTfhWBio1QQ==
- dependencies:
- "@tiptap/extension-bubble-menu" "^2.1.7"
- "@tiptap/extension-floating-menu" "^2.1.7"
-
-"@tiptap/starter-kit@^2.0.0-beta.217":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@tiptap/starter-kit/-/starter-kit-2.0.3.tgz"
- integrity sha512-t4WG4w93zTpL2VxhVyJJvl3kdLF001ZrhpOuEiZqEMBMUMbM56Uiigv1CnUQpTFrjDAh3IM8hkqzAh20TYw2iQ==
- dependencies:
- "@tiptap/core" "^2.0.3"
- "@tiptap/extension-blockquote" "^2.0.3"
- "@tiptap/extension-bold" "^2.0.3"
- "@tiptap/extension-bullet-list" "^2.0.3"
- "@tiptap/extension-code" "^2.0.3"
- "@tiptap/extension-code-block" "^2.0.3"
- "@tiptap/extension-document" "^2.0.3"
- "@tiptap/extension-dropcursor" "^2.0.3"
- "@tiptap/extension-gapcursor" "^2.0.3"
- "@tiptap/extension-hard-break" "^2.0.3"
- "@tiptap/extension-heading" "^2.0.3"
- "@tiptap/extension-history" "^2.0.3"
- "@tiptap/extension-horizontal-rule" "^2.0.3"
- "@tiptap/extension-italic" "^2.0.3"
- "@tiptap/extension-list-item" "^2.0.3"
- "@tiptap/extension-ordered-list" "^2.0.3"
- "@tiptap/extension-paragraph" "^2.0.3"
- "@tiptap/extension-strike" "^2.0.3"
- "@tiptap/extension-text" "^2.0.3"
+"@tiptap/react@^2.0.0-beta.95", "@tiptap/react@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/react/-/react-2.1.12.tgz#23566c7992b9642137171b282335e646922ae559"
+ integrity sha512-RMO4QmmpL7sPR7w8o1Wq0hrUe/ttHzsn5I/eWwqg1d3fGx5y9mOdfCoQ9XBtm49Xzdejy3QVzt4zYp9fX0X/xg==
+ dependencies:
+ "@tiptap/extension-bubble-menu" "^2.1.12"
+ "@tiptap/extension-floating-menu" "^2.1.12"
+
+"@tiptap/starter-kit@^2.0.3":
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/starter-kit/-/starter-kit-2.1.12.tgz#2bf28091ed08dc8f7b903ba92925e4ffe06257ea"
+ integrity sha512-+RoP1rWV7rSCit2+3wl2bjvSRiePRJE/7YNKbvH8Faz/+AMO23AFegHoUFynR7U0ouGgYDljGkkj35e0asbSDA==
+ dependencies:
+ "@tiptap/core" "^2.1.12"
+ "@tiptap/extension-blockquote" "^2.1.12"
+ "@tiptap/extension-bold" "^2.1.12"
+ "@tiptap/extension-bullet-list" "^2.1.12"
+ "@tiptap/extension-code" "^2.1.12"
+ "@tiptap/extension-code-block" "^2.1.12"
+ "@tiptap/extension-document" "^2.1.12"
+ "@tiptap/extension-dropcursor" "^2.1.12"
+ "@tiptap/extension-gapcursor" "^2.1.12"
+ "@tiptap/extension-hard-break" "^2.1.12"
+ "@tiptap/extension-heading" "^2.1.12"
+ "@tiptap/extension-history" "^2.1.12"
+ "@tiptap/extension-horizontal-rule" "^2.1.12"
+ "@tiptap/extension-italic" "^2.1.12"
+ "@tiptap/extension-list-item" "^2.1.12"
+ "@tiptap/extension-ordered-list" "^2.1.12"
+ "@tiptap/extension-paragraph" "^2.1.12"
+ "@tiptap/extension-strike" "^2.1.12"
+ "@tiptap/extension-text" "^2.1.12"
"@tiptap/suggestion@^2.0.0-beta.95":
- version "2.0.0-beta.199"
- resolved "https://registry.npmjs.org/@tiptap/suggestion/-/suggestion-2.0.0-beta.199.tgz"
- integrity sha512-FwkaMW0fX1Xlsv4n5GPlVkHwwMSMvIXgZ6LZnwy4Mxo+Njz7YgHw8X8YQo927lMbYsVHYhNcsk726HaxudDMEw==
- dependencies:
- prosemirror-model "^1.18.1"
- prosemirror-state "^1.4.1"
- prosemirror-view "^1.28.2"
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/@tiptap/suggestion/-/suggestion-2.1.12.tgz#a13782d1e625ec03b3f61b6839ecc95b6b685d3f"
+ integrity sha512-rhlLWwVkOodBGRMK0mAmE34l2a+BqM2Y7q1ViuQRBhs/6sZ8d83O4hARHKVwqT5stY4i1l7d7PoemV3uAGI6+g==
"@trysound/sax@0.2.0":
version "0.2.0"
@@ -2947,16 +2329,16 @@
"@types/glob@^7.1.1":
version "7.2.0"
- resolved "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb"
integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==
dependencies:
"@types/minimatch" "*"
"@types/node" "*"
-"@types/json-schema@^7.0.11":
- version "7.0.12"
- resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz"
- integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
+"@types/json-schema@^7.0.12":
+ version "7.0.13"
+ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.13.tgz#02c24f4363176d2d18fc8b70b9f3c54aba178a85"
+ integrity sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==
"@types/json5@^0.0.29":
version "0.0.29"
@@ -2965,178 +2347,165 @@
"@types/minimatch@*":
version "5.1.2"
- resolved "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca"
integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==
"@types/minimist@^1.2.0":
- version "1.2.2"
- resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz"
- integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.3.tgz#dd249cef80c6fff2ba6a0d4e5beca913e04e25f8"
+ integrity sha512-ZYFzrvyWUNhaPomn80dsMNgMeXxNWZBdkuG/hWlUvXvbdUH8ZERNBGXnU87McuGcWDsyzX2aChCv/SVN348k3A==
"@types/node@*", "@types/node@>= 8":
- version "18.8.2"
- resolved "https://registry.npmjs.org/@types/node/-/node-18.8.2.tgz"
- integrity sha512-cRMwIgdDN43GO4xMWAfJAecYn8wV4JbsOGHNfNUIDiuYkUYAR5ec4Rj7IO2SAhFPEfpPtLtUTbbny/TCT7aDwA==
+ version "20.8.6"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.6.tgz#0dbd4ebcc82ad0128df05d0e6f57e05359ee47fa"
+ integrity sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ==
+ dependencies:
+ undici-types "~5.25.1"
"@types/normalize-package-data@^2.4.0":
- version "2.4.1"
- resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz"
- integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==
+ version "2.4.2"
+ resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.2.tgz#9b0e3e8533fe5024ad32d6637eb9589988b6fdca"
+ integrity sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==
"@types/object.omit@^3.0.0":
- version "3.0.0"
- resolved "https://registry.npmjs.org/@types/object.omit/-/object.omit-3.0.0.tgz"
- integrity sha512-I27IoPpH250TUzc9FzXd0P1BV/BMJuzqD3jOz98ehf9dQqGkxlq+hO1bIqZGWqCg5bVOy0g4AUVJtnxe0klDmw==
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/@types/object.omit/-/object.omit-3.0.1.tgz#1b9de058cf94344b9284308a41b17e3a356ed18e"
+ integrity sha512-24XD34UeRWw505TsMNBrQ4bES2s8IxiFC59mmNUFhTz9IX2hAtA7gQ8wVww1i17QmhBYILg5iqYP2y7aqA3pwQ==
"@types/object.pick@^1.3.2":
version "1.3.2"
- resolved "https://registry.npmjs.org/@types/object.pick/-/object.pick-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/@types/object.pick/-/object.pick-1.3.2.tgz#9eb28118240ad8f658b9c9c6caf35359fdb37150"
integrity sha512-sn7L+qQ6RLPdXRoiaE7bZ/Ek+o4uICma/lBFPyJEKDTPTBP1W8u0c4baj3EiS4DiqLs+Hk+KUGvMVJtAw3ePJg==
-"@types/parse-json@^4.0.0":
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
- integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
-
-"@types/prop-types@*", "@types/prop-types@^15.7.5":
- version "15.7.5"
- resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz"
- integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
-
-"@types/react-is@^18.2.0":
- version "18.2.0"
- resolved "https://registry.npmjs.org/@types/react-is/-/react-is-18.2.0.tgz"
- integrity sha512-1vz2yObaQkLL7YFe/pme2cpvDsCwI1WXIfL+5eLz0MI9gFG24Re16RzUsI8t9XZn9ZWvgLNDrJBmrqXJO7GNQQ==
- dependencies:
- "@types/react" "*"
+"@types/prop-types@*", "@types/prop-types@^15.7.7":
+ version "15.7.8"
+ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.8.tgz#805eae6e8f41bd19e88917d2ea200dc992f405d3"
+ integrity sha512-kMpQpfZKSCBqltAJwskgePRaYRFukDkm1oItcAbC3gNELR20XIBcN9VRgg4+m8DKsTfkWeA4m4Imp4DDuWy7FQ==
-"@types/react-transition-group@^4.4.6":
- version "4.4.6"
- resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz"
- integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==
+"@types/react-transition-group@^4.4.7":
+ version "4.4.7"
+ resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.7.tgz#bf69f269d74aa78b99097673ca6dd6824a68ef1c"
+ integrity sha512-ICCyBl5mvyqYp8Qeq9B5G/fyBSRC0zx3XM3sCC6KkcMsNeAHqXBKkmat4GqdJET5jtYUpZXrxI5flve5qhi2Eg==
dependencies:
"@types/react" "*"
"@types/react@*", "@types/react@^18.2.14":
- version "18.2.14"
- resolved "https://registry.npmjs.org/@types/react/-/react-18.2.14.tgz"
- integrity sha512-A0zjq+QN/O0Kpe30hA1GidzyFjatVvrpIvWLxD+xv67Vt91TWWgco9IvrJBkeyHm1trGaFS/FSGqPlhyeZRm0g==
+ version "18.2.28"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.28.tgz#86877465c0fcf751659a36c769ecedfcfacee332"
+ integrity sha512-ad4aa/RaaJS3hyGz0BGegdnSRXQBkd1CCYDCdNjBPg90UUpLgo+WlJqb9fMYUxtehmzF3PJaTWqRZjko6BRzBg==
dependencies:
"@types/prop-types" "*"
"@types/scheduler" "*"
csstype "^3.0.2"
"@types/scheduler@*":
- version "0.16.3"
- resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz"
- integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==
+ version "0.16.4"
+ resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.4.tgz#fedc3e5b15c26dc18faae96bf1317487cb3658cf"
+ integrity sha512-2L9ifAGl7wmXwP4v3pN4p2FLhD0O1qsJpvKmNin5VA8+UvNVb447UDaAEV6UdrkA+m/Xs58U1RFps44x6TFsVQ==
-"@types/semver@^7.3.12":
- version "7.5.0"
- resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz"
- integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
+"@types/semver@^7.5.0":
+ version "7.5.3"
+ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.3.tgz#9a726e116beb26c24f1ccd6850201e1246122e04"
+ integrity sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==
"@types/throttle-debounce@^2.1.0":
version "2.1.0"
- resolved "https://registry.npmjs.org/@types/throttle-debounce/-/throttle-debounce-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@types/throttle-debounce/-/throttle-debounce-2.1.0.tgz#1c3df624bfc4b62f992d3012b84c56d41eab3776"
integrity sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==
"@typescript-eslint/eslint-plugin@^6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.0.0.tgz"
- integrity sha512-xuv6ghKGoiq856Bww/yVYnXGsKa588kY3M0XK7uUW/3fJNNULKRfZfSBkMTSpqGG/8ZCXCadfh8G/z/B4aqS/A==
- dependencies:
- "@eslint-community/regexpp" "^4.5.0"
- "@typescript-eslint/scope-manager" "6.0.0"
- "@typescript-eslint/type-utils" "6.0.0"
- "@typescript-eslint/utils" "6.0.0"
- "@typescript-eslint/visitor-keys" "6.0.0"
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.5.tgz#f4024b9f63593d0c2b5bd6e4ca027e6f30934d4f"
+ integrity sha512-JhtAwTRhOUcP96D0Y6KYnwig/MRQbOoLGXTON2+LlyB/N35SP9j1boai2zzwXb7ypKELXMx3DVk9UTaEq1vHEw==
+ dependencies:
+ "@eslint-community/regexpp" "^4.5.1"
+ "@typescript-eslint/scope-manager" "6.7.5"
+ "@typescript-eslint/type-utils" "6.7.5"
+ "@typescript-eslint/utils" "6.7.5"
+ "@typescript-eslint/visitor-keys" "6.7.5"
debug "^4.3.4"
- grapheme-splitter "^1.0.4"
graphemer "^1.4.0"
ignore "^5.2.4"
natural-compare "^1.4.0"
- natural-compare-lite "^1.4.0"
- semver "^7.5.0"
+ semver "^7.5.4"
ts-api-utils "^1.0.1"
"@typescript-eslint/parser@^6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.0.0.tgz"
- integrity sha512-TNaufYSPrr1U8n+3xN+Yp9g31vQDJqhXzzPSHfQDLcaO4tU+mCfODPxCwf4H530zo7aUBE3QIdxCXamEnG04Tg==
- dependencies:
- "@typescript-eslint/scope-manager" "6.0.0"
- "@typescript-eslint/types" "6.0.0"
- "@typescript-eslint/typescript-estree" "6.0.0"
- "@typescript-eslint/visitor-keys" "6.0.0"
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.7.5.tgz#8d7ca3d1fbd9d5a58cc4d30b2aa797a760137886"
+ integrity sha512-bIZVSGx2UME/lmhLcjdVc7ePBwn7CLqKarUBL4me1C5feOd663liTGjMBGVcGr+BhnSLeP4SgwdvNnnkbIdkCw==
+ dependencies:
+ "@typescript-eslint/scope-manager" "6.7.5"
+ "@typescript-eslint/types" "6.7.5"
+ "@typescript-eslint/typescript-estree" "6.7.5"
+ "@typescript-eslint/visitor-keys" "6.7.5"
debug "^4.3.4"
-"@typescript-eslint/scope-manager@6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.0.0.tgz"
- integrity sha512-o4q0KHlgCZTqjuaZ25nw5W57NeykZT9LiMEG4do/ovwvOcPnDO1BI5BQdCsUkjxFyrCL0cSzLjvIMfR9uo7cWg==
+"@typescript-eslint/scope-manager@6.7.5":
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.7.5.tgz#1cf33b991043886cd67f4f3600b8e122fc14e711"
+ integrity sha512-GAlk3eQIwWOJeb9F7MKQ6Jbah/vx1zETSDw8likab/eFcqkjSD7BI75SDAeC5N2L0MmConMoPvTsmkrg71+B1A==
dependencies:
- "@typescript-eslint/types" "6.0.0"
- "@typescript-eslint/visitor-keys" "6.0.0"
+ "@typescript-eslint/types" "6.7.5"
+ "@typescript-eslint/visitor-keys" "6.7.5"
-"@typescript-eslint/type-utils@6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.0.0.tgz"
- integrity sha512-ah6LJvLgkoZ/pyJ9GAdFkzeuMZ8goV6BH7eC9FPmojrnX9yNCIsfjB+zYcnex28YO3RFvBkV6rMV6WpIqkPvoQ==
+"@typescript-eslint/type-utils@6.7.5":
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.7.5.tgz#0a65949ec16588d8956f6d967f7d9c84ddb2d72a"
+ integrity sha512-Gs0qos5wqxnQrvpYv+pf3XfcRXW6jiAn9zE/K+DlmYf6FcpxeNYN0AIETaPR7rHO4K2UY+D0CIbDP9Ut0U4m1g==
dependencies:
- "@typescript-eslint/typescript-estree" "6.0.0"
- "@typescript-eslint/utils" "6.0.0"
+ "@typescript-eslint/typescript-estree" "6.7.5"
+ "@typescript-eslint/utils" "6.7.5"
debug "^4.3.4"
ts-api-utils "^1.0.1"
-"@typescript-eslint/types@6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.0.0.tgz"
- integrity sha512-Zk9KDggyZM6tj0AJWYYKgF0yQyrcnievdhG0g5FqyU3Y2DRxJn4yWY21sJC0QKBckbsdKKjYDV2yVrrEvuTgxg==
+"@typescript-eslint/types@6.7.5":
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.7.5.tgz#4571320fb9cf669de9a95d9849f922c3af809790"
+ integrity sha512-WboQBlOXtdj1tDFPyIthpKrUb+kZf2VroLZhxKa/VlwLlLyqv/PwUNgL30BlTVZV1Wu4Asu2mMYPqarSO4L5ZQ==
-"@typescript-eslint/typescript-estree@6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.0.0.tgz"
- integrity sha512-2zq4O7P6YCQADfmJ5OTDQTP3ktajnXIRrYAtHM9ofto/CJZV3QfJ89GEaM2BNGeSr1KgmBuLhEkz5FBkS2RQhQ==
+"@typescript-eslint/typescript-estree@6.7.5":
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.5.tgz#4578de1a26e9f24950f029a4f00d1bfe41f15a39"
+ integrity sha512-NhJiJ4KdtwBIxrKl0BqG1Ur+uw7FiOnOThcYx9DpOGJ/Abc9z2xNzLeirCG02Ig3vkvrc2qFLmYSSsaITbKjlg==
dependencies:
- "@typescript-eslint/types" "6.0.0"
- "@typescript-eslint/visitor-keys" "6.0.0"
+ "@typescript-eslint/types" "6.7.5"
+ "@typescript-eslint/visitor-keys" "6.7.5"
debug "^4.3.4"
globby "^11.1.0"
is-glob "^4.0.3"
- semver "^7.5.0"
+ semver "^7.5.4"
ts-api-utils "^1.0.1"
-"@typescript-eslint/utils@6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.0.0.tgz"
- integrity sha512-SOr6l4NB6HE4H/ktz0JVVWNXqCJTOo/mHnvIte1ZhBQ0Cvd04x5uKZa3zT6tiodL06zf5xxdK8COiDvPnQ27JQ==
- dependencies:
- "@eslint-community/eslint-utils" "^4.3.0"
- "@types/json-schema" "^7.0.11"
- "@types/semver" "^7.3.12"
- "@typescript-eslint/scope-manager" "6.0.0"
- "@typescript-eslint/types" "6.0.0"
- "@typescript-eslint/typescript-estree" "6.0.0"
- eslint-scope "^5.1.1"
- semver "^7.5.0"
-
-"@typescript-eslint/visitor-keys@6.0.0":
- version "6.0.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.0.0.tgz"
- integrity sha512-cvJ63l8c0yXdeT5POHpL0Q1cZoRcmRKFCtSjNGJxPkcP571EfZMcNbzWAc7oK3D1dRzm/V5EwtkANTZxqvuuUA==
+"@typescript-eslint/utils@6.7.5":
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.7.5.tgz#ab847b53d6b65e029314b8247c2336843dba81ab"
+ integrity sha512-pfRRrH20thJbzPPlPc4j0UNGvH1PjPlhlCMq4Yx7EGjV7lvEeGX0U6MJYe8+SyFutWgSHsdbJ3BXzZccYggezA==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.4.0"
+ "@types/json-schema" "^7.0.12"
+ "@types/semver" "^7.5.0"
+ "@typescript-eslint/scope-manager" "6.7.5"
+ "@typescript-eslint/types" "6.7.5"
+ "@typescript-eslint/typescript-estree" "6.7.5"
+ semver "^7.5.4"
+
+"@typescript-eslint/visitor-keys@6.7.5":
+ version "6.7.5"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.5.tgz#84c68d6ceb5b12d5246b918b84f2b79affd6c2f1"
+ integrity sha512-3MaWdDZtLlsexZzDSdQWsFQ9l9nL8B80Z4fImSpyllFC/KLqWQRdEcB+gGGO+N3Q2uL40EsG66wZLsohPxNXvg==
dependencies:
- "@typescript-eslint/types" "6.0.0"
+ "@typescript-eslint/types" "6.7.5"
eslint-visitor-keys "^3.4.1"
"@yarnpkg/lockfile@^1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
"@yarnpkg/parsers@3.0.0-rc.46":
version "3.0.0-rc.46"
- resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz"
+ resolved "https://registry.yarnpkg.com/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz#03f8363111efc0ea670e53b0282cd3ef62de4e01"
integrity sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==
dependencies:
js-yaml "^3.10.0"
@@ -3144,7 +2513,7 @@
"@zkochan/cmd-shim@^3.1.0":
version "3.1.0"
- resolved "https://registry.npmjs.org/@zkochan/cmd-shim/-/cmd-shim-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@zkochan/cmd-shim/-/cmd-shim-3.1.0.tgz#2ab8ed81f5bb5452a85f25758eb9b8681982fd2e"
integrity sha512-o8l0+x7C7sMZU3v9GuJIAU10qQLtwR1dtRQIOmlNMtyaqhmpXOzx1HWiYoWfmmf9HHZoAkXpc9TM9PQYF9d4Jg==
dependencies:
is-windows "^1.0.0"
@@ -3153,14 +2522,14 @@
"@zkochan/js-yaml@0.0.6":
version "0.0.6"
- resolved "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz#975f0b306e705e28b8068a07737fa46d3fc04826"
integrity sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==
dependencies:
argparse "^2.0.1"
JSONStream@^1.0.4, JSONStream@^1.3.4:
version "1.3.5"
- resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz"
+ resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0"
integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==
dependencies:
jsonparse "^1.2.0"
@@ -3168,12 +2537,12 @@ JSONStream@^1.0.4, JSONStream@^1.3.4:
abbrev@1:
version "1.1.1"
- resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
abort-controller@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392"
integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==
dependencies:
event-target-shim "^5.0.0"
@@ -3185,38 +2554,38 @@ abortcontroller-polyfill@^1.1.9:
acorn-jsx@^5.3.2:
version "5.3.2"
- resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
acorn@^8.9.0:
version "8.10.0"
- resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5"
integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==
agent-base@4, agent-base@^4.3.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee"
integrity sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==
dependencies:
es6-promisify "^5.0.0"
agent-base@~4.2.1:
version "4.2.1"
- resolved "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9"
integrity sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==
dependencies:
es6-promisify "^5.0.0"
agentkeepalive@^3.4.1:
version "3.5.2"
- resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-3.5.2.tgz#a113924dd3fa24a0bc3b78108c450c2abee00f67"
integrity sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==
dependencies:
humanize-ms "^1.2.1"
-ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4:
+ajv@^6.12.3, ajv@^6.12.4:
version "6.12.6"
- resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
dependencies:
fast-deep-equal "^3.1.1"
@@ -3226,61 +2595,61 @@ ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4:
ansi-colors@^4.1.1:
version "4.1.3"
- resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b"
integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==
ansi-escapes@^3.2.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==
ansi-regex@^2.0.0:
version "2.1.1"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==
ansi-regex@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1"
integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==
ansi-regex@^4.1.0:
version "4.1.1"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed"
integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==
ansi-regex@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
ansi-styles@^3.2.0, ansi-styles@^3.2.1:
version "3.2.1"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
dependencies:
color-convert "^1.9.0"
ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
color-convert "^2.0.1"
any-promise@^1.0.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==
aproba@^1.0.3, aproba@^1.1.1:
version "1.2.0"
- resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
aproba@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc"
integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==
are-docs-informative@^0.0.2:
@@ -3290,7 +2659,7 @@ are-docs-informative@^0.0.2:
are-we-there-yet@~1.1.2:
version "1.1.7"
- resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz"
+ resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146"
integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==
dependencies:
delegates "^1.0.0"
@@ -3298,14 +2667,14 @@ are-we-there-yet@~1.1.2:
argparse@^1.0.7:
version "1.0.10"
- resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
dependencies:
sprintf-js "~1.0.2"
argparse@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
aria-query@^5.1.3:
@@ -3317,17 +2686,17 @@ aria-query@^5.1.3:
arr-diff@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==
arr-flatten@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
arr-union@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==
array-buffer-byte-length@^1.0.0:
@@ -3340,105 +2709,104 @@ array-buffer-byte-length@^1.0.0:
array-differ@^2.0.3:
version "2.1.0"
- resolved "https://registry.npmjs.org/array-differ/-/array-differ-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-2.1.0.tgz#4b9c1c3f14b906757082925769e8ab904f4801b1"
integrity sha512-KbUpJgx909ZscOc/7CLATBFam7P1Z1QRQInvgT0UztM9Q72aGKCunKASAl7WNW0tnPmPyEMeMhdsfWhfmW037w==
array-find-index@^1.0.1:
version "1.0.2"
- resolved "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
integrity sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==
array-ify@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece"
integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==
array-includes@^3.1.6:
- version "3.1.6"
- resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f"
- integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==
+ version "3.1.7"
+ resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda"
+ integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
- get-intrinsic "^1.1.3"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
+ get-intrinsic "^1.2.1"
is-string "^1.0.7"
array-union@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==
dependencies:
array-uniq "^1.0.1"
array-union@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
array-uniq@^1.0.1:
version "1.0.3"
- resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==
array-unique@^0.3.2:
version "0.3.2"
- resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==
-array.prototype.flat@^1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz#ffc6576a7ca3efc2f46a143b9d1dda9b4b3cf5e2"
- integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==
+array.prototype.findlastindex@^1.2.2:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz#b37598438f97b579166940814e2c0493a4f50207"
+ integrity sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
es-shim-unscopables "^1.0.0"
+ get-intrinsic "^1.2.1"
-array.prototype.flatmap@^1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183"
- integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==
+array.prototype.flat@^1.3.1:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18"
+ integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
es-shim-unscopables "^1.0.0"
-array.prototype.foreach@^1.0.2:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/array.prototype.foreach/-/array.prototype.foreach-1.0.5.tgz#01228c468b69bf3aff9945669db886c51b3f92fb"
- integrity sha512-FSk2BdZDQVdxGeh63usPldJo5xtkdBp3iYBqEGlGnId5TV0xtrKOnz9kXzfFL5L/81EIuVkxtiYtJSE2IjKoPA==
+array.prototype.flatmap@^1.3.1:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527"
+ integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==
dependencies:
call-bind "^1.0.2"
define-properties "^1.2.0"
es-abstract "^1.22.1"
- es-array-method-boxes-properly "^1.0.0"
- get-intrinsic "^1.2.1"
- is-string "^1.0.7"
+ es-shim-unscopables "^1.0.0"
-array.prototype.reduce@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.4.tgz"
- integrity sha512-WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw==
+array.prototype.reduce@^1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz#63149931808c5fc1e1354814923d92d45f7d96d5"
+ integrity sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.3"
- es-abstract "^1.19.2"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
es-array-method-boxes-properly "^1.0.0"
is-string "^1.0.7"
array.prototype.tosorted@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532"
- integrity sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz#620eff7442503d66c799d95503f82b475745cefd"
+ integrity sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
es-shim-unscopables "^1.0.0"
- get-intrinsic "^1.1.3"
+ get-intrinsic "^1.2.1"
arraybuffer.prototype.slice@^1.0.2:
version "1.0.2"
@@ -3455,29 +2823,29 @@ arraybuffer.prototype.slice@^1.0.2:
arrify@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==
asap@^2.0.0:
version "2.0.6"
- resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==
asn1@~0.2.3:
version "0.2.6"
- resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz"
+ resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"
integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==
dependencies:
safer-buffer "~2.1.0"
assert-plus@1.0.0, assert-plus@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==
assign-symbols@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==
ast-types-flow@^0.0.7:
@@ -3485,29 +2853,31 @@ ast-types-flow@^0.0.7:
resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
integrity sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==
+asynciterator.prototype@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz#8c5df0514936cdd133604dfcc9d3fb93f09b2b62"
+ integrity sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==
+ dependencies:
+ has-symbols "^1.0.3"
+
asynckit@^0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
atob-lite@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/atob-lite/-/atob-lite-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696"
integrity sha512-LEeSAWeh2Gfa2FtlQE1shxQ8zi5F9GHarrGKz08TMdODD5T4eH6BMsvtnhbWZ+XQn+Gb6om/917ucvRu7l7ukw==
atob@^2.1.2:
version "2.1.2"
- resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
-attr-accept@^2.2.2:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/attr-accept/-/attr-accept-2.2.2.tgz#646613809660110749e92f2c10833b70968d929b"
- integrity sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==
-
autosuggest-highlight@^3.1.1:
version "3.3.4"
- resolved "https://registry.npmjs.org/autosuggest-highlight/-/autosuggest-highlight-3.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/autosuggest-highlight/-/autosuggest-highlight-3.3.4.tgz#d71b575ba8eab40b5adba73df9244e9ba88cc387"
integrity sha512-j6RETBD2xYnrVcoV1S5R4t3WxOlWZKyDQjkwnggDPSjF5L4jV98ZltBpvPvbkM1HtoSe5o+bNrTHyjPbieGeYA==
dependencies:
remove-accents "^0.4.2"
@@ -3519,23 +2889,23 @@ available-typed-arrays@^1.0.5:
aws-sign2@~0.7.0:
version "0.7.0"
- resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==
aws4@^1.8.0:
- version "1.11.0"
- resolved "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz"
- integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==
+ version "1.12.0"
+ resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.12.0.tgz#ce1c9d143389679e253b314241ea9aa5cec980d3"
+ integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==
axe-core@^4.6.2:
- version "4.7.2"
- resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.2.tgz#040a7342b20765cb18bb50b628394c21bccc17a0"
- integrity sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==
+ version "4.8.2"
+ resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.8.2.tgz#2f6f3cde40935825cf4465e3c1c9e77b240ff6ae"
+ integrity sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==
axios@^1.0.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz"
- integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-1.5.1.tgz#11fbaa11fc35f431193a9564109c88c1f27b585f"
+ integrity sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==
dependencies:
follow-redirects "^1.15.0"
form-data "^4.0.0"
@@ -3548,26 +2918,9 @@ axobject-query@^3.1.1:
dependencies:
dequal "^2.0.3"
-babel-merge@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/babel-merge/-/babel-merge-3.0.0.tgz"
- integrity sha512-eBOBtHnzt9xvnjpYNI5HmaPp/b2vMveE5XggzqHnQeHJ8mFIBrBv6WZEVIj5jJ2uwTItkqKo9gWzEEcBxEq0yw==
- dependencies:
- deepmerge "^2.2.1"
- object.omit "^3.0.0"
-
-babel-plugin-macros@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1"
- integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==
- dependencies:
- "@babel/runtime" "^7.12.5"
- cosmiconfig "^7.0.0"
- resolve "^1.19.0"
-
balanced-match@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
base-x@^3.0.8:
@@ -3579,12 +2932,12 @@ base-x@^3.0.8:
base64-js@^1.3.1:
version "1.5.1"
- resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
base@^0.11.1:
version "0.11.2"
- resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz"
+ resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==
dependencies:
cache-base "^1.0.1"
@@ -3597,24 +2950,24 @@ base@^0.11.1:
bcrypt-pbkdf@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==
dependencies:
tweetnacl "^0.14.3"
before-after-hook@^2.0.0:
version "2.2.3"
- resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c"
integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==
-big-integer@^1.6.16, big-integer@^1.6.44:
+big-integer@^1.6.44:
version "1.6.51"
resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686"
integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==
bl@^4.0.3:
version "4.1.0"
- resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a"
integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==
dependencies:
buffer "^5.5.0"
@@ -3623,7 +2976,7 @@ bl@^4.0.3:
bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5:
version "3.7.2"
- resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz"
+ resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
boolbase@^1.0.0:
@@ -3640,7 +2993,7 @@ bplist-parser@^0.2.0:
brace-expansion@^1.1.7:
version "1.1.11"
- resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
dependencies:
balanced-match "^1.0.0"
@@ -3648,7 +3001,7 @@ brace-expansion@^1.1.7:
braces@^2.3.1:
version "2.3.2"
- resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
dependencies:
arr-flatten "^1.1.0"
@@ -3664,58 +3017,34 @@ braces@^2.3.1:
braces@^3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
dependencies:
fill-range "^7.0.1"
-broadcast-channel@^3.4.1:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/broadcast-channel/-/broadcast-channel-3.7.0.tgz#2dfa5c7b4289547ac3f6705f9c00af8723889937"
- integrity sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==
- dependencies:
- "@babel/runtime" "^7.7.2"
- detect-node "^2.1.0"
- js-sha3 "0.8.0"
- microseconds "0.2.0"
- nano-time "1.0.0"
- oblivious-set "1.0.0"
- rimraf "3.0.2"
- unload "2.2.0"
-
-browserslist@^4.21.3:
- version "4.21.4"
- resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz"
- integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==
- dependencies:
- caniuse-lite "^1.0.30001400"
- electron-to-chromium "^1.4.251"
- node-releases "^2.0.6"
- update-browserslist-db "^1.0.9"
-
browserslist@^4.6.6:
- version "4.21.10"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0"
- integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==
+ version "4.22.1"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619"
+ integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==
dependencies:
- caniuse-lite "^1.0.30001517"
- electron-to-chromium "^1.4.477"
+ caniuse-lite "^1.0.30001541"
+ electron-to-chromium "^1.4.535"
node-releases "^2.0.13"
- update-browserslist-db "^1.0.11"
+ update-browserslist-db "^1.0.13"
btoa-lite@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337"
integrity sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==
buffer-from@^1.0.0:
version "1.1.2"
- resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
buffer@^5.5.0:
version "5.7.1"
- resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz"
+ resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
dependencies:
base64-js "^1.3.1"
@@ -3723,12 +3052,12 @@ buffer@^5.5.0:
builtin-modules@^3.3.0:
version "3.3.0"
- resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6"
integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==
builtins@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88"
integrity sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==
bundle-name@^3.0.0:
@@ -3740,17 +3069,17 @@ bundle-name@^3.0.0:
byline@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1"
integrity sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q==
byte-size@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/byte-size/-/byte-size-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-5.0.1.tgz#4b651039a5ecd96767e71a3d7ed380e48bed4191"
integrity sha512-/XuKeqWocKsYa/cBY1YbSJSWWqTi4cFgr9S6OyM7PBaPbr9zvNGwWP33vt0uqGhwDdN+y3yhbXVILEUpnwEWGw==
cacache@^12.0.0, cacache@^12.0.3:
version "12.0.4"
- resolved "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c"
integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==
dependencies:
bluebird "^3.5.5"
@@ -3771,7 +3100,7 @@ cacache@^12.0.0, cacache@^12.0.3:
cache-base@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==
dependencies:
collection-visit "^1.0.0"
@@ -3786,44 +3115,44 @@ cache-base@^1.0.1:
call-bind@^1.0.0, call-bind@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
dependencies:
function-bind "^1.1.1"
get-intrinsic "^1.0.2"
call-me-maybe@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz"
- integrity sha512-wCyFsDQkKPwwF8BDwOiWNx/9K45L/hvggQiDbve+viMNMQnWhrlYIuBk09offfwCRtCO9P6XwUttufzU11WCVw==
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa"
+ integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==
caller-callsite@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134"
integrity sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==
dependencies:
callsites "^2.0.0"
caller-path@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4"
integrity sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==
dependencies:
caller-callsite "^2.0.0"
callsites@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50"
integrity sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==
callsites@^3.0.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
camelcase-keys@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
integrity sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==
dependencies:
camelcase "^2.0.0"
@@ -3831,7 +3160,7 @@ camelcase-keys@^2.0.0:
camelcase-keys@^4.0.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77"
integrity sha512-Ej37YKYbFUI8QiYlvj9YHb6/Z60dZyPJW0Cs8sFilMbd2lP0bw3ylAq9yJkK4lcTA2dID5fG8LjmJYbO7kWb7Q==
dependencies:
camelcase "^4.1.0"
@@ -3840,7 +3169,7 @@ camelcase-keys@^4.0.0:
camelcase-keys@^6.2.2:
version "6.2.2"
- resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0"
integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==
dependencies:
camelcase "^5.3.1"
@@ -3849,47 +3178,42 @@ camelcase-keys@^6.2.2:
camelcase@^2.0.0:
version "2.1.1"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
integrity sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==
camelcase@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
integrity sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==
camelcase@^5.0.0, camelcase@^5.3.1:
version "5.3.1"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
-caniuse-lite@^1.0.30001400:
- version "1.0.30001415"
- resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001415.tgz"
- integrity sha512-ER+PfgCJUe8BqunLGWd/1EY4g8AzQcsDAVzdtMGKVtQEmKAwaFfU6vb7EAVIqTMYsqxBorYZi2+22Iouj/y7GQ==
-
-caniuse-lite@^1.0.30001517:
- version "1.0.30001538"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001538.tgz#9dbc6b9af1ff06b5eb12350c2012b3af56744f3f"
- integrity sha512-HWJnhnID+0YMtGlzcp3T9drmBJUVDchPJ08tpUGFLs9CYlwWPH2uLgpHn8fND5pCgXVtnGS3H4QR9XLMHVNkHw==
+caniuse-lite@^1.0.30001541:
+ version "1.0.30001549"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001549.tgz#7d1a3dce7ea78c06ed72c32c2743ea364b3615aa"
+ integrity sha512-qRp48dPYSCYaP+KurZLhDYdVE+yEyht/3NlmcJgVQ2VMGt6JL36ndQ/7rgspdZsJuxDPFIo/OzBT2+GmIJ53BA==
canonicalize@^1.0.1:
version "1.0.8"
- resolved "https://registry.npmjs.org/canonicalize/-/canonicalize-1.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/canonicalize/-/canonicalize-1.0.8.tgz#24d1f1a00ed202faafd9bf8e63352cd4450c6df1"
integrity sha512-0CNTVCLZggSh7bc5VkX5WWPWO+cyZbNd07IHIsSXLia/eAq+r836hgk+8BKoEh7949Mda87VUOitx5OddVj64A==
-case-anything@^2.1.10:
- version "2.1.10"
- resolved "https://registry.npmjs.org/case-anything/-/case-anything-2.1.10.tgz"
- integrity sha512-JczJwVrCP0jPKh05McyVsuOg6AYosrB9XWZKbQzXeDAm2ClE/PJE/BcrrQrVyGYH7Jg8V/LDupmyL4kFlVsVFQ==
+case-anything@^2.1.13:
+ version "2.1.13"
+ resolved "https://registry.yarnpkg.com/case-anything/-/case-anything-2.1.13.tgz#0cdc16278cb29a7fcdeb072400da3f342ba329e9"
+ integrity sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==
caseless@~0.12.0:
version "0.12.0"
- resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz"
+ resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==
-chalk@^2.0.0, chalk@^2.3.1, chalk@^2.4.2:
+chalk@^2.3.1, chalk@^2.4.2:
version "2.4.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
dependencies:
ansi-styles "^3.2.1"
@@ -3898,7 +3222,7 @@ chalk@^2.0.0, chalk@^2.3.1, chalk@^2.4.2:
chalk@^4.0.0, chalk@^4.1.0:
version "4.1.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
dependencies:
ansi-styles "^4.1.0"
@@ -3906,12 +3230,12 @@ chalk@^4.0.0, chalk@^4.1.0:
chardet@^0.7.0:
version "0.7.0"
- resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
chownr@^1.1.1, chownr@^1.1.2, chownr@^1.1.4:
version "1.1.4"
- resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
chrome-trace-event@^1.0.2, chrome-trace-event@^1.0.3:
@@ -3921,12 +3245,12 @@ chrome-trace-event@^1.0.2, chrome-trace-event@^1.0.3:
ci-info@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46"
integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==
class-utils@^0.3.5:
version "0.3.6"
- resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz"
+ resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==
dependencies:
arr-union "^3.1.0"
@@ -3936,36 +3260,36 @@ class-utils@^0.3.5:
classnames@^2.3.2:
version "2.3.2"
- resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924"
integrity sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==
cli-cursor@3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==
dependencies:
restore-cursor "^3.1.0"
cli-cursor@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
integrity sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==
dependencies:
restore-cursor "^2.0.0"
cli-spinners@2.6.1:
version "2.6.1"
- resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d"
integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==
cli-width@^2.0.0:
version "2.2.1"
- resolved "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
cliui@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5"
integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==
dependencies:
string-width "^3.1.0"
@@ -3974,7 +3298,7 @@ cliui@^5.0.0:
cliui@^7.0.2:
version "7.0.4"
- resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
dependencies:
string-width "^4.2.0"
@@ -3983,7 +3307,7 @@ cliui@^7.0.2:
cliui@^8.0.1:
version "8.0.1"
- resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==
dependencies:
string-width "^4.2.0"
@@ -3992,7 +3316,7 @@ cliui@^8.0.1:
clone-deep@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"
integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==
dependencies:
is-plain-object "^2.0.4"
@@ -4001,7 +3325,7 @@ clone-deep@^4.0.1:
clone@^1.0.2:
version "1.0.4"
- resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==
clone@^2.1.1:
@@ -4009,9 +3333,9 @@ clone@^2.1.1:
resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f"
integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==
-clsx@^1.1.1, clsx@^1.2.1:
+clsx@^1.1.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12"
integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==
clsx@^2.0.0:
@@ -4021,12 +3345,12 @@ clsx@^2.0.0:
code-point-at@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==
collection-visit@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==
dependencies:
map-visit "^1.0.0"
@@ -4034,31 +3358,31 @@ collection-visit@^1.0.0:
color-convert@^1.9.0:
version "1.9.3"
- resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
dependencies:
color-name "1.1.3"
color-convert@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
dependencies:
color-name "~1.1.4"
color-name@1.1.3:
version "1.1.3"
- resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
color-name@~1.1.4:
version "1.1.4"
- resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
columnify@^1.5.4:
version "1.6.0"
- resolved "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3"
integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==
dependencies:
strip-ansi "^6.0.1"
@@ -4066,7 +3390,7 @@ columnify@^1.5.4:
combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:
version "1.0.8"
- resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
dependencies:
delayed-stream "~1.0.0"
@@ -4083,7 +3407,7 @@ comment-parser@1.4.0:
compare-func@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3"
integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==
dependencies:
array-ify "^1.0.0"
@@ -4091,17 +3415,17 @@ compare-func@^2.0.0:
component-emitter@^1.2.1:
version "1.3.0"
- resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
concat-map@0.0.1:
version "0.0.1"
- resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
concat-stream@^1.5.0:
version "1.6.2"
- resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
dependencies:
buffer-from "^1.0.0"
@@ -4111,7 +3435,7 @@ concat-stream@^1.5.0:
concat-stream@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1"
integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==
dependencies:
buffer-from "^1.0.0"
@@ -4121,7 +3445,7 @@ concat-stream@^2.0.0:
config-chain@^1.1.11:
version "1.1.13"
- resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz"
+ resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4"
integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==
dependencies:
ini "^1.3.4"
@@ -4134,12 +3458,12 @@ confusing-browser-globals@^1.0.10:
console-control-strings@^1.0.0, console-control-strings@~1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==
conventional-changelog-angular@^5.0.3:
version "5.0.13"
- resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c"
integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==
dependencies:
compare-func "^2.0.0"
@@ -4147,7 +3471,7 @@ conventional-changelog-angular@^5.0.3:
conventional-changelog-core@^3.1.6:
version "3.2.3"
- resolved "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-3.2.3.tgz#b31410856f431c847086a7dcb4d2ca184a7d88fb"
integrity sha512-LMMX1JlxPIq/Ez5aYAYS5CpuwbOk6QFp8O4HLAcZxe3vxoCtABkhfjetk8IYdRB9CDQGwJFLR3Dr55Za6XKgUQ==
dependencies:
conventional-changelog-writer "^4.0.6"
@@ -4166,12 +3490,12 @@ conventional-changelog-core@^3.1.6:
conventional-changelog-preset-loader@^2.1.1:
version "2.3.4"
- resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c"
integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==
conventional-changelog-writer@^4.0.6:
version "4.1.0"
- resolved "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.1.0.tgz#1ca7880b75aa28695ad33312a1f2366f4b12659f"
integrity sha512-WwKcUp7WyXYGQmkLsX4QmU42AZ1lqlvRW9mqoyiQzdD+rJWbTepdWoKJuwXTS+yq79XKnQNa93/roViPQrAQgw==
dependencies:
compare-func "^2.0.0"
@@ -4187,7 +3511,7 @@ conventional-changelog-writer@^4.0.6:
conventional-commits-filter@^2.0.2, conventional-commits-filter@^2.0.7:
version "2.0.7"
- resolved "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3"
integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==
dependencies:
lodash.ismatch "^4.4.0"
@@ -4195,7 +3519,7 @@ conventional-commits-filter@^2.0.2, conventional-commits-filter@^2.0.7:
conventional-commits-parser@^3.0.3:
version "3.2.4"
- resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972"
integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==
dependencies:
JSONStream "^1.0.4"
@@ -4207,7 +3531,7 @@ conventional-commits-parser@^3.0.3:
conventional-recommended-bump@^5.0.0:
version "5.0.1"
- resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-5.0.1.tgz#5af63903947b6e089e77767601cb592cabb106ba"
integrity sha512-RVdt0elRcCxL90IrNP0fYCpq1uGt2MALko0eyeQ+zQuDVWtMGAy9ng6yYn3kax42lCj9+XBxQ8ZN6S9bdKxDhQ==
dependencies:
concat-stream "^2.0.0"
@@ -4219,21 +3543,9 @@ conventional-recommended-bump@^5.0.0:
meow "^4.0.0"
q "^1.5.1"
-convert-source-map@^1.5.0:
- version "1.9.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
- integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
-
-convert-source-map@^1.7.0:
- version "1.8.0"
- resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz"
- integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==
- dependencies:
- safe-buffer "~5.1.1"
-
copy-concurrently@^1.0.0:
version "1.0.5"
- resolved "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0"
integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==
dependencies:
aproba "^1.1.1"
@@ -4245,22 +3557,22 @@ copy-concurrently@^1.0.0:
copy-descriptor@^0.1.0:
version "0.1.1"
- resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==
core-util-is@1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==
core-util-is@~1.0.0:
version "1.0.3"
- resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
cosmiconfig@^5.1.0:
version "5.2.1"
- resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a"
integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==
dependencies:
import-fresh "^2.0.0"
@@ -4268,17 +3580,6 @@ cosmiconfig@^5.1.0:
js-yaml "^3.13.1"
parse-json "^4.0.0"
-cosmiconfig@^7.0.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6"
- integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==
- dependencies:
- "@types/parse-json" "^4.0.0"
- import-fresh "^3.2.1"
- parse-json "^5.0.0"
- path-type "^4.0.0"
- yaml "^1.10.0"
-
cosmiconfig@^8.0.0:
version "8.3.6"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3"
@@ -4290,13 +3591,13 @@ cosmiconfig@^8.0.0:
path-type "^4.0.0"
crelt@^1.0.0:
- version "1.0.5"
- resolved "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz"
- integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/crelt/-/crelt-1.0.6.tgz#7cc898ea74e190fb6ef9dae57f8f81cf7302df72"
+ integrity sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==
cross-spawn@^6.0.0:
version "6.0.5"
- resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==
dependencies:
nice-try "^1.0.4"
@@ -4307,7 +3608,7 @@ cross-spawn@^6.0.0:
cross-spawn@^7.0.2, cross-spawn@^7.0.3:
version "7.0.3"
- resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
dependencies:
path-key "^3.1.0"
@@ -4316,14 +3617,9 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3:
crypto-js@^4.1.1:
version "4.1.1"
- resolved "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf"
integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==
-css-mediaquery@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/css-mediaquery/-/css-mediaquery-0.1.2.tgz#6a2c37344928618631c54bd33cedd301da18bea0"
- integrity sha512-COtn4EROW5dBGlE/4PiKnh6rZpAPxDeFLaEEwt4i10jpDMFt2EhQGS79QmmrO+iKCHv0PU/HrOWEhijFd1x99Q==
-
css-select@^4.1.3:
version "4.3.0"
resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b"
@@ -4343,14 +3639,6 @@ css-tree@^1.1.2, css-tree@^1.1.3:
mdn-data "2.0.14"
source-map "^0.6.1"
-css-vendor@^2.0.8:
- version "2.0.8"
- resolved "https://registry.yarnpkg.com/css-vendor/-/css-vendor-2.0.8.tgz#e47f91d3bd3117d49180a3c935e62e3d9f7f449d"
- integrity sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==
- dependencies:
- "@babel/runtime" "^7.8.3"
- is-in-browser "^1.0.2"
-
css-what@^6.0.1:
version "6.1.0"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4"
@@ -4363,22 +3651,22 @@ csso@^4.2.0:
dependencies:
css-tree "^1.1.2"
-csstype@^3.0.2, csstype@^3.1.2:
+csstype@^3.0.2:
version "3.1.2"
- resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b"
integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==
currently-unhandled@^0.4.1:
version "0.4.1"
- resolved "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
integrity sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==
dependencies:
array-find-index "^1.0.1"
cyclist@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz"
- integrity sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.2.tgz#673b5f233bf34d8e602b949429f8171d9121bea3"
+ integrity sha512-0sVXIohTfLqVIW3kb/0n6IiWF3Ifj5nm2XaSrLq2DI6fKIGa2fYAZdk917rUneaeLVpYfFcyXE2ft0fe3remsA==
damerau-levenshtein@^1.0.8:
version "1.0.8"
@@ -4387,55 +3675,48 @@ damerau-levenshtein@^1.0.8:
dargs@^4.0.1:
version "4.1.0"
- resolved "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17"
integrity sha512-jyweV/k0rbv2WK4r9KLayuBrSh2Py0tNmV7LBoSMH4hMQyrG8OPyIOWB2VEx4DJKXWmK4lopYMVvORlDt2S8Aw==
dependencies:
number-is-nan "^1.0.0"
dash-get@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/dash-get/-/dash-get-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/dash-get/-/dash-get-1.0.2.tgz#4c9e9ad5ef04c4bf9d3c9a451f6f7997298dcc7c"
integrity sha512-4FbVrHDwfOASx7uQVxeiCTo7ggSdYZbqs8lH+WU6ViypPlDbe9y6IP5VVUDQBv9DcnyaiPT5XT0UWHgJ64zLeQ==
dashdash@^1.12.0:
version "1.14.1"
- resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz"
+ resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==
dependencies:
assert-plus "^1.0.0"
data-uri-to-buffer@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636"
integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==
-date-fns@^2.19.0:
- version "2.30.0"
- resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0"
- integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==
- dependencies:
- "@babel/runtime" "^7.21.0"
-
date-fns@~2.8.1:
version "2.8.1"
- resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.8.1.tgz#2109362ccb6c87c3ca011e9e31f702bc09e4123b"
integrity sha512-EL/C8IHvYRwAHYgFRse4MGAPSqlJVlOrhVYZ75iQBKrnv+ZedmYsgwH3t+BCDuZDXpoo07+q9j4qgSSOa7irJg==
dateformat@^3.0.0:
version "3.0.3"
- resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae"
integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==
debug@3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
dependencies:
ms "2.0.0"
debug@^2.2.0, debug@^2.3.3:
version "2.6.9"
- resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
dependencies:
ms "2.0.0"
@@ -4447,54 +3728,49 @@ debug@^3.1.0, debug@^3.2.7:
dependencies:
ms "^2.1.1"
-debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
+debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
version "4.3.4"
- resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
dependencies:
ms "2.1.2"
debuglog@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492"
integrity sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==
decamelize-keys@^1.0.0, decamelize-keys@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz"
- integrity sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8"
+ integrity sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==
dependencies:
decamelize "^1.1.0"
map-obj "^1.0.0"
decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==
-decode-uri-component@^0.2.0, decode-uri-component@^0.2.2:
+decode-uri-component@^0.2.0:
version "0.2.2"
- resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9"
integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==
dedent@^0.7.0:
version "0.7.0"
- resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==
deep-is@^0.1.3:
version "0.1.4"
- resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
-deepmerge@^2.2.1:
- version "2.2.1"
- resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz"
- integrity sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==
-
deepmerge@^4.3.1:
version "4.3.1"
- resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
default-browser-id@^3.0.0:
@@ -4516,16 +3792,16 @@ default-browser@^4.0.0:
titleize "^3.0.0"
defaults@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz"
- integrity sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a"
+ integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==
dependencies:
clone "^1.0.2"
define-data-property@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.0.tgz#0db13540704e1d8d479a0656cf781267531b9451"
- integrity sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3"
+ integrity sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==
dependencies:
get-intrinsic "^1.2.1"
gopd "^1.0.1"
@@ -4533,7 +3809,7 @@ define-data-property@^1.0.1:
define-lazy-prop@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f"
integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==
define-lazy-prop@^3.0.0:
@@ -4541,15 +3817,7 @@ define-lazy-prop@^3.0.0:
resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz#dbb19adfb746d7fc6d734a06b72f4a00d021255f"
integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==
-define-properties@^1.1.3, define-properties@^1.1.4:
- version "1.1.4"
- resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz"
- integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==
- dependencies:
- has-property-descriptors "^1.0.0"
- object-keys "^1.1.1"
-
-define-properties@^1.2.0:
+define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0, define-properties@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
@@ -4560,21 +3828,21 @@ define-properties@^1.2.0:
define-property@^0.2.5:
version "0.2.5"
- resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz"
+ resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==
dependencies:
is-descriptor "^0.1.0"
define-property@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==
dependencies:
is-descriptor "^1.0.0"
define-property@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d"
integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==
dependencies:
is-descriptor "^1.0.2"
@@ -4582,17 +3850,17 @@ define-property@^2.0.2:
delayed-stream@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
delegates@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==
deprecation@^2.0.0, deprecation@^2.3.1:
version "2.3.1"
- resolved "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919"
integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==
dequal@^2.0.3:
@@ -4602,7 +3870,7 @@ dequal@^2.0.3:
detect-indent@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d"
integrity sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g==
detect-libc@^1.0.3:
@@ -4610,14 +3878,14 @@ detect-libc@^1.0.3:
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==
-detect-node@^2.0.4, detect-node@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1"
- integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==
+detect-libc@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d"
+ integrity sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==
dezalgo@^1.0.0:
version "1.0.4"
- resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81"
integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==
dependencies:
asap "^2.0.0"
@@ -4625,14 +3893,14 @@ dezalgo@^1.0.0:
dir-glob@^2.2.2:
version "2.2.2"
- resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4"
integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==
dependencies:
path-type "^3.0.0"
dir-glob@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
dependencies:
path-type "^4.0.0"
@@ -4646,14 +3914,14 @@ doctrine@^2.1.0:
doctrine@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
dependencies:
esutils "^2.0.2"
dom-helpers@^5.0.1:
version "5.2.1"
- resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902"
integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==
dependencies:
"@babel/runtime" "^7.8.7"
@@ -4680,11 +3948,6 @@ domhandler@^4.2.0, domhandler@^4.2.2, domhandler@^4.3.1:
dependencies:
domelementtype "^2.2.0"
-dompurify@^2.4.3:
- version "2.4.7"
- resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.4.7.tgz#277adeb40a2c84be2d42a8bcd45f582bfa4d0cfc"
- integrity sha512-kxxKlPEDa6Nc5WJi+qRgPbOAbgTpSULL+vI3NUXsZMlkJxTqYI9wg5ZTay2sFrdZRWHPWNi+EdAhcJf81WtoMQ==
-
domutils@^2.8.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135"
@@ -4696,14 +3959,14 @@ domutils@^2.8.0:
dot-prop@^4.2.0:
version "4.2.1"
- resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.1.tgz#45884194a71fc2cda71cbb4bceb3a4dd2f433ba4"
integrity sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==
dependencies:
is-obj "^1.0.0"
dot-prop@^5.1.0:
version "5.3.0"
- resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88"
integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==
dependencies:
is-obj "^2.0.0"
@@ -4720,17 +3983,17 @@ dotenv@^7.0.0:
dotenv@~10.0.0:
version "10.0.0"
- resolved "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81"
integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==
duplexer@^0.1.1:
version "0.1.2"
- resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
duplexify@^3.4.2, duplexify@^3.6.0:
version "3.7.1"
- resolved "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz"
+ resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309"
integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==
dependencies:
end-of-stream "^1.0.0"
@@ -4740,30 +4003,25 @@ duplexify@^3.4.2, duplexify@^3.6.0:
ecc-jsbn@~0.1.1:
version "0.1.2"
- resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"
integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==
dependencies:
jsbn "~0.1.0"
safer-buffer "^2.1.0"
-electron-to-chromium@^1.4.251:
- version "1.4.271"
- resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.271.tgz"
- integrity sha512-BCPBtK07xR1/uY2HFDtl3wK2De66AW4MSiPlLrnPNxKC/Qhccxd59W73654S3y6Rb/k3hmuGJOBnhjfoutetXA==
-
-electron-to-chromium@^1.4.477:
- version "1.4.526"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.526.tgz#1bcda5f2b8238e497c20fcdb41af5da907a770e2"
- integrity sha512-tjjTMjmZAx1g6COrintLTa2/jcafYKxKoiEkdQOrVdbLaHh2wCt2nsAF8ZHweezkrP+dl/VG9T5nabcYoo0U5Q==
+electron-to-chromium@^1.4.535:
+ version "1.4.554"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.554.tgz#04e09c2ee31dc0f1546174033809b54cc372740b"
+ integrity sha512-Q0umzPJjfBrrj8unkONTgbKQXzXRrH7sVV7D9ea2yBV3Oaogz991yhbpfvo2LMNkJItmruXTEzVpP9cp7vaIiQ==
emoji-regex@^7.0.1:
version "7.0.3"
- resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156"
integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==
emoji-regex@^8.0.0:
version "8.0.0"
- resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
emoji-regex@^9.2.2:
@@ -4773,21 +4031,21 @@ emoji-regex@^9.2.2:
encoding@^0.1.11:
version "0.1.13"
- resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz"
+ resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9"
integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==
dependencies:
iconv-lite "^0.6.2"
end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1:
version "1.4.4"
- resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz"
+ resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
dependencies:
once "^1.4.0"
enquirer@~2.3.6:
version "2.3.6"
- resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz"
+ resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==
dependencies:
ansi-colors "^4.1.1"
@@ -4799,62 +4057,31 @@ entities@^2.0.0:
entities@^3.0.1, entities@~3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4"
integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==
env-paths@^2.2.0:
version "2.2.1"
- resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2"
integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==
envinfo@^7.3.1:
- version "7.8.1"
- resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz"
- integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==
+ version "7.10.0"
+ resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.10.0.tgz#55146e3909cc5fe63c22da63fb15b05aeac35b13"
+ integrity sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw==
err-code@^1.0.0:
version "1.1.2"
- resolved "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960"
integrity sha512-CJAN+O0/yA1CKfRn9SXOGctSpEM7DCon/r/5r2eXFMY2zCCJBasFhcM5I+1kh3Ap11FsQCX+vGHceNPvpWKhoA==
error-ex@^1.2.0, error-ex@^1.3.1:
version "1.3.2"
- resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
dependencies:
is-arrayish "^0.2.1"
-es-abstract@^1.19.0, es-abstract@^1.19.2, es-abstract@^1.20.1, es-abstract@^1.20.4:
- version "1.20.5"
- resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.5.tgz"
- integrity sha512-7h8MM2EQhsCA7pU/Nv78qOXFpD8Rhqd12gYiSJVkrH9+e8VuA8JlPJK/hQjjlLv6pJvx/z1iRFKzYb0XT/RuAQ==
- dependencies:
- call-bind "^1.0.2"
- es-to-primitive "^1.2.1"
- function-bind "^1.1.1"
- function.prototype.name "^1.1.5"
- get-intrinsic "^1.1.3"
- get-symbol-description "^1.0.0"
- gopd "^1.0.1"
- has "^1.0.3"
- has-property-descriptors "^1.0.0"
- has-symbols "^1.0.3"
- internal-slot "^1.0.3"
- is-callable "^1.2.7"
- is-negative-zero "^2.0.2"
- is-regex "^1.1.4"
- is-shared-array-buffer "^1.0.2"
- is-string "^1.0.7"
- is-weakref "^1.0.2"
- object-inspect "^1.12.2"
- object-keys "^1.1.1"
- object.assign "^4.1.4"
- regexp.prototype.flags "^1.4.3"
- safe-regex-test "^1.0.0"
- string.prototype.trimend "^1.0.6"
- string.prototype.trimstart "^1.0.6"
- unbox-primitive "^1.0.2"
-
es-abstract@^1.22.1:
version "1.22.2"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.2.tgz#90f7282d91d0ad577f505e423e52d4c1d93c1b8a"
@@ -4902,9 +4129,29 @@ es-abstract@^1.22.1:
es-array-method-boxes-properly@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e"
integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==
+es-iterator-helpers@^1.0.12:
+ version "1.0.15"
+ resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz#bd81d275ac766431d19305923707c3efd9f1ae40"
+ integrity sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==
+ dependencies:
+ asynciterator.prototype "^1.0.0"
+ call-bind "^1.0.2"
+ define-properties "^1.2.1"
+ es-abstract "^1.22.1"
+ es-set-tostringtag "^2.0.1"
+ function-bind "^1.1.1"
+ get-intrinsic "^1.2.1"
+ globalthis "^1.0.3"
+ has-property-descriptors "^1.0.0"
+ has-proto "^1.0.1"
+ has-symbols "^1.0.3"
+ internal-slot "^1.0.5"
+ iterator.prototype "^1.1.2"
+ safe-array-concat "^1.0.1"
+
es-set-tostringtag@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8"
@@ -4923,7 +4170,7 @@ es-shim-unscopables@^1.0.0:
es-to-primitive@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
dependencies:
is-callable "^1.1.4"
@@ -4932,29 +4179,29 @@ es-to-primitive@^1.2.1:
es6-promise@^4.0.3:
version "4.2.8"
- resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz"
+ resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a"
integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==
es6-promisify@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203"
integrity sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==
dependencies:
es6-promise "^4.0.3"
escalade@^3.1.1:
version "3.1.1"
- resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
escape-string-regexp@^1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
escape-string-regexp@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
eslint-config-airbnb-base@^15.0.0:
@@ -4977,20 +4224,20 @@ eslint-config-airbnb@19.0.4:
object.entries "^1.1.5"
eslint-config-prettier@^8.8.0:
- version "8.8.0"
- resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz"
- integrity sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==
+ version "8.10.0"
+ resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11"
+ integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==
eslint-import-resolver-node@^0.3.7:
- version "0.3.7"
- resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz#83b375187d412324a1963d84fa664377a23eb4d7"
- integrity sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==
+ version "0.3.9"
+ resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac"
+ integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==
dependencies:
debug "^3.2.7"
- is-core-module "^2.11.0"
- resolve "^1.22.1"
+ is-core-module "^2.13.0"
+ resolve "^1.22.4"
-eslint-module-utils@^2.7.4:
+eslint-module-utils@^2.8.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz#e439fee65fc33f6bba630ff621efc38ec0375c49"
integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==
@@ -4998,30 +4245,32 @@ eslint-module-utils@^2.7.4:
debug "^3.2.7"
eslint-plugin-import@^2.25.3:
- version "2.27.5"
- resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz#876a6d03f52608a3e5bb439c2550588e51dd6c65"
- integrity sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==
+ version "2.28.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz#63b8b5b3c409bfc75ebaf8fb206b07ab435482c4"
+ integrity sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==
dependencies:
array-includes "^3.1.6"
+ array.prototype.findlastindex "^1.2.2"
array.prototype.flat "^1.3.1"
array.prototype.flatmap "^1.3.1"
debug "^3.2.7"
doctrine "^2.1.0"
eslint-import-resolver-node "^0.3.7"
- eslint-module-utils "^2.7.4"
+ eslint-module-utils "^2.8.0"
has "^1.0.3"
- is-core-module "^2.11.0"
+ is-core-module "^2.13.0"
is-glob "^4.0.3"
minimatch "^3.1.2"
+ object.fromentries "^2.0.6"
+ object.groupby "^1.0.0"
object.values "^1.1.6"
- resolve "^1.22.1"
- semver "^6.3.0"
- tsconfig-paths "^3.14.1"
+ semver "^6.3.1"
+ tsconfig-paths "^3.14.2"
eslint-plugin-jsdoc@^46.4.4:
- version "46.5.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.5.0.tgz#02e7945701a01fab76e7ced850d4d1eea63c23c0"
- integrity sha512-aulXdA4I1dyWpzyS1Nh/GNoS6PavzeucxEapnMR4JUERowWvaEk2Y4A5irpHAcdXtBBHLVe8WIhdXNjoAlGQgA==
+ version "46.8.2"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.2.tgz#3e6b1c93e91e38fe01874d45da121b56393c54a5"
+ integrity sha512-5TSnD018f3tUJNne4s4gDWQflbsgOycIKEUBoCLn6XtBMgNHxQFmV8vVxUtiPxAQq8lrX85OaSG/2gnctxw9uQ==
dependencies:
"@es-joy/jsdoccomment" "~0.40.1"
are-docs-informative "^0.0.2"
@@ -5056,9 +4305,9 @@ eslint-plugin-jsx-a11y@^6.5.1:
semver "^6.3.0"
eslint-plugin-prettier@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.0.tgz#6887780ed95f7708340ec79acfdf60c35b9be57a"
- integrity sha512-AgaZCVuYDXHUGxj/ZGu1u8H8CYgDY3iG6w5kUFw4AzMVXzB7VvbKgYR4nATIN+OvUrghMbiDLeimVjVY5ilq3w==
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz#a3b399f04378f79f066379f544e42d6b73f11515"
+ integrity sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==
dependencies:
prettier-linter-helpers "^1.0.0"
synckit "^0.8.5"
@@ -5069,14 +4318,15 @@ eslint-plugin-react-hooks@^4.3.0:
integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==
eslint-plugin-react@^7.28.0:
- version "7.32.2"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.32.2.tgz#e71f21c7c265ebce01bcbc9d0955170c55571f10"
- integrity sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==
+ version "7.33.2"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz#69ee09443ffc583927eafe86ffebb470ee737608"
+ integrity sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==
dependencies:
array-includes "^3.1.6"
array.prototype.flatmap "^1.3.1"
array.prototype.tosorted "^1.1.1"
doctrine "^2.1.0"
+ es-iterator-helpers "^1.0.12"
estraverse "^5.3.0"
jsx-ast-utils "^2.4.1 || ^3.0.0"
minimatch "^3.1.2"
@@ -5086,51 +4336,43 @@ eslint-plugin-react@^7.28.0:
object.values "^1.1.6"
prop-types "^15.8.1"
resolve "^2.0.0-next.4"
- semver "^6.3.0"
+ semver "^6.3.1"
string.prototype.matchall "^4.0.8"
-eslint-scope@^5.1.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz"
- integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^4.1.1"
-
-eslint-scope@^7.2.0:
- version "7.2.0"
- resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz"
- integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==
+eslint-scope@^7.2.2:
+ version "7.2.2"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
+ integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
dependencies:
esrecurse "^4.3.0"
estraverse "^5.2.0"
-eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1:
- version "3.4.1"
- resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz"
- integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==
+eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
+ version "3.4.3"
+ resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
+ integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
eslint@^8.2.0:
- version "8.44.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.44.0.tgz#51246e3889b259bbcd1d7d736a0c10add4f0e500"
- integrity sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A==
+ version "8.51.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.51.0.tgz#4a82dae60d209ac89a5cff1604fea978ba4950f3"
+ integrity sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
- "@eslint-community/regexpp" "^4.4.0"
- "@eslint/eslintrc" "^2.1.0"
- "@eslint/js" "8.44.0"
- "@humanwhocodes/config-array" "^0.11.10"
+ "@eslint-community/regexpp" "^4.6.1"
+ "@eslint/eslintrc" "^2.1.2"
+ "@eslint/js" "8.51.0"
+ "@humanwhocodes/config-array" "^0.11.11"
"@humanwhocodes/module-importer" "^1.0.1"
"@nodelib/fs.walk" "^1.2.8"
- ajv "^6.10.0"
+ ajv "^6.12.4"
chalk "^4.0.0"
cross-spawn "^7.0.2"
debug "^4.3.2"
doctrine "^3.0.0"
escape-string-regexp "^4.0.0"
- eslint-scope "^7.2.0"
- eslint-visitor-keys "^3.4.1"
- espree "^9.6.0"
+ eslint-scope "^7.2.2"
+ eslint-visitor-keys "^3.4.3"
+ espree "^9.6.1"
esquery "^1.4.2"
esutils "^2.0.2"
fast-deep-equal "^3.1.3"
@@ -5140,7 +4382,6 @@ eslint@^8.2.0:
globals "^13.19.0"
graphemer "^1.4.0"
ignore "^5.2.0"
- import-fresh "^3.0.0"
imurmurhash "^0.1.4"
is-glob "^4.0.0"
is-path-inside "^3.0.3"
@@ -5152,18 +4393,17 @@ eslint@^8.2.0:
natural-compare "^1.4.0"
optionator "^0.9.3"
strip-ansi "^6.0.1"
- strip-json-comments "^3.1.0"
text-table "^0.2.0"
esm@^3.2.22:
version "3.2.25"
- resolved "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz"
+ resolved "https://registry.yarnpkg.com/esm/-/esm-3.2.25.tgz#342c18c29d56157688ba5ce31f8431fbb795cc10"
integrity sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==
-espree@^9.6.0:
- version "9.6.0"
- resolved "https://registry.npmjs.org/espree/-/espree-9.6.0.tgz"
- integrity sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A==
+espree@^9.6.0, espree@^9.6.1:
+ version "9.6.1"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
+ integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
dependencies:
acorn "^8.9.0"
acorn-jsx "^5.3.2"
@@ -5171,56 +4411,46 @@ espree@^9.6.0:
esprima@^4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
esquery@^1.4.2, esquery@^1.5.0:
version "1.5.0"
- resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b"
integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==
dependencies:
estraverse "^5.1.0"
esrecurse@^4.3.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
dependencies:
estraverse "^5.2.0"
-estraverse@^4.1.1:
- version "4.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"
- integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
-
estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0:
version "5.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
esutils@^2.0.2:
version "2.0.3"
- resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
event-target-shim@^5.0.0:
version "5.0.1"
- resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789"
integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==
eventemitter3@^3.1.0:
version "3.1.2"
- resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==
-eventemitter3@^4.0.7:
- version "4.0.7"
- resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
- integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==
-
execa@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8"
integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==
dependencies:
cross-spawn "^6.0.0"
@@ -5247,9 +4477,9 @@ execa@^5.0.0:
strip-final-newline "^2.0.0"
execa@^7.1.1:
- version "7.1.1"
- resolved "https://registry.yarnpkg.com/execa/-/execa-7.1.1.tgz#3eb3c83d239488e7b409d48e8813b76bb55c9c43"
- integrity sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-7.2.0.tgz#657e75ba984f42a70f38928cedc87d6f2d4fe4e9"
+ integrity sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==
dependencies:
cross-spawn "^7.0.3"
get-stream "^6.0.1"
@@ -5263,7 +4493,7 @@ execa@^7.1.1:
expand-brackets@^2.1.4:
version "2.1.4"
- resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==
dependencies:
debug "^2.3.3"
@@ -5276,14 +4506,14 @@ expand-brackets@^2.1.4:
extend-shallow@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==
dependencies:
is-extendable "^0.1.0"
extend-shallow@^3.0.0, extend-shallow@^3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==
dependencies:
assign-symbols "^1.0.0"
@@ -5291,12 +4521,12 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2:
extend@~3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
external-editor@^3.0.3:
version "3.1.0"
- resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495"
integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==
dependencies:
chardet "^0.7.0"
@@ -5305,7 +4535,7 @@ external-editor@^3.0.3:
extglob@^2.0.4:
version "2.0.4"
- resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==
dependencies:
array-unique "^0.3.2"
@@ -5319,17 +4549,17 @@ extglob@^2.0.4:
extsprintf@1.3.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==
extsprintf@^1.2.0:
version "1.4.1"
- resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
version "3.1.3"
- resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
fast-diff@^1.1.2:
@@ -5339,7 +4569,7 @@ fast-diff@^1.1.2:
fast-glob@3.2.7:
version "3.2.7"
- resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1"
integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==
dependencies:
"@nodelib/fs.stat" "^2.0.2"
@@ -5350,7 +4580,7 @@ fast-glob@3.2.7:
fast-glob@^2.2.6:
version "2.2.7"
- resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d"
integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==
dependencies:
"@mrmlnc/readdir-enhanced" "^2.2.1"
@@ -5360,18 +4590,7 @@ fast-glob@^2.2.6:
merge2 "^1.2.3"
micromatch "^3.1.10"
-fast-glob@^3.2.9:
- version "3.3.0"
- resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz"
- integrity sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==
- dependencies:
- "@nodelib/fs.stat" "^2.0.2"
- "@nodelib/fs.walk" "^1.2.3"
- glob-parent "^5.1.2"
- merge2 "^1.3.0"
- micromatch "^4.0.4"
-
-fast-glob@^3.3.0:
+fast-glob@^3.2.9, fast-glob@^3.3.0:
version "3.3.1"
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4"
integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==
@@ -5384,62 +4603,55 @@ fast-glob@^3.3.0:
fast-json-stable-stringify@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
fast-levenshtein@^2.0.6:
version "2.0.6"
- resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
fastq@^1.6.0:
version "1.15.0"
- resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz"
+ resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a"
integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==
dependencies:
reusify "^1.0.4"
fetch-blob@^2.1.1:
version "2.1.2"
- resolved "https://registry.npmjs.org/fetch-blob/-/fetch-blob-2.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-2.1.2.tgz#a7805db1361bd44c1ef62bb57fb5fe8ea173ef3c"
integrity sha512-YKqtUDwqLyfyMnmbw8XD6Q8j9i/HggKtPEI+pZ1+8bvheBu78biSmNaXWusx1TauGqtUUGx/cBb1mKdq2rLYow==
figgy-pudding@^3.4.1, figgy-pudding@^3.5.1:
version "3.5.2"
- resolved "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e"
integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==
figures@3.2.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af"
integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==
dependencies:
escape-string-regexp "^1.0.5"
figures@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==
dependencies:
escape-string-regexp "^1.0.5"
file-entry-cache@^6.0.1:
version "6.0.1"
- resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
dependencies:
flat-cache "^3.0.4"
-file-selector@^0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/file-selector/-/file-selector-0.5.0.tgz#21c7126dc9728b31a2742d91cab20d55e67e4fb4"
- integrity sha512-s8KNnmIDTBoD0p9uJ9uD0XY38SCeBOtj0UMXyQSLg1Ypfrfj8+dAvwsLjYQkQ2GjhVtp2HrnF5cJzMhBjfD8HA==
- dependencies:
- tslib "^2.0.3"
-
fill-range@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==
dependencies:
extend-shallow "^2.0.1"
@@ -5449,24 +4661,19 @@ fill-range@^4.0.0:
fill-range@^7.0.1:
version "7.0.1"
- resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
dependencies:
to-regex-range "^5.0.1"
filter-obj@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b"
integrity sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==
-find-root@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4"
- integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==
-
find-up@^1.0.0:
version "1.1.2"
- resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==
dependencies:
path-exists "^2.0.0"
@@ -5474,21 +4681,21 @@ find-up@^1.0.0:
find-up@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
integrity sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==
dependencies:
locate-path "^2.0.0"
find-up@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"
integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==
dependencies:
locate-path "^3.0.0"
find-up@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
dependencies:
locate-path "^5.0.0"
@@ -5496,42 +4703,43 @@ find-up@^4.1.0:
find-up@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
dependencies:
locate-path "^6.0.0"
path-exists "^4.0.0"
flat-cache@^3.0.4:
- version "3.0.4"
- resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz"
- integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.1.1.tgz#a02a15fdec25a8f844ff7cc658f03dd99eb4609b"
+ integrity sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==
dependencies:
- flatted "^3.1.0"
+ flatted "^3.2.9"
+ keyv "^4.5.3"
rimraf "^3.0.2"
flat@^5.0.2:
version "5.0.2"
- resolved "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
-flatted@^3.1.0:
- version "3.2.7"
- resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz"
- integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==
+flatted@^3.2.9:
+ version "3.2.9"
+ resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf"
+ integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==
flush-write-stream@^1.0.0:
version "1.1.1"
- resolved "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==
dependencies:
inherits "^2.0.3"
readable-stream "^2.3.6"
follow-redirects@^1.15.0:
- version "1.15.2"
- resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz"
- integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
+ version "1.15.3"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a"
+ integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==
for-each@^0.3.3:
version "0.3.3"
@@ -5542,17 +4750,17 @@ for-each@^0.3.3:
for-in@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==
forever-agent@~0.6.1:
version "0.6.1"
- resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==
form-data@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
dependencies:
asynckit "^0.4.0"
@@ -5561,7 +4769,7 @@ form-data@^4.0.0:
form-data@~2.3.2:
version "2.3.3"
- resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
dependencies:
asynckit "^0.4.0"
@@ -5570,14 +4778,14 @@ form-data@~2.3.2:
fragment-cache@^0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==
dependencies:
map-cache "^0.2.2"
from2@^2.1.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af"
integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==
dependencies:
inherits "^2.0.1"
@@ -5585,12 +4793,12 @@ from2@^2.1.0:
fs-constants@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
fs-extra@^11.1.0:
version "11.1.1"
- resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d"
integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==
dependencies:
graceful-fs "^4.2.0"
@@ -5599,7 +4807,7 @@ fs-extra@^11.1.0:
fs-extra@^8.1.0:
version "8.1.0"
- resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
dependencies:
graceful-fs "^4.2.0"
@@ -5608,14 +4816,14 @@ fs-extra@^8.1.0:
fs-minipass@^1.2.7:
version "1.2.7"
- resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
dependencies:
minipass "^2.6.0"
fs-write-stream-atomic@^1.0.8:
version "1.0.10"
- resolved "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz"
+ resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9"
integrity sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==
dependencies:
graceful-fs "^4.1.2"
@@ -5625,25 +4833,15 @@ fs-write-stream-atomic@^1.0.8:
fs.realpath@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
function-bind@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz"
- integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-
-function.prototype.name@^1.1.5:
- version "1.1.5"
- resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz"
- integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.1.3"
- es-abstract "^1.19.0"
- functions-have-names "^1.2.2"
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
+ integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-function.prototype.name@^1.1.6:
+function.prototype.name@^1.1.5, function.prototype.name@^1.1.6:
version "1.1.6"
resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd"
integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==
@@ -5653,14 +4851,14 @@ function.prototype.name@^1.1.6:
es-abstract "^1.22.1"
functions-have-names "^1.2.3"
-functions-have-names@^1.2.2, functions-have-names@^1.2.3:
+functions-have-names@^1.2.3:
version "1.2.3"
- resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"
integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
gauge@~2.7.3:
version "2.7.4"
- resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz"
+ resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
integrity sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==
dependencies:
aproba "^1.0.3"
@@ -5674,29 +4872,15 @@ gauge@~2.7.3:
genfun@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537"
integrity sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==
-gensync@^1.0.0-beta.2:
- version "1.0.0-beta.2"
- resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz"
- integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-
get-caller-file@^2.0.1, get-caller-file@^2.0.5:
version "2.0.5"
- resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3:
- version "1.1.3"
- resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz"
- integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==
- dependencies:
- function-bind "^1.1.1"
- has "^1.0.3"
- has-symbols "^1.0.3"
-
-get-intrinsic@^1.2.0, get-intrinsic@^1.2.1:
+get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82"
integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==
@@ -5708,7 +4892,7 @@ get-intrinsic@^1.2.0, get-intrinsic@^1.2.1:
get-pkg-repo@^1.0.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d"
integrity sha512-xPCyvcEOxCJDxhBfXDNH+zA7mIRGb2aY1gIUJWsZkpJbp1BLHl+/Sycg26Dv+ZbZAJkO61tzbBtqHUi30NGBvg==
dependencies:
hosted-git-info "^2.1.4"
@@ -5719,17 +4903,17 @@ get-pkg-repo@^1.0.0:
get-port@^4.2.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/get-port/-/get-port-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119"
integrity sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw==
get-stdin@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==
get-stream@^4.0.0, get-stream@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==
dependencies:
pump "^3.0.0"
@@ -5741,7 +4925,7 @@ get-stream@^6.0.0, get-stream@^6.0.1:
get-symbol-description@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6"
integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==
dependencies:
call-bind "^1.0.2"
@@ -5749,19 +4933,19 @@ get-symbol-description@^1.0.0:
get-value@^2.0.3, get-value@^2.0.6:
version "2.0.6"
- resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==
getpass@^0.1.1:
version "0.1.7"
- resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz"
+ resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==
dependencies:
assert-plus "^1.0.0"
git-raw-commits@2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.0.tgz#d92addf74440c14bcc5c83ecce3fb7f8a79118b5"
integrity sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg==
dependencies:
dargs "^4.0.1"
@@ -5772,7 +4956,7 @@ git-raw-commits@2.0.0:
git-remote-origin-url@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f"
integrity sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==
dependencies:
gitconfiglocal "^1.0.0"
@@ -5780,7 +4964,7 @@ git-remote-origin-url@^2.0.0:
git-semver-tags@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-2.0.3.tgz#48988a718acf593800f99622a952a77c405bfa34"
integrity sha512-tj4FD4ww2RX2ae//jSrXZzrocla9db5h0V7ikPl1P/WwoZar9epdUhwR7XHXSgc+ZkNq72BEEerqQuicoEQfzA==
dependencies:
meow "^4.0.0"
@@ -5788,7 +4972,7 @@ git-semver-tags@^2.0.3:
git-up@^4.0.0:
version "4.0.5"
- resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759"
integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA==
dependencies:
is-ssh "^1.3.0"
@@ -5796,21 +4980,21 @@ git-up@^4.0.0:
git-url-parse@^11.1.2:
version "11.6.0"
- resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-11.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605"
integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g==
dependencies:
git-up "^4.0.0"
gitconfiglocal@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b"
integrity sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==
dependencies:
ini "^1.3.2"
glob-parent@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==
dependencies:
is-glob "^3.1.0"
@@ -5818,26 +5002,26 @@ glob-parent@^3.1.0:
glob-parent@^5.0.0, glob-parent@^5.1.2:
version "5.1.2"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
dependencies:
is-glob "^4.0.1"
glob-parent@^6.0.2:
version "6.0.2"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
dependencies:
is-glob "^4.0.3"
glob-to-regexp@^0.3.0:
version "0.3.0"
- resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab"
integrity sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig==
glob@7.1.4:
version "7.1.4"
- resolved "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
dependencies:
fs.realpath "^1.0.0"
@@ -5849,7 +5033,7 @@ glob@7.1.4:
glob@^7.1.1, glob@^7.1.3, glob@^7.1.4:
version "7.2.3"
- resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
dependencies:
fs.realpath "^1.0.0"
@@ -5859,22 +5043,10 @@ glob@^7.1.1, glob@^7.1.3, glob@^7.1.4:
once "^1.3.0"
path-is-absolute "^1.0.0"
-globals@^11.1.0:
- version "11.12.0"
- resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz"
- integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
-
-globals@^13.19.0:
- version "13.20.0"
- resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz"
- integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==
- dependencies:
- type-fest "^0.20.2"
-
-globals@^13.2.0:
- version "13.22.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-13.22.0.tgz#0c9fcb9c48a2494fbb5edbfee644285543eba9d8"
- integrity sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==
+globals@^13.19.0, globals@^13.2.0:
+ version "13.23.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-13.23.0.tgz#ef31673c926a0976e1f61dab4dca57e0c0a8af02"
+ integrity sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==
dependencies:
type-fest "^0.20.2"
@@ -5887,7 +5059,7 @@ globalthis@^1.0.3:
globby@^11.1.0:
version "11.1.0"
- resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
dependencies:
array-union "^2.1.0"
@@ -5899,7 +5071,7 @@ globby@^11.1.0:
globby@^9.2.0:
version "9.2.0"
- resolved "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d"
integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==
dependencies:
"@types/glob" "^7.1.1"
@@ -5913,33 +5085,28 @@ globby@^9.2.0:
gopd@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c"
integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==
dependencies:
get-intrinsic "^1.1.3"
graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2:
- version "4.2.10"
- resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz"
- integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
-
-grapheme-splitter@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz"
- integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==
+ version "4.2.11"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
+ integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
graphemer@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
handlebars@^4.7.6:
- version "4.7.7"
- resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz"
- integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==
+ version "4.7.8"
+ resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9"
+ integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==
dependencies:
minimist "^1.2.5"
- neo-async "^2.6.0"
+ neo-async "^2.6.2"
source-map "^0.6.1"
wordwrap "^1.0.0"
optionalDependencies:
@@ -5947,12 +5114,12 @@ handlebars@^4.7.6:
har-schema@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==
har-validator@~5.1.3:
version "5.1.5"
- resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd"
integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==
dependencies:
ajv "^6.12.3"
@@ -5960,27 +5127,27 @@ har-validator@~5.1.3:
hard-rejection@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883"
integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==
has-bigints@^1.0.1, has-bigints@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==
has-flag@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
has-flag@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
has-property-descriptors@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"
integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==
dependencies:
get-intrinsic "^1.1.1"
@@ -5992,24 +5159,24 @@ has-proto@^1.0.1:
has-symbols@^1.0.2, has-symbols@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
has-tostringtag@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==
dependencies:
has-symbols "^1.0.2"
has-unicode@^2.0.0, has-unicode@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==
has-value@^0.3.1:
version "0.3.1"
- resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==
dependencies:
get-value "^2.0.3"
@@ -6018,7 +5185,7 @@ has-value@^0.3.1:
has-value@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==
dependencies:
get-value "^2.0.6"
@@ -6027,55 +5194,34 @@ has-value@^1.0.0:
has-values@^0.1.4:
version "0.1.4"
- resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==
has-values@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==
dependencies:
is-number "^3.0.0"
kind-of "^4.0.0"
has@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz"
- integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
- dependencies:
- function-bind "^1.1.1"
-
-history@^5.1.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/history/-/history-5.3.0.tgz#1548abaa245ba47992f063a0783db91ef201c73b"
- integrity sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==
- dependencies:
- "@babel/runtime" "^7.7.6"
-
-hoist-non-react-statics@^3.3.1, hoist-non-react-statics@^3.3.2:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
- integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
- dependencies:
- react-is "^16.7.0"
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6"
+ integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==
hosted-git-info@^2.1.4, hosted-git-info@^2.7.1:
version "2.8.9"
- resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz"
+ resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
hosted-git-info@^4.0.1:
version "4.1.0"
- resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224"
integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==
dependencies:
lru-cache "^6.0.0"
-hotscript@^1.0.12:
- version "1.0.13"
- resolved "https://registry.yarnpkg.com/hotscript/-/hotscript-1.0.13.tgz#6eb5de757e9b33444ffc22555e98dbc17fa31fb4"
- integrity sha512-C++tTF1GqkGYecL+2S1wJTfoH6APGAsbb7PAWQ3iVIwgG/EFseAfEVOKFgAFq4yK3+6j1EjUD4UQ9dRJHX/sSQ==
-
htmlnano@^2.0.0:
version "2.0.4"
resolved "https://registry.yarnpkg.com/htmlnano/-/htmlnano-2.0.4.tgz#315108063ed0bb6a16ccb53ad1b601f02d3fe721"
@@ -6097,12 +5243,12 @@ htmlparser2@^7.1.1:
http-cache-semantics@^3.8.1:
version "3.8.1"
- resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2"
integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==
http-proxy-agent@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz#e4821beef5b2142a2026bd73926fe537631c5405"
integrity sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==
dependencies:
agent-base "4"
@@ -6110,7 +5256,7 @@ http-proxy-agent@^2.1.0:
http-signature@~1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==
dependencies:
assert-plus "^1.0.0"
@@ -6119,7 +5265,7 @@ http-signature@~1.2.0:
https-proxy-agent@^2.2.3:
version "2.2.4"
- resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz#4ee7a737abd92678a293d9b34a1af4d0d08c787b"
integrity sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==
dependencies:
agent-base "^4.3.0"
@@ -6137,68 +5283,63 @@ human-signals@^4.3.0:
humanize-ms@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed"
integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==
dependencies:
ms "^2.0.0"
-hyphenate-style-name@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d"
- integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==
-
iconv-lite@^0.4.24:
version "0.4.24"
- resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
dependencies:
safer-buffer ">= 2.1.2 < 3"
iconv-lite@^0.6.2:
version "0.6.3"
- resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
dependencies:
safer-buffer ">= 2.1.2 < 3.0.0"
ieee754@^1.1.13:
version "1.2.1"
- resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
iferr@^0.1.5:
version "0.1.5"
- resolved "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501"
integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==
ignore-walk@^3.0.1:
version "3.0.4"
- resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335"
integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==
dependencies:
minimatch "^3.0.4"
ignore@^4.0.3:
version "4.0.6"
- resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
ignore@^5.0.4, ignore@^5.2.0, ignore@^5.2.4:
version "5.2.4"
- resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324"
integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==
import-fresh@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546"
integrity sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==
dependencies:
caller-path "^2.0.0"
resolve-from "^3.0.0"
-import-fresh@^3.0.0, import-fresh@^3.2.1, import-fresh@^3.3.0:
+import-fresh@^3.2.1, import-fresh@^3.3.0:
version "3.3.0"
- resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
dependencies:
parent-module "^1.0.0"
@@ -6206,7 +5347,7 @@ import-fresh@^3.0.0, import-fresh@^3.2.1, import-fresh@^3.3.0:
import-local@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d"
integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==
dependencies:
pkg-dir "^3.0.0"
@@ -6214,39 +5355,34 @@ import-local@^2.0.0:
imurmurhash@^0.1.4:
version "0.1.4"
- resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
indent-string@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
integrity sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==
dependencies:
repeating "^2.0.0"
indent-string@^3.0.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289"
integrity sha512-BYqTHXTGUIvg7t1r4sJNKcbDZkL92nkXA8YtRpbjFHRHGDL/NtUeiBJMeE60kIFN/Mg8ESaWQvftaYMGJzQZCQ==
indent-string@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
infer-owner@^1.0.3, infer-owner@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==
-inflection@~1.12.0:
- version "1.12.0"
- resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.12.0.tgz#a200935656d6f5f6bc4dc7502e1aecb703228416"
- integrity sha512-lRy4DxuIFWXlJU7ed8UiTJOSTqStqYdEb4CEbtXfNbkdj3nH1L+reUWiE10VWcJS2yR7tge8Z74pJjtBjNwj0w==
-
inflight@^1.0.4:
version "1.0.6"
- resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
dependencies:
once "^1.3.0"
@@ -6254,17 +5390,17 @@ inflight@^1.0.4:
inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3:
version "2.0.4"
- resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
ini@^1.3.2, ini@^1.3.4:
version "1.3.8"
- resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
init-package-json@^1.10.3:
version "1.10.3"
- resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-1.10.3.tgz"
+ resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-1.10.3.tgz#45ffe2f610a8ca134f2bd1db5637b235070f6cbe"
integrity sha512-zKSiXKhQveNteyhcj1CoOP8tqp1QuxPIPBl8Bid99DGLFqA1p87M6lNgfjJHSBoWJJlidGOv5rWjyYKEB3g2Jw==
dependencies:
glob "^7.1.1"
@@ -6278,7 +5414,7 @@ init-package-json@^1.10.3:
inquirer@^6.2.0:
version "6.5.2"
- resolved "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca"
integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==
dependencies:
ansi-escapes "^3.2.0"
@@ -6295,15 +5431,6 @@ inquirer@^6.2.0:
strip-ansi "^5.1.0"
through "^2.3.6"
-internal-slot@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz"
- integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==
- dependencies:
- get-intrinsic "^1.1.0"
- has "^1.0.3"
- side-channel "^1.0.4"
-
internal-slot@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986"
@@ -6315,19 +5442,19 @@ internal-slot@^1.0.5:
ip@1.1.5:
version "1.1.5"
- resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a"
integrity sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==
is-accessor-descriptor@^0.1.6:
version "0.1.6"
- resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==
dependencies:
kind-of "^3.0.2"
is-accessor-descriptor@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656"
integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==
dependencies:
kind-of "^6.0.0"
@@ -6343,19 +5470,26 @@ is-array-buffer@^3.0.1, is-array-buffer@^3.0.2:
is-arrayish@^0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
+is-async-function@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646"
+ integrity sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==
+ dependencies:
+ has-tostringtag "^1.0.0"
+
is-bigint@^1.0.1:
version "1.0.4"
- resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3"
integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==
dependencies:
has-bigints "^1.0.1"
is-boolean-object@^1.1.0:
version "1.1.2"
- resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"
integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==
dependencies:
call-bind "^1.0.2"
@@ -6363,7 +5497,7 @@ is-boolean-object@^1.1.0:
is-buffer@^1.1.5:
version "1.1.6"
- resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
is-builtin-module@^3.2.1:
@@ -6375,61 +5509,47 @@ is-builtin-module@^3.2.1:
is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:
version "1.2.7"
- resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
is-ci@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==
dependencies:
ci-info "^2.0.0"
-is-core-module@^2.11.0:
- version "2.12.1"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd"
- integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==
- dependencies:
- has "^1.0.3"
-
-is-core-module@^2.13.0:
+is-core-module@^2.13.0, is-core-module@^2.5.0:
version "2.13.0"
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db"
integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==
dependencies:
has "^1.0.3"
-is-core-module@^2.5.0, is-core-module@^2.9.0:
- version "2.10.0"
- resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz"
- integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==
- dependencies:
- has "^1.0.3"
-
is-data-descriptor@^0.1.4:
version "0.1.4"
- resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==
dependencies:
kind-of "^3.0.2"
is-data-descriptor@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7"
integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==
dependencies:
kind-of "^6.0.0"
-is-date-object@^1.0.1:
+is-date-object@^1.0.1, is-date-object@^1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"
integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==
dependencies:
has-tostringtag "^1.0.0"
is-descriptor@^0.1.0:
version "0.1.6"
- resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==
dependencies:
is-accessor-descriptor "^0.1.6"
@@ -6438,7 +5558,7 @@ is-descriptor@^0.1.0:
is-descriptor@^1.0.0, is-descriptor@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec"
integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==
dependencies:
is-accessor-descriptor "^1.0.0"
@@ -6447,12 +5567,12 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2:
is-directory@^0.3.1:
version "0.3.1"
- resolved "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
integrity sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==
is-docker@^2.0.0, is-docker@^2.1.1:
version "2.2.1"
- resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
is-docker@^3.0.0:
@@ -6462,62 +5582,71 @@ is-docker@^3.0.0:
is-extendable@^0.1.0, is-extendable@^0.1.1:
version "0.1.1"
- resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==
is-extendable@^1.0.0, is-extendable@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==
dependencies:
is-plain-object "^2.0.4"
is-extglob@^2.1.0, is-extglob@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
+is-finalizationregistry@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz#c8749b65f17c133313e661b1289b95ad3dbd62e6"
+ integrity sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==
+ dependencies:
+ call-bind "^1.0.2"
+
is-finite@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3"
integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
is-fullwidth-code-point@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==
dependencies:
number-is-nan "^1.0.0"
is-fullwidth-code-point@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
+is-generator-function@^1.0.10:
+ version "1.0.10"
+ resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"
+ integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==
+ dependencies:
+ has-tostringtag "^1.0.0"
+
is-glob@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==
dependencies:
is-extglob "^2.1.0"
is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3:
version "4.0.3"
- resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
dependencies:
is-extglob "^2.1.1"
-is-in-browser@^1.0.2, is-in-browser@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/is-in-browser/-/is-in-browser-1.1.3.tgz#56ff4db683a078c6082eb95dad7dc62e1d04f835"
- integrity sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g==
-
is-inside-container@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4"
@@ -6530,87 +5659,97 @@ is-json@^2.0.1:
resolved "https://registry.yarnpkg.com/is-json/-/is-json-2.0.1.tgz#6be166d144828a131d686891b983df62c39491ff"
integrity sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==
+is-map@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127"
+ integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==
+
is-negative-zero@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"
integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
is-number-object@^1.0.4:
version "1.0.7"
- resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc"
integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==
dependencies:
has-tostringtag "^1.0.0"
is-number@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==
dependencies:
kind-of "^3.0.2"
is-number@^7.0.0:
version "7.0.0"
- resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
is-obj@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==
is-obj@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982"
integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==
is-path-inside@^3.0.3:
version "3.0.3"
- resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
is-plain-obj@^1.0.0, is-plain-obj@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==
is-plain-object@^2.0.3, is-plain-object@^2.0.4:
version "2.0.4"
- resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
dependencies:
isobject "^3.0.1"
is-plain-object@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344"
integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
is-regex@^1.1.4:
version "1.1.4"
- resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958"
integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==
dependencies:
call-bind "^1.0.2"
has-tostringtag "^1.0.0"
+is-set@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec"
+ integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==
+
is-shared-array-buffer@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79"
integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==
dependencies:
call-bind "^1.0.2"
is-ssh@^1.3.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2"
integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==
dependencies:
protocols "^2.0.1"
is-stream@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==
is-stream@^2.0.0:
@@ -6625,21 +5764,21 @@ is-stream@^3.0.0:
is-string@^1.0.5, is-string@^1.0.7:
version "1.0.7"
- resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd"
integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==
dependencies:
has-tostringtag "^1.0.0"
is-symbol@^1.0.2, is-symbol@^1.0.3:
version "1.0.4"
- resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c"
integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==
dependencies:
has-symbols "^1.0.2"
is-text-path@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e"
integrity sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==
dependencies:
text-extensions "^1.0.0"
@@ -6653,36 +5792,49 @@ is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9:
is-typedarray@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==
is-utf8@^0.2.0:
version "0.2.1"
- resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==
+is-weakmap@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2"
+ integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==
+
is-weakref@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
dependencies:
call-bind "^1.0.2"
+is-weakset@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d"
+ integrity sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==
+ dependencies:
+ call-bind "^1.0.2"
+ get-intrinsic "^1.1.1"
+
is-windows@^1.0.0, is-windows@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
is-wsl@^2.2.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
dependencies:
is-docker "^2.0.0"
isarray@1.0.0, isarray@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
isarray@^2.0.5:
@@ -6692,51 +5844,57 @@ isarray@^2.0.5:
isexe@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
isobject@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==
dependencies:
isarray "1.0.0"
isobject@^3.0.0, isobject@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
isobject@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0"
integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==
isstream@~0.1.2:
version "0.1.2"
- resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==
-js-sha3@0.8.0:
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"
- integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==
+iterator.prototype@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.2.tgz#5e29c8924f01916cb9335f1ff80619dcff22b0c0"
+ integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==
+ dependencies:
+ define-properties "^1.2.1"
+ get-intrinsic "^1.2.1"
+ has-symbols "^1.0.3"
+ reflect.getprototypeof "^1.0.4"
+ set-function-name "^2.0.1"
"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
js-yaml@4.1.0, js-yaml@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
dependencies:
argparse "^2.0.1"
js-yaml@^3.10.0, js-yaml@^3.13.1:
version "3.14.1"
- resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
dependencies:
argparse "^1.0.7"
@@ -6744,7 +5902,7 @@ js-yaml@^3.10.0, js-yaml@^3.13.1:
jsbn@~0.1.0:
version "0.1.1"
- resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==
jsdoc-type-pratt-parser@~4.0.0:
@@ -6752,39 +5910,39 @@ jsdoc-type-pratt-parser@~4.0.0:
resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz#136f0571a99c184d84ec84662c45c29ceff71114"
integrity sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==
-jsesc@^2.5.1:
- version "2.5.2"
- resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz"
- integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
+json-buffer@3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
+ integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
json-parse-better-errors@^1.0.0, json-parse-better-errors@^1.0.1:
version "1.0.2"
- resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
json-parse-even-better-errors@^2.3.0:
version "2.3.1"
- resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
json-schema-traverse@^0.4.1:
version "0.4.1"
- resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
json-schema@0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5"
integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==
json-stable-stringify-without-jsonify@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==
json5@^1.0.2:
@@ -6794,36 +5952,26 @@ json5@^1.0.2:
dependencies:
minimist "^1.2.0"
-json5@^2.2.0, json5@^2.2.2:
+json5@^2.2.0, json5@^2.2.1, json5@^2.2.2:
version "2.2.3"
- resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
-json5@^2.2.1:
- version "2.2.2"
- resolved "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz"
- integrity sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==
-
jsonc-parser@3.2.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76"
integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==
-jsonexport@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/jsonexport/-/jsonexport-3.2.0.tgz#e5b4905ea1f6c8f8e0f62e4ceb26e4a31f1c93a8"
- integrity sha512-GbO9ugb0YTZatPd/hqCGR0FSwbr82H6OzG04yzdrG7XOe4QZ0jhQ+kOsB29zqkzoYJLmLxbbrFiuwbQu891XnQ==
-
jsonfile@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==
optionalDependencies:
graceful-fs "^4.1.6"
jsonfile@^6.0.1:
version "6.1.0"
- resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
dependencies:
universalify "^2.0.0"
@@ -6832,7 +5980,7 @@ jsonfile@^6.0.1:
jsonld@^5.2.0:
version "5.2.0"
- resolved "https://registry.npmjs.org/jsonld/-/jsonld-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/jsonld/-/jsonld-5.2.0.tgz#d1e8af38a334cb95edf0f2ae4e2b58baf8d2b5a9"
integrity sha512-JymgT6Xzk5CHEmHuEyvoTNviEPxv6ihLWSPu1gFdtjSAyM6cFqNrv02yS/SIur3BBIkCf0HjizRc24d8/FfQKw==
dependencies:
"@digitalbazaar/http-client" "^1.1.0"
@@ -6842,12 +5990,12 @@ jsonld@^5.2.0:
jsonparse@^1.2.0:
version "1.3.1"
- resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280"
integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==
jsprim@^1.2.2:
version "1.4.2"
- resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb"
integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==
dependencies:
assert-plus "1.0.0"
@@ -6855,80 +6003,10 @@ jsprim@^1.2.2:
json-schema "0.4.0"
verror "1.10.0"
-jss-plugin-camel-case@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz#27ea159bab67eb4837fa0260204eb7925d4daa1c"
- integrity sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==
- dependencies:
- "@babel/runtime" "^7.3.1"
- hyphenate-style-name "^1.0.3"
- jss "10.10.0"
-
-jss-plugin-default-unit@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-default-unit/-/jss-plugin-default-unit-10.10.0.tgz#db3925cf6a07f8e1dd459549d9c8aadff9804293"
- integrity sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==
- dependencies:
- "@babel/runtime" "^7.3.1"
- jss "10.10.0"
-
-jss-plugin-global@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-global/-/jss-plugin-global-10.10.0.tgz#1c55d3c35821fab67a538a38918292fc9c567efd"
- integrity sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==
- dependencies:
- "@babel/runtime" "^7.3.1"
- jss "10.10.0"
-
-jss-plugin-nested@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-nested/-/jss-plugin-nested-10.10.0.tgz#db872ed8925688806e77f1fc87f6e62264513219"
- integrity sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==
- dependencies:
- "@babel/runtime" "^7.3.1"
- jss "10.10.0"
- tiny-warning "^1.0.2"
-
-jss-plugin-props-sort@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-props-sort/-/jss-plugin-props-sort-10.10.0.tgz#67f4dd4c70830c126f4ec49b4b37ccddb680a5d7"
- integrity sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==
- dependencies:
- "@babel/runtime" "^7.3.1"
- jss "10.10.0"
-
-jss-plugin-rule-value-function@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.10.0.tgz#7d99e3229e78a3712f78ba50ab342e881d26a24b"
- integrity sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==
- dependencies:
- "@babel/runtime" "^7.3.1"
- jss "10.10.0"
- tiny-warning "^1.0.2"
-
-jss-plugin-vendor-prefixer@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.10.0.tgz#c01428ef5a89f2b128ec0af87a314d0c767931c7"
- integrity sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==
- dependencies:
- "@babel/runtime" "^7.3.1"
- css-vendor "^2.0.8"
- jss "10.10.0"
-
-jss@10.10.0, jss@^10.10.0:
- version "10.10.0"
- resolved "https://registry.yarnpkg.com/jss/-/jss-10.10.0.tgz#a75cc85b0108c7ac8c7b7d296c520a3e4fbc6ccc"
- integrity sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw==
- dependencies:
- "@babel/runtime" "^7.3.1"
- csstype "^3.0.2"
- is-in-browser "^1.1.3"
- tiny-warning "^1.0.2"
-
"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.3:
- version "3.3.4"
- resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.4.tgz#b896535fed5b867650acce5a9bd4135ffc7b3bf9"
- integrity sha512-fX2TVdCViod6HwKEtSWGHs57oFhVfCMwieb9PuRDgjDPh5XeqJiHFFFJCHxU5cnTc3Bu/GRL+kPiFmw8XWOfKw==
+ version "3.3.5"
+ resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a"
+ integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==
dependencies:
array-includes "^3.1.6"
array.prototype.flat "^1.3.1"
@@ -6937,36 +6015,43 @@ jss@10.10.0, jss@^10.10.0:
jwt-decode@^3.0.0:
version "3.1.2"
- resolved "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-3.1.2.tgz#3fb319f3675a2df0c2895c8f5e9fa4b67b04ed59"
integrity sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A==
+keyv@^4.5.3:
+ version "4.5.4"
+ resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93"
+ integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
+ dependencies:
+ json-buffer "3.0.1"
+
kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
version "3.2.2"
- resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==
dependencies:
is-buffer "^1.1.5"
kind-of@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==
dependencies:
is-buffer "^1.1.5"
kind-of@^5.0.0:
version "5.1.0"
- resolved "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3:
version "6.0.3"
- resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
ky-universal@^0.8.2:
version "0.8.2"
- resolved "https://registry.npmjs.org/ky-universal/-/ky-universal-0.8.2.tgz"
+ resolved "https://registry.yarnpkg.com/ky-universal/-/ky-universal-0.8.2.tgz#edc398d54cf495d7d6830aa1ab69559a3cc7f824"
integrity sha512-xe0JaOH9QeYxdyGLnzUOVGK4Z6FGvDVzcXFTdrYA1f33MZdEa45sUDaMBy98xQMcsd2XIBrTXRrRYnegcSdgVQ==
dependencies:
abort-controller "^3.0.0"
@@ -6974,7 +6059,7 @@ ky-universal@^0.8.2:
ky@^0.25.1:
version "0.25.1"
- resolved "https://registry.npmjs.org/ky/-/ky-0.25.1.tgz"
+ resolved "https://registry.yarnpkg.com/ky/-/ky-0.25.1.tgz#0df0bd872a9cc57e31acd5dbc1443547c881bfbc"
integrity sha512-PjpCEWlIU7VpiMVrTwssahkYXX1by6NCT0fhTUX34F3DTinARlgMpriuroolugFPcMgpPWrOW4mTb984Qm1RXA==
language-subtag-registry@~0.3.2:
@@ -6991,7 +6076,7 @@ language-tags@=1.0.5:
lerna@^3.19.0:
version "3.22.1"
- resolved "https://registry.npmjs.org/lerna/-/lerna-3.22.1.tgz"
+ resolved "https://registry.yarnpkg.com/lerna/-/lerna-3.22.1.tgz#82027ac3da9c627fd8bf02ccfeff806a98e65b62"
integrity sha512-vk1lfVRFm+UuEFA7wkLKeSF7Iz13W+N/vFd48aW2yuS7Kv0RbNm2/qcDPV863056LMfkRlsEe+QYOw3palj5Lg==
dependencies:
"@lerna/add" "3.21.0"
@@ -7015,7 +6100,7 @@ lerna@^3.19.0:
levn@^0.4.1:
version "0.4.1"
- resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
dependencies:
prelude-ls "^1.2.1"
@@ -7085,47 +6170,47 @@ lightningcss@^1.16.1:
lines-and-columns@^1.1.6:
version "1.2.4"
- resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
lines-and-columns@~2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-2.0.3.tgz#b2f0badedb556b747020ab8ea7f0373e22efac1b"
integrity sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==
linkify-it@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-4.0.1.tgz#01f1d5e508190d06669982ba31a7d9f56a5751ec"
integrity sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==
dependencies:
uc.micro "^1.0.1"
linkifyjs@^4.1.0:
version "4.1.1"
- resolved "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/linkifyjs/-/linkifyjs-4.1.1.tgz#73d427e3bbaaf4ca8e71c589ad4ffda11a9a5fde"
integrity sha512-zFN/CTVmbcVef+WaDXT63dNzzkfRBKT1j464NJQkV7iSgJU0sLBus9W0HBwnXK13/hf168pbrx/V/bjEHOXNHA==
-lmdb@2.7.11:
- version "2.7.11"
- resolved "https://registry.yarnpkg.com/lmdb/-/lmdb-2.7.11.tgz#a24b6d36b5c7ed9889cc2d9e103fdd3f5e144d7e"
- integrity sha512-x9bD4hVp7PFLUoELL8RglbNXhAMt5CYhkmss+CEau9KlNoilsTzNi9QDsPZb3KMpOGZXG6jmXhW3bBxE2XVztw==
+lmdb@2.8.5:
+ version "2.8.5"
+ resolved "https://registry.yarnpkg.com/lmdb/-/lmdb-2.8.5.tgz#ce191110c755c0951caa062722e300c703973837"
+ integrity sha512-9bMdFfc80S+vSldBmG3HOuLVHnxRdNTlpzR6QDnzqCQtCzGUEAGTzBKYMeIM+I/sU4oZfgbcbS7X7F65/z/oxQ==
dependencies:
- msgpackr "1.8.5"
- node-addon-api "^4.3.0"
- node-gyp-build-optional-packages "5.0.6"
- ordered-binary "^1.4.0"
+ msgpackr "^1.9.5"
+ node-addon-api "^6.1.0"
+ node-gyp-build-optional-packages "5.1.1"
+ ordered-binary "^1.4.1"
weak-lru-cache "^1.2.2"
optionalDependencies:
- "@lmdb/lmdb-darwin-arm64" "2.7.11"
- "@lmdb/lmdb-darwin-x64" "2.7.11"
- "@lmdb/lmdb-linux-arm" "2.7.11"
- "@lmdb/lmdb-linux-arm64" "2.7.11"
- "@lmdb/lmdb-linux-x64" "2.7.11"
- "@lmdb/lmdb-win32-x64" "2.7.11"
+ "@lmdb/lmdb-darwin-arm64" "2.8.5"
+ "@lmdb/lmdb-darwin-x64" "2.8.5"
+ "@lmdb/lmdb-linux-arm" "2.8.5"
+ "@lmdb/lmdb-linux-arm64" "2.8.5"
+ "@lmdb/lmdb-linux-x64" "2.8.5"
+ "@lmdb/lmdb-win32-x64" "2.8.5"
load-json-file@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==
dependencies:
graceful-fs "^4.1.2"
@@ -7136,7 +6221,7 @@ load-json-file@^1.0.0:
load-json-file@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
integrity sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==
dependencies:
graceful-fs "^4.1.2"
@@ -7146,7 +6231,7 @@ load-json-file@^4.0.0:
load-json-file@^5.3.0:
version "5.3.0"
- resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3"
integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==
dependencies:
graceful-fs "^4.1.15"
@@ -7157,7 +6242,7 @@ load-json-file@^5.3.0:
locate-path@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
integrity sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==
dependencies:
p-locate "^2.0.0"
@@ -7165,7 +6250,7 @@ locate-path@^2.0.0:
locate-path@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e"
integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==
dependencies:
p-locate "^3.0.0"
@@ -7173,61 +6258,61 @@ locate-path@^3.0.0:
locate-path@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
dependencies:
p-locate "^4.1.0"
locate-path@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
dependencies:
p-locate "^5.0.0"
lodash._reinterpolate@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==
lodash.clonedeep@^4.5.0:
version "4.5.0"
- resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==
lodash.debounce@^4.0.8:
version "4.0.8"
- resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
lodash.get@^4.4.2:
version "4.4.2"
- resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==
lodash.ismatch@^4.4.0:
version "4.4.0"
- resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37"
integrity sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==
lodash.merge@^4.6.2:
version "4.6.2"
- resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
lodash.set@^4.3.2:
version "4.3.2"
- resolved "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23"
integrity sha512-4hNPN5jlm/N/HLMCO43v8BXKq9Z7QdAGc/VGrRD61w8gN9g/6jF9A4L1pbUgBLCffi0w9VsXfTOij5x8iTyFvg==
lodash.sortby@^4.7.0:
version "4.7.0"
- resolved "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==
lodash.template@^4.0.2, lodash.template@^4.5.0:
version "4.5.0"
- resolved "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab"
integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==
dependencies:
lodash._reinterpolate "^3.0.0"
@@ -7235,36 +6320,36 @@ lodash.template@^4.0.2, lodash.template@^4.5.0:
lodash.templatesettings@^4.0.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33"
integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==
dependencies:
lodash._reinterpolate "^3.0.0"
lodash.throttle@^4.1.1:
version "4.1.1"
- resolved "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4"
integrity sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==
lodash.uniq@^4.5.0:
version "4.5.0"
- resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==
-lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.2.1, lodash@~4.17.5:
+lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.2.1:
version "4.17.21"
- resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
-loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
+loose-envify@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
loud-rejection@^1.0.0:
version "1.6.0"
- resolved "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
integrity sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==
dependencies:
currently-unhandled "^0.4.1"
@@ -7272,33 +6357,33 @@ loud-rejection@^1.0.0:
lru-cache@^5.1.1:
version "5.1.1"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
dependencies:
yallist "^3.0.2"
lru-cache@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
dependencies:
yallist "^4.0.0"
macos-release@^2.2.0:
- version "2.5.0"
- resolved "https://registry.npmjs.org/macos-release/-/macos-release-2.5.0.tgz"
- integrity sha512-EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g==
+ version "2.5.1"
+ resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.5.1.tgz#bccac4a8f7b93163a8d163b8ebf385b3c5f55bf9"
+ integrity sha512-DXqXhEM7gW59OjZO8NIjBCz9AQ1BEMrfiOAl4AYByHCtVHRF4KoGNO8mqQeM8lRCtQe/UnJ4imO/d2HdkKsd+A==
make-dir@^1.0.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c"
integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==
dependencies:
pify "^3.0.0"
make-dir@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==
dependencies:
pify "^4.0.1"
@@ -7306,12 +6391,12 @@ make-dir@^2.1.0:
make-error@^1.3.6:
version "1.3.6"
- resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz"
+ resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
make-fetch-happen@^5.0.0:
version "5.0.2"
- resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz#aa8387104f2687edca01c8687ee45013d02d19bd"
integrity sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==
dependencies:
agentkeepalive "^3.4.1"
@@ -7328,35 +6413,35 @@ make-fetch-happen@^5.0.0:
map-cache@^0.2.2:
version "0.2.2"
- resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==
map-obj@^1.0.0, map-obj@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==
map-obj@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9"
integrity sha512-TzQSV2DiMYgoF5RycneKVUzIa9bQsj/B3tTgsE3dOGqlzHnGIDaC7XBE7grnA+8kZPnfqSGFe95VHc2oc0VFUQ==
map-obj@^4.0.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a"
integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==
map-visit@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==
dependencies:
object-visit "^1.0.0"
markdown-it@^13.0.1:
- version "13.0.1"
- resolved "https://registry.npmjs.org/markdown-it/-/markdown-it-13.0.1.tgz"
- integrity sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==
+ version "13.0.2"
+ resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-13.0.2.tgz#1bc22e23379a6952e5d56217fbed881e0c94d536"
+ integrity sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w==
dependencies:
argparse "^2.0.1"
entities "~3.0.1"
@@ -7365,17 +6450,9 @@ markdown-it@^13.0.1:
uc.micro "^1.0.5"
markdown-to-jsx@^7.1.3:
- version "7.1.7"
- resolved "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-7.1.7.tgz"
- integrity sha512-VI3TyyHlGkO8uFle0IOibzpO1c1iJDcXcS/zBrQrXQQvJ2tpdwVzVZ7XdKsyRz1NdRmre4dqQkMZzUHaKIG/1w==
-
-match-sorter@^6.0.2:
- version "6.3.1"
- resolved "https://registry.yarnpkg.com/match-sorter/-/match-sorter-6.3.1.tgz#98cc37fda756093424ddf3cbc62bfe9c75b92bda"
- integrity sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==
- dependencies:
- "@babel/runtime" "^7.12.5"
- remove-accents "0.4.2"
+ version "7.3.2"
+ resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-7.3.2.tgz#f286b4d112dad3028acc1e77dfe1f653b347e131"
+ integrity sha512-B+28F5ucp83aQm+OxNrPkS8z0tMKaeHiy0lHJs3LqCyDQFtWuenaIrkaVTgAm1pf1AU85LXltva86hlaT17i8Q==
mdn-data@2.0.14:
version "2.0.14"
@@ -7384,12 +6461,12 @@ mdn-data@2.0.14:
mdurl@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e"
integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==
meow@^3.3.0:
version "3.7.0"
- resolved "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
integrity sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==
dependencies:
camelcase-keys "^2.0.0"
@@ -7405,7 +6482,7 @@ meow@^3.3.0:
meow@^4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.1.tgz#d48598f6f4b1472f35bf6317a95945ace347f975"
integrity sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==
dependencies:
camelcase-keys "^4.0.0"
@@ -7420,7 +6497,7 @@ meow@^4.0.0:
meow@^8.0.0:
version "8.1.2"
- resolved "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897"
integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==
dependencies:
"@types/minimist" "^1.2.0"
@@ -7437,17 +6514,17 @@ meow@^8.0.0:
merge-stream@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1:
version "1.4.1"
- resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
micromatch@^3.1.10:
version "3.1.10"
- resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz"
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
dependencies:
arr-diff "^4.0.0"
@@ -7466,37 +6543,32 @@ micromatch@^3.1.10:
micromatch@^4.0.4, micromatch@^4.0.5:
version "4.0.5"
- resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
dependencies:
braces "^3.0.2"
picomatch "^2.3.1"
-microseconds@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/microseconds/-/microseconds-0.2.0.tgz#233b25f50c62a65d861f978a4a4f8ec18797dc39"
- integrity sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==
-
mime-db@1.52.0:
version "1.52.0"
- resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
mime-types@^2.1.12, mime-types@~2.1.19:
version "2.1.35"
- resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
dependencies:
mime-db "1.52.0"
mimic-fn@^1.0.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
mimic-fn@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
mimic-fn@^4.0.0:
@@ -7506,26 +6578,26 @@ mimic-fn@^4.0.0:
min-indent@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
minimatch@3.0.5:
version "3.0.5"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.5.tgz#4da8f1290ee0f0f8e83d60ca69f8f134068604a3"
integrity sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==
dependencies:
brace-expansion "^1.1.7"
minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
version "3.1.2"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
dependencies:
brace-expansion "^1.1.7"
minimist-options@4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619"
integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==
dependencies:
arrify "^1.0.1"
@@ -7534,20 +6606,20 @@ minimist-options@4.1.0:
minimist-options@^3.0.1:
version "3.0.2"
- resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954"
integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==
dependencies:
arrify "^1.0.1"
is-plain-obj "^1.1.0"
minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6:
- version "1.2.6"
- resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz"
- integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
+ version "1.2.8"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
+ integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
minipass@^2.3.5, minipass@^2.6.0, minipass@^2.9.0:
version "2.9.0"
- resolved "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
dependencies:
safe-buffer "^5.1.2"
@@ -7555,14 +6627,14 @@ minipass@^2.3.5, minipass@^2.6.0, minipass@^2.9.0:
minizlib@^1.3.3:
version "1.3.3"
- resolved "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
dependencies:
minipass "^2.9.0"
mississippi@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022"
integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==
dependencies:
concat-stream "^1.5.0"
@@ -7578,7 +6650,7 @@ mississippi@^3.0.0:
mixin-deep@^1.2.0:
version "1.3.2"
- resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
dependencies:
for-in "^1.0.2"
@@ -7586,31 +6658,31 @@ mixin-deep@^1.2.0:
mkdirp-promise@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1"
integrity sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==
dependencies:
mkdirp "*"
mkdirp@*:
- version "1.0.4"
- resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
- integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50"
+ integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==
mkdirp@^0.5.1, mkdirp@^0.5.5:
version "0.5.6"
- resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
dependencies:
minimist "^1.2.6"
modify-values@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"
integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==
move-concurrently@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
integrity sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==
dependencies:
aproba "^1.1.1"
@@ -7622,20 +6694,20 @@ move-concurrently@^1.0.1:
ms@2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
ms@2.1.2:
version "2.1.2"
- resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
ms@^2.0.0, ms@^2.1.1:
version "2.1.3"
- resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-msgpackr-extract@^3.0.1, msgpackr-extract@^3.0.2:
+msgpackr-extract@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-3.0.2.tgz#e05ec1bb4453ddf020551bcd5daaf0092a2c279d"
integrity sha512-SdzXp4kD/Qf8agZ9+iTu6eql0m3kWm1A2y1hkpTeVNENutaB0BwHlSvAIaMxwntmRUAUjon2V4L8Z/njd0Ct8A==
@@ -7649,14 +6721,7 @@ msgpackr-extract@^3.0.1, msgpackr-extract@^3.0.2:
"@msgpackr-extract/msgpackr-extract-linux-x64" "3.0.2"
"@msgpackr-extract/msgpackr-extract-win32-x64" "3.0.2"
-msgpackr@1.8.5:
- version "1.8.5"
- resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.8.5.tgz#8cadfb935357680648f33699d0e833c9179dbfeb"
- integrity sha512-mpPs3qqTug6ahbblkThoUY2DQdNXcm4IapwOS3Vm/87vmpzLVelvp9h3It1y9l1VPpiFLV11vfOXnmeEwiIXwg==
- optionalDependencies:
- msgpackr-extract "^3.0.1"
-
-msgpackr@^1.5.4:
+msgpackr@^1.5.4, msgpackr@^1.9.5:
version "1.9.9"
resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.9.9.tgz#ec71e37beb8729280847f683cb0a340eb35ce70f"
integrity sha512-sbn6mioS2w0lq1O6PpGtsv6Gy8roWM+o3o4Sqjd6DudrL/nOugY+KyJUimoWzHnf9OkO0T6broHFnYE/R05t9A==
@@ -7665,7 +6730,7 @@ msgpackr@^1.5.4:
multimatch@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/multimatch/-/multimatch-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-3.0.0.tgz#0e2534cc6bc238d9ab67e1b9cd5fcd85a6dbf70b"
integrity sha512-22foS/gqQfANZ3o+W7ST2x25ueHDVNWl/b9OlGcLpy/iKxjCpvcNCM51YCenUi7Mt/jAjjqv8JwZRs8YP5sRjA==
dependencies:
array-differ "^2.0.3"
@@ -7675,33 +6740,26 @@ multimatch@^3.0.0:
mute-stream@0.0.7:
version "0.0.7"
- resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
integrity sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==
mute-stream@~0.0.4:
version "0.0.8"
- resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d"
integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==
mz@^2.5.0:
version "2.7.0"
- resolved "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
dependencies:
any-promise "^1.0.0"
object-assign "^4.0.1"
thenify-all "^1.0.0"
-nano-time@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/nano-time/-/nano-time-1.0.0.tgz#b0554f69ad89e22d0907f7a12b0993a5d96137ef"
- integrity sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==
- dependencies:
- big-integer "^1.6.16"
-
nanomatch@^1.2.9:
version "1.2.13"
- resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz"
+ resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==
dependencies:
arr-diff "^4.0.0"
@@ -7716,35 +6774,30 @@ nanomatch@^1.2.9:
snapdragon "^0.8.1"
to-regex "^3.0.1"
-natural-compare-lite@^1.4.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz"
- integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==
-
natural-compare@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
-neo-async@^2.6.0:
+neo-async@^2.6.2:
version "2.6.2"
- resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
nice-try@^1.0.4:
version "1.0.5"
- resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
node-addon-api@^3.2.1:
version "3.2.1"
- resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161"
integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==
-node-addon-api@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f"
- integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==
+node-addon-api@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-6.1.0.tgz#ac8470034e58e67d0c6f1204a18ae6995d9c0d76"
+ integrity sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==
node-addon-api@^7.0.0:
version "7.0.0"
@@ -7753,7 +6806,7 @@ node-addon-api@^7.0.0:
node-fetch-npm@^2.0.2:
version "2.0.4"
- resolved "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz#6507d0e17a9ec0be3bec516958a497cec54bf5a4"
integrity sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==
dependencies:
encoding "^0.1.11"
@@ -7762,37 +6815,39 @@ node-fetch-npm@^2.0.2:
node-fetch@3.0.0-beta.9:
version "3.0.0-beta.9"
- resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-3.0.0-beta.9.tgz"
+ resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.0.0-beta.9.tgz#0a7554cfb824380dd6812864389923c783c80d9b"
integrity sha512-RdbZCEynH2tH46+tj0ua9caUHVWrd/RHnRfvly2EVdqGmI3ndS1Vn/xjm5KuGejDt2RNDQsVRLPNd2QPwcewVg==
dependencies:
data-uri-to-buffer "^3.0.1"
fetch-blob "^2.1.1"
node-fetch@^2.5.0, node-fetch@^2.6.7:
- version "2.6.7"
- resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz"
- integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==
+ version "2.7.0"
+ resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d"
+ integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==
dependencies:
whatwg-url "^5.0.0"
-node-gyp-build-optional-packages@5.0.6:
- version "5.0.6"
- resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.6.tgz#2949f5cc7dace3ac470fa2ff1a37456907120a1d"
- integrity sha512-2ZJErHG4du9G3/8IWl/l9Bp5BBFy63rno5GVmjQijvTuUZKsl6g8RB4KH/x3NLcV5ZBb4GsXmAuTYr6dRml3Gw==
-
node-gyp-build-optional-packages@5.0.7:
version "5.0.7"
resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.7.tgz#5d2632bbde0ab2f6e22f1bbac2199b07244ae0b3"
integrity sha512-YlCCc6Wffkx0kHkmam79GKvDQ6x+QZkMjFGrIMxgFNILFvGSbCp2fCBC55pGTT9gVaz8Na5CLmxt/urtzRv36w==
+node-gyp-build-optional-packages@5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.1.1.tgz#52b143b9dd77b7669073cbfe39e3f4118bfc603c"
+ integrity sha512-+P72GAjVAbTxjjwUmwjVrqrdZROD4nf8KgpBoDxqXXTiYZZt/ud60dE5yvCSr9lRO8e8yv6kgJIC0K0PfZFVQw==
+ dependencies:
+ detect-libc "^2.0.1"
+
node-gyp-build@^4.3.0:
- version "4.6.0"
- resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz"
- integrity sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==
+ version "4.6.1"
+ resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.1.tgz#24b6d075e5e391b8d5539d98c7fc5c210cac8a3e"
+ integrity sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==
node-gyp@^5.0.2:
version "5.1.1"
- resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e"
integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw==
dependencies:
env-paths "^2.2.0"
@@ -7807,30 +6862,14 @@ node-gyp@^5.0.2:
tar "^4.4.12"
which "^1.3.1"
-node-polyglot@^2.2.2:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/node-polyglot/-/node-polyglot-2.5.0.tgz#bd2703f5c5e784c3917abeaa4b5d4604a4722d7e"
- integrity sha512-zXVwHNhFsG3mls+LKHxoHF70GQOL3FTDT3jH7ldkb95kG76RdU7F/NbvxV7D2hNIL9VpWXW6y78Fz+3KZkatRg==
- dependencies:
- array.prototype.foreach "^1.0.2"
- has "^1.0.3"
- object.entries "^1.1.5"
- string.prototype.trim "^1.2.6"
- warning "^4.0.3"
-
node-releases@^2.0.13:
version "2.0.13"
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d"
integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==
-node-releases@^2.0.6:
- version "2.0.6"
- resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz"
- integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==
-
nopt@^4.0.1:
version "4.0.3"
- resolved "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==
dependencies:
abbrev "1"
@@ -7838,7 +6877,7 @@ nopt@^4.0.1:
normalize-package-data@^2.0.0, normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.3.5, normalize-package-data@^2.4.0, normalize-package-data@^2.5.0:
version "2.5.0"
- resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
dependencies:
hosted-git-info "^2.1.4"
@@ -7848,7 +6887,7 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.0, normalize-package-
normalize-package-data@^3.0.0:
version "3.0.3"
- resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e"
integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==
dependencies:
hosted-git-info "^4.0.1"
@@ -7858,19 +6897,19 @@ normalize-package-data@^3.0.0:
normalize-url@^6.1.0:
version "6.1.0"
- resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
npm-bundled@^1.0.1:
version "1.1.2"
- resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1"
integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==
dependencies:
npm-normalize-package-bin "^1.0.1"
npm-lifecycle@^3.1.2:
version "3.1.5"
- resolved "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309"
integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g==
dependencies:
byline "^5.0.0"
@@ -7884,12 +6923,12 @@ npm-lifecycle@^3.1.2:
npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2"
integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==
"npm-package-arg@^4.0.0 || ^5.0.0 || ^6.0.0", npm-package-arg@^6.0.0, npm-package-arg@^6.1.0:
version "6.1.1"
- resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.1.tgz#02168cb0a49a2b75bf988a28698de7b529df5cb7"
integrity sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==
dependencies:
hosted-git-info "^2.7.1"
@@ -7899,7 +6938,7 @@ npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1:
npm-packlist@^1.4.4:
version "1.4.8"
- resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz"
+ resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e"
integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==
dependencies:
ignore-walk "^3.0.1"
@@ -7908,7 +6947,7 @@ npm-packlist@^1.4.4:
npm-pick-manifest@^3.0.0:
version "3.0.2"
- resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz#f4d9e5fd4be2153e5f4e5f9b7be8dc419a99abb7"
integrity sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==
dependencies:
figgy-pudding "^3.5.1"
@@ -7917,14 +6956,14 @@ npm-pick-manifest@^3.0.0:
npm-run-path@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==
dependencies:
path-key "^2.0.0"
npm-run-path@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
dependencies:
path-key "^3.0.0"
@@ -7938,7 +6977,7 @@ npm-run-path@^5.1.0:
npmlog@^4.1.2:
version "4.1.2"
- resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
dependencies:
are-we-there-yet "~1.1.2"
@@ -7960,12 +6999,12 @@ nullthrows@^1.1.1:
number-is-nan@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==
nx@16.5.1:
version "16.5.1"
- resolved "https://registry.npmjs.org/nx/-/nx-16.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/nx/-/nx-16.5.1.tgz#fc0d19090d8faae5f431f9fec199adf95881150c"
integrity sha512-I3hJRE4hG7JWAtncWwDEO3GVeGPpN0TtM8xH5ArZXyDuVeTth/i3TtJzdDzqXO1HHtIoAQN0xeq4n9cLuMil5g==
dependencies:
"@nrwl/tao" "16.5.1"
@@ -8016,48 +7055,43 @@ nx@16.5.1:
oauth-sign@~0.9.0:
version "0.9.0"
- resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
version "4.1.1"
- resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
object-copy@^0.1.0:
version "0.1.0"
- resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==
dependencies:
copy-descriptor "^0.1.0"
define-property "^0.2.5"
kind-of "^3.0.3"
-object-inspect@^1.12.2, object-inspect@^1.9.0:
- version "1.12.2"
- resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz"
- integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==
-
-object-inspect@^1.12.3:
- version "1.12.3"
- resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
- integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
+object-inspect@^1.12.3, object-inspect@^1.9.0:
+ version "1.13.0"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.0.tgz#42695d3879e1cd5bda6df5062164d80c996e23e2"
+ integrity sha512-HQ4J+ic8hKrgIt3mqk6cVOVrW2ozL4KdvHlqpBv9vDYWx9ysAgENAdvy4FoGF+KFdhR7nQTNm5J0ctAeOwn+3g==
object-keys@^1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
object-visit@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==
dependencies:
isobject "^3.0.0"
object.assign@^4.1.2, object.assign@^4.1.4:
version "4.1.4"
- resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f"
integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==
dependencies:
call-bind "^1.0.2"
@@ -8066,84 +7100,90 @@ object.assign@^4.1.2, object.assign@^4.1.4:
object-keys "^1.1.1"
object.entries@^1.1.5, object.entries@^1.1.6:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23"
- integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.7.tgz#2b47760e2a2e3a752f39dd874655c61a7f03c131"
+ integrity sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
object.fromentries@^2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73"
- integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==
+ version "2.0.7"
+ resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.7.tgz#71e95f441e9a0ea6baf682ecaaf37fa2a8d7e616"
+ integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
object.getownpropertydescriptors@^2.0.3:
- version "2.1.4"
- resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz"
- integrity sha512-sccv3L/pMModT6dJAYF3fzGMVcb38ysQ0tEE6ixv2yXJDtEIPph268OlAdJj5/qZMZDq2g/jqvwppt36uS/uQQ==
+ version "2.1.7"
+ resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz#7a466a356cd7da4ba8b9e94ff6d35c3eeab5d56a"
+ integrity sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g==
dependencies:
- array.prototype.reduce "^1.0.4"
+ array.prototype.reduce "^1.0.6"
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.1"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
+ safe-array-concat "^1.0.0"
+
+object.groupby@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.1.tgz#d41d9f3c8d6c778d9cbac86b4ee9f5af103152ee"
+ integrity sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==
+ dependencies:
+ call-bind "^1.0.2"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
+ get-intrinsic "^1.2.1"
object.hasown@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92"
- integrity sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.3.tgz#6a5f2897bb4d3668b8e79364f98ccf971bda55ae"
+ integrity sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==
dependencies:
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
object.omit@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/object.omit/-/object.omit-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-3.0.0.tgz#0e3edc2fce2ba54df5577ff529f6d97bd8a522af"
integrity sha512-EO+BCv6LJfu+gBIF3ggLicFebFLN5zqzz/WWJlMFfkMyGth+oBkhxzDl0wx2W4GkLzuQs/FsSkXZb2IMWQqmBQ==
dependencies:
is-extendable "^1.0.0"
object.pick@^1.3.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==
dependencies:
isobject "^3.0.1"
object.values@^1.1.6:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d"
- integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a"
+ integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
-
-oblivious-set@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/oblivious-set/-/oblivious-set-1.0.0.tgz#c8316f2c2fb6ff7b11b6158db3234c49f733c566"
- integrity sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
octokit-pagination-methods@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4"
integrity sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ==
once@^1.3.0, once@^1.3.1, once@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
dependencies:
wrappy "1"
onetime@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
integrity sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==
dependencies:
mimic-fn "^1.0.0"
@@ -8164,7 +7204,7 @@ onetime@^6.0.0:
open@^8.4.0:
version "8.4.2"
- resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9"
integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==
dependencies:
define-lazy-prop "^2.0.0"
@@ -8183,7 +7223,7 @@ open@^9.1.0:
optionator@^0.9.3:
version "0.9.3"
- resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz"
+ resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64"
integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==
dependencies:
"@aashutoshrathi/word-wrap" "^1.2.3"
@@ -8193,24 +7233,24 @@ optionator@^0.9.3:
prelude-ls "^1.2.1"
type-check "^0.4.0"
-ordered-binary@^1.4.0:
+ordered-binary@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/ordered-binary/-/ordered-binary-1.4.1.tgz#205cb6efd6c27fa0ef4eced994a023e081cdc911"
integrity sha512-9LtiGlPy982CsgxZvJGNNp2/NnrgEr6EAyN3iIEP3/8vd3YLgAZQHbQ75ZrkfBRGrNg37Dk3U6tuVb+B4Xfslg==
orderedmap@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/orderedmap/-/orderedmap-2.1.0.tgz"
- integrity sha512-/pIFexOm6S70EPdznemIz3BQZoJ4VTFrhqzu0ACBqBgeLsLxq8e6Jim63ImIfwW/zAD1AlXpRMlOv3aghmo4dA==
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/orderedmap/-/orderedmap-2.1.1.tgz#61481269c44031c449915497bf5a4ad273c512d2"
+ integrity sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==
os-homedir@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==
os-name@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801"
integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==
dependencies:
macos-release "^2.2.0"
@@ -8218,12 +7258,12 @@ os-name@^3.1.0:
os-tmpdir@^1.0.0, os-tmpdir@~1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==
osenv@^0.1.4, osenv@^0.1.5:
version "0.1.5"
- resolved "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
dependencies:
os-homedir "^1.0.0"
@@ -8231,107 +7271,107 @@ osenv@^0.1.4, osenv@^0.1.5:
p-finally@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==
p-limit@^1.1.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==
dependencies:
p-try "^1.0.0"
p-limit@^2.0.0, p-limit@^2.2.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
dependencies:
p-try "^2.0.0"
p-limit@^3.0.2:
version "3.1.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
dependencies:
yocto-queue "^0.1.0"
p-locate@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
integrity sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==
dependencies:
p-limit "^1.1.0"
p-locate@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4"
integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==
dependencies:
p-limit "^2.0.0"
p-locate@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
dependencies:
p-limit "^2.2.0"
p-locate@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
dependencies:
p-limit "^3.0.2"
p-map-series@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/p-map-series/-/p-map-series-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-1.0.0.tgz#bf98fe575705658a9e1351befb85ae4c1f07bdca"
integrity sha512-4k9LlvY6Bo/1FcIdV33wqZQES0Py+iKISU9Uc8p8AjWoZPnFKMpVIVD3s0EYn4jzLh1I+WeUZkJ0Yoa4Qfw3Kg==
dependencies:
p-reduce "^1.0.0"
p-map@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175"
integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
p-pipe@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/p-pipe/-/p-pipe-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9"
integrity sha512-IA8SqjIGA8l9qOksXJvsvkeQ+VGb0TAzNCzvKvz9wt5wWLqfWbV6fXy43gpR2L4Te8sOq3S+Ql9biAaMKPdbtw==
p-queue@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/p-queue/-/p-queue-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-4.0.0.tgz#ed0eee8798927ed6f2c2f5f5b77fdb2061a5d346"
integrity sha512-3cRXXn3/O0o3+eVmUroJPSj/esxoEFIm0ZOno/T+NzG/VZgPOqQ8WKmlNqubSEpZmCIngEy34unkHGg83ZIBmg==
dependencies:
eventemitter3 "^3.1.0"
p-reduce@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"
integrity sha512-3Tx1T3oM1xO/Y8Gj0sWyE78EIJZ+t+aEmXUdvQgvGmSMri7aPTHoovbXEreWKkL5j21Er60XAWLTzKbAKYOujQ==
p-try@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
integrity sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==
p-try@^2.0.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
p-waterfall@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/p-waterfall/-/p-waterfall-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-1.0.0.tgz#7ed94b3ceb3332782353af6aae11aa9fc235bb00"
integrity sha512-KeXddIp6jBT8qzyxfQGOGzNYc/7ftxKtRc5Uggre02yvbZrSBHE2M2C842/WizMBFD4s0Ngwz3QFOit2A+Ezrg==
dependencies:
p-reduce "^1.0.0"
parallel-transform@^1.1.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc"
integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==
dependencies:
cyclist "^1.0.1"
@@ -8339,47 +7379,47 @@ parallel-transform@^1.1.0:
readable-stream "^2.1.5"
parcel@^2.9.3:
- version "2.9.3"
- resolved "https://registry.yarnpkg.com/parcel/-/parcel-2.9.3.tgz#315660ccbaa5a830cf71280ab0cfbd3079247cc5"
- integrity sha512-2GTVocFkwblV/TIg9AmT7TI2fO4xdWkyN8aFUEVtiVNWt96GTR3FgQyHFValfCbcj1k9Xf962Ws2hYXYUr9k1Q==
- dependencies:
- "@parcel/config-default" "2.9.3"
- "@parcel/core" "2.9.3"
- "@parcel/diagnostic" "2.9.3"
- "@parcel/events" "2.9.3"
- "@parcel/fs" "2.9.3"
- "@parcel/logger" "2.9.3"
- "@parcel/package-manager" "2.9.3"
- "@parcel/reporter-cli" "2.9.3"
- "@parcel/reporter-dev-server" "2.9.3"
- "@parcel/reporter-tracer" "2.9.3"
- "@parcel/utils" "2.9.3"
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/parcel/-/parcel-2.10.0.tgz#6b1245baf771ab025769069a28901a54fdc10823"
+ integrity sha512-YJmWEsiv1ClpPcJiWkr3gFj40sRvfeK89GGGwJjpzQMQsBmN6h6OHrSkByx0jrsPIvdsOIccU702upYpRAypuw==
+ dependencies:
+ "@parcel/config-default" "2.10.0"
+ "@parcel/core" "2.10.0"
+ "@parcel/diagnostic" "2.10.0"
+ "@parcel/events" "2.10.0"
+ "@parcel/fs" "2.10.0"
+ "@parcel/logger" "2.10.0"
+ "@parcel/package-manager" "2.10.0"
+ "@parcel/reporter-cli" "2.10.0"
+ "@parcel/reporter-dev-server" "2.10.0"
+ "@parcel/reporter-tracer" "2.10.0"
+ "@parcel/utils" "2.10.0"
chalk "^4.1.0"
commander "^7.0.0"
get-port "^4.2.0"
parent-module@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
dependencies:
callsites "^3.0.0"
parse-github-repo-url@^1.3.0:
version "1.4.1"
- resolved "https://registry.npmjs.org/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50"
integrity sha512-bSWyzBKqcSL4RrncTpGsEKoJ7H8a4L3++ifTAbTFeMHyq2wRV+42DGmQcHIrJIvdcacjIOxEuKH/w4tthF17gg==
parse-json@^2.2.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==
dependencies:
error-ex "^1.2.0"
parse-json@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0"
integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==
dependencies:
error-ex "^1.3.1"
@@ -8387,7 +7427,7 @@ parse-json@^4.0.0:
parse-json@^5.0.0, parse-json@^5.2.0:
version "5.2.0"
- resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
dependencies:
"@babel/code-frame" "^7.0.0"
@@ -8397,7 +7437,7 @@ parse-json@^5.0.0, parse-json@^5.2.0:
parse-path@^4.0.0:
version "4.0.4"
- resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.4.tgz#4bf424e6b743fb080831f03b536af9fc43f0ffea"
integrity sha512-Z2lWUis7jlmXC1jeOG9giRO2+FsuyNipeQ43HAjqAZjwSe3SEf+q/84FGPHoso3kyntbxa4c4i77t3m6fGf8cw==
dependencies:
is-ssh "^1.3.0"
@@ -8407,7 +7447,7 @@ parse-path@^4.0.0:
parse-url@^6.0.0:
version "6.0.5"
- resolved "https://registry.npmjs.org/parse-url/-/parse-url-6.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-6.0.5.tgz#4acab8982cef1846a0f8675fa686cef24b2f6f9b"
integrity sha512-e35AeLTSIlkw/5GFq70IN7po8fmDUjpDPY1rIK+VubRfsUvBonjQ+PBZG+vWMACnQSmNlvl524IucoDmcioMxA==
dependencies:
is-ssh "^1.3.0"
@@ -8417,44 +7457,44 @@ parse-url@^6.0.0:
pascalcase@^0.1.1:
version "0.1.1"
- resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==
path-dirname@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==
path-exists@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==
dependencies:
pinkie-promise "^2.0.0"
path-exists@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==
path-exists@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
path-is-absolute@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
path-key@^2.0.0, path-key@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==
path-key@^3.0.0, path-key@^3.1.0:
version "3.1.1"
- resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
path-key@^4.0.0:
@@ -8464,12 +7504,12 @@ path-key@^4.0.0:
path-parse@^1.0.7:
version "1.0.7"
- resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
path-type@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==
dependencies:
graceful-fs "^4.1.2"
@@ -8478,68 +7518,68 @@ path-type@^1.0.0:
path-type@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
dependencies:
pify "^3.0.0"
path-type@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
performance-now@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==
picocolors@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
picomatch@^2.3.1:
version "2.3.1"
- resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
pify@^2.0.0, pify@^2.3.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
pify@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==
pify@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==
pinkie-promise@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==
dependencies:
pinkie "^2.0.0"
pinkie@^2.0.0:
version "2.0.4"
- resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==
pkg-dir@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"
integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==
dependencies:
find-up "^3.0.0"
posix-character-classes@^0.1.0:
version "0.1.1"
- resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==
postcss-value-parser@^4.2.0:
@@ -8576,14 +7616,14 @@ posthtml@^0.16.4, posthtml@^0.16.5:
posthtml-parser "^0.11.0"
posthtml-render "^3.0.0"
-preact@^10.0.5:
- version "10.11.0"
- resolved "https://registry.npmjs.org/preact/-/preact-10.11.0.tgz"
- integrity sha512-Fk6+vB2kb6mSJfDgODq0YDhMfl0HNtK5+Uc9QqECO4nlyPAQwCI+BKyWO//idA7ikV7o+0Fm6LQmNuQi1wXI1w==
+preact@~10.12.1:
+ version "10.12.1"
+ resolved "https://registry.yarnpkg.com/preact/-/preact-10.12.1.tgz#8f9cb5442f560e532729b7d23d42fd1161354a21"
+ integrity sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==
prelude-ls@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
prettier-linter-helpers@^1.0.0:
@@ -8600,17 +7640,17 @@ prettier@^3.0.3:
process-nextick-args@~2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
promise-inflight@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==
promise-retry@^1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-1.1.1.tgz#6739e968e3051da20ce6497fb2b50f6911df3d6d"
integrity sha512-StEy2osPr28o17bIW776GtwO6+Q+M9zPiZkYfosciUUMYqjhU/ffwRAH0zN2+uvGyUsn8/YICIHRzLbPacpZGw==
dependencies:
err-code "^1.0.0"
@@ -8618,14 +7658,14 @@ promise-retry@^1.1.1:
promzard@^0.3.0:
version "0.3.0"
- resolved "https://registry.npmjs.org/promzard/-/promzard-0.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee"
integrity sha512-JZeYqd7UAcHCwI+sTOeUDYkvEU+1bQ7iE0UT1MgB/tERkAPkesW46MrpIySzODi+owTjZtiF8Ay5j9m60KmMBw==
dependencies:
read "1"
-prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.0, prop-types@^15.8.1:
+prop-types@^15.6.2, prop-types@^15.8.1:
version "15.8.1"
- resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
dependencies:
loose-envify "^1.4.0"
@@ -8633,50 +7673,41 @@ prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.0, prop-types@^15.8.1:
react-is "^16.13.1"
prosemirror-changeset@^2.2.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/prosemirror-changeset/-/prosemirror-changeset-2.2.0.tgz"
- integrity sha512-QM7ohGtkpVpwVGmFb8wqVhaz9+6IUXcIQBGZ81YNAKYuHiFJ1ShvSzab4pKqTinJhwciZbrtBEk/2WsqSt2PYg==
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/prosemirror-changeset/-/prosemirror-changeset-2.2.1.tgz#dae94b63aec618fac7bb9061648e6e2a79988383"
+ integrity sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==
dependencies:
prosemirror-transform "^1.0.0"
prosemirror-collab@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/prosemirror-collab/-/prosemirror-collab-1.3.0.tgz"
- integrity sha512-+S/IJ69G2cUu2IM5b3PBekuxs94HO1CxJIWOFrLQXUaUDKL/JfBx+QcH31ldBlBXyDEUl+k3Vltfi1E1MKp2mA==
- dependencies:
- prosemirror-state "^1.0.0"
-
-prosemirror-commands@^1.0.0:
- version "1.5.1"
- resolved "https://registry.npmjs.org/prosemirror-commands/-/prosemirror-commands-1.5.1.tgz"
- integrity sha512-ga1ga/RkbzxfAvb6iEXYmrEpekn5NCwTb8w1dr/gmhSoaGcQ0VPuCzOn5qDEpC45ql2oDkKoKQbRxLJwKLpMTQ==
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/prosemirror-collab/-/prosemirror-collab-1.3.1.tgz#0e8c91e76e009b53457eb3b3051fb68dad029a33"
+ integrity sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==
dependencies:
- prosemirror-model "^1.0.0"
prosemirror-state "^1.0.0"
- prosemirror-transform "^1.0.0"
-prosemirror-commands@^1.3.1:
- version "1.3.1"
- resolved "https://registry.npmjs.org/prosemirror-commands/-/prosemirror-commands-1.3.1.tgz"
- integrity sha512-XTporPgoECkOQACVw0JTe3RZGi+fls3/byqt+tXwGTkD7qLuB4KdVrJamDMJf4kfKga3uB8hZ+kUUyZ5oWpnfg==
+prosemirror-commands@^1.0.0, prosemirror-commands@^1.3.1:
+ version "1.5.2"
+ resolved "https://registry.yarnpkg.com/prosemirror-commands/-/prosemirror-commands-1.5.2.tgz#e94aeea52286f658cd984270de9b4c3fff580852"
+ integrity sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==
dependencies:
prosemirror-model "^1.0.0"
prosemirror-state "^1.0.0"
prosemirror-transform "^1.0.0"
prosemirror-dropcursor@^1.5.0:
- version "1.8.0"
- resolved "https://registry.npmjs.org/prosemirror-dropcursor/-/prosemirror-dropcursor-1.8.0.tgz"
- integrity sha512-TZMitR8nlp9Xh42pDYGcWopCoFPmJduoyGJ7FjYM2/7gZKnfD41TIaZN5Q1cQjm6Fm/P5vk/DpVYFhS8kDdigw==
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/prosemirror-dropcursor/-/prosemirror-dropcursor-1.8.1.tgz#49b9fb2f583e0d0f4021ff87db825faa2be2832d"
+ integrity sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==
dependencies:
prosemirror-state "^1.0.0"
prosemirror-transform "^1.1.0"
prosemirror-view "^1.1.0"
prosemirror-gapcursor@^1.3.1:
- version "1.3.1"
- resolved "https://registry.npmjs.org/prosemirror-gapcursor/-/prosemirror-gapcursor-1.3.1.tgz"
- integrity sha512-GKTeE7ZoMsx5uVfc51/ouwMFPq0o8YrZ7Hx4jTF4EeGbXxBveUV8CGv46mSHuBBeXGmvu50guoV2kSnOeZZnUA==
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/prosemirror-gapcursor/-/prosemirror-gapcursor-1.3.2.tgz#5fa336b83789c6199a7341c9493587e249215cb4"
+ integrity sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==
dependencies:
prosemirror-keymap "^1.0.0"
prosemirror-model "^1.0.0"
@@ -8684,9 +7715,9 @@ prosemirror-gapcursor@^1.3.1:
prosemirror-view "^1.0.0"
prosemirror-history@^1.0.0, prosemirror-history@^1.3.0:
- version "1.3.1"
- resolved "https://registry.npmjs.org/prosemirror-history/-/prosemirror-history-1.3.1.tgz"
- integrity sha512-YMV/IWBZ+LZSfaNcBbPcaQUiAiJRYFyJW2aapuNzL8nhIRsI7fIO0ykJFSe802+mWeoTsVJ1jxvRWPYqaUqljQ==
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/prosemirror-history/-/prosemirror-history-1.3.2.tgz#ce6ad7ab9db83e761aee716f3040d74738311b15"
+ integrity sha512-/zm0XoU/N/+u7i5zepjmZAEnpvjDtzoPWW6VmKptcAnPadN/SStsBjMImdCEbb3seiNTpveziPTIrXQbHLtU1g==
dependencies:
prosemirror-state "^1.2.2"
prosemirror-transform "^1.0.0"
@@ -8694,105 +7725,75 @@ prosemirror-history@^1.0.0, prosemirror-history@^1.3.0:
rope-sequence "^1.3.0"
prosemirror-inputrules@^1.2.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/prosemirror-inputrules/-/prosemirror-inputrules-1.2.0.tgz"
- integrity sha512-eAW/M/NTSSzpCOxfR8Abw6OagdG0MiDAiWHQMQveIsZtoKVYzm0AflSPq/ymqJd56/Su1YPbwy9lM13wgHOFmQ==
- dependencies:
- prosemirror-state "^1.0.0"
- prosemirror-transform "^1.0.0"
-
-prosemirror-keymap@^1.0.0, prosemirror-keymap@^1.1.2:
version "1.2.1"
- resolved "https://registry.npmjs.org/prosemirror-keymap/-/prosemirror-keymap-1.2.1.tgz"
- integrity sha512-kVK6WGC+83LZwuSJnuCb9PsADQnFZllt94qPP3Rx/vLcOUV65+IbBeH2nS5cFggPyEVJhGkGrgYFRrG250WhHQ==
+ resolved "https://registry.yarnpkg.com/prosemirror-inputrules/-/prosemirror-inputrules-1.2.1.tgz#8faf3d78c16150aedac71d326a3e3947417ce557"
+ integrity sha512-3LrWJX1+ULRh5SZvbIQlwZafOXqp1XuV21MGBu/i5xsztd+9VD15x6OtN6mdqSFI7/8Y77gYUbQ6vwwJ4mr6QQ==
dependencies:
prosemirror-state "^1.0.0"
- w3c-keyname "^2.2.0"
+ prosemirror-transform "^1.0.0"
-prosemirror-keymap@^1.2.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/prosemirror-keymap/-/prosemirror-keymap-1.2.0.tgz"
- integrity sha512-TdSfu+YyLDd54ufN/ZeD1VtBRYpgZnTPnnbY+4R08DDgs84KrIPEPbJL8t1Lm2dkljFx6xeBE26YWH3aIzkPKg==
+prosemirror-keymap@^1.0.0, prosemirror-keymap@^1.1.2, prosemirror-keymap@^1.2.0:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/prosemirror-keymap/-/prosemirror-keymap-1.2.2.tgz#14a54763a29c7b2704f561088ccf3384d14eb77e"
+ integrity sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==
dependencies:
prosemirror-state "^1.0.0"
w3c-keyname "^2.2.0"
prosemirror-markdown@^1.10.1:
- version "1.10.1"
- resolved "https://registry.npmjs.org/prosemirror-markdown/-/prosemirror-markdown-1.10.1.tgz"
- integrity sha512-s7iaTLiX+qO5z8kF2NcMmy2T7mIlxzkS4Sp3vTKSYChPtbMpg6YxFkU0Y06rUg2WtKlvBu7v1bXzlGBkfjUWAA==
+ version "1.11.2"
+ resolved "https://registry.yarnpkg.com/prosemirror-markdown/-/prosemirror-markdown-1.11.2.tgz#f6e529e669d11fa3eec859e93c0d2c91788d6c80"
+ integrity sha512-Eu5g4WPiCdqDTGhdSsG9N6ZjACQRYrsAkrF9KYfdMaCmjIApH75aVncsWYOJvEk2i1B3i8jZppv3J/tnuHGiUQ==
dependencies:
markdown-it "^13.0.1"
prosemirror-model "^1.0.0"
prosemirror-menu@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/prosemirror-menu/-/prosemirror-menu-1.2.1.tgz"
- integrity sha512-sBirXxVfHalZO4f1ZS63WzewINK4182+7dOmoMeBkqYO8wqMBvBS7wQuwVOHnkMWPEh0+N0LJ856KYUN+vFkmQ==
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/prosemirror-menu/-/prosemirror-menu-1.2.4.tgz#3cfdc7c06d10f9fbd1bce29082c498bd11a0a79a"
+ integrity sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==
dependencies:
crelt "^1.0.0"
prosemirror-commands "^1.0.0"
prosemirror-history "^1.0.0"
prosemirror-state "^1.0.0"
-prosemirror-model@^1.0.0, prosemirror-model@^1.16.0, prosemirror-model@^1.18.1:
- version "1.18.1"
- resolved "https://registry.npmjs.org/prosemirror-model/-/prosemirror-model-1.18.1.tgz"
- integrity sha512-IxSVBKAEMjD7s3n8cgtwMlxAXZrC7Mlag7zYsAKDndAqnDScvSmp/UdnRTV/B33lTCVU3CCm7dyAn/rVVD0mcw==
- dependencies:
- orderedmap "^2.0.0"
-
-prosemirror-model@^1.19.0:
- version "1.19.2"
- resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.19.2.tgz#297c9ecfb103154e605f0dbaf3cc72ee32ca0ad5"
- integrity sha512-RXl0Waiss4YtJAUY3NzKH0xkJmsZupCIccqcIFoLTIKFlKNbIvFDRl27/kQy1FP8iUAxrjRRfIVvOebnnXJgqQ==
- dependencies:
- orderedmap "^2.0.0"
-
-prosemirror-model@^1.8.1:
- version "1.19.0"
- resolved "https://registry.npmjs.org/prosemirror-model/-/prosemirror-model-1.19.0.tgz"
- integrity sha512-/CvFGJnwc41EJSfDkQLly1cAJJJmBpZwwUJtwZPTjY2RqZJfM8HVbCreOY/jti8wTRbVyjagcylyGoeJH/g/3w==
+prosemirror-model@^1.0.0, prosemirror-model@^1.16.0, prosemirror-model@^1.18.1, prosemirror-model@^1.19.0, prosemirror-model@^1.8.1:
+ version "1.19.3"
+ resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.19.3.tgz#f0d55285487fefd962d0ac695f716f4ec6705006"
+ integrity sha512-tgSnwN7BS7/UM0sSARcW+IQryx2vODKX4MI7xpqY2X+iaepJdKBPc7I4aACIsDV/LTaTjt12Z56MhDr9LsyuZQ==
dependencies:
orderedmap "^2.0.0"
prosemirror-schema-basic@^1.2.0:
- version "1.2.1"
- resolved "https://registry.npmjs.org/prosemirror-schema-basic/-/prosemirror-schema-basic-1.2.1.tgz"
- integrity sha512-vYBdIHsYKSDIqYmPBC7lnwk9DsKn8PnVqK97pMYP5MLEDFqWIX75JiaJTzndBii4bRuNqhC2UfDOfM3FKhlBHg==
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/prosemirror-schema-basic/-/prosemirror-schema-basic-1.2.2.tgz#6695f5175e4628aab179bf62e5568628b9cfe6c7"
+ integrity sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==
dependencies:
prosemirror-model "^1.19.0"
prosemirror-schema-list@^1.2.2:
- version "1.2.2"
- resolved "https://registry.npmjs.org/prosemirror-schema-list/-/prosemirror-schema-list-1.2.2.tgz"
- integrity sha512-rd0pqSDp86p0MUMKG903g3I9VmElFkQpkZ2iOd3EOVg1vo5Cst51rAsoE+5IPy0LPXq64eGcCYlW1+JPNxOj2w==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/prosemirror-schema-list/-/prosemirror-schema-list-1.3.0.tgz#05374702cf35a3ba5e7ec31079e355a488d52519"
+ integrity sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==
dependencies:
prosemirror-model "^1.0.0"
prosemirror-state "^1.0.0"
- prosemirror-transform "^1.0.0"
-
-prosemirror-state@^1.0.0, prosemirror-state@^1.4.1:
- version "1.4.1"
- resolved "https://registry.npmjs.org/prosemirror-state/-/prosemirror-state-1.4.1.tgz"
- integrity sha512-U/LBDW2gNmVa07sz/D229XigSdDQ5CLFwVB1Vb32MJbAHHhWe/6pOc721faI17tqw4pZ49i1xfY/jEZ9tbIhPg==
- dependencies:
- prosemirror-model "^1.0.0"
- prosemirror-transform "^1.0.0"
+ prosemirror-transform "^1.7.3"
-prosemirror-state@^1.2.2, prosemirror-state@^1.3.1:
- version "1.4.2"
- resolved "https://registry.npmjs.org/prosemirror-state/-/prosemirror-state-1.4.2.tgz"
- integrity sha512-puuzLD2mz/oTdfgd8msFbe0A42j5eNudKAAPDB0+QJRw8cO1ygjLmhLrg9RvDpf87Dkd6D4t93qdef00KKNacQ==
+prosemirror-state@^1.0.0, prosemirror-state@^1.2.2, prosemirror-state@^1.3.1, prosemirror-state@^1.4.1:
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/prosemirror-state/-/prosemirror-state-1.4.3.tgz#94aecf3ffd54ec37e87aa7179d13508da181a080"
+ integrity sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==
dependencies:
prosemirror-model "^1.0.0"
prosemirror-transform "^1.0.0"
prosemirror-view "^1.27.0"
prosemirror-tables@^1.3.0:
- version "1.3.2"
- resolved "https://registry.npmjs.org/prosemirror-tables/-/prosemirror-tables-1.3.2.tgz"
- integrity sha512-/9JTeN6s58Zq66HXaxP6uf8PAmc7XXKZFPlOGVtLvxEd6xBP6WtzaJB9wBjiGUzwbdhdMEy7V62yuHqk/3VrnQ==
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/prosemirror-tables/-/prosemirror-tables-1.3.4.tgz#0b7cc16d49f90c5b834c9f29291c545478ce9ab0"
+ integrity sha512-z6uLSQ1BLC3rgbGwZmpfb+xkdvD7W/UOsURDfognZFYaTtc0gsk7u/t71Yijp2eLflVpffMk6X0u0+u+MMDvIw==
dependencies:
prosemirror-keymap "^1.1.2"
prosemirror-model "^1.8.1"
@@ -8801,42 +7802,25 @@ prosemirror-tables@^1.3.0:
prosemirror-view "^1.13.3"
prosemirror-trailing-node@^2.0.2:
- version "2.0.4"
- resolved "https://registry.npmjs.org/prosemirror-trailing-node/-/prosemirror-trailing-node-2.0.4.tgz"
- integrity sha512-0Yl9w7IdHkaCdqR+NE3FOucePME4OmiGcybnF1iasarEILP5U8+4xTnl53yafULjmwcg1SrSG65Hg7Zk2H2v3g==
+ version "2.0.7"
+ resolved "https://registry.yarnpkg.com/prosemirror-trailing-node/-/prosemirror-trailing-node-2.0.7.tgz#ba782a7929f18bcae650b1c7082a2d10443eab19"
+ integrity sha512-8zcZORYj/8WEwsGo6yVCRXFMOfBo0Ub3hCUvmoWIZYfMP26WqENU0mpEP27w7mt8buZWuGrydBewr0tOArPb1Q==
dependencies:
- "@babel/runtime" "^7.21.0"
- "@remirror/core-constants" "^2.0.1"
- "@remirror/core-helpers" "^2.0.2"
+ "@remirror/core-constants" "^2.0.2"
+ "@remirror/core-helpers" "^3.0.0"
escape-string-regexp "^4.0.0"
-prosemirror-transform@^1.0.0, prosemirror-transform@^1.1.0, prosemirror-transform@^1.7.0:
- version "1.7.0"
- resolved "https://registry.npmjs.org/prosemirror-transform/-/prosemirror-transform-1.7.0.tgz"
- integrity sha512-O4T697Cqilw06Zvc3Wm+e237R6eZtJL/xGMliCi+Uo8VL6qHk6afz1qq0zNjT3eZMuYwnP8ZS0+YxX/tfcE9TQ==
- dependencies:
- prosemirror-model "^1.0.0"
-
-prosemirror-transform@^1.2.1:
- version "1.7.1"
- resolved "https://registry.npmjs.org/prosemirror-transform/-/prosemirror-transform-1.7.1.tgz"
- integrity sha512-VteoifAfpt46z0yEt6Fc73A5OID9t/y2QIeR5MgxEwTuitadEunD/V0c9jQW8ziT8pbFM54uTzRLJ/nLuQjMxg==
+prosemirror-transform@^1.0.0, prosemirror-transform@^1.1.0, prosemirror-transform@^1.2.1, prosemirror-transform@^1.7.0, prosemirror-transform@^1.7.3:
+ version "1.8.0"
+ resolved "https://registry.yarnpkg.com/prosemirror-transform/-/prosemirror-transform-1.8.0.tgz#a47c64a3c373c1bd0ff46e95be3210c8dda0cd11"
+ integrity sha512-BaSBsIMv52F1BVVMvOmp1yzD3u65uC3HTzCBQV1WDPqJRQ2LuHKcyfn0jwqodo8sR9vVzMzZyI+Dal5W9E6a9A==
dependencies:
prosemirror-model "^1.0.0"
-prosemirror-view@^1.0.0, prosemirror-view@^1.1.0, prosemirror-view@^1.13.3, prosemirror-view@^1.27.0, prosemirror-view@^1.31.0:
- version "1.31.1"
- resolved "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.31.1.tgz"
- integrity sha512-9NKJdXnGV4+1qFRi16XFZxpnx6zNok9MEj/HElkqUJ1HtOyKOICffKxqoXUUCAdHrrP+yMDvdXc6wT7GGWBL3A==
- dependencies:
- prosemirror-model "^1.16.0"
- prosemirror-state "^1.0.0"
- prosemirror-transform "^1.1.0"
-
-prosemirror-view@^1.28.2:
- version "1.28.2"
- resolved "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.28.2.tgz"
- integrity sha512-uK28mJbu0GI8Oz7Aclt6BKL4g+C59EBShBXDB0Y9Y71H25p4bQgmLQLfDWjsT1J9XOw0bR8QQajZmdK8RvXI9g==
+prosemirror-view@^1.0.0, prosemirror-view@^1.1.0, prosemirror-view@^1.13.3, prosemirror-view@^1.27.0, prosemirror-view@^1.28.2, prosemirror-view@^1.31.0:
+ version "1.32.1"
+ resolved "https://registry.yarnpkg.com/prosemirror-view/-/prosemirror-view-1.32.1.tgz#bcd0877f1673ffe5f94c1e966b6fbdadcd2d5bbf"
+ integrity sha512-9SnB4HBgRczzTyIMZLPE1iszegL04hNfUyS8uPtP1RPxNM2NTCiIs8KwNsJU4nbZO9rxJTwVTv7Jm3zU4CR78A==
dependencies:
prosemirror-model "^1.16.0"
prosemirror-state "^1.0.0"
@@ -8844,39 +7828,39 @@ prosemirror-view@^1.28.2:
proto-list@~1.2.1:
version "1.2.4"
- resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==
protocols@^1.4.0:
version "1.4.8"
- resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.8.tgz"
+ resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8"
integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg==
protocols@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86"
integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==
protoduck@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/protoduck/-/protoduck-5.0.1.tgz#03c3659ca18007b69a50fd82a7ebcc516261151f"
integrity sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==
dependencies:
genfun "^5.0.0"
proxy-from-env@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
psl@^1.1.28:
version "1.9.0"
- resolved "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==
pump@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909"
integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==
dependencies:
end-of-stream "^1.1.0"
@@ -8884,7 +7868,7 @@ pump@^2.0.0:
pump@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
dependencies:
end-of-stream "^1.1.0"
@@ -8892,7 +7876,7 @@ pump@^3.0.0:
pumpify@^1.3.3:
version "1.5.1"
- resolved "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce"
integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==
dependencies:
duplexify "^3.6.0"
@@ -8900,30 +7884,30 @@ pumpify@^1.3.3:
pump "^2.0.0"
punycode@^2.1.0, punycode@^2.1.1:
- version "2.1.1"
- resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
- integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
+ integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
q@^1.5.1:
version "1.5.1"
- resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==
qs@^6.9.4:
- version "6.11.0"
- resolved "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz"
- integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
+ version "6.11.2"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9"
+ integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==
dependencies:
side-channel "^1.0.4"
qs@~6.5.2:
version "6.5.3"
- resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad"
integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==
query-string@^6.13.8:
version "6.14.1"
- resolved "https://registry.npmjs.org/query-string/-/query-string-6.14.1.tgz"
+ resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a"
integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw==
dependencies:
decode-uri-component "^0.2.0"
@@ -8931,228 +7915,99 @@ query-string@^6.13.8:
split-on-first "^1.0.0"
strict-uri-encode "^2.0.0"
-query-string@^7.1.1:
- version "7.1.3"
- resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.3.tgz#a1cf90e994abb113a325804a972d98276fe02328"
- integrity sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==
- dependencies:
- decode-uri-component "^0.2.2"
- filter-obj "^1.1.0"
- split-on-first "^1.0.0"
- strict-uri-encode "^2.0.0"
-
queue-microtask@^1.2.2:
version "1.2.3"
- resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
quick-lru@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8"
integrity sha512-tRS7sTgyxMXtLum8L65daJnHUhfDUgboRdcWW2bR9vBfrj2+O5HSMbQOJfJJjIVSPFqbBCF37FpwWXGitDc5tA==
quick-lru@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f"
integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==
-ra-core@^4.14.4:
- version "4.14.4"
- resolved "https://registry.yarnpkg.com/ra-core/-/ra-core-4.14.4.tgz#9bdf037e0a685b720f9730de4a68d59b1df975ab"
- integrity sha512-ncDTBj0cK33d75cm0IVwJtZbUdHaGE5b1I7l/Ws6/DXSMbeUaB5CNvXVCFBW/tUldewwwC7dKyM9F5wFGP2o3w==
- dependencies:
- clsx "^1.1.1"
- date-fns "^2.19.0"
- eventemitter3 "^4.0.7"
- inflection "~1.12.0"
- jsonexport "^3.2.0"
- lodash "~4.17.5"
- prop-types "^15.6.1"
- query-string "^7.1.1"
- react-is "^17.0.2"
- react-query "^3.32.1"
-
-ra-i18n-polyglot@^4.14.4:
- version "4.14.4"
- resolved "https://registry.yarnpkg.com/ra-i18n-polyglot/-/ra-i18n-polyglot-4.14.4.tgz#cd47fdf8e47f3e1042d5af03575f6455aa99c6b0"
- integrity sha512-3vJJ1y73VsBjTl8LFmYvrSNj9/aFy4f8FO0p0LIZvWokIn8dgao6U45i/eYr1bwC/zLltZnpGJwe4m0ETo7cUA==
- dependencies:
- node-polyglot "^2.2.2"
- ra-core "^4.14.4"
-
ra-input-rich-text@^4.11.0:
- version "4.11.1"
- resolved "https://registry.npmjs.org/ra-input-rich-text/-/ra-input-rich-text-4.11.1.tgz"
- integrity sha512-7t0dlYLZ1MVs426vPBeiTiROKOCDFgWMpCVOG79PLN1bgkFnV0e5k0DPGvwfVi/jYVXLosKrc41GpQ3oWtW4cg==
- dependencies:
- "@tiptap/core" "^2.0.0-beta.217"
- "@tiptap/extension-color" "^2.0.0-beta.217"
- "@tiptap/extension-highlight" "^2.0.0-beta.217"
- "@tiptap/extension-image" "^2.0.0-beta.217"
- "@tiptap/extension-link" "^2.0.0-beta.217"
- "@tiptap/extension-placeholder" "^2.0.0-beta.217"
- "@tiptap/extension-text-align" "^2.0.0-beta.217"
- "@tiptap/extension-text-style" "^2.0.0-beta.217"
- "@tiptap/extension-underline" "^2.0.0-beta.217"
- "@tiptap/pm" "^2.0.0-beta.217"
- "@tiptap/react" "^2.0.0-beta.217"
- "@tiptap/starter-kit" "^2.0.0-beta.217"
- clsx "^1.1.1"
-
-ra-language-english@^4.14.4:
- version "4.14.4"
- resolved "https://registry.yarnpkg.com/ra-language-english/-/ra-language-english-4.14.4.tgz#0a513a47b4f36330842542fad180f1f508be9c58"
- integrity sha512-LFLjEwiRaIvVBqOwUdwPKONVLB0/k8kaIOl2+eAh+XN+LdjY5bPAlzWbWhVXGxhfKdEd4d9u+2nb3V/RpBqJuw==
- dependencies:
- ra-core "^4.14.4"
-
-ra-ui-materialui@^4.14.4:
- version "4.14.4"
- resolved "https://registry.yarnpkg.com/ra-ui-materialui/-/ra-ui-materialui-4.14.4.tgz#9691f72e5621685666a478adc657f5b93ca333e4"
- integrity sha512-NFDmO/89bWw11M9z8ZAPkG0v6Pqi7W0F6tOEwqaSHe2QjeKTRfVtXBq2ihzMqkCqxXf+yFWqH1s8VQvs80wvRg==
+ version "4.15.0"
+ resolved "https://registry.yarnpkg.com/ra-input-rich-text/-/ra-input-rich-text-4.15.0.tgz#8cc5d22f0919b8ce27a33ea85434a9eb7e94e663"
+ integrity sha512-kttz8xz4CifA2vfp3qdmumMH8asO8tom0UDqW/PQ7ZNz4ojK5PTyFaSVbpe4vlZ04OPwhFjy9+xfyiR4pZNE7g==
dependencies:
- autosuggest-highlight "^3.1.1"
+ "@tiptap/core" "^2.0.3"
+ "@tiptap/extension-color" "^2.0.3"
+ "@tiptap/extension-highlight" "^2.0.3"
+ "@tiptap/extension-image" "^2.0.3"
+ "@tiptap/extension-link" "^2.0.3"
+ "@tiptap/extension-placeholder" "^2.0.3"
+ "@tiptap/extension-text-align" "^2.0.3"
+ "@tiptap/extension-text-style" "^2.0.3"
+ "@tiptap/extension-underline" "^2.0.3"
+ "@tiptap/pm" "^2.0.3"
+ "@tiptap/react" "^2.0.3"
+ "@tiptap/starter-kit" "^2.0.3"
clsx "^1.1.1"
- css-mediaquery "^0.1.2"
- dompurify "^2.4.3"
- hotscript "^1.0.12"
- inflection "~1.12.0"
- jsonexport "^3.2.0"
- lodash "~4.17.5"
- prop-types "^15.7.0"
- query-string "^7.1.1"
- react-dropzone "^12.0.4"
- react-error-boundary "^3.1.4"
- react-query "^3.32.1"
- react-transition-group "^4.4.1"
rdf-canonize@^3.0.0:
- version "3.3.0"
- resolved "https://registry.npmjs.org/rdf-canonize/-/rdf-canonize-3.3.0.tgz"
- integrity sha512-gfSNkMua/VWC1eYbSkVaL/9LQhFeOh0QULwv7Or0f+po8pMgQ1blYQFe1r9Mv2GJZXw88Cz/drnAnB9UlNnHfQ==
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/rdf-canonize/-/rdf-canonize-3.4.0.tgz#87f88342b173cc371d812a07de350f0c1aa9f058"
+ integrity sha512-fUeWjrkOO0t1rg7B2fdyDTvngj+9RlUyL92vOdiB7c0FPguWVsniIMjEtHH+meLBO9rzkUlUzBVXgWrjI8P9LA==
dependencies:
setimmediate "^1.0.5"
-rdf-data-factory@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/rdf-data-factory/-/rdf-data-factory-1.1.1.tgz"
- integrity sha512-0HoLx7lbBlNd2YTmNKin0txgiYmAV56eVU823at8cG2+iD0Ia5kcRNDpzZy6I/HCtFTymHvTfdhHTzm3ak3Jpw==
+rdf-data-factory@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/rdf-data-factory/-/rdf-data-factory-1.1.2.tgz#d47550d2649d0d64f8cae3fcc9efae7a8a895d9a"
+ integrity sha512-TfQD63Lokabd09ES1jAtKK8AA6rkr9rwyUBGo6olOt1CE0Um36CUQIqytyf0am2ouBPR0l7SaHxCiMcPGHkt1A==
dependencies:
"@rdfjs/types" "*"
-react-admin@^4.11.0:
- version "4.14.4"
- resolved "https://registry.yarnpkg.com/react-admin/-/react-admin-4.14.4.tgz#67867d93ec7f70af98210c1e5ef0b272e1e28943"
- integrity sha512-1IETQEksURAZIeVUnDPWR0ienaz10MHKrySkul5l0HXjNYh6vv0wDoWtq9XMTB6SkJbVnnLrlPa9DUZhceeaeg==
- dependencies:
- "@emotion/react" "^11.4.1"
- "@emotion/styled" "^11.3.0"
- "@mui/icons-material" "^5.0.1"
- "@mui/material" "^5.0.2"
- history "^5.1.0"
- ra-core "^4.14.4"
- ra-i18n-polyglot "^4.14.4"
- ra-language-english "^4.14.4"
- ra-ui-materialui "^4.14.4"
- react-hook-form "^7.43.9"
- react-router "^6.1.0"
- react-router-dom "^6.1.0"
-
-react-dropzone@^12.0.4:
- version "12.1.0"
- resolved "https://registry.yarnpkg.com/react-dropzone/-/react-dropzone-12.1.0.tgz#e097b37e9da6f9e324efc757b7434ebc6f3dc2cb"
- integrity sha512-iBYHA1rbopIvtzokEX4QubO6qk5IF/x3BtKGu74rF2JkQDXnwC4uO/lHKpaw4PJIV6iIAYOlwLv2FpiGyqHNog==
- dependencies:
- attr-accept "^2.2.2"
- file-selector "^0.5.0"
- prop-types "^15.8.1"
-
-react-error-boundary@^3.1.4:
- version "3.1.4"
- resolved "https://registry.yarnpkg.com/react-error-boundary/-/react-error-boundary-3.1.4.tgz#255db92b23197108757a888b01e5b729919abde0"
- integrity sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==
- dependencies:
- "@babel/runtime" "^7.12.5"
-
react-error-overlay@6.0.9:
version "6.0.9"
resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.9.tgz#3c743010c9359608c375ecd6bc76f35d93995b0a"
integrity sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==
-react-hook-form@^7.43.9:
- version "7.47.0"
- resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.47.0.tgz#a42f07266bd297ddf1f914f08f4b5f9783262f31"
- integrity sha512-F/TroLjTICipmHeFlMrLtNLceO2xr1jU3CyiNla5zdwsGUGu2UOxxR4UyJgLlhMwLW/Wzp4cpJ7CPfgJIeKdSg==
-
react-icons@^4.4.0:
- version "4.4.0"
- resolved "https://registry.npmjs.org/react-icons/-/react-icons-4.4.0.tgz"
- integrity sha512-fSbvHeVYo/B5/L4VhB7sBA1i2tS8MkT0Hb9t2H1AVPkwGfVHLJCqyr2Py9dKMxsyM63Eng1GkdZfbWj+Fmv8Rg==
+ version "4.11.0"
+ resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-4.11.0.tgz#4b0e31c9bfc919608095cc429c4f1846f4d66c65"
+ integrity sha512-V+4khzYcE5EBk/BvcuYRq6V/osf11ODUM2J8hg2FDSswRrGvqiYUYPRy4OdrWaQOBj4NcpJfmHZLNaD+VH0TyA==
-react-is@^16.13.1, react-is@^16.7.0:
+react-is@^16.13.1:
version "16.13.1"
- resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
-react-is@^17.0.2:
- version "17.0.2"
- resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
- integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
-
react-is@^18.2.0:
version "18.2.0"
- resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
react-leaflet@4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/react-leaflet/-/react-leaflet-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/react-leaflet/-/react-leaflet-4.0.2.tgz#ffa3d8dde9859459e3dc91436f84ffd56f39ec57"
integrity sha512-pDyIf50Ek/LZ0p4Qxw2D9LMOx+LytQs2R+MY3mhTUPGzubrpP4QAgbCv2qc0L9y0qVRgx7dHavWuPFkc/WCJCw==
dependencies:
"@react-leaflet/core" "^2.0.1"
react-masonry-css@^1.0.14:
version "1.0.16"
- resolved "https://registry.npmjs.org/react-masonry-css/-/react-masonry-css-1.0.16.tgz"
+ resolved "https://registry.yarnpkg.com/react-masonry-css/-/react-masonry-css-1.0.16.tgz#72b28b4ae3484e250534700860597553a10f1a2c"
integrity sha512-KSW0hR2VQmltt/qAa3eXOctQDyOu7+ZBevtKgpNDSzT7k5LA/0XntNa9z9HKCdz3QlxmJHglTZ18e4sX4V8zZQ==
react-mde@^11.5.0:
version "11.5.0"
- resolved "https://registry.npmjs.org/react-mde/-/react-mde-11.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/react-mde/-/react-mde-11.5.0.tgz#3e81a505071aa80287fb23a1c0ce5e8b34c82055"
integrity sha512-CH/VK6d+tpVjJ8rTXfh1dDt6GWedTgCU0668p8toqhAc3vy0Lu872O2RKYDSpkUrlbHI08fjUPTl++nExp6gag==
-react-query@^3.32.1:
- version "3.39.3"
- resolved "https://registry.yarnpkg.com/react-query/-/react-query-3.39.3.tgz#4cea7127c6c26bdea2de5fb63e51044330b03f35"
- integrity sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==
- dependencies:
- "@babel/runtime" "^7.5.5"
- broadcast-channel "^3.4.1"
- match-sorter "^6.0.2"
-
react-refresh@^0.9.0:
version "0.9.0"
resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.9.0.tgz#71863337adc3e5c2f8a6bfddd12ae3bfe32aafbf"
integrity sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==
-react-router-dom@^6.1.0:
- version "6.16.0"
- resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.16.0.tgz#86f24658da35eb66727e75ecbb1a029e33ee39d9"
- integrity sha512-aTfBLv3mk/gaKLxgRDUPbPw+s4Y/O+ma3rEN1u8EgEpLpPe6gNjIsWt9rxushMHHMb7mSwxRGdGlGdvmFsyPIg==
- dependencies:
- "@remix-run/router" "1.9.0"
- react-router "6.16.0"
-
-react-router@6.16.0, react-router@^6.1.0:
- version "6.16.0"
- resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.16.0.tgz#abbf3d5bdc9c108c9b822a18be10ee004096fb81"
- integrity sha512-VT4Mmc4jj5YyjpOi5jOf0I+TYzGpvzERy4ckNSvSh2RArv8LLoCxlsZ2D+tc7zgjxcY34oTz2hZaeX5RVprKqA==
- dependencies:
- "@remix-run/router" "1.9.0"
-
-react-transition-group@^4.4.1, react-transition-group@^4.4.5:
+react-transition-group@^4.4.5:
version "4.4.5"
- resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz"
+ resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1"
integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==
dependencies:
"@babel/runtime" "^7.5.5"
@@ -9160,23 +8015,16 @@ react-transition-group@^4.4.1, react-transition-group@^4.4.5:
loose-envify "^1.4.0"
prop-types "^15.6.2"
-react@^18.2.0:
- version "18.2.0"
- resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
- integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
- dependencies:
- loose-envify "^1.1.0"
-
read-cmd-shim@^1.0.1:
version "1.0.5"
- resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.5.tgz#87e43eba50098ba5a32d0ceb583ab8e43b961c16"
integrity sha512-v5yCqQ/7okKoZZkBQUAfTsQ3sVJtXdNfbPnI5cceppoxEVLYA3k+VtV2omkeo8MS94JCy4fSiUwlRBAwCVRPUA==
dependencies:
graceful-fs "^4.1.2"
"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@^2.0.13:
version "2.1.2"
- resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a"
integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA==
dependencies:
glob "^7.1.1"
@@ -9186,7 +8034,7 @@ read-cmd-shim@^1.0.1:
read-package-tree@^5.1.6:
version "5.3.1"
- resolved "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636"
integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw==
dependencies:
read-package-json "^2.0.0"
@@ -9195,7 +8043,7 @@ read-package-tree@^5.1.6:
read-pkg-up@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==
dependencies:
find-up "^1.0.0"
@@ -9203,7 +8051,7 @@ read-pkg-up@^1.0.1:
read-pkg-up@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07"
integrity sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==
dependencies:
find-up "^2.0.0"
@@ -9211,7 +8059,7 @@ read-pkg-up@^3.0.0:
read-pkg-up@^7.0.1:
version "7.0.1"
- resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507"
integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==
dependencies:
find-up "^4.1.0"
@@ -9220,7 +8068,7 @@ read-pkg-up@^7.0.1:
read-pkg@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==
dependencies:
load-json-file "^1.0.0"
@@ -9229,7 +8077,7 @@ read-pkg@^1.0.0:
read-pkg@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
integrity sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==
dependencies:
load-json-file "^4.0.0"
@@ -9238,7 +8086,7 @@ read-pkg@^3.0.0:
read-pkg@^5.2.0:
version "5.2.0"
- resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc"
integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==
dependencies:
"@types/normalize-package-data" "^2.4.0"
@@ -9248,15 +8096,15 @@ read-pkg@^5.2.0:
read@1, read@~1.0.1:
version "1.0.7"
- resolved "https://registry.npmjs.org/read/-/read-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4"
integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==
dependencies:
mute-stream "~0.0.4"
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.6, readable-stream@~2.3.6:
- version "2.3.7"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz"
- integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
+ version "2.3.8"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
+ integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.3"
@@ -9266,18 +8114,9 @@ read@1, read@~1.0.1:
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
-"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2:
- version "3.6.0"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz"
- integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
- dependencies:
- inherits "^2.0.3"
- string_decoder "^1.1.1"
- util-deprecate "^1.0.1"
-
-readable-stream@^3.1.1, readable-stream@^3.4.0:
+"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0:
version "3.6.2"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
dependencies:
inherits "^2.0.3"
@@ -9286,7 +8125,7 @@ readable-stream@^3.1.1, readable-stream@^3.4.0:
readdir-scoped-modules@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309"
integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==
dependencies:
debuglog "^1.0.1"
@@ -9296,7 +8135,7 @@ readdir-scoped-modules@^1.0.0:
redent@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
integrity sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==
dependencies:
indent-string "^2.1.0"
@@ -9304,7 +8143,7 @@ redent@^1.0.0:
redent@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa"
integrity sha512-XNwrTx77JQCEMXTeb8movBKuK75MgH0RZkujNuDKCezemx/voapl9i2gCSi8WWm8+ox5ycJi1gxF22fR7c0Ciw==
dependencies:
indent-string "^3.0.0"
@@ -9312,15 +8151,27 @@ redent@^2.0.0:
redent@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f"
integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==
dependencies:
indent-string "^4.0.0"
strip-indent "^3.0.0"
-regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.7:
+reflect.getprototypeof@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz#aaccbf41aca3821b87bb71d9dcbc7ad0ba50a3f3"
+ integrity sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==
+ dependencies:
+ call-bind "^1.0.2"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
+ get-intrinsic "^1.2.1"
+ globalthis "^1.0.3"
+ which-builtin-type "^1.1.3"
+
+regenerator-runtime@^0.13.7:
version "0.13.11"
- resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
regenerator-runtime@^0.14.0:
@@ -9330,22 +8181,13 @@ regenerator-runtime@^0.14.0:
regex-not@^1.0.0, regex-not@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==
dependencies:
extend-shallow "^3.0.2"
safe-regex "^1.1.0"
-regexp.prototype.flags@^1.4.3:
- version "1.4.3"
- resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz"
- integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.1.3"
- functions-have-names "^1.2.2"
-
-regexp.prototype.flags@^1.5.1:
+regexp.prototype.flags@^1.5.0, regexp.prototype.flags@^1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e"
integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==
@@ -9354,36 +8196,31 @@ regexp.prototype.flags@^1.5.1:
define-properties "^1.2.0"
set-function-name "^2.0.0"
-remove-accents@0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/remove-accents/-/remove-accents-0.4.2.tgz#0a43d3aaae1e80db919e07ae254b285d9e1c7bb5"
- integrity sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==
-
remove-accents@^0.4.2:
- version "0.4.3"
- resolved "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.3.tgz"
- integrity sha512-bwzzFccF6RgWWt+KrcEpCDMw9uCwz5GCdyo+r4p2hu6PhqtlEMOXEO0uPAw6XmVYAnODxHaqLanhUY1lqmsNFw==
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/remove-accents/-/remove-accents-0.4.4.tgz#73704abf7dae3764295d475d2b6afac4ea23e4d9"
+ integrity sha512-EpFcOa/ISetVHEXqu+VwI96KZBmq+a8LJnGkaeFw45epGlxIZz5dhEEnNZMsQXgORu3qaMoLX4qJCzOik6ytAg==
repeat-element@^1.1.2:
version "1.1.4"
- resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9"
integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==
repeat-string@^1.6.1:
version "1.6.1"
- resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==
repeating@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==
dependencies:
is-finite "^1.0.0"
request@^2.88.0:
version "2.88.2"
- resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
dependencies:
aws-sign2 "~0.7.0"
@@ -9409,75 +8246,57 @@ request@^2.88.0:
require-directory@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
require-main-filename@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
resolve-cwd@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a"
integrity sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==
dependencies:
resolve-from "^3.0.0"
resolve-from@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==
resolve-from@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
resolve-url@^0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==
-resolve@^1.10.0:
- version "1.22.1"
- resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz"
- integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
- dependencies:
- is-core-module "^2.9.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-resolve@^1.19.0:
- version "1.22.6"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.6.tgz#dd209739eca3aef739c626fea1b4f3c506195362"
- integrity sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==
+resolve@^1.10.0, resolve@^1.22.4:
+ version "1.22.8"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
+ integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
dependencies:
is-core-module "^2.13.0"
path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0"
-resolve@^1.22.1:
- version "1.22.2"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f"
- integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==
- dependencies:
- is-core-module "^2.11.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
resolve@^2.0.0-next.4:
- version "2.0.0-next.4"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660"
- integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==
+ version "2.0.0-next.5"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.5.tgz#6b0ec3107e671e52b68cd068ef327173b90dc03c"
+ integrity sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==
dependencies:
- is-core-module "^2.9.0"
+ is-core-module "^2.13.0"
path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0"
restore-cursor@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
integrity sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==
dependencies:
onetime "^2.0.0"
@@ -9485,7 +8304,7 @@ restore-cursor@^2.0.0:
restore-cursor@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==
dependencies:
onetime "^5.1.0"
@@ -9493,37 +8312,37 @@ restore-cursor@^3.1.0:
ret@~0.1.10:
version "0.1.15"
- resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz"
+ resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
retry@^0.10.0:
version "0.10.1"
- resolved "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz"
+ resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4"
integrity sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==
reusify@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-rimraf@3.0.2, rimraf@^3.0.0, rimraf@^3.0.2:
- version "3.0.2"
- resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz"
- integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
- dependencies:
- glob "^7.1.3"
-
rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3:
version "2.7.1"
- resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
dependencies:
glob "^7.1.3"
+rimraf@^3.0.0, rimraf@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+ integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+ dependencies:
+ glob "^7.1.3"
+
rope-sequence@^1.3.0:
- version "1.3.3"
- resolved "https://registry.npmjs.org/rope-sequence/-/rope-sequence-1.3.3.tgz"
- integrity sha512-85aZYCxweiD5J8yTEbw+E6A27zSnLPNDL0WfPdw3YYodq7WjnTKo0q4dtyQ2gz23iPT8Q9CUyJtAaUNcTxRf5Q==
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/rope-sequence/-/rope-sequence-1.3.4.tgz#df85711aaecd32f1e756f76e43a415171235d425"
+ integrity sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==
run-applescript@^5.0.0:
version "5.0.0"
@@ -9534,31 +8353,31 @@ run-applescript@^5.0.0:
run-async@^2.2.0:
version "2.4.1"
- resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455"
integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==
run-parallel@^1.1.9:
version "1.2.0"
- resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
dependencies:
queue-microtask "^1.2.2"
run-queue@^1.0.0, run-queue@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47"
integrity sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==
dependencies:
aproba "^1.1.1"
rxjs@^6.4.0:
version "6.6.7"
- resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
dependencies:
tslib "^1.9.0"
-safe-array-concat@^1.0.1:
+safe-array-concat@^1.0.0, safe-array-concat@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.1.tgz#91686a63ce3adbea14d61b14c99572a8ff84754c"
integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==
@@ -9570,17 +8389,17 @@ safe-array-concat@^1.0.1:
safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0:
version "5.2.1"
- resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
- resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
safe-regex-test@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295"
integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==
dependencies:
call-bind "^1.0.2"
@@ -9589,53 +8408,46 @@ safe-regex-test@^1.0.0:
safe-regex@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==
dependencies:
ret "~0.1.10"
"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
version "2.1.2"
- resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
"semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1:
- version "5.7.1"
- resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz"
- integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
+ version "5.7.2"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
+ integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
semver@7.5.3:
version "7.5.3"
- resolved "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e"
integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==
dependencies:
lru-cache "^6.0.0"
-semver@^6.0.0, semver@^6.2.0, semver@^6.3.0:
- version "6.3.0"
- resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz"
- integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
-
-semver@^7.3.4:
- version "7.3.7"
- resolved "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz"
- integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==
- dependencies:
- lru-cache "^6.0.0"
+semver@^6.0.0, semver@^6.2.0, semver@^6.3.0, semver@^6.3.1:
+ version "6.3.1"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
+ integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
-semver@^7.5.0, semver@^7.5.2, semver@^7.5.4:
+semver@^7.3.4, semver@^7.5.2, semver@^7.5.4:
version "7.5.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
dependencies:
lru-cache "^6.0.0"
set-blocking@^2.0.0, set-blocking@~2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==
-set-function-name@^2.0.0:
+set-function-name@^2.0.0, set-function-name@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a"
integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==
@@ -9646,7 +8458,7 @@ set-function-name@^2.0.0:
set-value@^2.0.0, set-value@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
dependencies:
extend-shallow "^2.0.1"
@@ -9656,43 +8468,43 @@ set-value@^2.0.0, set-value@^2.0.1:
setimmediate@^1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==
shallow-clone@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3"
integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==
dependencies:
kind-of "^6.0.2"
shebang-command@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==
dependencies:
shebang-regex "^1.0.0"
shebang-command@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
dependencies:
shebang-regex "^3.0.0"
shebang-regex@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==
shebang-regex@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
side-channel@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
dependencies:
call-bind "^1.0.0"
@@ -9706,27 +8518,27 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
slash@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
slash@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
slide@^1.1.6:
version "1.1.6"
- resolved "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707"
integrity sha512-NwrtjCg+lZoqhFU8fOwl4ay2ei8PaqCBOUV3/ektPY9trO1yQ1oXEfmHAhKArUVUr/hOHvy5f6AdP17dCM0zMw==
smart-buffer@^4.1.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae"
integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==
snapdragon-node@^2.0.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==
dependencies:
define-property "^1.0.0"
@@ -9735,14 +8547,14 @@ snapdragon-node@^2.0.1:
snapdragon-util@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==
dependencies:
kind-of "^3.2.0"
snapdragon@^0.8.1:
version "0.8.2"
- resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz"
+ resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==
dependencies:
base "^0.11.1"
@@ -9756,7 +8568,7 @@ snapdragon@^0.8.1:
socks-proxy-agent@^4.0.0:
version "4.0.2"
- resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386"
integrity sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==
dependencies:
agent-base "~4.2.1"
@@ -9764,7 +8576,7 @@ socks-proxy-agent@^4.0.0:
socks@~2.3.2:
version "2.3.3"
- resolved "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/socks/-/socks-2.3.3.tgz#01129f0a5d534d2b897712ed8aceab7ee65d78e3"
integrity sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==
dependencies:
ip "1.1.5"
@@ -9772,14 +8584,14 @@ socks@~2.3.2:
sort-keys@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128"
integrity sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==
dependencies:
is-plain-obj "^1.0.0"
source-map-resolve@^0.5.0:
version "0.5.3"
- resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz"
+ resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
dependencies:
atob "^2.1.2"
@@ -9790,37 +8602,37 @@ source-map-resolve@^0.5.0:
source-map-url@^0.4.0:
version "0.4.1"
- resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56"
integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==
-source-map@^0.5.6, source-map@^0.5.7:
+source-map@^0.5.6:
version "0.5.7"
- resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==
source-map@^0.6.1:
version "0.6.1"
- resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
sparqljs@^3.5.1:
- version "3.6.1"
- resolved "https://registry.npmjs.org/sparqljs/-/sparqljs-3.6.1.tgz"
- integrity sha512-4QoI3cMywOio8mtTLa3Rl85XI7UBvQRm1CbzbHEQ7C6AN6ldBFsSS96vkhcKCQKPl0eDTmCXsi+50234+1cOpA==
+ version "3.7.1"
+ resolved "https://registry.yarnpkg.com/sparqljs/-/sparqljs-3.7.1.tgz#5d121895d491d50214f2e38f2885a3a935b6c093"
+ integrity sha512-I1jYMtcwDkgCEqQ4eQuQIhB8hFAlRAJ6YDXDcV54XztaJaYRFqJlidHt77S3j8Mfh6kY6GK04dXPEIopxbEeuQ==
dependencies:
- rdf-data-factory "^1.1.1"
+ rdf-data-factory "^1.1.2"
spdx-correct@^3.0.0:
- version "3.1.1"
- resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz"
- integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c"
+ integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==
dependencies:
spdx-expression-parse "^3.0.0"
spdx-license-ids "^3.0.0"
spdx-exceptions@^2.1.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
spdx-expression-parse@^3.0.0, spdx-expression-parse@^3.0.1:
@@ -9832,51 +8644,51 @@ spdx-expression-parse@^3.0.0, spdx-expression-parse@^3.0.1:
spdx-license-ids "^3.0.0"
spdx-license-ids@^3.0.0:
- version "3.0.12"
- resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz"
- integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==
+ version "3.0.16"
+ resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f"
+ integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==
speakingurl@^14.0.1:
version "14.0.1"
- resolved "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/speakingurl/-/speakingurl-14.0.1.tgz#f37ec8ddc4ab98e9600c1c9ec324a8c48d772a53"
integrity sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==
split-on-first@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==
split-string@^3.0.1, split-string@^3.0.2:
version "3.1.0"
- resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==
dependencies:
extend-shallow "^3.0.0"
split2@^2.0.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493"
integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==
dependencies:
through2 "^2.0.2"
split2@^3.0.0:
version "3.2.2"
- resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f"
integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==
dependencies:
readable-stream "^3.0.0"
split@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/split/-/split-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9"
integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==
dependencies:
through "2"
sprintf-js@~1.0.2:
version "1.0.3"
- resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
srcset@4:
@@ -9886,7 +8698,7 @@ srcset@4:
sshpk@^1.7.0:
version "1.17.0"
- resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz"
+ resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5"
integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==
dependencies:
asn1 "~0.2.3"
@@ -9901,7 +8713,7 @@ sshpk@^1.7.0:
ssri@^6.0.0, ssri@^6.0.1:
version "6.0.2"
- resolved "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5"
integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==
dependencies:
figgy-pudding "^3.5.1"
@@ -9913,7 +8725,7 @@ stable@^0.1.8:
static-extend@^0.1.1:
version "0.1.2"
- resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==
dependencies:
define-property "^0.2.5"
@@ -9921,7 +8733,7 @@ static-extend@^0.1.1:
stream-each@^1.1.0:
version "1.2.3"
- resolved "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae"
integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==
dependencies:
end-of-stream "^1.1.0"
@@ -9929,17 +8741,17 @@ stream-each@^1.1.0:
stream-shift@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d"
integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==
strict-uri-encode@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
integrity sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==
string-width@^1.0.1:
version "1.0.2"
- resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==
dependencies:
code-point-at "^1.0.0"
@@ -9948,7 +8760,7 @@ string-width@^1.0.1:
"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3"
- resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
emoji-regex "^8.0.0"
@@ -9957,7 +8769,7 @@ string-width@^1.0.1:
string-width@^2.1.0:
version "2.1.1"
- resolved "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
dependencies:
is-fullwidth-code-point "^2.0.0"
@@ -9965,7 +8777,7 @@ string-width@^2.1.0:
string-width@^3.0.0, string-width@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961"
integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==
dependencies:
emoji-regex "^7.0.1"
@@ -9973,20 +8785,21 @@ string-width@^3.0.0, string-width@^3.1.0:
strip-ansi "^5.1.0"
string.prototype.matchall@^4.0.8:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3"
- integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz#a1553eb532221d4180c51581d6072cd65d1ee100"
+ integrity sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
- get-intrinsic "^1.1.3"
+ define-properties "^1.2.0"
+ es-abstract "^1.22.1"
+ get-intrinsic "^1.2.1"
has-symbols "^1.0.3"
- internal-slot "^1.0.3"
- regexp.prototype.flags "^1.4.3"
+ internal-slot "^1.0.5"
+ regexp.prototype.flags "^1.5.0"
+ set-function-name "^2.0.0"
side-channel "^1.0.4"
-string.prototype.trim@^1.2.6, string.prototype.trim@^1.2.8:
+string.prototype.trim@^1.2.8:
version "1.2.8"
resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd"
integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==
@@ -9995,15 +8808,6 @@ string.prototype.trim@^1.2.6, string.prototype.trim@^1.2.8:
define-properties "^1.2.0"
es-abstract "^1.22.1"
-string.prototype.trimend@^1.0.6:
- version "1.0.6"
- resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz"
- integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
-
string.prototype.trimend@^1.0.7:
version "1.0.7"
resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e"
@@ -10013,15 +8817,6 @@ string.prototype.trimend@^1.0.7:
define-properties "^1.2.0"
es-abstract "^1.22.1"
-string.prototype.trimstart@^1.0.6:
- version "1.0.6"
- resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz"
- integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
-
string.prototype.trimstart@^1.0.7:
version "1.0.7"
resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298"
@@ -10033,61 +8828,61 @@ string.prototype.trimstart@^1.0.7:
string_decoder@^1.1.1:
version "1.3.0"
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
dependencies:
safe-buffer "~5.2.0"
string_decoder@~1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
dependencies:
safe-buffer "~5.1.0"
strip-ansi@^3.0.0, strip-ansi@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==
dependencies:
ansi-regex "^2.0.0"
strip-ansi@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==
dependencies:
ansi-regex "^3.0.0"
strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0:
version "5.2.0"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae"
integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==
dependencies:
ansi-regex "^4.1.0"
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
ansi-regex "^5.0.1"
strip-bom@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==
dependencies:
is-utf8 "^0.2.0"
strip-bom@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==
strip-eof@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==
strip-final-newline@^2.0.0:
@@ -10102,59 +8897,54 @@ strip-final-newline@^3.0.0:
strip-indent@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
integrity sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==
dependencies:
get-stdin "^4.0.1"
strip-indent@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68"
integrity sha512-RsSNPLpq6YUL7QYy44RnPVTn/lcVZtb48Uof3X5JLbF4zD/Gs7ZFDv2HWol+leoQN2mT86LAzSshGfkTlSOpsA==
strip-indent@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
dependencies:
min-indent "^1.0.0"
-strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
+strip-json-comments@^3.1.1:
version "3.1.1"
- resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
strong-log-transformer@^2.0.0, strong-log-transformer@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10"
integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==
dependencies:
duplexer "^0.1.1"
minimist "^1.2.0"
through "^2.3.4"
-stylis@4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51"
- integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==
-
supports-color@^5.3.0:
version "5.5.0"
- resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
dependencies:
has-flag "^3.0.0"
supports-color@^7.1.0:
version "7.2.0"
- resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
dependencies:
has-flag "^4.0.0"
supports-preserve-symlinks-flag@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
svgo@^2.4.0:
@@ -10180,7 +8970,7 @@ synckit@^0.8.5:
tar-stream@~2.2.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287"
integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==
dependencies:
bl "^4.0.3"
@@ -10191,7 +8981,7 @@ tar-stream@~2.2.0:
tar@^4.4.10, tar@^4.4.12, tar@^4.4.8:
version "4.4.19"
- resolved "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz"
+ resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3"
integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==
dependencies:
chownr "^1.1.4"
@@ -10204,12 +8994,12 @@ tar@^4.4.10, tar@^4.4.12, tar@^4.4.8:
temp-dir@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d"
integrity sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==
temp-write@^3.4.0:
version "3.4.0"
- resolved "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.4.0.tgz#8cff630fb7e9da05f047c74ce4ce4d685457d492"
integrity sha512-P8NK5aNqcGQBC37i/8pL/K9tFgx14CF2vdwluD/BA/dGWGD4T4E59TE7dAxPyb2wusts2FhMp36EiopBBsGJ2Q==
dependencies:
graceful-fs "^4.1.2"
@@ -10226,36 +9016,36 @@ term-size@^2.2.1:
text-extensions@^1.0.0:
version "1.9.0"
- resolved "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26"
integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==
text-table@^0.2.0:
version "0.2.0"
- resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
thenify-all@^1.0.0:
version "1.6.0"
- resolved "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==
dependencies:
thenify ">= 3.1.0 < 4"
"thenify@>= 3.1.0 < 4":
version "3.3.1"
- resolved "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f"
integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==
dependencies:
any-promise "^1.0.0"
throttle-debounce@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/throttle-debounce/-/throttle-debounce-3.0.1.tgz#32f94d84dfa894f786c9a1f290e7a645b6a19abb"
integrity sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==
through2@^2.0.0, through2@^2.0.2:
version "2.0.5"
- resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd"
integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==
dependencies:
readable-stream "~2.3.6"
@@ -10263,7 +9053,7 @@ through2@^2.0.0, through2@^2.0.2:
through2@^3.0.0:
version "3.0.2"
- resolved "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4"
integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==
dependencies:
inherits "^2.0.4"
@@ -10271,14 +9061,14 @@ through2@^3.0.0:
through2@^4.0.0:
version "4.0.2"
- resolved "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764"
integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==
dependencies:
readable-stream "3"
through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6:
version "2.3.8"
- resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz"
+ resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==
timsort@^0.3.0:
@@ -10286,14 +9076,9 @@ timsort@^0.3.0:
resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4"
integrity sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==
-tiny-warning@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754"
- integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
-
tippy.js@^6.3.7:
version "6.3.7"
- resolved "https://registry.npmjs.org/tippy.js/-/tippy.js-6.3.7.tgz"
+ resolved "https://registry.yarnpkg.com/tippy.js/-/tippy.js-6.3.7.tgz#8ccfb651d642010ed9a32ff29b0e9e19c5b8c61c"
integrity sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==
dependencies:
"@popperjs/core" "^2.9.0"
@@ -10305,33 +9090,28 @@ titleize@^3.0.0:
tmp@^0.0.33:
version "0.0.33"
- resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==
dependencies:
os-tmpdir "~1.0.2"
tmp@~0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14"
integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==
dependencies:
rimraf "^3.0.0"
-to-fast-properties@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz"
- integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
-
to-object-path@^0.3.0:
version "0.3.0"
- resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==
dependencies:
kind-of "^3.0.2"
to-regex-range@^2.1.0:
version "2.1.1"
- resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==
dependencies:
is-number "^3.0.0"
@@ -10339,14 +9119,14 @@ to-regex-range@^2.1.0:
to-regex-range@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
dependencies:
is-number "^7.0.0"
to-regex@^3.0.1, to-regex@^3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==
dependencies:
define-property "^2.0.2"
@@ -10356,7 +9136,7 @@ to-regex@^3.0.1, to-regex@^3.0.2:
tough-cookie@~2.5.0:
version "2.5.0"
- resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
dependencies:
psl "^1.1.28"
@@ -10364,37 +9144,37 @@ tough-cookie@~2.5.0:
tr46@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09"
integrity sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==
dependencies:
punycode "^2.1.0"
tr46@~0.0.3:
version "0.0.3"
- resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==
trim-newlines@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
integrity sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==
trim-newlines@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20"
integrity sha512-MTBWv3jhVjTU7XR3IQHllbiJs8sc75a80OEhB6or/q7pLTWgQ0bMGQXXYQSrSuXe6WiKWDZ5txXY5P59a/coVA==
trim-newlines@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144"
integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==
ts-api-utils@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz"
- integrity sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.3.tgz#f12c1c781d04427313dbac808f453f050e54a331"
+ integrity sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==
-tsconfig-paths@^3.14.1:
+tsconfig-paths@^3.14.2:
version "3.14.2"
resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz#6e32f1f79412decd261f92d633a9dc1cfa99f088"
integrity sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==
@@ -10406,7 +9186,7 @@ tsconfig-paths@^3.14.1:
tsconfig-paths@^4.1.2:
version "4.2.0"
- resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c"
integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==
dependencies:
json5 "^2.2.2"
@@ -10415,71 +9195,61 @@ tsconfig-paths@^4.1.2:
tslib@^1.9.0:
version "1.14.1"
- resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
-tslib@^2.0.3, tslib@^2.5.0, tslib@^2.6.0:
+tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.5.0, tslib@^2.6.0:
version "2.6.2"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae"
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
-tslib@^2.1.0:
- version "2.4.0"
- resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz"
- integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
-
-tslib@^2.3.0, tslib@^2.4.0:
- version "2.6.0"
- resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz"
- integrity sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==
-
tunnel-agent@^0.6.0:
version "0.6.0"
- resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==
dependencies:
safe-buffer "^5.0.1"
tweetnacl@^0.14.3, tweetnacl@~0.14.0:
version "0.14.5"
- resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz"
+ resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==
type-check@^0.4.0, type-check@~0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
dependencies:
prelude-ls "^1.2.1"
type-fest@^0.18.0:
version "0.18.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f"
integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==
type-fest@^0.20.2:
version "0.20.2"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
type-fest@^0.3.0:
version "0.3.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1"
integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==
type-fest@^0.6.0:
version "0.6.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b"
integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==
type-fest@^0.8.1:
version "0.8.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
type-fest@^2.19.0:
version "2.19.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b"
integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==
typed-array-buffer@^1.0.0:
@@ -10523,37 +9293,37 @@ typed-array-length@^1.0.4:
typedarray@^0.0.6:
version "0.0.6"
- resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
typescript@^5.1.6:
- version "5.1.6"
- resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz"
- integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
+ version "5.2.2"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78"
+ integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==
uc.micro@^1.0.1, uc.micro@^1.0.5:
version "1.0.6"
- resolved "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac"
integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==
uglify-js@^3.1.4:
- version "3.17.2"
- resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.2.tgz"
- integrity sha512-bbxglRjsGQMchfvXZNusUcYgiB9Hx2K4AHYXQy2DITZ9Rd+JzhX7+hoocE5Winr7z2oHvPsekkBwXtigvxevXg==
+ version "3.17.4"
+ resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c"
+ integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==
uid-number@0.0.6:
version "0.0.6"
- resolved "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
integrity sha512-c461FXIljswCuscZn67xq9PpszkPT6RjheWFQTgCyabJrTUozElanb0YEqv2UGgk247YpcJkFBuSGNvBlpXM9w==
umask@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d"
integrity sha512-lE/rxOhmiScJu9L6RTNVgB/zZbF+vGC0/p6D3xnkAePI2o0sMyFG966iR5Ki50OI/0mNi2yaRnxfLsPmEZF/JA==
unbox-primitive@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"
integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==
dependencies:
call-bind "^1.0.2"
@@ -10561,9 +9331,14 @@ unbox-primitive@^1.0.2:
has-symbols "^1.0.3"
which-boxed-primitive "^1.0.2"
+undici-types@~5.25.1:
+ version "5.25.3"
+ resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3"
+ integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==
+
union-value@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
dependencies:
arr-union "^3.1.0"
@@ -10573,51 +9348,43 @@ union-value@^1.0.0:
unique-filename@^1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230"
integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==
dependencies:
unique-slug "^2.0.0"
unique-slug@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c"
integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==
dependencies:
imurmurhash "^0.1.4"
universal-user-agent@^4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557"
integrity sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg==
dependencies:
os-name "^3.1.0"
universal-user-agent@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee"
integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==
universalify@^0.1.0:
version "0.1.2"
- resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
universalify@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
-unload@2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/unload/-/unload-2.2.0.tgz#ccc88fdcad345faa06a92039ec0f80b488880ef7"
- integrity sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==
- dependencies:
- "@babel/runtime" "^7.6.2"
- detect-node "^2.0.4"
-
unset-value@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==
dependencies:
has-value "^0.3.1"
@@ -10630,55 +9397,47 @@ untildify@^4.0.0:
upath@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894"
integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==
-update-browserslist-db@^1.0.11:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.12.tgz#868ce670ac09b4a4d4c86b608701c0dee2dc41cd"
- integrity sha512-tE1smlR58jxbFMtrMpFNRmsrOXlpNXss965T1CrpwuZUzUAg/TBQc94SpyhDLSzrqrJS9xTRBthnZAGcE1oaxg==
- dependencies:
- escalade "^3.1.1"
- picocolors "^1.0.0"
-
-update-browserslist-db@^1.0.9:
- version "1.0.9"
- resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.9.tgz"
- integrity sha512-/xsqn21EGVdXI3EXSum1Yckj3ZVZugqyOZQ/CxYPBD/R+ko9NSUScf8tFF4dOKY+2pvSSJA/S+5B8s4Zr4kyvg==
+update-browserslist-db@^1.0.13:
+ version "1.0.13"
+ resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4"
+ integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==
dependencies:
escalade "^3.1.1"
picocolors "^1.0.0"
uri-js@^4.2.2:
version "4.4.1"
- resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
dependencies:
punycode "^2.1.0"
urix@^0.1.0:
version "0.1.0"
- resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==
url-join@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7"
integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==
use@^3.1.0:
version "3.1.1"
- resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
version "1.0.2"
- resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
util-promisify@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53"
integrity sha512-K+5eQPYs14b3+E+hmE2J6gCZ4JmMl9DbYS6BeP2CHq6WMuNxErxf5B/n0fz85L8zUuoO6rIzNNmIQDu/j+1OcA==
dependencies:
object.getownpropertydescriptors "^2.0.3"
@@ -10690,17 +9449,17 @@ utility-types@^3.10.0:
uuid@^3.0.1, uuid@^3.3.2:
version "3.4.0"
- resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
v8-compile-cache@2.3.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3:
version "3.0.4"
- resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
dependencies:
spdx-correct "^3.0.0"
@@ -10708,14 +9467,14 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3:
validate-npm-package-name@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e"
integrity sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==
dependencies:
builtins "^1.0.3"
verror@1.10.0:
version "1.10.0"
- resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz"
+ resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==
dependencies:
assert-plus "^1.0.0"
@@ -10723,20 +9482,13 @@ verror@1.10.0:
extsprintf "^1.2.0"
w3c-keyname@^2.2.0:
- version "2.2.6"
- resolved "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.6.tgz"
- integrity sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg==
-
-warning@^4.0.3:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3"
- integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==
- dependencies:
- loose-envify "^1.0.0"
+ version "2.2.8"
+ resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.8.tgz#7b17c8c6883d4e8b86ac8aba79d39e880f8869c5"
+ integrity sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==
wcwidth@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8"
integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==
dependencies:
defaults "^1.0.3"
@@ -10748,17 +9500,17 @@ weak-lru-cache@^1.2.2:
webidl-conversions@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==
webidl-conversions@^4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==
whatwg-url@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==
dependencies:
tr46 "~0.0.3"
@@ -10766,7 +9518,7 @@ whatwg-url@^5.0.0:
whatwg-url@^7.0.0:
version "7.1.0"
- resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06"
integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==
dependencies:
lodash.sortby "^4.7.0"
@@ -10775,7 +9527,7 @@ whatwg-url@^7.0.0:
which-boxed-primitive@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==
dependencies:
is-bigint "^1.0.1"
@@ -10784,12 +9536,40 @@ which-boxed-primitive@^1.0.2:
is-string "^1.0.5"
is-symbol "^1.0.3"
+which-builtin-type@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.1.3.tgz#b1b8443707cc58b6e9bf98d32110ff0c2cbd029b"
+ integrity sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==
+ dependencies:
+ function.prototype.name "^1.1.5"
+ has-tostringtag "^1.0.0"
+ is-async-function "^2.0.0"
+ is-date-object "^1.0.5"
+ is-finalizationregistry "^1.0.2"
+ is-generator-function "^1.0.10"
+ is-regex "^1.1.4"
+ is-weakref "^1.0.2"
+ isarray "^2.0.5"
+ which-boxed-primitive "^1.0.2"
+ which-collection "^1.0.1"
+ which-typed-array "^1.1.9"
+
+which-collection@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906"
+ integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==
+ dependencies:
+ is-map "^2.0.1"
+ is-set "^2.0.1"
+ is-weakmap "^2.0.1"
+ is-weakset "^2.0.1"
+
which-module@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz"
- integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409"
+ integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==
-which-typed-array@^1.1.11:
+which-typed-array@^1.1.11, which-typed-array@^1.1.9:
version "1.1.11"
resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.11.tgz#99d691f23c72aab6768680805a271b69761ed61a"
integrity sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==
@@ -10802,40 +9582,40 @@ which-typed-array@^1.1.11:
which@^1.2.9, which@^1.3.1:
version "1.3.1"
- resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
dependencies:
isexe "^2.0.0"
which@^2.0.1:
version "2.0.2"
- resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
dependencies:
isexe "^2.0.0"
wide-align@^1.1.0:
version "1.1.5"
- resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3"
integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==
dependencies:
string-width "^1.0.2 || 2 || 3 || 4"
windows-release@^3.1.0:
version "3.3.3"
- resolved "https://registry.npmjs.org/windows-release/-/windows-release-3.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/windows-release/-/windows-release-3.3.3.tgz#1c10027c7225743eec6b89df160d64c2e0293999"
integrity sha512-OSOGH1QYiW5yVor9TtmXKQvt2vjQqbYS+DqmsZw+r7xDwLXEeT3JGW0ZppFmHx4diyXmxt238KFR3N9jzevBRg==
dependencies:
execa "^1.0.0"
wordwrap@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==
wrap-ansi@^5.1.0:
version "5.1.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09"
integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==
dependencies:
ansi-styles "^3.2.0"
@@ -10844,7 +9624,7 @@ wrap-ansi@^5.1.0:
wrap-ansi@^7.0.0:
version "7.0.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
dependencies:
ansi-styles "^4.0.0"
@@ -10853,12 +9633,12 @@ wrap-ansi@^7.0.0:
wrappy@1:
version "1.0.2"
- resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2:
version "2.4.3"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481"
integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==
dependencies:
graceful-fs "^4.1.11"
@@ -10867,7 +9647,7 @@ write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2:
write-json-file@^2.2.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f"
integrity sha512-84+F0igFp2dPD6UpAQjOUX3CdKUOqUzn6oE9sDBNzUXINR5VceJ1rauZltqQB/bcYsx3EpKys4C7/PivKUAiWQ==
dependencies:
detect-indent "^5.0.0"
@@ -10879,7 +9659,7 @@ write-json-file@^2.2.0:
write-json-file@^3.2.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a"
integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ==
dependencies:
detect-indent "^5.0.0"
@@ -10891,7 +9671,7 @@ write-json-file@^3.2.0:
write-pkg@^3.1.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-3.2.0.tgz#0e178fe97820d389a8928bc79535dbe68c2cff21"
integrity sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==
dependencies:
sort-keys "^2.0.0"
@@ -10899,47 +9679,37 @@ write-pkg@^3.1.0:
xtend@~4.0.1:
version "4.0.2"
- resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
-xxhash-wasm@^0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/xxhash-wasm/-/xxhash-wasm-0.4.2.tgz#752398c131a4dd407b5132ba62ad372029be6f79"
- integrity sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA==
-
y18n@^4.0.0:
version "4.0.3"
- resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf"
integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==
y18n@^5.0.5:
version "5.0.8"
- resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1:
version "3.1.1"
- resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
yallist@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
-yaml@^1.10.0:
- version "1.10.2"
- resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
- integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
-
yargs-parser@21.1.1, yargs-parser@^21.1.1:
version "21.1.1"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
yargs-parser@^15.0.1:
version "15.0.3"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.3.tgz#316e263d5febe8b38eef61ac092b33dfcc9b1115"
integrity sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==
dependencies:
camelcase "^5.0.0"
@@ -10947,12 +9717,12 @@ yargs-parser@^15.0.1:
yargs-parser@^20.2.3:
version "20.2.9"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
yargs@^14.2.2:
version "14.2.3"
- resolved "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.3.tgz#1a1c3edced1afb2a2fea33604bc6d1d8d688a414"
integrity sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==
dependencies:
cliui "^5.0.0"
@@ -10969,7 +9739,7 @@ yargs@^14.2.2:
yargs@^17.6.2:
version "17.7.2"
- resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269"
integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
dependencies:
cliui "^8.0.1"
@@ -10982,5 +9752,5 @@ yargs@^17.6.2:
yocto-queue@^0.1.0:
version "0.1.0"
- resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==