@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.
Files changed (195) hide show
  1. package/dist/cjs/config/BackofficeProvider.cjs +4 -10
  2. package/dist/cjs/config/BackofficeProvider.native.js +9 -29
  3. package/dist/cjs/config/BackofficeProvider.native.js.map +1 -1
  4. package/dist/cjs/desk/Desk.cjs +187 -0
  5. package/dist/cjs/desk/Desk.native.js +214 -0
  6. package/dist/cjs/desk/Desk.native.js.map +1 -0
  7. package/dist/cjs/desk/DeskSurface.cjs +123 -0
  8. package/dist/cjs/desk/DeskSurface.native.js +130 -0
  9. package/dist/cjs/desk/DeskSurface.native.js.map +1 -0
  10. package/dist/cjs/desk/resolveDeskPath.cjs +118 -0
  11. package/dist/cjs/desk/resolveDeskPath.native.js +123 -0
  12. package/dist/cjs/desk/resolveDeskPath.native.js.map +1 -0
  13. package/dist/cjs/desk/scope.cjs +54 -0
  14. package/dist/cjs/desk/scope.native.js +61 -0
  15. package/dist/cjs/desk/scope.native.js.map +1 -0
  16. package/dist/cjs/desk/target.cjs +174 -0
  17. package/dist/cjs/desk/target.native.js +178 -0
  18. package/dist/cjs/desk/target.native.js.map +1 -0
  19. package/dist/cjs/index.cjs +13 -0
  20. package/dist/cjs/index.native.js +13 -0
  21. package/dist/cjs/index.native.js.map +1 -1
  22. package/dist/cjs/list/DoctypeListScreen.cjs +3 -1
  23. package/dist/cjs/list/DoctypeListScreen.native.js +3 -1
  24. package/dist/cjs/list/DoctypeListScreen.native.js.map +1 -1
  25. package/dist/cjs/report/DoctypeReportView.cjs +3 -1
  26. package/dist/cjs/report/DoctypeReportView.native.js +4 -2
  27. package/dist/cjs/report/DoctypeReportView.native.js.map +1 -1
  28. package/dist/cjs/views/CalendarView.cjs +5 -0
  29. package/dist/cjs/views/CalendarView.native.js +5 -0
  30. package/dist/cjs/views/CalendarView.native.js.map +1 -1
  31. package/dist/cjs/views/DashboardView.cjs +5 -3
  32. package/dist/cjs/views/DashboardView.native.js +5 -3
  33. package/dist/cjs/views/DashboardView.native.js.map +1 -1
  34. package/dist/cjs/views/ImageView.cjs +5 -0
  35. package/dist/cjs/views/ImageView.native.js +5 -0
  36. package/dist/cjs/views/ImageView.native.js.map +1 -1
  37. package/dist/cjs/views/KanbanView.cjs +5 -2
  38. package/dist/cjs/views/KanbanView.native.js +5 -2
  39. package/dist/cjs/views/KanbanView.native.js.map +1 -1
  40. package/dist/cjs/views/TreeView.cjs +5 -0
  41. package/dist/cjs/views/TreeView.native.js +5 -0
  42. package/dist/cjs/views/TreeView.native.js.map +1 -1
  43. package/dist/esm/config/BackofficeProvider.mjs +5 -11
  44. package/dist/esm/config/BackofficeProvider.mjs.map +1 -1
  45. package/dist/esm/config/BackofficeProvider.native.js +10 -30
  46. package/dist/esm/config/BackofficeProvider.native.js.map +1 -1
  47. package/dist/esm/desk/Desk.mjs +162 -0
  48. package/dist/esm/desk/Desk.mjs.map +1 -0
  49. package/dist/esm/desk/Desk.native.js +186 -0
  50. package/dist/esm/desk/Desk.native.js.map +1 -0
  51. package/dist/esm/desk/DeskSurface.mjs +97 -0
  52. package/dist/esm/desk/DeskSurface.mjs.map +1 -0
  53. package/dist/esm/desk/DeskSurface.native.js +101 -0
  54. package/dist/esm/desk/DeskSurface.native.js.map +1 -0
  55. package/dist/esm/desk/resolveDeskPath.mjs +93 -0
  56. package/dist/esm/desk/resolveDeskPath.mjs.map +1 -0
  57. package/dist/esm/desk/resolveDeskPath.native.js +95 -0
  58. package/dist/esm/desk/resolveDeskPath.native.js.map +1 -0
  59. package/dist/esm/desk/scope.mjs +27 -0
  60. package/dist/esm/desk/scope.mjs.map +1 -0
  61. package/dist/esm/desk/scope.native.js +31 -0
  62. package/dist/esm/desk/scope.native.js.map +1 -0
  63. package/dist/esm/desk/target.mjs +147 -0
  64. package/dist/esm/desk/target.mjs.map +1 -0
  65. package/dist/esm/desk/target.native.js +148 -0
  66. package/dist/esm/desk/target.native.js.map +1 -0
  67. package/dist/esm/index.mjs +6 -1
  68. package/dist/esm/index.mjs.map +1 -1
  69. package/dist/esm/index.native.js +6 -1
  70. package/dist/esm/index.native.js.map +1 -1
  71. package/dist/esm/list/DoctypeListScreen.mjs +3 -1
  72. package/dist/esm/list/DoctypeListScreen.mjs.map +1 -1
  73. package/dist/esm/list/DoctypeListScreen.native.js +3 -1
  74. package/dist/esm/list/DoctypeListScreen.native.js.map +1 -1
  75. package/dist/esm/report/DoctypeReportView.mjs +3 -1
  76. package/dist/esm/report/DoctypeReportView.mjs.map +1 -1
  77. package/dist/esm/report/DoctypeReportView.native.js +4 -2
  78. package/dist/esm/report/DoctypeReportView.native.js.map +1 -1
  79. package/dist/esm/views/CalendarView.mjs +5 -0
  80. package/dist/esm/views/CalendarView.mjs.map +1 -1
  81. package/dist/esm/views/CalendarView.native.js +5 -0
  82. package/dist/esm/views/CalendarView.native.js.map +1 -1
  83. package/dist/esm/views/DashboardView.mjs +5 -3
  84. package/dist/esm/views/DashboardView.mjs.map +1 -1
  85. package/dist/esm/views/DashboardView.native.js +5 -3
  86. package/dist/esm/views/DashboardView.native.js.map +1 -1
  87. package/dist/esm/views/ImageView.mjs +5 -0
  88. package/dist/esm/views/ImageView.mjs.map +1 -1
  89. package/dist/esm/views/ImageView.native.js +5 -0
  90. package/dist/esm/views/ImageView.native.js.map +1 -1
  91. package/dist/esm/views/KanbanView.mjs +5 -2
  92. package/dist/esm/views/KanbanView.mjs.map +1 -1
  93. package/dist/esm/views/KanbanView.native.js +5 -2
  94. package/dist/esm/views/KanbanView.native.js.map +1 -1
  95. package/dist/esm/views/TreeView.mjs +5 -0
  96. package/dist/esm/views/TreeView.mjs.map +1 -1
  97. package/dist/esm/views/TreeView.native.js +5 -0
  98. package/dist/esm/views/TreeView.native.js.map +1 -1
  99. package/dist/jsx/config/BackofficeProvider.mjs +5 -11
  100. package/dist/jsx/config/BackofficeProvider.mjs.map +1 -1
  101. package/dist/jsx/config/BackofficeProvider.native.js +9 -29
  102. package/dist/jsx/config/BackofficeProvider.native.js.map +1 -1
  103. package/dist/jsx/desk/Desk.mjs +162 -0
  104. package/dist/jsx/desk/Desk.mjs.map +1 -0
  105. package/dist/jsx/desk/Desk.native.js +214 -0
  106. package/dist/jsx/desk/Desk.native.js.map +1 -0
  107. package/dist/jsx/desk/DeskSurface.mjs +97 -0
  108. package/dist/jsx/desk/DeskSurface.mjs.map +1 -0
  109. package/dist/jsx/desk/DeskSurface.native.js +130 -0
  110. package/dist/jsx/desk/DeskSurface.native.js.map +1 -0
  111. package/dist/jsx/desk/resolveDeskPath.mjs +93 -0
  112. package/dist/jsx/desk/resolveDeskPath.mjs.map +1 -0
  113. package/dist/jsx/desk/resolveDeskPath.native.js +123 -0
  114. package/dist/jsx/desk/resolveDeskPath.native.js.map +1 -0
  115. package/dist/jsx/desk/scope.mjs +27 -0
  116. package/dist/jsx/desk/scope.mjs.map +1 -0
  117. package/dist/jsx/desk/scope.native.js +61 -0
  118. package/dist/jsx/desk/scope.native.js.map +1 -0
  119. package/dist/jsx/desk/target.mjs +147 -0
  120. package/dist/jsx/desk/target.mjs.map +1 -0
  121. package/dist/jsx/desk/target.native.js +178 -0
  122. package/dist/jsx/desk/target.native.js.map +1 -0
  123. package/dist/jsx/index.js +6 -1
  124. package/dist/jsx/index.js.map +1 -1
  125. package/dist/jsx/index.mjs +6 -1
  126. package/dist/jsx/index.mjs.map +1 -1
  127. package/dist/jsx/index.native.js +13 -0
  128. package/dist/jsx/index.native.js.map +1 -1
  129. package/dist/jsx/list/DoctypeListScreen.mjs +3 -1
  130. package/dist/jsx/list/DoctypeListScreen.mjs.map +1 -1
  131. package/dist/jsx/list/DoctypeListScreen.native.js +3 -1
  132. package/dist/jsx/list/DoctypeListScreen.native.js.map +1 -1
  133. package/dist/jsx/report/DoctypeReportView.mjs +3 -1
  134. package/dist/jsx/report/DoctypeReportView.mjs.map +1 -1
  135. package/dist/jsx/report/DoctypeReportView.native.js +4 -2
  136. package/dist/jsx/report/DoctypeReportView.native.js.map +1 -1
  137. package/dist/jsx/views/CalendarView.mjs +5 -0
  138. package/dist/jsx/views/CalendarView.mjs.map +1 -1
  139. package/dist/jsx/views/CalendarView.native.js +5 -0
  140. package/dist/jsx/views/CalendarView.native.js.map +1 -1
  141. package/dist/jsx/views/DashboardView.mjs +5 -3
  142. package/dist/jsx/views/DashboardView.mjs.map +1 -1
  143. package/dist/jsx/views/DashboardView.native.js +5 -3
  144. package/dist/jsx/views/DashboardView.native.js.map +1 -1
  145. package/dist/jsx/views/ImageView.mjs +5 -0
  146. package/dist/jsx/views/ImageView.mjs.map +1 -1
  147. package/dist/jsx/views/ImageView.native.js +5 -0
  148. package/dist/jsx/views/ImageView.native.js.map +1 -1
  149. package/dist/jsx/views/KanbanView.mjs +5 -2
  150. package/dist/jsx/views/KanbanView.mjs.map +1 -1
  151. package/dist/jsx/views/KanbanView.native.js +5 -2
  152. package/dist/jsx/views/KanbanView.native.js.map +1 -1
  153. package/dist/jsx/views/TreeView.mjs +5 -0
  154. package/dist/jsx/views/TreeView.mjs.map +1 -1
  155. package/dist/jsx/views/TreeView.native.js +5 -0
  156. package/dist/jsx/views/TreeView.native.js.map +1 -1
  157. package/package.json +12 -12
  158. package/src/config/BackofficeProvider.tsx +11 -18
  159. package/src/desk/Desk.spec.tsx +287 -0
  160. package/src/desk/Desk.tsx +308 -0
  161. package/src/desk/DeskSurface.tsx +132 -0
  162. package/src/desk/doctrine.spec.ts +48 -0
  163. package/src/desk/resolveDeskPath.spec.ts +174 -0
  164. package/src/desk/resolveDeskPath.ts +111 -0
  165. package/src/desk/scope.tsx +52 -0
  166. package/src/desk/target.ts +169 -0
  167. package/src/index.ts +17 -0
  168. package/src/list/DoctypeListScreen.tsx +4 -1
  169. package/src/report/DoctypeReportView.tsx +6 -2
  170. package/src/views/CalendarView.tsx +3 -0
  171. package/src/views/DashboardView.tsx +5 -3
  172. package/src/views/ImageView.tsx +3 -0
  173. package/src/views/KanbanView.tsx +5 -1
  174. package/src/views/TreeView.tsx +3 -0
  175. package/types/config/BackofficeProvider.d.ts +6 -4
  176. package/types/config/BackofficeProvider.d.ts.map +1 -1
  177. package/types/desk/Desk.d.ts +91 -0
  178. package/types/desk/Desk.d.ts.map +1 -0
  179. package/types/desk/DeskSurface.d.ts +24 -0
  180. package/types/desk/DeskSurface.d.ts.map +1 -0
  181. package/types/desk/resolveDeskPath.d.ts +60 -0
  182. package/types/desk/resolveDeskPath.d.ts.map +1 -0
  183. package/types/desk/scope.d.ts +31 -0
  184. package/types/desk/scope.d.ts.map +1 -0
  185. package/types/desk/target.d.ts +57 -0
  186. package/types/desk/target.d.ts.map +1 -0
  187. package/types/index.d.ts +10 -0
  188. package/types/index.d.ts.map +1 -1
  189. package/types/list/DoctypeListScreen.d.ts.map +1 -1
  190. package/types/report/DoctypeReportView.d.ts.map +1 -1
  191. package/types/views/CalendarView.d.ts.map +1 -1
  192. package/types/views/DashboardView.d.ts.map +1 -1
  193. package/types/views/ImageView.d.ts.map +1 -1
  194. package/types/views/KanbanView.d.ts.map +1 -1
  195. package/types/views/TreeView.d.ts.map +1 -1
@@ -98,15 +98,6 @@ function BackofficeProvider({
98
98
  (0, import_i18n.registerBackofficeTranslations)(i18nInstance);
99
99
  return true;
100
100
  });
101
- const appliedFields = (0, import_react.useRef)({});
102
- if (fields) {
103
- for (const [fieldtype, component] of Object.entries(fields)) {
104
- if (appliedFields.current[fieldtype] !== component) {
105
- (0, import_frappe_ui.registerField)(fieldtype, component);
106
- appliedFields.current[fieldtype] = component;
107
- }
108
- }
109
- }
110
101
  const onEventRef = (0, import_react.useRef)(onEvent);
111
102
  onEventRef.current = onEvent;
112
103
  const emitEvent = (0, import_react.useMemo)(() => event => {
@@ -171,7 +162,10 @@ function BackofficeProvider({
171
162
  syncOptions: frappe.syncOptions,
172
163
  socketOptions: frappe.socketOptions,
173
164
  fixtures: frappe.fixtures,
174
- children
165
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_frappe_ui.FieldOverridesProvider, {
166
+ fields,
167
+ children
168
+ })
175
169
  })
176
170
  });
177
171
  }
@@ -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","appliedFields","useRef","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","fieldtype","component","current","registerField","err","return","onEventRef","emitEvent2","event","_onEventRef_current","wrappedNavigation","navigate","path","type","mode","replace","back","setParams","params","_navigation_setParams","listener","resolvedCapabilities","config","jsx","Provider","FrappeProvider","baseURL","socketPort","socketBaseURL","siteName","auth","syncOptions","socketOptions","fixtures"],"sources":["BackofficeProvider.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar BackofficeProvider_exports = {};\n__export(BackofficeProvider_exports, {\n BackofficeProvider: () => BackofficeProvider,\n actionsForDoctype: () => actionsForDoctype,\n useBackofficeCapabilities: () => useBackofficeCapabilities,\n useBackofficeConfig: () => useBackofficeConfig,\n useBackofficeLocation: () => useBackofficeLocation,\n useBackofficeNavigator: () => useBackofficeNavigator,\n useBackofficePaths: () => useBackofficePaths,\n useBackofficeSlots: () => useBackofficeSlots,\n useIsDoctypeAllowed: () => useIsDoctypeAllowed\n});\nmodule.exports = __toCommonJS(BackofficeProvider_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_frappe_ui = require(\"@multiplatform.one/frappe-ui\");\nvar import_react = __toESM(require(\"react\"));\nvar import_react2 = require(\"react\");\nvar import_i18n = require(\"../i18n\");\nvar import_navigator = require(\"../navigation/navigator\");\nvar import_paths = require(\"../navigation/paths\");\nvar import_capabilities = require(\"./capabilities\");\nfunction actionsForDoctype(actions, doctype) {\n return (actions !== null && actions !== void 0 ? actions : []).filter(function(action) {\n return !action.doctypes || action.doctypes.includes(doctype);\n });\n}\nvar DEFAULT_CONFIG = {\n navigation: (0, import_navigator.createNoopNavigator)(import_paths.BACKOFFICE_BASE),\n basePath: import_paths.BACKOFFICE_BASE,\n paths: (0, import_paths.createBackofficePaths)(import_paths.BACKOFFICE_BASE),\n capabilities: (0, import_capabilities.resolveCapabilities)(),\n actions: {},\n slots: {},\n emitEvent: function emitEvent() {\n }\n};\nvar BackofficeConfigContext = /* @__PURE__ */ (0, import_react.createContext)(DEFAULT_CONFIG);\nfunction useBackofficeConfig() {\n return (0, import_react.useContext)(BackofficeConfigContext);\n}\nfunction useBackofficeCapabilities() {\n return useBackofficeConfig().capabilities;\n}\nfunction useBackofficeNavigator() {\n return useBackofficeConfig().navigation;\n}\nfunction useBackofficePaths() {\n return useBackofficeConfig().paths;\n}\nfunction useBackofficeSlots() {\n return useBackofficeConfig().slots;\n}\nfunction useBackofficeLocation() {\n var navigator = useBackofficeNavigator();\n return (0, import_react2.useSyncExternalStore)(navigator.subscribe, navigator.getLocation, navigator.getLocation);\n}\nfunction useIsDoctypeAllowed() {\n var { doctypes } = useBackofficeConfig();\n return (0, import_react.useMemo)(function() {\n return function(doctype) {\n return (0, import_capabilities.isDoctypeAllowed)(doctypes, doctype);\n };\n }, [\n doctypes\n ]);\n}\nfunction BackofficeProvider(param) {\n var { children, frappe, navigation, basePath = import_paths.BACKOFFICE_BASE, capabilities, doctypes, fields, actions, slots, appearance, integrations, onEvent, i18nInstance } = param;\n (0, import_react.useState)(function() {\n (0, import_i18n.registerBackofficeTranslations)(i18nInstance);\n return true;\n });\n var appliedFields = (0, import_react.useRef)({});\n if (fields) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(fields)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [fieldtype, component] = _step.value;\n if (appliedFields.current[fieldtype] !== component) {\n (0, import_frappe_ui.registerField)(fieldtype, component);\n appliedFields.current[fieldtype] = component;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n var onEventRef = (0, import_react.useRef)(onEvent);\n onEventRef.current = onEvent;\n var emitEvent2 = (0, import_react.useMemo)(function() {\n return function(event) {\n var _onEventRef_current;\n (_onEventRef_current = onEventRef.current) === null || _onEventRef_current === void 0 ? void 0 : _onEventRef_current.call(onEventRef, event);\n };\n }, []);\n var wrappedNavigation = (0, import_react.useMemo)(function() {\n return {\n navigate: function navigate(path) {\n emitEvent2({\n type: \"navigate\",\n path,\n mode: \"push\"\n });\n navigation.navigate(path);\n },\n replace: function replace(path) {\n emitEvent2({\n type: \"navigate\",\n path,\n mode: \"replace\"\n });\n navigation.replace(path);\n },\n back: function back() {\n emitEvent2({\n type: \"navigate\",\n path: navigation.getLocation().path,\n mode: \"back\"\n });\n navigation.back();\n },\n // Param merges are URL-state mirrors, not navigations — forwarded\n // without a navigate event (and only when the host supports them).\n ...navigation.setParams ? {\n setParams: function setParams(params) {\n var _navigation_setParams;\n return (_navigation_setParams = navigation.setParams) === null || _navigation_setParams === void 0 ? void 0 : _navigation_setParams.call(navigation, params);\n }\n } : {},\n getLocation: function getLocation() {\n return navigation.getLocation();\n },\n subscribe: function subscribe(listener) {\n return navigation.subscribe(listener);\n }\n };\n }, [\n navigation,\n emitEvent2\n ]);\n var paths = (0, import_react.useMemo)(function() {\n return (0, import_paths.createBackofficePaths)(basePath);\n }, [\n basePath\n ]);\n var resolvedCapabilities = (0, import_react.useMemo)(function() {\n return (0, import_capabilities.resolveCapabilities)(capabilities);\n }, [\n capabilities\n ]);\n var config = (0, import_react.useMemo)(function() {\n return {\n frappe,\n navigation: wrappedNavigation,\n basePath,\n paths,\n capabilities: resolvedCapabilities,\n doctypes,\n actions: actions !== null && actions !== void 0 ? actions : {},\n slots: slots !== null && slots !== void 0 ? slots : {},\n appearance,\n integrations,\n emitEvent: emitEvent2\n };\n }, [\n frappe,\n wrappedNavigation,\n basePath,\n paths,\n resolvedCapabilities,\n doctypes,\n actions,\n slots,\n appearance,\n integrations,\n emitEvent2\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BackofficeConfigContext.Provider, {\n value: config,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_frappe_ui.FrappeProvider, {\n baseURL: frappe.baseURL,\n socketPort: frappe.socketPort,\n socketBaseURL: frappe.socketBaseURL,\n siteName: frappe.siteName,\n auth: frappe.auth,\n syncOptions: frappe.syncOptions,\n socketOptions: frappe.socketOptions,\n fixtures: frappe.fixtures,\n children\n })\n });\n}\n//# sourceMappingURL=BackofficeProvider.js.map\n"],"mappings":"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","ignoreList":[]}
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","resolvedCapabilities","config","jsx","Provider","FrappeProvider","baseURL","socketPort","socketBaseURL","siteName","auth","syncOptions","socketOptions","fixtures","FieldOverridesProvider"],"sources":["BackofficeProvider.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar BackofficeProvider_exports = {};\n__export(BackofficeProvider_exports, {\n BackofficeProvider: () => BackofficeProvider,\n actionsForDoctype: () => actionsForDoctype,\n useBackofficeCapabilities: () => useBackofficeCapabilities,\n useBackofficeConfig: () => useBackofficeConfig,\n useBackofficeLocation: () => useBackofficeLocation,\n useBackofficeNavigator: () => useBackofficeNavigator,\n useBackofficePaths: () => useBackofficePaths,\n useBackofficeSlots: () => useBackofficeSlots,\n useIsDoctypeAllowed: () => useIsDoctypeAllowed\n});\nmodule.exports = __toCommonJS(BackofficeProvider_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_frappe_ui = require(\"@multiplatform.one/frappe-ui\");\nvar import_react = __toESM(require(\"react\"));\nvar import_react2 = require(\"react\");\nvar import_i18n = require(\"../i18n\");\nvar import_navigator = require(\"../navigation/navigator\");\nvar import_paths = require(\"../navigation/paths\");\nvar import_capabilities = require(\"./capabilities\");\nfunction actionsForDoctype(actions, doctype) {\n return (actions !== null && actions !== void 0 ? actions : []).filter(function(action) {\n return !action.doctypes || action.doctypes.includes(doctype);\n });\n}\nvar DEFAULT_CONFIG = {\n navigation: (0, import_navigator.createNoopNavigator)(import_paths.BACKOFFICE_BASE),\n basePath: import_paths.BACKOFFICE_BASE,\n paths: (0, import_paths.createBackofficePaths)(import_paths.BACKOFFICE_BASE),\n capabilities: (0, import_capabilities.resolveCapabilities)(),\n actions: {},\n slots: {},\n emitEvent: function emitEvent() {\n }\n};\nvar BackofficeConfigContext = /* @__PURE__ */ (0, import_react.createContext)(DEFAULT_CONFIG);\nfunction useBackofficeConfig() {\n return (0, import_react.useContext)(BackofficeConfigContext);\n}\nfunction useBackofficeCapabilities() {\n return useBackofficeConfig().capabilities;\n}\nfunction useBackofficeNavigator() {\n return useBackofficeConfig().navigation;\n}\nfunction useBackofficePaths() {\n return useBackofficeConfig().paths;\n}\nfunction useBackofficeSlots() {\n return useBackofficeConfig().slots;\n}\nfunction useBackofficeLocation() {\n var navigator = useBackofficeNavigator();\n return (0, import_react2.useSyncExternalStore)(navigator.subscribe, navigator.getLocation, navigator.getLocation);\n}\nfunction useIsDoctypeAllowed() {\n var { doctypes } = useBackofficeConfig();\n return (0, import_react.useMemo)(function() {\n return function(doctype) {\n return (0, import_capabilities.isDoctypeAllowed)(doctypes, doctype);\n };\n }, [\n doctypes\n ]);\n}\nfunction BackofficeProvider(param) {\n var { children, frappe, navigation, basePath = import_paths.BACKOFFICE_BASE, capabilities, doctypes, fields, actions, slots, appearance, integrations, onEvent, i18nInstance } = param;\n (0, import_react.useState)(function() {\n (0, import_i18n.registerBackofficeTranslations)(i18nInstance);\n return true;\n });\n var onEventRef = (0, import_react.useRef)(onEvent);\n onEventRef.current = onEvent;\n var emitEvent2 = (0, import_react.useMemo)(function() {\n return function(event) {\n var _onEventRef_current;\n (_onEventRef_current = onEventRef.current) === null || _onEventRef_current === void 0 ? void 0 : _onEventRef_current.call(onEventRef, event);\n };\n }, []);\n var wrappedNavigation = (0, import_react.useMemo)(function() {\n return {\n navigate: function navigate(path) {\n emitEvent2({\n type: \"navigate\",\n path,\n mode: \"push\"\n });\n navigation.navigate(path);\n },\n replace: function replace(path) {\n emitEvent2({\n type: \"navigate\",\n path,\n mode: \"replace\"\n });\n navigation.replace(path);\n },\n back: function back() {\n emitEvent2({\n type: \"navigate\",\n path: navigation.getLocation().path,\n mode: \"back\"\n });\n navigation.back();\n },\n // Param merges are URL-state mirrors, not navigations — forwarded\n // without a navigate event (and only when the host supports them).\n ...navigation.setParams ? {\n setParams: function setParams(params) {\n var _navigation_setParams;\n return (_navigation_setParams = navigation.setParams) === null || _navigation_setParams === void 0 ? void 0 : _navigation_setParams.call(navigation, params);\n }\n } : {},\n getLocation: function getLocation() {\n return navigation.getLocation();\n },\n subscribe: function subscribe(listener) {\n return navigation.subscribe(listener);\n }\n };\n }, [\n navigation,\n emitEvent2\n ]);\n var paths = (0, import_react.useMemo)(function() {\n return (0, import_paths.createBackofficePaths)(basePath);\n }, [\n basePath\n ]);\n var resolvedCapabilities = (0, import_react.useMemo)(function() {\n return (0, import_capabilities.resolveCapabilities)(capabilities);\n }, [\n capabilities\n ]);\n var config = (0, import_react.useMemo)(function() {\n return {\n frappe,\n navigation: wrappedNavigation,\n basePath,\n paths,\n capabilities: resolvedCapabilities,\n doctypes,\n actions: actions !== null && actions !== void 0 ? actions : {},\n slots: slots !== null && slots !== void 0 ? slots : {},\n appearance,\n integrations,\n emitEvent: emitEvent2\n };\n }, [\n frappe,\n wrappedNavigation,\n basePath,\n paths,\n resolvedCapabilities,\n doctypes,\n actions,\n slots,\n appearance,\n integrations,\n emitEvent2\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BackofficeConfigContext.Provider, {\n value: config,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_frappe_ui.FrappeProvider, {\n baseURL: frappe.baseURL,\n socketPort: frappe.socketPort,\n socketBaseURL: frappe.socketBaseURL,\n siteName: frappe.siteName,\n auth: frappe.auth,\n syncOptions: frappe.syncOptions,\n socketOptions: frappe.socketOptions,\n fixtures: frappe.fixtures,\n children: (\n /* Context-scoped field overrides (GL-4): per-provider, never the\n module-global registry — two providers with different `fields` on\n one page must not clobber each other. */\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_frappe_ui.FieldOverridesProvider, {\n fields,\n children\n })\n )\n })\n });\n}\n//# sourceMappingURL=BackofficeProvider.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,187 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var Desk_exports = {};
24
+ __export(Desk_exports, {
25
+ Desk: () => Desk
26
+ });
27
+ module.exports = __toCommonJS(Desk_exports);
28
+ var import_components = require("@multiplatform.one/components");
29
+ var import_frappe_ui = require("@multiplatform.one/frappe-ui");
30
+ var import_react = require("react");
31
+ var import_BackofficeProvider = require("../config/BackofficeProvider.cjs");
32
+ var import_navigator = require("../navigation/navigator.cjs");
33
+ var import_paths = require("../navigation/paths.cjs");
34
+ var import_BackofficeShell = require("../shell/BackofficeShell.cjs");
35
+ var import_DeskSurface = require("./DeskSurface.cjs");
36
+ var import_scope = require("./scope.cjs");
37
+ var import_target = require("./target.cjs");
38
+ var import_jsx_runtime = require("react/jsx-runtime");
39
+ function pinnedPath(pins, basePath) {
40
+ const paths = (0, import_paths.createBackofficePaths)(basePath);
41
+ if (pins.path) {
42
+ const prefix = basePath === "/" ? "" : basePath.replace(/\/+$/, "");
43
+ return `${prefix}${pins.path}`;
44
+ }
45
+ if (pins.doctype) {
46
+ if (pins.name === "new") return paths.newDoc(pins.doctype);
47
+ if (pins.name) return paths.form(pins.doctype, pins.name);
48
+ if (pins.view && pins.view !== "list") return paths.view(pins.doctype, pins.view);
49
+ return paths.list(pins.doctype);
50
+ }
51
+ if (pins.workspace) return paths.workspace(pins.workspace);
52
+ if (pins.report) return paths.queryReport(pins.report);
53
+ return paths.home();
54
+ }
55
+ function Desk(props) {
56
+ const {
57
+ doctype,
58
+ name,
59
+ view,
60
+ workspace,
61
+ report,
62
+ path,
63
+ basePath = import_paths.BACKOFFICE_BASE,
64
+ chrome: chromeProp,
65
+ embedded,
66
+ onNavigate
67
+ } = props;
68
+ const pins = (0, import_react.useMemo)(() => ({
69
+ doctype,
70
+ name,
71
+ view,
72
+ workspace,
73
+ report,
74
+ path
75
+ }), [doctype, name, view, workspace, report, path]);
76
+ const ambient = (0, import_frappe_ui.useFrappeConfig)();
77
+ const warned = (0, import_react.useRef)(false);
78
+ if (ambient && props.frappe && !warned.current) {
79
+ warned.current = true;
80
+ console.warn("[backoffice] <Desk frappe> is ignored: an ambient FrappeProvider exists and the SyncModule is cached per baseURL.");
81
+ }
82
+ const frappe = (0, import_react.useMemo)(() => {
83
+ if (ambient) {
84
+ return {
85
+ baseURL: ambient.baseURL,
86
+ auth: ambient.auth,
87
+ fixtures: ambient.fixtures
88
+ };
89
+ }
90
+ return props.frappe ?? {
91
+ baseURL: ""
92
+ };
93
+ }, [ambient, props.frappe]);
94
+ const memoryNavigator = (0, import_react.useMemo)(() => props.navigation ? void 0 : (0, import_navigator.createMemoryNavigator)(pinnedPath(pins, basePath)),
95
+ // The seed is the ENTRY; later pin changes re-enter through useDeskTarget.
96
+ // oxlint-disable-next-line exhaustive-deps
97
+ [props.navigation ? "host" : "memory"]);
98
+ const baseNavigation = props.navigation ?? memoryNavigator;
99
+ const onNavigateRef = (0, import_react.useRef)(onNavigate);
100
+ onNavigateRef.current = onNavigate;
101
+ const navigation = (0, import_react.useMemo)(() => {
102
+ const intercept = path2 => onNavigateRef.current?.((0, import_target.guessDeskTarget)(path2, basePath), path2) !== false;
103
+ return {
104
+ ...baseNavigation,
105
+ navigate: path2 => {
106
+ if (intercept(path2)) baseNavigation.navigate(path2);
107
+ },
108
+ replace: path2 => {
109
+ if (intercept(path2)) baseNavigation.replace(path2);
110
+ },
111
+ back: () => baseNavigation.back(),
112
+ getLocation: () => baseNavigation.getLocation(),
113
+ subscribe: listener => baseNavigation.subscribe(listener),
114
+ ...(baseNavigation.setParams ? {
115
+ setParams: params => baseNavigation.setParams?.(params)
116
+ } : {})
117
+ };
118
+ }, [baseNavigation, basePath]);
119
+ const chrome = chromeProp ?? (embedded || (0, import_target.hasDeskPin)(pins) ? "content" : "full");
120
+ const doctypes = props.doctypes ?? (doctype ? {
121
+ allow: [doctype]
122
+ } : void 0);
123
+ const capabilities = (0, import_react.useMemo)(() => chrome === "bare" ? {
124
+ ...props.capabilities,
125
+ sidebar: false
126
+ } : props.capabilities, [chrome, props.capabilities]);
127
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_BackofficeProvider.BackofficeProvider, {
128
+ frappe,
129
+ navigation,
130
+ basePath,
131
+ capabilities,
132
+ doctypes,
133
+ fields: props.fields,
134
+ actions: props.actions,
135
+ slots: props.slots,
136
+ appearance: props.appearance,
137
+ integrations: props.integrations,
138
+ onEvent: props.onEvent,
139
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_scope.DeskScopeProvider, {
140
+ scope: props.scope,
141
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(DeskBody, {
142
+ pins,
143
+ chrome,
144
+ readOnly: props.readOnly,
145
+ surfaces: props.surfaces,
146
+ initialFilters: props.filters,
147
+ views: props.views,
148
+ onTargetChange: props.onTargetChange
149
+ })
150
+ })
151
+ });
152
+ }
153
+ function DeskBody({
154
+ pins,
155
+ chrome,
156
+ readOnly,
157
+ surfaces,
158
+ initialFilters,
159
+ views,
160
+ onTargetChange
161
+ }) {
162
+ const target = (0, import_target.useDeskTarget)(pins);
163
+ const onTargetChangeRef = (0, import_react.useRef)(onTargetChange);
164
+ onTargetChangeRef.current = onTargetChange;
165
+ const targetKey = target ? JSON.stringify(target) : void 0;
166
+ (0, import_react.useEffect)(() => {
167
+ if (target) onTargetChangeRef.current?.(target);
168
+ }, [targetKey]);
169
+ const surface = target ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DeskSurface.DeskSurface, {
170
+ target,
171
+ overrides: surfaces,
172
+ readOnly,
173
+ initialFilters,
174
+ views
175
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DeskSurface.DeskSurfaceLoading, {});
176
+ if (chrome === "content") {
177
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.YStack, {
178
+ flex: 1,
179
+ minHeight: 0,
180
+ minWidth: 0,
181
+ children: surface
182
+ });
183
+ }
184
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_BackofficeShell.BackofficeShell, {
185
+ children: surface
186
+ });
187
+ }
@@ -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","fields","actions","slots","appearance","integrations","onEvent","children","DeskScopeProvider","scope","DeskBody","readOnly","surfaces","initialFilters","filters","views","onTargetChange","param","useDeskTarget","onTargetChangeRef","targetKey","JSON","stringify","useEffect","_onTargetChangeRef_current","surface","DeskSurface","overrides","DeskSurfaceLoading","YStack","flex","minHeight","minWidth","BackofficeShell"],"sources":["Desk.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Desk_exports = {};\n__export(Desk_exports, {\n Desk: () => Desk\n});\nmodule.exports = __toCommonJS(Desk_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_components = require(\"@multiplatform.one/components\");\nvar import_frappe_ui = require(\"@multiplatform.one/frappe-ui\");\nvar import_react = require(\"react\");\nvar import_BackofficeProvider = require(\"../config/BackofficeProvider\");\nvar import_navigator = require(\"../navigation/navigator\");\nvar import_paths = require(\"../navigation/paths\");\nvar import_BackofficeShell = require(\"../shell/BackofficeShell\");\nvar import_DeskSurface = require(\"./DeskSurface\");\nvar import_scope = require(\"./scope\");\nvar import_target = require(\"./target\");\nfunction pinnedPath(pins, basePath) {\n var paths = (0, import_paths.createBackofficePaths)(basePath);\n if (pins.path) {\n var prefix = basePath === \"/\" ? \"\" : basePath.replace(/\\/+$/, \"\");\n return `${prefix}${pins.path}`;\n }\n if (pins.doctype) {\n if (pins.name === \"new\") return paths.newDoc(pins.doctype);\n if (pins.name) return paths.form(pins.doctype, pins.name);\n if (pins.view && pins.view !== \"list\") return paths.view(pins.doctype, pins.view);\n return paths.list(pins.doctype);\n }\n if (pins.workspace) return paths.workspace(pins.workspace);\n if (pins.report) return paths.queryReport(pins.report);\n return paths.home();\n}\nfunction Desk(props) {\n var _props_navigation, _props_doctypes;\n var { doctype, name, view, workspace, report, path, basePath = import_paths.BACKOFFICE_BASE, chrome: chromeProp, embedded, onNavigate } = props;\n var pins = (0, import_react.useMemo)(function() {\n return {\n doctype,\n name,\n view,\n workspace,\n report,\n path\n };\n }, [\n doctype,\n name,\n view,\n workspace,\n report,\n path\n ]);\n var ambient = (0, import_frappe_ui.useFrappeConfig)();\n var warned = (0, import_react.useRef)(false);\n if (ambient && props.frappe && !warned.current) {\n warned.current = true;\n console.warn(\"[backoffice] <Desk frappe> is ignored: an ambient FrappeProvider exists and the SyncModule is cached per baseURL.\");\n }\n var frappe = (0, import_react.useMemo)(function() {\n var _props_frappe;\n if (ambient) {\n return {\n baseURL: ambient.baseURL,\n auth: ambient.auth,\n fixtures: ambient.fixtures\n };\n }\n return (_props_frappe = props.frappe) !== null && _props_frappe !== void 0 ? _props_frappe : {\n baseURL: \"\"\n };\n }, [\n ambient,\n props.frappe\n ]);\n var memoryNavigator = (0, import_react.useMemo)(\n function() {\n return props.navigation ? void 0 : (0, import_navigator.createMemoryNavigator)(pinnedPath(pins, basePath));\n },\n // The seed is the ENTRY; later pin changes re-enter through useDeskTarget.\n // oxlint-disable-next-line exhaustive-deps\n [\n props.navigation ? \"host\" : \"memory\"\n ]\n );\n var baseNavigation = (_props_navigation = props.navigation) !== null && _props_navigation !== void 0 ? _props_navigation : memoryNavigator;\n var onNavigateRef = (0, import_react.useRef)(onNavigate);\n onNavigateRef.current = onNavigate;\n var navigation = (0, import_react.useMemo)(function() {\n var intercept = function intercept2(path2) {\n var _onNavigateRef_current;\n return ((_onNavigateRef_current = onNavigateRef.current) === null || _onNavigateRef_current === void 0 ? void 0 : _onNavigateRef_current.call(onNavigateRef, (0, import_target.guessDeskTarget)(path2, basePath), path2)) !== false;\n };\n return {\n ...baseNavigation,\n navigate: function navigate(path2) {\n if (intercept(path2)) baseNavigation.navigate(path2);\n },\n replace: function replace(path2) {\n if (intercept(path2)) baseNavigation.replace(path2);\n },\n back: function back() {\n return baseNavigation.back();\n },\n getLocation: function getLocation() {\n return baseNavigation.getLocation();\n },\n subscribe: function subscribe(listener) {\n return baseNavigation.subscribe(listener);\n },\n ...baseNavigation.setParams ? {\n setParams: function setParams(params) {\n var _baseNavigation_setParams;\n return (_baseNavigation_setParams = baseNavigation.setParams) === null || _baseNavigation_setParams === void 0 ? void 0 : _baseNavigation_setParams.call(baseNavigation, params);\n }\n } : {}\n };\n }, [\n baseNavigation,\n basePath\n ]);\n var chrome = chromeProp !== null && chromeProp !== void 0 ? chromeProp : embedded || (0, import_target.hasDeskPin)(pins) ? \"content\" : \"full\";\n var doctypes = (_props_doctypes = props.doctypes) !== null && _props_doctypes !== void 0 ? _props_doctypes : doctype ? {\n allow: [\n doctype\n ]\n } : void 0;\n var capabilities = (0, import_react.useMemo)(function() {\n return chrome === \"bare\" ? {\n ...props.capabilities,\n sidebar: false\n } : props.capabilities;\n }, [\n chrome,\n props.capabilities\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_BackofficeProvider.BackofficeProvider, {\n frappe,\n navigation,\n basePath,\n capabilities,\n doctypes,\n fields: props.fields,\n actions: props.actions,\n slots: props.slots,\n appearance: props.appearance,\n integrations: props.integrations,\n onEvent: props.onEvent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_scope.DeskScopeProvider, {\n scope: props.scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DeskBody, {\n pins,\n chrome,\n readOnly: props.readOnly,\n surfaces: props.surfaces,\n initialFilters: props.filters,\n views: props.views,\n onTargetChange: props.onTargetChange\n })\n })\n });\n}\nfunction DeskBody(param) {\n var { pins, chrome, readOnly, surfaces, initialFilters, views, onTargetChange } = param;\n var target = (0, import_target.useDeskTarget)(pins);\n var onTargetChangeRef = (0, import_react.useRef)(onTargetChange);\n onTargetChangeRef.current = onTargetChange;\n var targetKey = target ? JSON.stringify(target) : void 0;\n (0, import_react.useEffect)(\n function() {\n var _onTargetChangeRef_current;\n if (target) (_onTargetChangeRef_current = onTargetChangeRef.current) === null || _onTargetChangeRef_current === void 0 ? void 0 : _onTargetChangeRef_current.call(onTargetChangeRef, target);\n },\n // oxlint-disable-next-line exhaustive-deps\n [\n targetKey\n ]\n );\n var surface = target ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DeskSurface.DeskSurface, {\n target,\n overrides: surfaces,\n readOnly,\n initialFilters,\n views\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DeskSurface.DeskSurfaceLoading, {});\n if (chrome === \"content\") {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.YStack, {\n flex: 1,\n minHeight: 0,\n minWidth: 0,\n children: surface\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_BackofficeShell.BackofficeShell, {\n children: surface\n });\n}\n//# sourceMappingURL=Desk.js.map\n"],"mappings":"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","ignoreList":[]}