@multiplatform.one/backoffice 7.2.1 → 7.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/config/BackofficeProvider.cjs +4 -10
- package/dist/cjs/config/BackofficeProvider.native.js +9 -29
- package/dist/cjs/config/BackofficeProvider.native.js.map +1 -1
- package/dist/cjs/desk/Desk.cjs +187 -0
- package/dist/cjs/desk/Desk.native.js +214 -0
- package/dist/cjs/desk/Desk.native.js.map +1 -0
- package/dist/cjs/desk/DeskSurface.cjs +123 -0
- package/dist/cjs/desk/DeskSurface.native.js +130 -0
- package/dist/cjs/desk/DeskSurface.native.js.map +1 -0
- package/dist/cjs/desk/resolveDeskPath.cjs +118 -0
- package/dist/cjs/desk/resolveDeskPath.native.js +123 -0
- package/dist/cjs/desk/resolveDeskPath.native.js.map +1 -0
- package/dist/cjs/desk/scope.cjs +54 -0
- package/dist/cjs/desk/scope.native.js +61 -0
- package/dist/cjs/desk/scope.native.js.map +1 -0
- package/dist/cjs/desk/target.cjs +174 -0
- package/dist/cjs/desk/target.native.js +178 -0
- package/dist/cjs/desk/target.native.js.map +1 -0
- package/dist/cjs/index.cjs +13 -0
- package/dist/cjs/index.native.js +13 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/list/DoctypeListScreen.cjs +3 -1
- package/dist/cjs/list/DoctypeListScreen.native.js +3 -1
- package/dist/cjs/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/cjs/report/DoctypeReportView.cjs +3 -1
- package/dist/cjs/report/DoctypeReportView.native.js +4 -2
- package/dist/cjs/report/DoctypeReportView.native.js.map +1 -1
- package/dist/cjs/views/CalendarView.cjs +5 -0
- package/dist/cjs/views/CalendarView.native.js +5 -0
- package/dist/cjs/views/CalendarView.native.js.map +1 -1
- package/dist/cjs/views/DashboardView.cjs +5 -3
- package/dist/cjs/views/DashboardView.native.js +5 -3
- package/dist/cjs/views/DashboardView.native.js.map +1 -1
- package/dist/cjs/views/ImageView.cjs +5 -0
- package/dist/cjs/views/ImageView.native.js +5 -0
- package/dist/cjs/views/ImageView.native.js.map +1 -1
- package/dist/cjs/views/KanbanView.cjs +5 -2
- package/dist/cjs/views/KanbanView.native.js +5 -2
- package/dist/cjs/views/KanbanView.native.js.map +1 -1
- package/dist/cjs/views/TreeView.cjs +5 -0
- package/dist/cjs/views/TreeView.native.js +5 -0
- package/dist/cjs/views/TreeView.native.js.map +1 -1
- package/dist/esm/config/BackofficeProvider.mjs +5 -11
- package/dist/esm/config/BackofficeProvider.mjs.map +1 -1
- package/dist/esm/config/BackofficeProvider.native.js +10 -30
- package/dist/esm/config/BackofficeProvider.native.js.map +1 -1
- package/dist/esm/desk/Desk.mjs +162 -0
- package/dist/esm/desk/Desk.mjs.map +1 -0
- package/dist/esm/desk/Desk.native.js +186 -0
- package/dist/esm/desk/Desk.native.js.map +1 -0
- package/dist/esm/desk/DeskSurface.mjs +97 -0
- package/dist/esm/desk/DeskSurface.mjs.map +1 -0
- package/dist/esm/desk/DeskSurface.native.js +101 -0
- package/dist/esm/desk/DeskSurface.native.js.map +1 -0
- package/dist/esm/desk/resolveDeskPath.mjs +93 -0
- package/dist/esm/desk/resolveDeskPath.mjs.map +1 -0
- package/dist/esm/desk/resolveDeskPath.native.js +95 -0
- package/dist/esm/desk/resolveDeskPath.native.js.map +1 -0
- package/dist/esm/desk/scope.mjs +27 -0
- package/dist/esm/desk/scope.mjs.map +1 -0
- package/dist/esm/desk/scope.native.js +31 -0
- package/dist/esm/desk/scope.native.js.map +1 -0
- package/dist/esm/desk/target.mjs +147 -0
- package/dist/esm/desk/target.mjs.map +1 -0
- package/dist/esm/desk/target.native.js +148 -0
- package/dist/esm/desk/target.native.js.map +1 -0
- package/dist/esm/index.mjs +6 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +6 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/list/DoctypeListScreen.mjs +3 -1
- package/dist/esm/list/DoctypeListScreen.mjs.map +1 -1
- package/dist/esm/list/DoctypeListScreen.native.js +3 -1
- package/dist/esm/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/esm/report/DoctypeReportView.mjs +3 -1
- package/dist/esm/report/DoctypeReportView.mjs.map +1 -1
- package/dist/esm/report/DoctypeReportView.native.js +4 -2
- package/dist/esm/report/DoctypeReportView.native.js.map +1 -1
- package/dist/esm/views/CalendarView.mjs +5 -0
- package/dist/esm/views/CalendarView.mjs.map +1 -1
- package/dist/esm/views/CalendarView.native.js +5 -0
- package/dist/esm/views/CalendarView.native.js.map +1 -1
- package/dist/esm/views/DashboardView.mjs +5 -3
- package/dist/esm/views/DashboardView.mjs.map +1 -1
- package/dist/esm/views/DashboardView.native.js +5 -3
- package/dist/esm/views/DashboardView.native.js.map +1 -1
- package/dist/esm/views/ImageView.mjs +5 -0
- package/dist/esm/views/ImageView.mjs.map +1 -1
- package/dist/esm/views/ImageView.native.js +5 -0
- package/dist/esm/views/ImageView.native.js.map +1 -1
- package/dist/esm/views/KanbanView.mjs +5 -2
- package/dist/esm/views/KanbanView.mjs.map +1 -1
- package/dist/esm/views/KanbanView.native.js +5 -2
- package/dist/esm/views/KanbanView.native.js.map +1 -1
- package/dist/esm/views/TreeView.mjs +5 -0
- package/dist/esm/views/TreeView.mjs.map +1 -1
- package/dist/esm/views/TreeView.native.js +5 -0
- package/dist/esm/views/TreeView.native.js.map +1 -1
- package/dist/jsx/config/BackofficeProvider.mjs +5 -11
- package/dist/jsx/config/BackofficeProvider.mjs.map +1 -1
- package/dist/jsx/config/BackofficeProvider.native.js +9 -29
- package/dist/jsx/config/BackofficeProvider.native.js.map +1 -1
- package/dist/jsx/desk/Desk.mjs +162 -0
- package/dist/jsx/desk/Desk.mjs.map +1 -0
- package/dist/jsx/desk/Desk.native.js +214 -0
- package/dist/jsx/desk/Desk.native.js.map +1 -0
- package/dist/jsx/desk/DeskSurface.mjs +97 -0
- package/dist/jsx/desk/DeskSurface.mjs.map +1 -0
- package/dist/jsx/desk/DeskSurface.native.js +130 -0
- package/dist/jsx/desk/DeskSurface.native.js.map +1 -0
- package/dist/jsx/desk/resolveDeskPath.mjs +93 -0
- package/dist/jsx/desk/resolveDeskPath.mjs.map +1 -0
- package/dist/jsx/desk/resolveDeskPath.native.js +123 -0
- package/dist/jsx/desk/resolveDeskPath.native.js.map +1 -0
- package/dist/jsx/desk/scope.mjs +27 -0
- package/dist/jsx/desk/scope.mjs.map +1 -0
- package/dist/jsx/desk/scope.native.js +61 -0
- package/dist/jsx/desk/scope.native.js.map +1 -0
- package/dist/jsx/desk/target.mjs +147 -0
- package/dist/jsx/desk/target.mjs.map +1 -0
- package/dist/jsx/desk/target.native.js +178 -0
- package/dist/jsx/desk/target.native.js.map +1 -0
- package/dist/jsx/index.js +6 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +6 -1
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +13 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/list/DoctypeListScreen.mjs +3 -1
- package/dist/jsx/list/DoctypeListScreen.mjs.map +1 -1
- package/dist/jsx/list/DoctypeListScreen.native.js +3 -1
- package/dist/jsx/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/jsx/report/DoctypeReportView.mjs +3 -1
- package/dist/jsx/report/DoctypeReportView.mjs.map +1 -1
- package/dist/jsx/report/DoctypeReportView.native.js +4 -2
- package/dist/jsx/report/DoctypeReportView.native.js.map +1 -1
- package/dist/jsx/views/CalendarView.mjs +5 -0
- package/dist/jsx/views/CalendarView.mjs.map +1 -1
- package/dist/jsx/views/CalendarView.native.js +5 -0
- package/dist/jsx/views/CalendarView.native.js.map +1 -1
- package/dist/jsx/views/DashboardView.mjs +5 -3
- package/dist/jsx/views/DashboardView.mjs.map +1 -1
- package/dist/jsx/views/DashboardView.native.js +5 -3
- package/dist/jsx/views/DashboardView.native.js.map +1 -1
- package/dist/jsx/views/ImageView.mjs +5 -0
- package/dist/jsx/views/ImageView.mjs.map +1 -1
- package/dist/jsx/views/ImageView.native.js +5 -0
- package/dist/jsx/views/ImageView.native.js.map +1 -1
- package/dist/jsx/views/KanbanView.mjs +5 -2
- package/dist/jsx/views/KanbanView.mjs.map +1 -1
- package/dist/jsx/views/KanbanView.native.js +5 -2
- package/dist/jsx/views/KanbanView.native.js.map +1 -1
- package/dist/jsx/views/TreeView.mjs +5 -0
- package/dist/jsx/views/TreeView.mjs.map +1 -1
- package/dist/jsx/views/TreeView.native.js +5 -0
- package/dist/jsx/views/TreeView.native.js.map +1 -1
- package/package.json +12 -12
- package/src/config/BackofficeProvider.tsx +11 -18
- package/src/desk/Desk.spec.tsx +287 -0
- package/src/desk/Desk.tsx +308 -0
- package/src/desk/DeskSurface.tsx +132 -0
- package/src/desk/doctrine.spec.ts +48 -0
- package/src/desk/resolveDeskPath.spec.ts +174 -0
- package/src/desk/resolveDeskPath.ts +111 -0
- package/src/desk/scope.tsx +52 -0
- package/src/desk/target.ts +169 -0
- package/src/index.ts +17 -0
- package/src/list/DoctypeListScreen.tsx +4 -1
- package/src/report/DoctypeReportView.tsx +6 -2
- package/src/views/CalendarView.tsx +3 -0
- package/src/views/DashboardView.tsx +5 -3
- package/src/views/ImageView.tsx +3 -0
- package/src/views/KanbanView.tsx +5 -1
- package/src/views/TreeView.tsx +3 -0
- package/types/config/BackofficeProvider.d.ts +6 -4
- package/types/config/BackofficeProvider.d.ts.map +1 -1
- package/types/desk/Desk.d.ts +91 -0
- package/types/desk/Desk.d.ts.map +1 -0
- package/types/desk/DeskSurface.d.ts +24 -0
- package/types/desk/DeskSurface.d.ts.map +1 -0
- package/types/desk/resolveDeskPath.d.ts +60 -0
- package/types/desk/resolveDeskPath.d.ts.map +1 -0
- package/types/desk/scope.d.ts +31 -0
- package/types/desk/scope.d.ts.map +1 -0
- package/types/desk/target.d.ts +57 -0
- package/types/desk/target.d.ts.map +1 -0
- package/types/index.d.ts +10 -0
- package/types/index.d.ts.map +1 -1
- package/types/list/DoctypeListScreen.d.ts.map +1 -1
- package/types/report/DoctypeReportView.d.ts.map +1 -1
- package/types/views/CalendarView.d.ts.map +1 -1
- package/types/views/DashboardView.d.ts.map +1 -1
- package/types/views/ImageView.d.ts.map +1 -1
- package/types/views/KanbanView.d.ts.map +1 -1
- package/types/views/TreeView.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","YStack","FrappeTreeView","useTranslation","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","useViewMeta","ViewError","ViewLoading","ViewUnsupported","TreeOfDoc","TreeView","param","doctype","t","navigator","paths","meta","isLoading","isMetaLoading","error","metaError","is_tree","title","description","flex","children","titleField","title_field","onNodeClick","doc","name","navigate","form","err"],"sources":["TreeView.native.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { YStack } from \"@multiplatform.one/components\";\nimport { FrappeTreeView } from \"@multiplatform.one/frappe-ui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useBackofficeNavigator, useBackofficePaths } from \"../config/BackofficeProvider\";\nimport { BACKOFFICE_I18N_NAMESPACE } from \"../i18n\";\nimport { useViewMeta } from \"./viewMeta\";\nimport { ViewError, ViewLoading, ViewUnsupported } from \"./ViewStates\";\nvar TreeOfDoc = FrappeTreeView;\nfunction TreeView(param) {\n var { doctype } = param;\n var { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);\n var navigator = useBackofficeNavigator();\n var paths = useBackofficePaths();\n var { meta, isLoading: isMetaLoading, error: metaError } = useViewMeta(doctype);\n if (isMetaLoading) return /* @__PURE__ */ _jsx(ViewLoading, {});\n if (metaError && !meta) return /* @__PURE__ */ _jsx(ViewError, {\n doctype,\n error: metaError\n });\n if (meta && !meta.is_tree) {\n return /* @__PURE__ */ _jsx(ViewUnsupported, {\n doctype,\n title: t(\"views.treeUnsupported\", \"Tree not available\"),\n description: t(\"views.treeUnsupportedDetail\", \"{{doctype}} is not a tree doctype \\u2014 try the list view instead.\", {\n doctype\n })\n });\n }\n return /* @__PURE__ */ _jsx(YStack, {\n flex: 1,\n children: /* @__PURE__ */ _jsx(TreeOfDoc, {\n doctype,\n titleField: meta === null || meta === void 0 ? void 0 : meta.title_field,\n onNodeClick: function onNodeClick(doc) {\n if (doc.name) navigator.navigate(paths.form(doctype, doc.name));\n },\n error: function error(err) {\n return /* @__PURE__ */ _jsx(ViewError, {\n doctype,\n error: err\n });\n },\n flex: 1\n })\n });\n}\nexport {\n TreeView\n};\n//# sourceMappingURL=TreeView.js.map\n"],"mappings":"AAAA,SAASA,GAAG,IAAIC,IAAI,QAAQ,mBAAmB;AAC/C,SAASC,MAAM,QAAQ,+BAA+B;AACtD,SAASC,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,sBAAsB,EAAEC,kBAAkB,QAAQ,wCAA8B;AACzF,SAASC,yBAAyB,QAAQ,yBAAS;AACnD,SAASC,WAAW,QAAQ,sBAAY;AACxC,SAASC,SAAS,EAAEC,WAAW,EAAEC,eAAe,QAAQ,wBAAc;AACtE,IAAIC,SAAS,
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","YStack","FrappeTreeView","useTranslation","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","useDeskScope","useViewMeta","ViewError","ViewLoading","ViewUnsupported","TreeOfDoc","TreeView","param","doctype","t","deskScope","navigator","paths","meta","isLoading","isMetaLoading","error","metaError","is_tree","title","description","flex","children","length","filters","titleField","title_field","onNodeClick","doc","name","navigate","form","err"],"sources":["TreeView.native.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { YStack } from \"@multiplatform.one/components\";\nimport { FrappeTreeView } from \"@multiplatform.one/frappe-ui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useBackofficeNavigator, useBackofficePaths } from \"../config/BackofficeProvider\";\nimport { BACKOFFICE_I18N_NAMESPACE } from \"../i18n\";\nimport { useDeskScope } from \"../desk/scope\";\nimport { useViewMeta } from \"./viewMeta\";\nimport { ViewError, ViewLoading, ViewUnsupported } from \"./ViewStates\";\nvar TreeOfDoc = FrappeTreeView;\nfunction TreeView(param) {\n var { doctype } = param;\n var { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);\n var deskScope = useDeskScope();\n var navigator = useBackofficeNavigator();\n var paths = useBackofficePaths();\n var { meta, isLoading: isMetaLoading, error: metaError } = useViewMeta(doctype);\n if (isMetaLoading) return /* @__PURE__ */ _jsx(ViewLoading, {});\n if (metaError && !meta) return /* @__PURE__ */ _jsx(ViewError, {\n doctype,\n error: metaError\n });\n if (meta && !meta.is_tree) {\n return /* @__PURE__ */ _jsx(ViewUnsupported, {\n doctype,\n title: t(\"views.treeUnsupported\", \"Tree not available\"),\n description: t(\"views.treeUnsupportedDetail\", \"{{doctype}} is not a tree doctype \\u2014 try the list view instead.\", {\n doctype\n })\n });\n }\n return /* @__PURE__ */ _jsx(YStack, {\n flex: 1,\n children: /* @__PURE__ */ _jsx(TreeOfDoc, {\n doctype,\n ...deskScope.length > 0 && {\n filters: deskScope\n },\n titleField: meta === null || meta === void 0 ? void 0 : meta.title_field,\n onNodeClick: function onNodeClick(doc) {\n if (doc.name) navigator.navigate(paths.form(doctype, doc.name));\n },\n error: function error(err) {\n return /* @__PURE__ */ _jsx(ViewError, {\n doctype,\n error: err\n });\n },\n flex: 1\n })\n });\n}\nexport {\n TreeView\n};\n//# sourceMappingURL=TreeView.js.map\n"],"mappings":"AAAA,SAASA,GAAG,IAAIC,IAAI,QAAQ,mBAAmB;AAC/C,SAASC,MAAM,QAAQ,+BAA+B;AACtD,SAASC,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,sBAAsB,EAAEC,kBAAkB,QAAQ,wCAA8B;AACzF,SAASC,yBAAyB,QAAQ,yBAAS;AACnD,SAASC,YAAY,QAAQ,yBAAe;AAC5C,SAASC,WAAW,QAAQ,sBAAY;AACxC,SAASC,SAAS,EAAEC,WAAW,EAAEC,eAAe,QAAQ,wBAAc;AACtE,IAAIC,SAAS,GAAGV,cAAc;AAC9B,SAASW,QAAQA,CAACC,KAAK,EAAE;EACvB,IAAI;IAAEC;EAAQ,CAAC,GAAGD,KAAK;EACvB,IAAI;IAAEE;EAAE,CAAC,GAAGb,cAAc,CAACG,yBAAyB,CAAC;EACrD,IAAIW,SAAS,GAAGV,YAAY,CAAC,CAAC;EAC9B,IAAIW,SAAS,GAAGd,sBAAsB,CAAC,CAAC;EACxC,IAAIe,KAAK,GAAGd,kBAAkB,CAAC,CAAC;EAChC,IAAI;IAAEe,IAAI;IAAEC,SAAS,EAAEC,aAAa;IAAEC,KAAK,EAAEC;EAAU,CAAC,GAAGhB,WAAW,CAACO,OAAO,CAAC;EAC/E,IAAIO,aAAa,EAAE,OAAO,eAAgBtB,IAAI,CAACU,WAAW,EAAE,CAAC,CAAC,CAAC;EAC/D,IAAIc,SAAS,IAAI,CAACJ,IAAI,EAAE,OAAO,eAAgBpB,IAAI,CAACS,SAAS,EAAE;IAC7DM,OAAO;IACPQ,KAAK,EAAEC;EACT,CAAC,CAAC;EACF,IAAIJ,IAAI,IAAI,CAACA,IAAI,CAACK,OAAO,EAAE;IACzB,OAAO,eAAgBzB,IAAI,CAACW,eAAe,EAAE;MAC3CI,OAAO;MACPW,KAAK,EAAEV,CAAC,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;MACvDW,WAAW,EAAEX,CAAC,CAAC,6BAA6B,EAAE,qEAAqE,EAAE;QACnHD;MACF,CAAC;IACH,CAAC,CAAC;EACJ;EACA,OAAO,eAAgBf,IAAI,CAACC,MAAM,EAAE;IAClC2B,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE,eAAgB7B,IAAI,CAACY,SAAS,EAAE;MACxCG,OAAO;MACP,IAAGE,SAAS,CAACa,MAAM,GAAG,CAAC,IAAI;QACzBC,OAAO,EAAEd;MACX,CAAC;MACDe,UAAU,EAAEZ,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAACa,WAAW;MACxEC,WAAW,EAAE,SAASA,WAAWA,CAACC,GAAG,EAAE;QACrC,IAAIA,GAAG,CAACC,IAAI,EAAElB,SAAS,CAACmB,QAAQ,CAAClB,KAAK,CAACmB,IAAI,CAACvB,OAAO,EAAEoB,GAAG,CAACC,IAAI,CAAC,CAAC;MACjE,CAAC;MACDb,KAAK,EAAE,SAASA,KAAKA,CAACgB,GAAG,EAAE;QACzB,OAAO,eAAgBvC,IAAI,CAACS,SAAS,EAAE;UACrCM,OAAO;UACPQ,KAAK,EAAEgB;QACT,CAAC,CAAC;MACJ,CAAC;MACDX,IAAI,EAAE;IACR,CAAC;EACH,CAAC,CAAC;AACJ;AACA,SACEf,QAAQ","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FieldOverridesProvider, FrappeProvider } from "@multiplatform.one/frappe-ui";
|
|
2
2
|
import { createContext, useContext, useMemo, useRef, useState } from "react";
|
|
3
3
|
import { useSyncExternalStore } from "react";
|
|
4
4
|
import { registerBackofficeTranslations } from "../i18n/index.mjs";
|
|
@@ -63,15 +63,6 @@ function BackofficeProvider({
|
|
|
63
63
|
registerBackofficeTranslations(i18nInstance);
|
|
64
64
|
return true;
|
|
65
65
|
});
|
|
66
|
-
const appliedFields = useRef({});
|
|
67
|
-
if (fields) {
|
|
68
|
-
for (const [fieldtype, component] of Object.entries(fields)) {
|
|
69
|
-
if (appliedFields.current[fieldtype] !== component) {
|
|
70
|
-
registerField(fieldtype, component);
|
|
71
|
-
appliedFields.current[fieldtype] = component;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
66
|
const onEventRef = useRef(onEvent);
|
|
76
67
|
onEventRef.current = onEvent;
|
|
77
68
|
const emitEvent = useMemo(() => event => {
|
|
@@ -136,7 +127,10 @@ function BackofficeProvider({
|
|
|
136
127
|
syncOptions: frappe.syncOptions,
|
|
137
128
|
socketOptions: frappe.socketOptions,
|
|
138
129
|
fixtures: frappe.fixtures,
|
|
139
|
-
children
|
|
130
|
+
children: /* @__PURE__ */jsx(FieldOverridesProvider, {
|
|
131
|
+
fields,
|
|
132
|
+
children
|
|
133
|
+
})
|
|
140
134
|
})
|
|
141
135
|
});
|
|
142
136
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["FieldOverridesProvider","FrappeProvider","createContext","useContext","useMemo","useRef","useState","useSyncExternalStore","registerBackofficeTranslations","createNoopNavigator","BACKOFFICE_BASE","createBackofficePaths","isDoctypeAllowed","resolveCapabilities","jsx","actionsForDoctype","actions","doctype","filter","action","doctypes","includes","DEFAULT_CONFIG","navigation","basePath","paths","capabilities","slots","emitEvent","BackofficeConfigContext","useBackofficeConfig","useBackofficeCapabilities","useBackofficeNavigator","useBackofficePaths","useBackofficeSlots","useBackofficeLocation","navigator","subscribe","getLocation","useIsDoctypeAllowed","BackofficeProvider","children","frappe","fields","appearance","integrations","onEvent","i18nInstance","onEventRef","current","event","wrappedNavigation","navigate","path","type","mode","replace","back","setParams","params","listener","resolvedCapabilities","config","Provider","value","baseURL","socketPort","socketBaseURL","siteName","auth","syncOptions","socketOptions","fixtures"],"sources":["../../../src/config/BackofficeProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -118,34 +118,6 @@ function BackofficeProvider(param) {
|
|
|
118
118
|
(0, import_i18n.registerBackofficeTranslations)(i18nInstance);
|
|
119
119
|
return true;
|
|
120
120
|
});
|
|
121
|
-
var appliedFields = (0, import_react.useRef)({});
|
|
122
|
-
if (fields) {
|
|
123
|
-
var _iteratorNormalCompletion = true,
|
|
124
|
-
_didIteratorError = false,
|
|
125
|
-
_iteratorError = void 0;
|
|
126
|
-
try {
|
|
127
|
-
for (var _iterator = Object.entries(fields)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
128
|
-
var [fieldtype, component] = _step.value;
|
|
129
|
-
if (appliedFields.current[fieldtype] !== component) {
|
|
130
|
-
(0, import_frappe_ui.registerField)(fieldtype, component);
|
|
131
|
-
appliedFields.current[fieldtype] = component;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
} catch (err) {
|
|
135
|
-
_didIteratorError = true;
|
|
136
|
-
_iteratorError = err;
|
|
137
|
-
} finally {
|
|
138
|
-
try {
|
|
139
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
140
|
-
_iterator.return();
|
|
141
|
-
}
|
|
142
|
-
} finally {
|
|
143
|
-
if (_didIteratorError) {
|
|
144
|
-
throw _iteratorError;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
121
|
var onEventRef = (0, import_react.useRef)(onEvent);
|
|
150
122
|
onEventRef.current = onEvent;
|
|
151
123
|
var emitEvent2 = (0, import_react.useMemo)(function () {
|
|
@@ -228,7 +200,15 @@ function BackofficeProvider(param) {
|
|
|
228
200
|
syncOptions: frappe.syncOptions,
|
|
229
201
|
socketOptions: frappe.socketOptions,
|
|
230
202
|
fixtures: frappe.fixtures,
|
|
231
|
-
children
|
|
203
|
+
children: (
|
|
204
|
+
/* Context-scoped field overrides (GL-4): per-provider, never the
|
|
205
|
+
module-global registry — two providers with different `fields` on
|
|
206
|
+
one page must not clobber each other. */
|
|
207
|
+
/* @__PURE__ */
|
|
208
|
+
(0, import_jsx_runtime.jsx)(import_frappe_ui.FieldOverridesProvider, {
|
|
209
|
+
fields,
|
|
210
|
+
children
|
|
211
|
+
}))
|
|
232
212
|
})
|
|
233
213
|
});
|
|
234
214
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","BackofficeProvider_exports","BackofficeProvider","actionsForDoctype","useBackofficeCapabilities","useBackofficeConfig","useBackofficeLocation","useBackofficeNavigator","useBackofficePaths","useBackofficeSlots","useIsDoctypeAllowed","module","exports","import_jsx_runtime","require","import_frappe_ui","import_react","import_react2","import_i18n","import_navigator","import_paths","import_capabilities","actions","doctype","filter","action","doctypes","includes","DEFAULT_CONFIG","navigation","createNoopNavigator","BACKOFFICE_BASE","basePath","paths","createBackofficePaths","capabilities","resolveCapabilities","slots","emitEvent","BackofficeConfigContext","createContext","useContext","navigator","useSyncExternalStore","subscribe","getLocation","useMemo","isDoctypeAllowed","param","children","frappe","fields","appearance","integrations","onEvent","i18nInstance","useState","registerBackofficeTranslations","
|
|
1
|
+
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","BackofficeProvider_exports","BackofficeProvider","actionsForDoctype","useBackofficeCapabilities","useBackofficeConfig","useBackofficeLocation","useBackofficeNavigator","useBackofficePaths","useBackofficeSlots","useIsDoctypeAllowed","module","exports","import_jsx_runtime","require","import_frappe_ui","import_react","import_react2","import_i18n","import_navigator","import_paths","import_capabilities","actions","doctype","filter","action","doctypes","includes","DEFAULT_CONFIG","navigation","createNoopNavigator","BACKOFFICE_BASE","basePath","paths","createBackofficePaths","capabilities","resolveCapabilities","slots","emitEvent","BackofficeConfigContext","createContext","useContext","navigator","useSyncExternalStore","subscribe","getLocation","useMemo","isDoctypeAllowed","param","children","frappe","fields","appearance","integrations","onEvent","i18nInstance","useState","registerBackofficeTranslations","onEventRef","useRef","current","emitEvent2","event","_onEventRef_current","wrappedNavigation","navigate","path","type","mode","replace","back","setParams","params","_navigation_setParams","listener"],"sources":["../../../src/config/BackofficeProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { YStack } from "@multiplatform.one/components";
|
|
2
|
+
import { useFrappeConfig } from "@multiplatform.one/frappe-ui";
|
|
3
|
+
import { useEffect, useMemo, useRef } from "react";
|
|
4
|
+
import { BackofficeProvider } from "../config/BackofficeProvider.mjs";
|
|
5
|
+
import { createMemoryNavigator } from "../navigation/navigator.mjs";
|
|
6
|
+
import { BACKOFFICE_BASE, createBackofficePaths } from "../navigation/paths.mjs";
|
|
7
|
+
import { BackofficeShell } from "../shell/BackofficeShell.mjs";
|
|
8
|
+
import { DeskSurface, DeskSurfaceLoading } from "./DeskSurface.mjs";
|
|
9
|
+
import { DeskScopeProvider } from "./scope.mjs";
|
|
10
|
+
import { guessDeskTarget, hasDeskPin, useDeskTarget } from "./target.mjs";
|
|
11
|
+
import { jsx } from "react/jsx-runtime";
|
|
12
|
+
function pinnedPath(pins, basePath) {
|
|
13
|
+
const paths = createBackofficePaths(basePath);
|
|
14
|
+
if (pins.path) {
|
|
15
|
+
const prefix = basePath === "/" ? "" : basePath.replace(/\/+$/, "");
|
|
16
|
+
return `${prefix}${pins.path}`;
|
|
17
|
+
}
|
|
18
|
+
if (pins.doctype) {
|
|
19
|
+
if (pins.name === "new") return paths.newDoc(pins.doctype);
|
|
20
|
+
if (pins.name) return paths.form(pins.doctype, pins.name);
|
|
21
|
+
if (pins.view && pins.view !== "list") return paths.view(pins.doctype, pins.view);
|
|
22
|
+
return paths.list(pins.doctype);
|
|
23
|
+
}
|
|
24
|
+
if (pins.workspace) return paths.workspace(pins.workspace);
|
|
25
|
+
if (pins.report) return paths.queryReport(pins.report);
|
|
26
|
+
return paths.home();
|
|
27
|
+
}
|
|
28
|
+
function Desk(props) {
|
|
29
|
+
const {
|
|
30
|
+
doctype,
|
|
31
|
+
name,
|
|
32
|
+
view,
|
|
33
|
+
workspace,
|
|
34
|
+
report,
|
|
35
|
+
path,
|
|
36
|
+
basePath = BACKOFFICE_BASE,
|
|
37
|
+
chrome: chromeProp,
|
|
38
|
+
embedded,
|
|
39
|
+
onNavigate
|
|
40
|
+
} = props;
|
|
41
|
+
const pins = useMemo(() => ({
|
|
42
|
+
doctype,
|
|
43
|
+
name,
|
|
44
|
+
view,
|
|
45
|
+
workspace,
|
|
46
|
+
report,
|
|
47
|
+
path
|
|
48
|
+
}), [doctype, name, view, workspace, report, path]);
|
|
49
|
+
const ambient = useFrappeConfig();
|
|
50
|
+
const warned = useRef(false);
|
|
51
|
+
if (ambient && props.frappe && !warned.current) {
|
|
52
|
+
warned.current = true;
|
|
53
|
+
console.warn("[backoffice] <Desk frappe> is ignored: an ambient FrappeProvider exists and the SyncModule is cached per baseURL.");
|
|
54
|
+
}
|
|
55
|
+
const frappe = useMemo(() => {
|
|
56
|
+
if (ambient) {
|
|
57
|
+
return {
|
|
58
|
+
baseURL: ambient.baseURL,
|
|
59
|
+
auth: ambient.auth,
|
|
60
|
+
fixtures: ambient.fixtures
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
return props.frappe ?? {
|
|
64
|
+
baseURL: ""
|
|
65
|
+
};
|
|
66
|
+
}, [ambient, props.frappe]);
|
|
67
|
+
const memoryNavigator = useMemo(() => props.navigation ? void 0 : createMemoryNavigator(pinnedPath(pins, basePath)),
|
|
68
|
+
// The seed is the ENTRY; later pin changes re-enter through useDeskTarget.
|
|
69
|
+
// oxlint-disable-next-line exhaustive-deps
|
|
70
|
+
[props.navigation ? "host" : "memory"]);
|
|
71
|
+
const baseNavigation = props.navigation ?? memoryNavigator;
|
|
72
|
+
const onNavigateRef = useRef(onNavigate);
|
|
73
|
+
onNavigateRef.current = onNavigate;
|
|
74
|
+
const navigation = useMemo(() => {
|
|
75
|
+
const intercept = path2 => onNavigateRef.current?.(guessDeskTarget(path2, basePath), path2) !== false;
|
|
76
|
+
return {
|
|
77
|
+
...baseNavigation,
|
|
78
|
+
navigate: path2 => {
|
|
79
|
+
if (intercept(path2)) baseNavigation.navigate(path2);
|
|
80
|
+
},
|
|
81
|
+
replace: path2 => {
|
|
82
|
+
if (intercept(path2)) baseNavigation.replace(path2);
|
|
83
|
+
},
|
|
84
|
+
back: () => baseNavigation.back(),
|
|
85
|
+
getLocation: () => baseNavigation.getLocation(),
|
|
86
|
+
subscribe: listener => baseNavigation.subscribe(listener),
|
|
87
|
+
...(baseNavigation.setParams ? {
|
|
88
|
+
setParams: params => baseNavigation.setParams?.(params)
|
|
89
|
+
} : {})
|
|
90
|
+
};
|
|
91
|
+
}, [baseNavigation, basePath]);
|
|
92
|
+
const chrome = chromeProp ?? (embedded || hasDeskPin(pins) ? "content" : "full");
|
|
93
|
+
const doctypes = props.doctypes ?? (doctype ? {
|
|
94
|
+
allow: [doctype]
|
|
95
|
+
} : void 0);
|
|
96
|
+
const capabilities = useMemo(() => chrome === "bare" ? {
|
|
97
|
+
...props.capabilities,
|
|
98
|
+
sidebar: false
|
|
99
|
+
} : props.capabilities, [chrome, props.capabilities]);
|
|
100
|
+
return /* @__PURE__ */jsx(BackofficeProvider, {
|
|
101
|
+
frappe,
|
|
102
|
+
navigation,
|
|
103
|
+
basePath,
|
|
104
|
+
capabilities,
|
|
105
|
+
doctypes,
|
|
106
|
+
fields: props.fields,
|
|
107
|
+
actions: props.actions,
|
|
108
|
+
slots: props.slots,
|
|
109
|
+
appearance: props.appearance,
|
|
110
|
+
integrations: props.integrations,
|
|
111
|
+
onEvent: props.onEvent,
|
|
112
|
+
children: /* @__PURE__ */jsx(DeskScopeProvider, {
|
|
113
|
+
scope: props.scope,
|
|
114
|
+
children: /* @__PURE__ */jsx(DeskBody, {
|
|
115
|
+
pins,
|
|
116
|
+
chrome,
|
|
117
|
+
readOnly: props.readOnly,
|
|
118
|
+
surfaces: props.surfaces,
|
|
119
|
+
initialFilters: props.filters,
|
|
120
|
+
views: props.views,
|
|
121
|
+
onTargetChange: props.onTargetChange
|
|
122
|
+
})
|
|
123
|
+
})
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
function DeskBody({
|
|
127
|
+
pins,
|
|
128
|
+
chrome,
|
|
129
|
+
readOnly,
|
|
130
|
+
surfaces,
|
|
131
|
+
initialFilters,
|
|
132
|
+
views,
|
|
133
|
+
onTargetChange
|
|
134
|
+
}) {
|
|
135
|
+
const target = useDeskTarget(pins);
|
|
136
|
+
const onTargetChangeRef = useRef(onTargetChange);
|
|
137
|
+
onTargetChangeRef.current = onTargetChange;
|
|
138
|
+
const targetKey = target ? JSON.stringify(target) : void 0;
|
|
139
|
+
useEffect(() => {
|
|
140
|
+
if (target) onTargetChangeRef.current?.(target);
|
|
141
|
+
}, [targetKey]);
|
|
142
|
+
const surface = target ? /* @__PURE__ */jsx(DeskSurface, {
|
|
143
|
+
target,
|
|
144
|
+
overrides: surfaces,
|
|
145
|
+
readOnly,
|
|
146
|
+
initialFilters,
|
|
147
|
+
views
|
|
148
|
+
}) : /* @__PURE__ */jsx(DeskSurfaceLoading, {});
|
|
149
|
+
if (chrome === "content") {
|
|
150
|
+
return /* @__PURE__ */jsx(YStack, {
|
|
151
|
+
flex: 1,
|
|
152
|
+
minHeight: 0,
|
|
153
|
+
minWidth: 0,
|
|
154
|
+
children: surface
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
return /* @__PURE__ */jsx(BackofficeShell, {
|
|
158
|
+
children: surface
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
export { Desk };
|
|
162
|
+
//# sourceMappingURL=Desk.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["YStack","useFrappeConfig","useEffect","useMemo","useRef","BackofficeProvider","createMemoryNavigator","BACKOFFICE_BASE","createBackofficePaths","BackofficeShell","DeskSurface","DeskSurfaceLoading","DeskScopeProvider","guessDeskTarget","hasDeskPin","useDeskTarget","jsx","pinnedPath","pins","basePath","paths","path","prefix","replace","doctype","name","newDoc","form","view","list","workspace","report","queryReport","home","Desk","props","chrome","chromeProp","embedded","onNavigate","ambient","warned","frappe","current","console","warn","baseURL","auth","fixtures","memoryNavigator","navigation","baseNavigation","onNavigateRef","intercept","path2","navigate","back","getLocation","subscribe","listener","setParams","params","doctypes","allow","capabilities","sidebar","fields","actions","slots","appearance","integrations","onEvent","children","scope","DeskBody","readOnly","surfaces","initialFilters","filters","views","onTargetChange","target","onTargetChangeRef","targetKey","JSON","stringify","surface","overrides","flex","minHeight","minWidth"],"sources":["../../../src/desk/Desk.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var Desk_exports = {};
|
|
26
|
+
__export(Desk_exports, {
|
|
27
|
+
Desk: () => Desk
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(Desk_exports);
|
|
30
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
+
var import_components = require("@multiplatform.one/components");
|
|
32
|
+
var import_frappe_ui = require("@multiplatform.one/frappe-ui");
|
|
33
|
+
var import_react = require("react");
|
|
34
|
+
var import_BackofficeProvider = require("../config/BackofficeProvider.native.js");
|
|
35
|
+
var import_navigator = require("../navigation/navigator.native.js");
|
|
36
|
+
var import_paths = require("../navigation/paths.native.js");
|
|
37
|
+
var import_BackofficeShell = require("../shell/BackofficeShell.native.js");
|
|
38
|
+
var import_DeskSurface = require("./DeskSurface.native.js");
|
|
39
|
+
var import_scope = require("./scope.native.js");
|
|
40
|
+
var import_target = require("./target.native.js");
|
|
41
|
+
function pinnedPath(pins, basePath) {
|
|
42
|
+
var paths = (0, import_paths.createBackofficePaths)(basePath);
|
|
43
|
+
if (pins.path) {
|
|
44
|
+
var prefix = basePath === "/" ? "" : basePath.replace(/\/+$/, "");
|
|
45
|
+
return `${prefix}${pins.path}`;
|
|
46
|
+
}
|
|
47
|
+
if (pins.doctype) {
|
|
48
|
+
if (pins.name === "new") return paths.newDoc(pins.doctype);
|
|
49
|
+
if (pins.name) return paths.form(pins.doctype, pins.name);
|
|
50
|
+
if (pins.view && pins.view !== "list") return paths.view(pins.doctype, pins.view);
|
|
51
|
+
return paths.list(pins.doctype);
|
|
52
|
+
}
|
|
53
|
+
if (pins.workspace) return paths.workspace(pins.workspace);
|
|
54
|
+
if (pins.report) return paths.queryReport(pins.report);
|
|
55
|
+
return paths.home();
|
|
56
|
+
}
|
|
57
|
+
function Desk(props) {
|
|
58
|
+
var _props_navigation, _props_doctypes;
|
|
59
|
+
var {
|
|
60
|
+
doctype,
|
|
61
|
+
name,
|
|
62
|
+
view,
|
|
63
|
+
workspace,
|
|
64
|
+
report,
|
|
65
|
+
path,
|
|
66
|
+
basePath = import_paths.BACKOFFICE_BASE,
|
|
67
|
+
chrome: chromeProp,
|
|
68
|
+
embedded,
|
|
69
|
+
onNavigate
|
|
70
|
+
} = props;
|
|
71
|
+
var pins = (0, import_react.useMemo)(function () {
|
|
72
|
+
return {
|
|
73
|
+
doctype,
|
|
74
|
+
name,
|
|
75
|
+
view,
|
|
76
|
+
workspace,
|
|
77
|
+
report,
|
|
78
|
+
path
|
|
79
|
+
};
|
|
80
|
+
}, [doctype, name, view, workspace, report, path]);
|
|
81
|
+
var ambient = (0, import_frappe_ui.useFrappeConfig)();
|
|
82
|
+
var warned = (0, import_react.useRef)(false);
|
|
83
|
+
if (ambient && props.frappe && !warned.current) {
|
|
84
|
+
warned.current = true;
|
|
85
|
+
console.warn("[backoffice] <Desk frappe> is ignored: an ambient FrappeProvider exists and the SyncModule is cached per baseURL.");
|
|
86
|
+
}
|
|
87
|
+
var frappe = (0, import_react.useMemo)(function () {
|
|
88
|
+
var _props_frappe;
|
|
89
|
+
if (ambient) {
|
|
90
|
+
return {
|
|
91
|
+
baseURL: ambient.baseURL,
|
|
92
|
+
auth: ambient.auth,
|
|
93
|
+
fixtures: ambient.fixtures
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
return (_props_frappe = props.frappe) !== null && _props_frappe !== void 0 ? _props_frappe : {
|
|
97
|
+
baseURL: ""
|
|
98
|
+
};
|
|
99
|
+
}, [ambient, props.frappe]);
|
|
100
|
+
var memoryNavigator = (0, import_react.useMemo)(function () {
|
|
101
|
+
return props.navigation ? void 0 : (0, import_navigator.createMemoryNavigator)(pinnedPath(pins, basePath));
|
|
102
|
+
},
|
|
103
|
+
// The seed is the ENTRY; later pin changes re-enter through useDeskTarget.
|
|
104
|
+
// oxlint-disable-next-line exhaustive-deps
|
|
105
|
+
[props.navigation ? "host" : "memory"]);
|
|
106
|
+
var baseNavigation = (_props_navigation = props.navigation) !== null && _props_navigation !== void 0 ? _props_navigation : memoryNavigator;
|
|
107
|
+
var onNavigateRef = (0, import_react.useRef)(onNavigate);
|
|
108
|
+
onNavigateRef.current = onNavigate;
|
|
109
|
+
var navigation = (0, import_react.useMemo)(function () {
|
|
110
|
+
var intercept = function intercept2(path2) {
|
|
111
|
+
var _onNavigateRef_current;
|
|
112
|
+
return ((_onNavigateRef_current = onNavigateRef.current) === null || _onNavigateRef_current === void 0 ? void 0 : _onNavigateRef_current.call(onNavigateRef, (0, import_target.guessDeskTarget)(path2, basePath), path2)) !== false;
|
|
113
|
+
};
|
|
114
|
+
return {
|
|
115
|
+
...baseNavigation,
|
|
116
|
+
navigate: function navigate(path2) {
|
|
117
|
+
if (intercept(path2)) baseNavigation.navigate(path2);
|
|
118
|
+
},
|
|
119
|
+
replace: function replace(path2) {
|
|
120
|
+
if (intercept(path2)) baseNavigation.replace(path2);
|
|
121
|
+
},
|
|
122
|
+
back: function back() {
|
|
123
|
+
return baseNavigation.back();
|
|
124
|
+
},
|
|
125
|
+
getLocation: function getLocation() {
|
|
126
|
+
return baseNavigation.getLocation();
|
|
127
|
+
},
|
|
128
|
+
subscribe: function subscribe(listener) {
|
|
129
|
+
return baseNavigation.subscribe(listener);
|
|
130
|
+
},
|
|
131
|
+
...(baseNavigation.setParams ? {
|
|
132
|
+
setParams: function setParams(params) {
|
|
133
|
+
var _baseNavigation_setParams;
|
|
134
|
+
return (_baseNavigation_setParams = baseNavigation.setParams) === null || _baseNavigation_setParams === void 0 ? void 0 : _baseNavigation_setParams.call(baseNavigation, params);
|
|
135
|
+
}
|
|
136
|
+
} : {})
|
|
137
|
+
};
|
|
138
|
+
}, [baseNavigation, basePath]);
|
|
139
|
+
var chrome = chromeProp !== null && chromeProp !== void 0 ? chromeProp : embedded || (0, import_target.hasDeskPin)(pins) ? "content" : "full";
|
|
140
|
+
var doctypes = (_props_doctypes = props.doctypes) !== null && _props_doctypes !== void 0 ? _props_doctypes : doctype ? {
|
|
141
|
+
allow: [doctype]
|
|
142
|
+
} : void 0;
|
|
143
|
+
var capabilities = (0, import_react.useMemo)(function () {
|
|
144
|
+
return chrome === "bare" ? {
|
|
145
|
+
...props.capabilities,
|
|
146
|
+
sidebar: false
|
|
147
|
+
} : props.capabilities;
|
|
148
|
+
}, [chrome, props.capabilities]);
|
|
149
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_BackofficeProvider.BackofficeProvider, {
|
|
150
|
+
frappe,
|
|
151
|
+
navigation,
|
|
152
|
+
basePath,
|
|
153
|
+
capabilities,
|
|
154
|
+
doctypes,
|
|
155
|
+
fields: props.fields,
|
|
156
|
+
actions: props.actions,
|
|
157
|
+
slots: props.slots,
|
|
158
|
+
appearance: props.appearance,
|
|
159
|
+
integrations: props.integrations,
|
|
160
|
+
onEvent: props.onEvent,
|
|
161
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_scope.DeskScopeProvider, {
|
|
162
|
+
scope: props.scope,
|
|
163
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(DeskBody, {
|
|
164
|
+
pins,
|
|
165
|
+
chrome,
|
|
166
|
+
readOnly: props.readOnly,
|
|
167
|
+
surfaces: props.surfaces,
|
|
168
|
+
initialFilters: props.filters,
|
|
169
|
+
views: props.views,
|
|
170
|
+
onTargetChange: props.onTargetChange
|
|
171
|
+
})
|
|
172
|
+
})
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
function DeskBody(param) {
|
|
176
|
+
var {
|
|
177
|
+
pins,
|
|
178
|
+
chrome,
|
|
179
|
+
readOnly,
|
|
180
|
+
surfaces,
|
|
181
|
+
initialFilters,
|
|
182
|
+
views,
|
|
183
|
+
onTargetChange
|
|
184
|
+
} = param;
|
|
185
|
+
var target = (0, import_target.useDeskTarget)(pins);
|
|
186
|
+
var onTargetChangeRef = (0, import_react.useRef)(onTargetChange);
|
|
187
|
+
onTargetChangeRef.current = onTargetChange;
|
|
188
|
+
var targetKey = target ? JSON.stringify(target) : void 0;
|
|
189
|
+
(0, import_react.useEffect)(function () {
|
|
190
|
+
var _onTargetChangeRef_current;
|
|
191
|
+
if (target) (_onTargetChangeRef_current = onTargetChangeRef.current) === null || _onTargetChangeRef_current === void 0 ? void 0 : _onTargetChangeRef_current.call(onTargetChangeRef, target);
|
|
192
|
+
},
|
|
193
|
+
// oxlint-disable-next-line exhaustive-deps
|
|
194
|
+
[targetKey]);
|
|
195
|
+
var surface = target ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DeskSurface.DeskSurface, {
|
|
196
|
+
target,
|
|
197
|
+
overrides: surfaces,
|
|
198
|
+
readOnly,
|
|
199
|
+
initialFilters,
|
|
200
|
+
views
|
|
201
|
+
}) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DeskSurface.DeskSurfaceLoading, {});
|
|
202
|
+
if (chrome === "content") {
|
|
203
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.YStack, {
|
|
204
|
+
flex: 1,
|
|
205
|
+
minHeight: 0,
|
|
206
|
+
minWidth: 0,
|
|
207
|
+
children: surface
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_BackofficeShell.BackofficeShell, {
|
|
211
|
+
children: surface
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=Desk.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","Desk_exports","Desk","module","exports","import_jsx_runtime","require","import_components","import_frappe_ui","import_react","import_BackofficeProvider","import_navigator","import_paths","import_BackofficeShell","import_DeskSurface","import_scope","import_target","pinnedPath","pins","basePath","paths","createBackofficePaths","path","prefix","replace","doctype","newDoc","form","view","list","workspace","report","queryReport","home","props","_props_navigation","_props_doctypes","BACKOFFICE_BASE","chrome","chromeProp","embedded","onNavigate","useMemo","ambient","useFrappeConfig","warned","useRef","frappe","current","console","warn","_props_frappe","baseURL","auth","fixtures","memoryNavigator","navigation","createMemoryNavigator","baseNavigation","onNavigateRef","intercept","intercept2","path2","_onNavigateRef_current","guessDeskTarget","navigate","back","getLocation","subscribe","listener","setParams","params","_baseNavigation_setParams","hasDeskPin","doctypes","allow","capabilities","sidebar","jsx","BackofficeProvider"],"sources":["../../../src/desk/Desk.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|