@next-core/runtime 1.4.3 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/dist/cjs/Dialog.js +2 -3
  2. package/dist/cjs/Dialog.js.map +1 -1
  3. package/dist/cjs/Notification.js +2 -3
  4. package/dist/cjs/Notification.js.map +1 -1
  5. package/dist/cjs/index.js.map +1 -1
  6. package/dist/cjs/internal/CustomTemplates/expandCustomTemplate.js +2 -1
  7. package/dist/cjs/internal/CustomTemplates/expandCustomTemplate.js.map +1 -1
  8. package/dist/cjs/internal/CustomTemplates/utils.js.map +1 -1
  9. package/dist/cjs/internal/FormRenderer/constants.js +11 -0
  10. package/dist/cjs/internal/FormRenderer/constants.js.map +1 -0
  11. package/dist/cjs/internal/FormRenderer/expandFormRenderer.js +122 -0
  12. package/dist/cjs/internal/FormRenderer/expandFormRenderer.js.map +1 -0
  13. package/dist/cjs/internal/FormRenderer/getDefaultProperties.js +165 -0
  14. package/dist/cjs/internal/FormRenderer/getDefaultProperties.js.map +1 -0
  15. package/dist/cjs/internal/FormRenderer/interfaces.js +6 -0
  16. package/dist/cjs/internal/FormRenderer/interfaces.js.map +1 -0
  17. package/dist/cjs/internal/FormRenderer/utils.js +20 -0
  18. package/dist/cjs/internal/FormRenderer/utils.js.map +1 -0
  19. package/dist/cjs/internal/Renderer.js +38 -9
  20. package/dist/cjs/internal/Renderer.js.map +1 -1
  21. package/dist/cjs/internal/Router.js +5 -4
  22. package/dist/cjs/internal/Router.js.map +1 -1
  23. package/dist/cjs/internal/Runtime.js +72 -32
  24. package/dist/cjs/internal/Runtime.js.map +1 -1
  25. package/dist/cjs/internal/bindListeners.js +9 -2
  26. package/dist/cjs/internal/bindListeners.js.map +1 -1
  27. package/dist/cjs/internal/bootstrapData.js.map +1 -1
  28. package/dist/cjs/internal/compute/evaluate.js +21 -6
  29. package/dist/cjs/internal/compute/evaluate.js.map +1 -1
  30. package/dist/cjs/internal/compute/listenOnTrackingContext.js +7 -9
  31. package/dist/cjs/internal/compute/listenOnTrackingContext.js.map +1 -1
  32. package/dist/cjs/internal/data/DataStore.js +2 -2
  33. package/dist/cjs/internal/data/DataStore.js.map +1 -1
  34. package/dist/cjs/internal/fulfilStoryboard.js +27 -0
  35. package/dist/cjs/internal/fulfilStoryboard.js.map +1 -0
  36. package/dist/cjs/internal/interfaces.js.map +1 -1
  37. package/dist/cjs/internal/secret_internals.js +6 -15
  38. package/dist/cjs/internal/secret_internals.js.map +1 -1
  39. package/dist/esm/Dialog.js +2 -3
  40. package/dist/esm/Dialog.js.map +1 -1
  41. package/dist/esm/Notification.js +2 -3
  42. package/dist/esm/Notification.js.map +1 -1
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/internal/CustomTemplates/expandCustomTemplate.js +2 -1
  45. package/dist/esm/internal/CustomTemplates/expandCustomTemplate.js.map +1 -1
  46. package/dist/esm/internal/CustomTemplates/utils.js.map +1 -1
  47. package/dist/esm/internal/FormRenderer/constants.js +3 -0
  48. package/dist/esm/internal/FormRenderer/constants.js.map +1 -0
  49. package/dist/esm/internal/FormRenderer/expandFormRenderer.js +111 -0
  50. package/dist/esm/internal/FormRenderer/expandFormRenderer.js.map +1 -0
  51. package/dist/esm/internal/FormRenderer/getDefaultProperties.js +136 -0
  52. package/dist/esm/internal/FormRenderer/getDefaultProperties.js.map +1 -0
  53. package/dist/esm/internal/FormRenderer/interfaces.js +2 -0
  54. package/dist/esm/internal/FormRenderer/interfaces.js.map +1 -0
  55. package/dist/esm/internal/FormRenderer/utils.js +15 -0
  56. package/dist/esm/internal/FormRenderer/utils.js.map +1 -0
  57. package/dist/esm/internal/Renderer.js +48 -16
  58. package/dist/esm/internal/Renderer.js.map +1 -1
  59. package/dist/esm/internal/Router.js +4 -3
  60. package/dist/esm/internal/Router.js.map +1 -1
  61. package/dist/esm/internal/Runtime.js +70 -29
  62. package/dist/esm/internal/Runtime.js.map +1 -1
  63. package/dist/esm/internal/bindListeners.js +9 -2
  64. package/dist/esm/internal/bindListeners.js.map +1 -1
  65. package/dist/esm/internal/bootstrapData.js.map +1 -1
  66. package/dist/esm/internal/compute/evaluate.js +22 -9
  67. package/dist/esm/internal/compute/evaluate.js.map +1 -1
  68. package/dist/esm/internal/compute/listenOnTrackingContext.js +7 -9
  69. package/dist/esm/internal/compute/listenOnTrackingContext.js.map +1 -1
  70. package/dist/esm/internal/data/DataStore.js +2 -2
  71. package/dist/esm/internal/data/DataStore.js.map +1 -1
  72. package/dist/esm/internal/fulfilStoryboard.js +34 -0
  73. package/dist/esm/internal/fulfilStoryboard.js.map +1 -0
  74. package/dist/esm/internal/interfaces.js.map +1 -1
  75. package/dist/esm/internal/secret_internals.js +7 -13
  76. package/dist/esm/internal/secret_internals.js.map +1 -1
  77. package/dist/types/Dialog.d.ts +1 -1
  78. package/dist/types/Notification.d.ts +1 -1
  79. package/dist/types/index.d.ts +1 -1
  80. package/dist/types/internal/CustomTemplates/expandCustomTemplate.d.ts +1 -1
  81. package/dist/types/internal/FormRenderer/constants.d.ts +7 -0
  82. package/dist/types/internal/FormRenderer/expandFormRenderer.d.ts +3 -0
  83. package/dist/types/internal/FormRenderer/getDefaultProperties.d.ts +2 -0
  84. package/dist/types/internal/FormRenderer/interfaces.d.ts +30 -0
  85. package/dist/types/internal/FormRenderer/utils.d.ts +5 -0
  86. package/dist/types/internal/Renderer.d.ts +2 -3
  87. package/dist/types/internal/Runtime.d.ts +11 -2
  88. package/dist/types/internal/bootstrapData.d.ts +1 -1
  89. package/dist/types/internal/fulfilStoryboard.d.ts +2 -0
  90. package/dist/types/internal/interfaces.d.ts +6 -0
  91. package/dist/types/internal/secret_internals.d.ts +1 -4
  92. package/package.json +6 -6
  93. package/dist/cjs/internal/loadBootstrapData.js +0 -227
  94. package/dist/cjs/internal/loadBootstrapData.js.map +0 -1
  95. package/dist/cjs/internal/loadCheckLogin.js +0 -17
  96. package/dist/cjs/internal/loadCheckLogin.js.map +0 -1
  97. package/dist/esm/internal/loadBootstrapData.js +0 -244
  98. package/dist/esm/internal/loadBootstrapData.js.map +0 -1
  99. package/dist/esm/internal/loadCheckLogin.js +0 -18
  100. package/dist/esm/internal/loadCheckLogin.js.map +0 -1
  101. package/dist/types/internal/loadBootstrapData.d.ts +0 -10
  102. package/dist/types/internal/loadCheckLogin.d.ts +0 -1
@@ -11,32 +11,35 @@ exports._internalApiGetRuntimeContext = _internalApiGetRuntimeContext;
11
11
  exports._internalApiGetStoryboardInBootstrapData = _internalApiGetStoryboardInBootstrapData;
12
12
  exports._internalApiLoadBricks = _internalApiLoadBricks;
13
13
  exports._internalApiMatchStoryboard = _internalApiMatchStoryboard;
14
- exports._internalApiSetBootstrapData = _internalApiSetBootstrapData;
14
+ exports._test_only_setBootstrapData = void 0;
15
15
  exports.createRuntime = createRuntime;
16
16
  exports.getBrickPackages = getBrickPackages;
17
17
  exports.getRuntime = getRuntime;
18
+ exports.hooks = void 0;
18
19
  var _i18n = require("@next-core/i18n");
19
20
  var _loader = require("@next-core/loader");
21
+ var _general = require("@next-core/utils/general");
20
22
  var _moment = _interopRequireDefault(require("moment"));
21
23
  require("moment/locale/zh-cn.js");
22
24
  var _history = require("../history.js");
23
25
  var _matchStoryboard = require("./matchStoryboard.js");
24
26
  var _Router = require("./Router.js");
25
- var _loadCheckLogin = require("./loadCheckLogin.js");
26
- var _loadBootstrapData = require("./loadBootstrapData.js");
27
27
  var _i18n2 = require("./i18n.js");
28
28
  var _Notification = require("../Notification.js");
29
29
  var _Dialog = require("../Dialog.js");
30
- var _bootstrapData11 = require("./bootstrapData.js");
30
+ var _bootstrapData10 = require("./bootstrapData.js");
31
31
  let runtime;
32
32
 
33
33
  // Allow inject bootstrap data in a runtime other than Brick Next.
34
- let bootstrapData = _bootstrapData11.injectedBootstrapData;
34
+ let bootstrapData = _bootstrapData10.injectedBootstrapData;
35
35
  let router;
36
- function createRuntime() {
36
+ let hooks;
37
+ exports.hooks = hooks;
38
+ function createRuntime(options) {
37
39
  if (runtime) {
38
40
  throw new Error("Cannot create multiple runtimes");
39
41
  }
42
+ exports.hooks = hooks = options === null || options === void 0 ? void 0 : options.hooks;
40
43
  (0, _i18n.initializeI18n)(_i18n2.NS, _i18n2.locales);
41
44
  _moment.default.locale(_i18n.i18n.language);
42
45
  _i18n.i18n.on("languageChanged", () => {
@@ -50,13 +53,15 @@ function getRuntime() {
50
53
  return runtime;
51
54
  }
52
55
  class Runtime {
53
- async bootstrap() {
54
- const [, _bootstrapData] = await Promise.all([(0, _loadCheckLogin.loadCheckLogin)(), (0, _loadBootstrapData.loadBootstrapData)()]);
55
- bootstrapData = _bootstrapData;
56
+ initialize(data) {
57
+ normalizeBootstrapData(data);
58
+ bootstrapData = data;
56
59
  // Todo: allow configuration of notification bricks.
57
- (0, _Notification.loadNotificationService)("shoelace.show-notification");
58
- (0, _Dialog.loadDialogService)("shoelace.show-dialog");
59
- router = new _Router.Router(_bootstrapData.storyboards);
60
+ (0, _Notification.loadNotificationService)("shoelace.show-notification", this.loadBricks);
61
+ (0, _Dialog.loadDialogService)("shoelace.show-dialog", this.loadBricks);
62
+ }
63
+ async bootstrap() {
64
+ router = new _Router.Router(bootstrapData.storyboards);
60
65
  await router.bootstrap();
61
66
  }
62
67
  getRecentApps() {
@@ -68,25 +73,25 @@ class Runtime {
68
73
  return (_router2 = router) === null || _router2 === void 0 ? void 0 : _router2.getRecentApps().currentApp;
69
74
  }
70
75
  getFeatureFlags() {
71
- var _bootstrapData2, _bootstrapData2$setti, _router3, _router3$getRecentApp, _router3$getRecentApp2, _router3$getRecentApp3;
76
+ var _bootstrapData, _bootstrapData$settin, _router3, _router3$getRecentApp, _router3$getRecentApp2, _router3$getRecentApp3;
72
77
  return {
73
- ...((_bootstrapData2 = bootstrapData) === null || _bootstrapData2 === void 0 ? void 0 : (_bootstrapData2$setti = _bootstrapData2.settings) === null || _bootstrapData2$setti === void 0 ? void 0 : _bootstrapData2$setti.featureFlags),
78
+ ...((_bootstrapData = bootstrapData) === null || _bootstrapData === void 0 ? void 0 : (_bootstrapData$settin = _bootstrapData.settings) === null || _bootstrapData$settin === void 0 ? void 0 : _bootstrapData$settin.featureFlags),
74
79
  ...((_router3 = router) === null || _router3 === void 0 ? void 0 : (_router3$getRecentApp = _router3.getRecentApps().currentApp) === null || _router3$getRecentApp === void 0 ? void 0 : (_router3$getRecentApp2 = _router3$getRecentApp.config) === null || _router3$getRecentApp2 === void 0 ? void 0 : (_router3$getRecentApp3 = _router3$getRecentApp2.settings) === null || _router3$getRecentApp3 === void 0 ? void 0 : _router3$getRecentApp3.featureFlags),
75
80
  "migrate-to-brick-next-v3": true
76
81
  };
77
82
  }
78
83
  getMiscSettings() {
79
- var _bootstrapData3, _bootstrapData3$setti, _router4, _router4$getRecentApp, _router4$getRecentApp2, _router4$getRecentApp3;
84
+ var _bootstrapData2, _bootstrapData2$setti, _router4, _router4$getRecentApp, _router4$getRecentApp2, _router4$getRecentApp3;
80
85
  return {
81
- ...((_bootstrapData3 = bootstrapData) === null || _bootstrapData3 === void 0 ? void 0 : (_bootstrapData3$setti = _bootstrapData3.settings) === null || _bootstrapData3$setti === void 0 ? void 0 : _bootstrapData3$setti.misc),
86
+ ...((_bootstrapData2 = bootstrapData) === null || _bootstrapData2 === void 0 ? void 0 : (_bootstrapData2$setti = _bootstrapData2.settings) === null || _bootstrapData2$setti === void 0 ? void 0 : _bootstrapData2$setti.misc),
82
87
  ...((_router4 = router) === null || _router4 === void 0 ? void 0 : (_router4$getRecentApp = _router4.getRecentApps().currentApp) === null || _router4$getRecentApp === void 0 ? void 0 : (_router4$getRecentApp2 = _router4$getRecentApp.config) === null || _router4$getRecentApp2 === void 0 ? void 0 : (_router4$getRecentApp3 = _router4$getRecentApp2.settings) === null || _router4$getRecentApp3 === void 0 ? void 0 : _router4$getRecentApp3.misc)
83
88
  };
84
89
  }
85
90
  getBrandSettings() {
86
- var _bootstrapData4, _bootstrapData4$setti;
91
+ var _bootstrapData3, _bootstrapData3$setti;
87
92
  return {
88
93
  base_title: "DevOps 管理专家",
89
- ...((_bootstrapData4 = bootstrapData) === null || _bootstrapData4 === void 0 ? void 0 : (_bootstrapData4$setti = _bootstrapData4.settings) === null || _bootstrapData4$setti === void 0 ? void 0 : _bootstrapData4$setti.brand)
94
+ ...((_bootstrapData3 = bootstrapData) === null || _bootstrapData3 === void 0 ? void 0 : (_bootstrapData3$setti = _bootstrapData3.settings) === null || _bootstrapData3$setti === void 0 ? void 0 : _bootstrapData3$setti.brand)
90
95
  // ...(kernel.getOriginFaviconHref()
91
96
  // ? { favicon: kernel.getOriginFaviconHref() }
92
97
  // : {})
@@ -94,20 +99,20 @@ class Runtime {
94
99
  }
95
100
 
96
101
  getLaunchpadSettings() {
97
- var _bootstrapData5, _bootstrapData5$setti;
102
+ var _bootstrapData4, _bootstrapData4$setti;
98
103
  return {
99
104
  columns: 7,
100
105
  rows: 4,
101
- ...((_bootstrapData5 = bootstrapData) === null || _bootstrapData5 === void 0 ? void 0 : (_bootstrapData5$setti = _bootstrapData5.settings) === null || _bootstrapData5$setti === void 0 ? void 0 : _bootstrapData5$setti.launchpad)
106
+ ...((_bootstrapData4 = bootstrapData) === null || _bootstrapData4 === void 0 ? void 0 : (_bootstrapData4$setti = _bootstrapData4.settings) === null || _bootstrapData4$setti === void 0 ? void 0 : _bootstrapData4$setti.launchpad)
102
107
  };
103
108
  }
104
109
  getDesktops() {
105
- var _bootstrapData$deskto, _bootstrapData6;
106
- return (_bootstrapData$deskto = (_bootstrapData6 = bootstrapData) === null || _bootstrapData6 === void 0 ? void 0 : _bootstrapData6.desktops) !== null && _bootstrapData$deskto !== void 0 ? _bootstrapData$deskto : [];
110
+ var _bootstrapData$deskto, _bootstrapData5;
111
+ return (_bootstrapData$deskto = (_bootstrapData5 = bootstrapData) === null || _bootstrapData5 === void 0 ? void 0 : _bootstrapData5.desktops) !== null && _bootstrapData$deskto !== void 0 ? _bootstrapData$deskto : [];
107
112
  }
108
113
  getLaunchpadSiteMap() {
109
- var _bootstrapData$siteSo, _bootstrapData7;
110
- return (_bootstrapData$siteSo = (_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.siteSort) !== null && _bootstrapData$siteSo !== void 0 ? _bootstrapData$siteSo : [];
114
+ var _bootstrapData$siteSo, _bootstrapData6;
115
+ return (_bootstrapData$siteSo = (_bootstrapData6 = bootstrapData) === null || _bootstrapData6 === void 0 ? void 0 : _bootstrapData6.siteSort) !== null && _bootstrapData$siteSo !== void 0 ? _bootstrapData$siteSo : [];
111
116
  }
112
117
  toggleLaunchpadEffect(open) {
113
118
  document.body.classList.toggle("launchpad-open", open);
@@ -120,14 +125,42 @@ class Runtime {
120
125
  var _router5;
121
126
  return (_router5 = router) === null || _router5 === void 0 ? void 0 : _router5.getNavConfig();
122
127
  }
128
+ loadBricks(bricks) {
129
+ return (0, _loader.loadBricksImperatively)(bricks, getBrickPackages());
130
+ }
123
131
  }
124
132
  exports.Runtime = Runtime;
125
- function _internalApiSetBootstrapData(data) {
126
- bootstrapData = data;
133
+ function normalizeBootstrapData(data) {
134
+ if (Array.isArray(data.storyboards)) {
135
+ for (const {
136
+ app
137
+ } of data.storyboards) {
138
+ if (app.locales) {
139
+ // Prefix to avoid conflict between brick package's i18n namespace.
140
+ const ns = `tmp/${app.id}`;
141
+ // Support any languages in `app.locales`.
142
+ Object.entries(app.locales).forEach(([lang, resources]) => {
143
+ _i18n.i18n.addResourceBundle(lang, ns, resources);
144
+ });
145
+ // Use `app.name` as the fallback `app.localeName`.
146
+ app.localeName = _i18n.i18n.getFixedT(null, ns)("name", app.name);
147
+ // Remove the temporary i18n resource bundles.
148
+ Object.keys(app.locales).forEach(lang => {
149
+ _i18n.i18n.removeResourceBundle(lang, ns);
150
+ });
151
+ } else {
152
+ app.localeName = app.name;
153
+ }
154
+ }
155
+ }
156
+ if ((0, _general.isObject)(data.settings)) {
157
+ (0, _general.deepFreeze)(data.settings);
158
+ }
159
+ data.brickPackages = (0, _general.deepFreeze)(data.brickPackages);
127
160
  }
128
161
  function getBrickPackages() {
129
- var _bootstrapData$brickP, _bootstrapData8;
130
- return (_bootstrapData$brickP = (_bootstrapData8 = bootstrapData) === null || _bootstrapData8 === void 0 ? void 0 : _bootstrapData8.brickPackages) !== null && _bootstrapData$brickP !== void 0 ? _bootstrapData$brickP : [];
162
+ var _bootstrapData$brickP, _bootstrapData7;
163
+ return (_bootstrapData$brickP = (_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.brickPackages) !== null && _bootstrapData$brickP !== void 0 ? _bootstrapData$brickP : [];
131
164
  }
132
165
  function _internalApiLoadBricks(bricks) {
133
166
  return (0, _loader.loadBricksImperatively)(bricks, getBrickPackages());
@@ -137,19 +170,26 @@ function _internalApiGetRenderId() {
137
170
  return (_router6 = router) === null || _router6 === void 0 ? void 0 : _router6.getRenderId();
138
171
  }
139
172
  function _internalApiMatchStoryboard(pathname) {
140
- var _bootstrapData$storyb, _bootstrapData9;
141
- return (0, _matchStoryboard.matchStoryboard)((_bootstrapData$storyb = (_bootstrapData9 = bootstrapData) === null || _bootstrapData9 === void 0 ? void 0 : _bootstrapData9.storyboards) !== null && _bootstrapData$storyb !== void 0 ? _bootstrapData$storyb : [], pathname);
173
+ var _bootstrapData$storyb, _bootstrapData8;
174
+ return (0, _matchStoryboard.matchStoryboard)((_bootstrapData$storyb = (_bootstrapData8 = bootstrapData) === null || _bootstrapData8 === void 0 ? void 0 : _bootstrapData8.storyboards) !== null && _bootstrapData$storyb !== void 0 ? _bootstrapData$storyb : [], pathname);
142
175
  }
143
176
  function _internalApiGetRuntimeContext() {
144
177
  var _router7;
145
178
  return (_router7 = router) === null || _router7 === void 0 ? void 0 : _router7.getRuntimeContext();
146
179
  }
147
180
  function _internalApiGetStoryboardInBootstrapData(appId) {
148
- var _bootstrapData10, _bootstrapData10$stor;
149
- return (_bootstrapData10 = bootstrapData) === null || _bootstrapData10 === void 0 ? void 0 : (_bootstrapData10$stor = _bootstrapData10.storyboards) === null || _bootstrapData10$stor === void 0 ? void 0 : _bootstrapData10$stor.find(storyboard => storyboard.app.id === appId);
181
+ var _bootstrapData9, _bootstrapData9$story;
182
+ return (_bootstrapData9 = bootstrapData) === null || _bootstrapData9 === void 0 ? void 0 : (_bootstrapData9$story = _bootstrapData9.storyboards) === null || _bootstrapData9$story === void 0 ? void 0 : _bootstrapData9$story.find(storyboard => storyboard.app.id === appId);
150
183
  }
151
184
  function _internalApiGetAppInBootstrapData(appId) {
152
185
  var _internalApiGetStoryb;
153
186
  return (_internalApiGetStoryb = _internalApiGetStoryboardInBootstrapData(appId)) === null || _internalApiGetStoryb === void 0 ? void 0 : _internalApiGetStoryb.app;
154
187
  }
188
+ let _test_only_setBootstrapData;
189
+ exports._test_only_setBootstrapData = _test_only_setBootstrapData;
190
+ if (process.env.NODE_ENV === "test") {
191
+ exports._test_only_setBootstrapData = _test_only_setBootstrapData = data => {
192
+ bootstrapData = data;
193
+ };
194
+ }
155
195
  //# sourceMappingURL=Runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Runtime.js","names":["_i18n","require","_loader","_moment","_interopRequireDefault","_history","_matchStoryboard","_Router","_loadCheckLogin","_loadBootstrapData","_i18n2","_Notification","_Dialog","_bootstrapData11","runtime","bootstrapData","injectedBootstrapData","router","createRuntime","Error","initializeI18n","NS","locales","moment","locale","i18n","language","on","createHistory","Runtime","getRuntime","bootstrap","_bootstrapData","Promise","all","loadCheckLogin","loadBootstrapData","loadNotificationService","loadDialogService","Router","storyboards","getRecentApps","_router$getRecentApps","_router","getCurrentApp","_router2","currentApp","getFeatureFlags","_bootstrapData2","_bootstrapData2$setti","_router3","_router3$getRecentApp","_router3$getRecentApp2","_router3$getRecentApp3","settings","featureFlags","config","getMiscSettings","_bootstrapData3","_bootstrapData3$setti","_router4","_router4$getRecentApp","_router4$getRecentApp2","_router4$getRecentApp3","misc","getBrandSettings","_bootstrapData4","_bootstrapData4$setti","base_title","brand","getLaunchpadSettings","_bootstrapData5","_bootstrapData5$setti","columns","rows","launchpad","getDesktops","_bootstrapData$deskto","_bootstrapData6","desktops","getLaunchpadSiteMap","_bootstrapData$siteSo","_bootstrapData7","siteSort","toggleLaunchpadEffect","open","document","body","classList","toggle","applyPageTitle","pageTitle","baseTitle","title","getNavConfig","_router5","exports","_internalApiSetBootstrapData","data","getBrickPackages","_bootstrapData$brickP","_bootstrapData8","brickPackages","_internalApiLoadBricks","bricks","loadBricksImperatively","_internalApiGetRenderId","_router6","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData$storyb","_bootstrapData9","matchStoryboard","_internalApiGetRuntimeContext","_router7","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","appId","_bootstrapData10","_bootstrapData10$stor","find","storyboard","app","id","_internalApiGetAppInBootstrapData","_internalApiGetStoryb"],"sources":["../../../src/internal/Runtime.ts"],"sourcesContent":["import type {\n RuntimeStoryboard,\n BootstrapSettings,\n FeatureFlags,\n BootstrapData,\n} from \"@next-core/types\";\nimport { i18n, initializeI18n } from \"@next-core/i18n\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\nimport moment from \"moment\";\nimport \"moment/locale/zh-cn.js\";\nimport { createHistory } from \"../history.js\";\nimport { matchStoryboard } from \"./matchStoryboard.js\";\nimport { Router } from \"./Router.js\";\nimport { loadCheckLogin } from \"./loadCheckLogin.js\";\nimport { loadBootstrapData } from \"./loadBootstrapData.js\";\nimport { NS, locales } from \"./i18n.js\";\nimport { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\nimport { injectedBootstrapData } from \"./bootstrapData.js\";\n\nlet runtime: Runtime;\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nlet bootstrapData = injectedBootstrapData;\nlet router: Router | undefined;\n\nexport function createRuntime() {\n if (runtime) {\n throw new Error(\"Cannot create multiple runtimes\");\n }\n initializeI18n(NS, locales);\n moment.locale(i18n.language);\n i18n.on(\"languageChanged\", () => {\n moment.locale(i18n.language);\n });\n createHistory();\n runtime = new Runtime();\n return runtime;\n}\n\nexport function getRuntime() {\n return runtime;\n}\n\nexport class Runtime {\n async bootstrap() {\n const [, _bootstrapData] = await Promise.all([\n loadCheckLogin(),\n loadBootstrapData(),\n ]);\n bootstrapData = _bootstrapData;\n // Todo: allow configuration of notification bricks.\n loadNotificationService(\"shoelace.show-notification\");\n loadDialogService(\"shoelace.show-dialog\");\n router = new Router(_bootstrapData.storyboards);\n await router.bootstrap();\n }\n\n getRecentApps() {\n return router?.getRecentApps() ?? {};\n }\n\n getCurrentApp() {\n return router?.getRecentApps().currentApp;\n }\n\n getFeatureFlags(): FeatureFlags {\n return {\n ...bootstrapData?.settings?.featureFlags,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.featureFlags,\n \"migrate-to-brick-next-v3\": true,\n };\n }\n\n getMiscSettings() {\n return {\n ...bootstrapData?.settings?.misc,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.misc,\n };\n }\n\n getBrandSettings(): Record<string, string> {\n return {\n base_title: \"DevOps 管理专家\",\n ...(bootstrapData?.settings?.brand as Record<string, string>),\n // ...(kernel.getOriginFaviconHref()\n // ? { favicon: kernel.getOriginFaviconHref() }\n // : {})\n };\n }\n\n getLaunchpadSettings() {\n return {\n columns: 7,\n rows: 4,\n ...bootstrapData?.settings?.launchpad,\n };\n }\n\n getDesktops(): unknown[] {\n return bootstrapData?.desktops ?? [];\n }\n\n getLaunchpadSiteMap(): unknown[] {\n return bootstrapData?.siteSort ?? [];\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n\n getNavConfig() {\n return router?.getNavConfig();\n }\n}\n\nexport function _internalApiSetBootstrapData(data: Partial<BootstrapData>) {\n bootstrapData = data;\n}\n\nexport function getBrickPackages() {\n return bootstrapData?.brickPackages ?? [];\n}\n\nexport function _internalApiLoadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n}\n\nexport function _internalApiGetRenderId(): string | undefined {\n return router?.getRenderId();\n}\n\nexport function _internalApiMatchStoryboard(\n pathname: string\n): RuntimeStoryboard | undefined {\n return matchStoryboard(bootstrapData?.storyboards ?? [], pathname);\n}\n\nexport function _internalApiGetRuntimeContext() {\n return router?.getRuntimeContext();\n}\n\nexport function _internalApiGetStoryboardInBootstrapData(appId: string) {\n return bootstrapData?.storyboards?.find(\n (storyboard) => storyboard.app.id === appId\n );\n}\n\nexport function _internalApiGetAppInBootstrapData(appId: string) {\n return _internalApiGetStoryboardInBootstrapData(appId)?.app;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Runtime.js","names":["_i18n","require","_loader","_general","_moment","_interopRequireDefault","_history","_matchStoryboard","_Router","_i18n2","_Notification","_Dialog","_bootstrapData10","runtime","bootstrapData","injectedBootstrapData","router","hooks","exports","createRuntime","options","Error","initializeI18n","NS","locales","moment","locale","i18n","language","on","createHistory","Runtime","getRuntime","initialize","data","normalizeBootstrapData","loadNotificationService","loadBricks","loadDialogService","bootstrap","Router","storyboards","getRecentApps","_router$getRecentApps","_router","getCurrentApp","_router2","currentApp","getFeatureFlags","_bootstrapData","_bootstrapData$settin","_router3","_router3$getRecentApp","_router3$getRecentApp2","_router3$getRecentApp3","settings","featureFlags","config","getMiscSettings","_bootstrapData2","_bootstrapData2$setti","_router4","_router4$getRecentApp","_router4$getRecentApp2","_router4$getRecentApp3","misc","getBrandSettings","_bootstrapData3","_bootstrapData3$setti","base_title","brand","getLaunchpadSettings","_bootstrapData4","_bootstrapData4$setti","columns","rows","launchpad","getDesktops","_bootstrapData$deskto","_bootstrapData5","desktops","getLaunchpadSiteMap","_bootstrapData$siteSo","_bootstrapData6","siteSort","toggleLaunchpadEffect","open","document","body","classList","toggle","applyPageTitle","pageTitle","baseTitle","title","getNavConfig","_router5","bricks","loadBricksImperatively","getBrickPackages","Array","isArray","app","ns","id","Object","entries","forEach","lang","resources","addResourceBundle","localeName","getFixedT","name","keys","removeResourceBundle","isObject","deepFreeze","brickPackages","_bootstrapData$brickP","_bootstrapData7","_internalApiLoadBricks","_internalApiGetRenderId","_router6","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData$storyb","_bootstrapData8","matchStoryboard","_internalApiGetRuntimeContext","_router7","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","appId","_bootstrapData9","_bootstrapData9$story","find","storyboard","_internalApiGetAppInBootstrapData","_internalApiGetStoryb","_test_only_setBootstrapData","process","env","NODE_ENV"],"sources":["../../../src/internal/Runtime.ts"],"sourcesContent":["import type {\n RuntimeStoryboard,\n BootstrapSettings,\n FeatureFlags,\n BootstrapData,\n} from \"@next-core/types\";\nimport { i18n, initializeI18n } from \"@next-core/i18n\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\nimport { deepFreeze, isObject } from \"@next-core/utils/general\";\nimport moment from \"moment\";\nimport \"moment/locale/zh-cn.js\";\nimport { createHistory } from \"../history.js\";\nimport { matchStoryboard } from \"./matchStoryboard.js\";\nimport { Router } from \"./Router.js\";\nimport { NS, locales } from \"./i18n.js\";\nimport { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\nimport { injectedBootstrapData } from \"./bootstrapData.js\";\n\nlet runtime: Runtime;\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nlet bootstrapData = injectedBootstrapData;\nlet router: Router | undefined;\n\nexport interface RuntimeOptions {\n hooks?: RuntimeHooks;\n}\n\nexport interface RuntimeHooks {\n fulfilStoryboard?: (storyboard: RuntimeStoryboard) => Promise<void>;\n}\n\nexport let hooks: RuntimeHooks | undefined;\n\nexport function createRuntime(options?: RuntimeOptions) {\n if (runtime) {\n throw new Error(\"Cannot create multiple runtimes\");\n }\n hooks = options?.hooks;\n initializeI18n(NS, locales);\n moment.locale(i18n.language);\n i18n.on(\"languageChanged\", () => {\n moment.locale(i18n.language);\n });\n createHistory();\n runtime = new Runtime();\n return runtime;\n}\n\nexport function getRuntime() {\n return runtime;\n}\n\nexport class Runtime {\n initialize(data: BootstrapData) {\n normalizeBootstrapData(data);\n bootstrapData = data;\n // Todo: allow configuration of notification bricks.\n loadNotificationService(\"shoelace.show-notification\", this.loadBricks);\n loadDialogService(\"shoelace.show-dialog\", this.loadBricks);\n }\n\n async bootstrap() {\n router = new Router(bootstrapData!.storyboards!);\n await router.bootstrap();\n }\n\n getRecentApps() {\n return router?.getRecentApps() ?? {};\n }\n\n getCurrentApp() {\n return router?.getRecentApps().currentApp;\n }\n\n getFeatureFlags(): FeatureFlags {\n return {\n ...bootstrapData?.settings?.featureFlags,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.featureFlags,\n \"migrate-to-brick-next-v3\": true,\n };\n }\n\n getMiscSettings() {\n return {\n ...bootstrapData?.settings?.misc,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.misc,\n };\n }\n\n getBrandSettings(): Record<string, string> {\n return {\n base_title: \"DevOps 管理专家\",\n ...(bootstrapData?.settings?.brand as Record<string, string>),\n // ...(kernel.getOriginFaviconHref()\n // ? { favicon: kernel.getOriginFaviconHref() }\n // : {})\n };\n }\n\n getLaunchpadSettings() {\n return {\n columns: 7,\n rows: 4,\n ...bootstrapData?.settings?.launchpad,\n };\n }\n\n getDesktops(): unknown[] {\n return bootstrapData?.desktops ?? [];\n }\n\n getLaunchpadSiteMap(): unknown[] {\n return bootstrapData?.siteSort ?? [];\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n\n getNavConfig() {\n return router?.getNavConfig();\n }\n\n loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n }\n}\n\nfunction normalizeBootstrapData(data: BootstrapData) {\n if (Array.isArray(data.storyboards)) {\n for (const { app } of data.storyboards) {\n if (app.locales) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const ns = `tmp/${app.id}`;\n // Support any languages in `app.locales`.\n Object.entries(app.locales).forEach(([lang, resources]) => {\n i18n.addResourceBundle(lang, ns, resources);\n });\n // Use `app.name` as the fallback `app.localeName`.\n app.localeName = i18n.getFixedT(null, ns)(\"name\", app.name) as string;\n // Remove the temporary i18n resource bundles.\n Object.keys(app.locales).forEach((lang) => {\n i18n.removeResourceBundle(lang, ns);\n });\n } else {\n app.localeName = app.name;\n }\n }\n }\n\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n data.brickPackages = deepFreeze(data.brickPackages);\n}\n\nexport function getBrickPackages() {\n return bootstrapData?.brickPackages ?? [];\n}\n\nexport function _internalApiLoadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n}\n\nexport function _internalApiGetRenderId(): string | undefined {\n return router?.getRenderId();\n}\n\nexport function _internalApiMatchStoryboard(\n pathname: string\n): RuntimeStoryboard | undefined {\n return matchStoryboard(bootstrapData?.storyboards ?? [], pathname);\n}\n\nexport function _internalApiGetRuntimeContext() {\n return router?.getRuntimeContext();\n}\n\nexport function _internalApiGetStoryboardInBootstrapData(appId: string) {\n return bootstrapData?.storyboards?.find(\n (storyboard) => storyboard.app.id === appId\n );\n}\n\nexport function _internalApiGetAppInBootstrapData(appId: string) {\n return _internalApiGetStoryboardInBootstrapData(appId)?.app;\n}\n\nexport let _test_only_setBootstrapData: (data: Partial<BootstrapData>) => void;\n\nif (process.env.NODE_ENV === \"test\") {\n _test_only_setBootstrapData = (data) => {\n bootstrapData = data as BootstrapData;\n };\n}\n"],"mappings":"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"}
@@ -25,6 +25,7 @@ var _utils = require("./CustomTemplates/utils.js");
25
25
  var _handleHttpError = require("../handleHttpError.js");
26
26
  var _FlowApi = require("./data/FlowApi.js");
27
27
  var _Notification = require("../Notification.js");
28
+ var _utils2 = require("./FormRenderer/utils.js");
28
29
  function bindListeners(brick, eventsMap, runtimeContext) {
29
30
  if (!eventsMap) {
30
31
  return;
@@ -152,8 +153,9 @@ function listenerFactory(handlers, runtimeContext, runtimeBrick) {
152
153
  tplHostElement.dispatchEvent(new CustomEvent(type, init));
153
154
  break;
154
155
  }
155
-
156
- // case "formstate.update":
156
+ case "formstate.update":
157
+ handleFormStateAction(event, handler.args, handler.callback, runtimeContext);
158
+ break;
157
159
 
158
160
  // case "message.subscribe":
159
161
  // case "message.unsubscribe":
@@ -372,6 +374,11 @@ function handleTplStateAction(event, method, args, callback, runtimeContext) {
372
374
  const tplStateStore = (0, _utils.getTplStateStore)(runtimeContext, `state.${method}`, `: ${name}`);
373
375
  tplStateStore.updateValue(name, value, method === "update" ? "replace" : method, callback, runtimeContext);
374
376
  }
377
+ function handleFormStateAction(event, args, callback, runtimeContext) {
378
+ const [name, value] = argsFactory(args, runtimeContext, event);
379
+ const formStateStore = (0, _utils2.getFormStateStore)(runtimeContext, "formstate.update", `: ${name}`);
380
+ formStateStore.updateValue(name, value, "replace", callback, runtimeContext);
381
+ }
375
382
  function handleLocationAction(event, method, args, runtimeContext) {
376
383
  if (method === "assign") {
377
384
  const [url] = argsFactory(args, runtimeContext, event);
@@ -1 +1 @@
1
- {"version":3,"file":"bindListeners.js","names":["_cook","require","_checkIf","_computeRealValue","_history","_getProviderBrick","_poll2","_evaluate","_setProperties","_themeAndMode","_utils","_handleHttpError","_FlowApi","_Notification","bindListeners","brick","eventsMap","runtimeContext","Object","entries","forEach","eventType","handlers","listener","listenerFactory","element","addEventListener","$$listeners","push","$$eventListeners","handler","concat","unbindListeners","removeEventListener","length","isBuiltinHandler","action","isUseProviderHandler","useProvider","isCustomHandler","target","targetRef","method","properties","isExecuteCustomHandler","isSetPropsCustomHandler","runtimeBrick","event","checkIf","object","split","handleHistoryAction","args","callback","handleWindowAction","handleLocationAction","handleStorageAction","preventDefault","handleConsoleAction","handleMessageAction","handleHttpError","detail","handleContextAction","handleTplStateAction","type","init","argsFactory","tplHostElement","getTplHostElement","dispatchEvent","CustomEvent","applyTheme","theme","applyMode","console","error","handleUseProviderAction","handleCustomAction","providerBrick","getProviderBrick","brickCallback","httpErrorToString","targets","rawTarget","rawTargetRef","computedTarget","isEvaluable","isPreEvaluated","computeRealValue","multiple","Array","from","document","querySelectorAll","found","querySelector","HTMLElement","computedTargetRef","targetRefs","join","map","ref","_tplHostElement$$$get","$$getElementByRef","call","filter","Boolean","useEventAsDefault","setProperties","options","_poll","task","computedArgs","getArgsOfFlowApi","callbackFactory","eventCallbackFactory","pollableCallback","progress","success","finally","poll","enabled","startPoll","result","err","baseArgsLength","hasCallback","overrideMethod","useEventDetailAsDefault","undefined","blocked","getHistory","url","features","window","open","name","value","ctxStore","updateValue","tplStateStore","getTplStateStore","location","assign","storage","localStorage","sessionStorage","setItem","JSON","stringify","removeItem","Notification","show","message","isArray"],"sources":["../../../src/internal/bindListeners.ts"],"sourcesContent":["import type {\n BrickEventHandler,\n BrickEventHandlerCallback,\n BrickEventsMap,\n BuiltinBrickEventHandler,\n CustomBrickEventHandler,\n ExecuteCustomBrickEventHandler,\n ProviderPollOptions,\n SetPropsCustomBrickEventHandler,\n SiteTheme,\n UseProviderEventHandler,\n} from \"@next-core/types\";\nimport { isEvaluable } from \"@next-core/cook\";\nimport { checkIf } from \"./compute/checkIf.js\";\nimport { computeRealValue } from \"./compute/computeRealValue.js\";\nimport { getHistory } from \"../history.js\";\nimport { getProviderBrick } from \"./data/getProviderBrick.js\";\nimport { PollableCallback, startPoll } from \"./poll.js\";\nimport { isPreEvaluated } from \"./compute/evaluate.js\";\nimport { setProperties } from \"./compute/setProperties.js\";\nimport { applyMode, applyTheme } from \"../themeAndMode.js\";\nimport type {\n ElementHolder,\n RuntimeBrickElement,\n RuntimeContext,\n} from \"./interfaces.js\";\nimport {\n getTplHostElement,\n getTplStateStore,\n} from \"./CustomTemplates/utils.js\";\nimport { handleHttpError, httpErrorToString } from \"../handleHttpError.js\";\nimport { getArgsOfFlowApi } from \"./data/FlowApi.js\";\nimport { Notification } from \"../Notification.js\";\n\nexport function bindListeners(\n brick: RuntimeBrickElement,\n eventsMap: BrickEventsMap | undefined,\n runtimeContext: RuntimeContext\n): void {\n if (!eventsMap) {\n return;\n }\n Object.entries(eventsMap).forEach(([eventType, handlers]) => {\n const listener = listenerFactory(handlers, runtimeContext, {\n element: brick,\n });\n brick.addEventListener(eventType, listener);\n\n // Remember added listeners for unbinding.\n if (!brick.$$listeners) {\n brick.$$listeners = [];\n }\n brick.$$listeners.push([eventType, listener]);\n\n // Remember added listeners for devtools.\n if (!brick.$$eventListeners) {\n brick.$$eventListeners = [];\n }\n for (const handler of ([] as BrickEventHandler[]).concat(handlers)) {\n brick.$$eventListeners.push([eventType, null, handler]);\n }\n });\n}\n\nexport function unbindListeners(brick: RuntimeBrickElement): void {\n if (brick.$$listeners) {\n for (const [eventType, listener] of brick.$$listeners) {\n brick.removeEventListener(eventType, listener);\n }\n brick.$$listeners.length = 0;\n }\n}\n\nexport function isBuiltinHandler(\n handler: BrickEventHandler\n): handler is BuiltinBrickEventHandler {\n return typeof (handler as BuiltinBrickEventHandler).action === \"string\";\n}\n\nexport function isUseProviderHandler(\n handler: BrickEventHandler\n): handler is UseProviderEventHandler {\n return typeof (handler as UseProviderEventHandler).useProvider === \"string\";\n}\n\nexport function isCustomHandler(\n handler: BrickEventHandler\n): handler is CustomBrickEventHandler {\n return !!(\n ((handler as CustomBrickEventHandler).target ||\n (handler as CustomBrickEventHandler).targetRef) &&\n ((handler as ExecuteCustomBrickEventHandler).method ||\n (handler as SetPropsCustomBrickEventHandler).properties)\n );\n}\n\nexport function isExecuteCustomHandler(\n handler: CustomBrickEventHandler\n): handler is ExecuteCustomBrickEventHandler {\n return !!(handler as ExecuteCustomBrickEventHandler).method;\n}\n\nexport function isSetPropsCustomHandler(\n handler: CustomBrickEventHandler\n): handler is SetPropsCustomBrickEventHandler {\n return !!(handler as SetPropsCustomBrickEventHandler).properties;\n}\n\nexport function listenerFactory(\n handlers: BrickEventHandler | BrickEventHandler[],\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder\n) {\n return function (event: Event): void {\n for (const handler of ([] as BrickEventHandler[]).concat(handlers)) {\n if (!checkIf(handler, { ...runtimeContext, event })) {\n continue;\n }\n if (isBuiltinHandler(handler)) {\n const [object, method] = handler.action.split(\".\") as any;\n switch (handler.action) {\n case \"history.push\":\n case \"history.replace\":\n case \"history.pushQuery\":\n case \"history.replaceQuery\":\n case \"history.pushAnchor\":\n case \"history.block\":\n case \"history.goBack\":\n case \"history.goForward\":\n case \"history.reload\":\n case \"history.unblock\":\n handleHistoryAction(\n event,\n method,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n // case \"segue.push\":\n // case \"segue.replace\":\n // case \"alias.push\":\n // case \"alias.replace\":\n\n case \"window.open\":\n handleWindowAction(event, handler.args, runtimeContext);\n break;\n\n case \"location.reload\":\n case \"location.assign\":\n handleLocationAction(event, method, handler.args, runtimeContext);\n break;\n\n case \"localStorage.setItem\":\n case \"localStorage.removeItem\":\n case \"sessionStorage.setItem\":\n case \"sessionStorage.removeItem\":\n handleStorageAction(\n event,\n object,\n method,\n handler.args,\n runtimeContext\n );\n break;\n\n case \"event.preventDefault\":\n event.preventDefault();\n break;\n\n case \"console.log\":\n case \"console.error\":\n case \"console.warn\":\n case \"console.info\":\n handleConsoleAction(event, method, handler.args, runtimeContext);\n break;\n\n case \"message.success\":\n case \"message.error\":\n case \"message.info\":\n case \"message.warn\":\n handleMessageAction(event, method, handler.args, runtimeContext);\n break;\n\n case \"handleHttpError\":\n handleHttpError((event as CustomEvent).detail);\n break;\n\n case \"context.assign\":\n case \"context.replace\":\n case \"context.refresh\":\n case \"context.load\":\n handleContextAction(\n event,\n method,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n case \"state.update\":\n case \"state.refresh\":\n case \"state.load\":\n handleTplStateAction(\n event,\n method,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n case \"tpl.dispatchEvent\": {\n const [type, init] = argsFactory(\n handler.args,\n runtimeContext,\n event\n ) as [string, CustomEventInit];\n const tplHostElement = getTplHostElement(\n runtimeContext,\n handler.action,\n `: ${type}`\n );\n tplHostElement.dispatchEvent(new CustomEvent(type, init));\n break;\n }\n\n // case \"formstate.update\":\n\n // case \"message.subscribe\":\n // case \"message.unsubscribe\":\n\n case \"theme.setDarkTheme\":\n case \"theme.setLightTheme\":\n applyTheme(\n handler.action === \"theme.setDarkTheme\" ? \"dark\" : \"light\"\n );\n break;\n case \"theme.setTheme\": {\n const [theme] = argsFactory(handler.args, runtimeContext, event);\n applyTheme(theme as SiteTheme);\n break;\n }\n case \"mode.setDashboardMode\":\n case \"mode.setDefaultMode\":\n applyMode(\n handler.action === \"mode.setDashboardMode\"\n ? \"dashboard\"\n : \"default\"\n );\n break;\n\n // case \"menu.clearMenuTitleCache\":\n // case \"menu.clearMenuCache\":\n\n // case \"analytics.event\":\n\n // case \"preview.debug\":\n\n default:\n // eslint-disable-next-line no-console\n console.error(\"unknown event listener action:\", handler.action);\n }\n } else if (isUseProviderHandler(handler)) {\n handleUseProviderAction(event, handler, runtimeContext, runtimeBrick);\n } else if (isCustomHandler(handler)) {\n handleCustomAction(event, handler, runtimeContext, runtimeBrick!);\n } else {\n // eslint-disable-next-line no-console\n console.error(\"unknown event handler:\", handler);\n }\n }\n };\n}\n\nasync function handleUseProviderAction(\n event: Event,\n handler: UseProviderEventHandler,\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder\n) {\n try {\n const providerBrick = await getProviderBrick(handler.useProvider);\n const method = handler.method !== \"saveAs\" ? \"resolve\" : \"saveAs\";\n brickCallback(\n event,\n providerBrick,\n handler,\n method,\n runtimeContext,\n runtimeBrick\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(httpErrorToString(error));\n }\n}\n\nfunction handleCustomAction(\n event: Event,\n handler: CustomBrickEventHandler,\n runtimeContext: RuntimeContext,\n runtimeBrick: ElementHolder\n) {\n let targets: HTMLElement[] = [];\n const rawTarget = handler.target;\n const rawTargetRef = handler.targetRef;\n let computedTarget = rawTarget;\n // Allow `target` to be set as evaluable string.\n if (\n typeof rawTarget === \"string\"\n ? isEvaluable(rawTarget)\n : isPreEvaluated(rawTarget)\n ) {\n computedTarget = computeRealValue(rawTarget, { ...runtimeContext, event });\n }\n if (typeof computedTarget === \"string\") {\n if (computedTarget === \"_self\") {\n targets.push(runtimeBrick.element!);\n } else if (handler.multiple) {\n targets = Array.from(document.querySelectorAll(computedTarget));\n } else {\n const found = document.querySelector(computedTarget) as HTMLElement;\n if (found !== null) {\n targets.push(found);\n }\n }\n } else if (computedTarget) {\n if (computedTarget instanceof HTMLElement) {\n targets.push(computedTarget as HTMLElement);\n } else {\n // eslint-disable-next-line no-console\n console.error(\"unexpected target:\", computedTarget);\n }\n } else if (rawTargetRef) {\n let computedTargetRef = rawTargetRef;\n // Allow `targetRef` to be set as evaluable string.\n if (\n typeof rawTargetRef === \"string\"\n ? isEvaluable(rawTargetRef)\n : isPreEvaluated(rawTargetRef)\n ) {\n computedTargetRef = computeRealValue(rawTargetRef, {\n ...runtimeContext,\n event,\n }) as string | string[];\n }\n const targetRefs = ([] as string[]).concat(computedTargetRef);\n const tplHostElement = getTplHostElement(\n runtimeContext,\n \"targetRef\",\n `: ${targetRefs.join(\", \")}`\n );\n targets.push(\n ...(targetRefs\n .map((ref) => tplHostElement.$$getElementByRef?.(ref))\n .filter(Boolean) as HTMLElement[])\n );\n }\n if (targets.length === 0) {\n // eslint-disable-next-line no-console\n console.error(\"target not found:\", rawTarget || rawTargetRef);\n return;\n }\n if (isExecuteCustomHandler(handler)) {\n targets.forEach((target) => {\n brickCallback(\n event,\n target,\n handler,\n handler.method,\n runtimeContext,\n runtimeBrick,\n {\n useEventAsDefault: true,\n }\n );\n });\n } else if (isSetPropsCustomHandler(handler)) {\n setProperties(targets, handler.properties, {\n ...runtimeContext,\n event,\n });\n }\n}\n\nasync function brickCallback(\n event: Event,\n target: HTMLElement,\n handler: ExecuteCustomBrickEventHandler | UseProviderEventHandler,\n method: string,\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder,\n options?: ArgsFactoryOptions\n): Promise<void> {\n if (typeof (target as any)[method] !== \"function\") {\n // eslint-disable-next-line no-console\n console.error(\"target has no method:\", {\n target,\n method: method,\n });\n return;\n }\n\n const task = async (): Promise<unknown> => {\n let computedArgs = argsFactory(\n handler.args,\n runtimeContext,\n event,\n options\n );\n if (isUseProviderHandler(handler)) {\n computedArgs = await getArgsOfFlowApi(\n handler.useProvider,\n computedArgs,\n method\n );\n }\n return (target as any)[method](...computedArgs);\n };\n\n if (!handler.callback) {\n task();\n return;\n }\n\n const callbackFactory = eventCallbackFactory(\n handler.callback,\n runtimeContext,\n runtimeBrick\n );\n\n const pollableCallback: Required<PollableCallback> = {\n progress: callbackFactory(\"progress\"),\n success: callbackFactory(\"success\"),\n error: callbackFactory(\"error\"),\n finally: callbackFactory(\"finally\"),\n };\n\n let poll: ProviderPollOptions | undefined;\n if (isUseProviderHandler(handler)) {\n poll = computeRealValue(handler.poll, { ...runtimeContext, event }) as\n | ProviderPollOptions\n | undefined;\n }\n\n if (poll?.enabled) {\n startPoll(task, pollableCallback, poll);\n } else {\n try {\n // Try to catch synchronized tasks too.\n const result = await task();\n pollableCallback.success(result);\n } catch (err) {\n pollableCallback.error(err);\n } finally {\n pollableCallback[\"finally\"]();\n }\n }\n}\n\nfunction handleHistoryAction(\n event: Event,\n method:\n | \"push\"\n | \"replace\"\n | \"pushQuery\"\n | \"replaceQuery\"\n | \"pushAnchor\"\n | \"block\"\n | \"goBack\"\n | \"goForward\"\n | \"reload\"\n | \"unblock\",\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n let baseArgsLength = 0;\n let hasCallback = false;\n let overrideMethod = method as \"setBlockMessage\";\n switch (method) {\n case \"push\":\n case \"replace\":\n case \"pushQuery\":\n case \"replaceQuery\":\n case \"pushAnchor\":\n baseArgsLength = 2;\n hasCallback = true;\n break;\n case \"reload\":\n hasCallback = true;\n break;\n case \"block\":\n baseArgsLength = 1;\n overrideMethod = \"setBlockMessage\";\n break;\n }\n let computedArgs: unknown[] = [];\n if (baseArgsLength > 0) {\n computedArgs = argsFactory(args, runtimeContext, event, {\n useEventDetailAsDefault: true,\n });\n computedArgs.length = baseArgsLength;\n }\n if (hasCallback && callback) {\n const callbackFactory = eventCallbackFactory(\n callback,\n runtimeContext,\n undefined\n );\n computedArgs.push((blocked: boolean) => {\n callbackFactory(blocked ? \"error\" : \"success\")({ blocked });\n callbackFactory(\"finally\")({ blocked });\n });\n }\n (getHistory()[overrideMethod] as (...args: unknown[]) => unknown)(\n ...computedArgs\n );\n}\n\nfunction handleWindowAction(\n event: Event,\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n const [url, target, features] = argsFactory(args, runtimeContext, event) as [\n string,\n string,\n string\n ];\n window.open(url, target || \"_self\", features);\n}\n\nfunction handleContextAction(\n event: Event,\n method: \"assign\" | \"replace\" | \"refresh\" | \"load\",\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n const [name, value] = argsFactory(args, runtimeContext, event);\n runtimeContext.ctxStore.updateValue(\n name as string,\n value,\n method,\n callback,\n runtimeContext\n );\n}\n\nfunction handleTplStateAction(\n event: Event,\n method: \"update\" | \"refresh\" | \"load\",\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n const [name, value] = argsFactory(args, runtimeContext, event);\n const tplStateStore = getTplStateStore(\n runtimeContext,\n `state.${method}`,\n `: ${name}`\n );\n tplStateStore.updateValue(\n name as string,\n value,\n method === \"update\" ? \"replace\" : method,\n callback,\n runtimeContext\n );\n}\n\nfunction handleLocationAction(\n event: Event,\n method: \"assign\" | \"reload\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n if (method === \"assign\") {\n const [url] = argsFactory(args, runtimeContext, event) as [string];\n location.assign(url);\n } else {\n location[method]();\n }\n}\n\nfunction handleStorageAction(\n event: Event,\n object: \"localStorage\" | \"sessionStorage\",\n method: \"setItem\" | \"removeItem\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n const storage = object === \"localStorage\" ? localStorage : sessionStorage;\n const [name, value] = argsFactory(args, runtimeContext, event);\n if (method === \"setItem\") {\n if (value !== undefined) {\n storage.setItem(name as string, JSON.stringify(value));\n }\n } else {\n storage.removeItem(name as string);\n }\n}\n\nfunction handleConsoleAction(\n event: Event,\n method: \"log\" | \"error\" | \"warn\" | \"info\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n // eslint-disable-next-line no-console\n console[method](\n ...argsFactory(args, runtimeContext, event, {\n useEventAsDefault: true,\n })\n );\n}\n\nfunction handleMessageAction(\n event: Event,\n method: \"success\" | \"error\" | \"info\" | \"warn\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n const computedArgs = argsFactory(args, runtimeContext, event, {\n useEventAsDefault: true,\n });\n Notification.show({\n type: method,\n message: computedArgs[0] as string,\n });\n}\n\nexport function eventCallbackFactory(\n callback: BrickEventHandlerCallback,\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder\n) {\n return function callbackFactory(\n type: \"success\" | \"error\" | \"finally\" | \"progress\"\n ) {\n return function (result?: unknown) {\n const handlers = callback?.[type];\n if (handlers) {\n try {\n const event = new CustomEvent(`callback.${type}`, {\n detail: result,\n });\n listenerFactory(handlers, runtimeContext, runtimeBrick)(event);\n } catch (err) {\n // Do not throw errors in `callback.success` or `callback.progress`,\n // to avoid the following triggering of `callback.error`.\n // eslint-disable-next-line\n console.error(err);\n }\n } else if (type === \"error\") {\n // eslint-disable-next-line\n console.error(\"Unhandled callback error:\", result);\n }\n };\n };\n}\n\ninterface ArgsFactoryOptions {\n useEventAsDefault?: boolean;\n useEventDetailAsDefault?: boolean;\n}\n\nfunction argsFactory(\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext,\n event: Event,\n options: ArgsFactoryOptions = {}\n): unknown[] {\n return Array.isArray(args)\n ? (computeRealValue(args, {\n ...runtimeContext,\n event,\n }) as unknown[])\n : options.useEventAsDefault\n ? [event]\n : options.useEventDetailAsDefault\n ? [(event as CustomEvent).detail]\n : [];\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"bindListeners.js","names":["_cook","require","_checkIf","_computeRealValue","_history","_getProviderBrick","_poll2","_evaluate","_setProperties","_themeAndMode","_utils","_handleHttpError","_FlowApi","_Notification","_utils2","bindListeners","brick","eventsMap","runtimeContext","Object","entries","forEach","eventType","handlers","listener","listenerFactory","element","addEventListener","$$listeners","push","$$eventListeners","handler","concat","unbindListeners","removeEventListener","length","isBuiltinHandler","action","isUseProviderHandler","useProvider","isCustomHandler","target","targetRef","method","properties","isExecuteCustomHandler","isSetPropsCustomHandler","runtimeBrick","event","checkIf","object","split","handleHistoryAction","args","callback","handleWindowAction","handleLocationAction","handleStorageAction","preventDefault","handleConsoleAction","handleMessageAction","handleHttpError","detail","handleContextAction","handleTplStateAction","type","init","argsFactory","tplHostElement","getTplHostElement","dispatchEvent","CustomEvent","handleFormStateAction","applyTheme","theme","applyMode","console","error","handleUseProviderAction","handleCustomAction","providerBrick","getProviderBrick","brickCallback","httpErrorToString","targets","rawTarget","rawTargetRef","computedTarget","isEvaluable","isPreEvaluated","computeRealValue","multiple","Array","from","document","querySelectorAll","found","querySelector","HTMLElement","computedTargetRef","targetRefs","join","map","ref","_tplHostElement$$$get","$$getElementByRef","call","filter","Boolean","useEventAsDefault","setProperties","options","_poll","task","computedArgs","getArgsOfFlowApi","callbackFactory","eventCallbackFactory","pollableCallback","progress","success","finally","poll","enabled","startPoll","result","err","baseArgsLength","hasCallback","overrideMethod","useEventDetailAsDefault","undefined","blocked","getHistory","url","features","window","open","name","value","ctxStore","updateValue","tplStateStore","getTplStateStore","formStateStore","getFormStateStore","location","assign","storage","localStorage","sessionStorage","setItem","JSON","stringify","removeItem","Notification","show","message","isArray"],"sources":["../../../src/internal/bindListeners.ts"],"sourcesContent":["import type {\n BrickEventHandler,\n BrickEventHandlerCallback,\n BrickEventsMap,\n BuiltinBrickEventHandler,\n CustomBrickEventHandler,\n ExecuteCustomBrickEventHandler,\n ProviderPollOptions,\n SetPropsCustomBrickEventHandler,\n SiteTheme,\n UseProviderEventHandler,\n} from \"@next-core/types\";\nimport { isEvaluable } from \"@next-core/cook\";\nimport { checkIf } from \"./compute/checkIf.js\";\nimport { computeRealValue } from \"./compute/computeRealValue.js\";\nimport { getHistory } from \"../history.js\";\nimport { getProviderBrick } from \"./data/getProviderBrick.js\";\nimport { PollableCallback, startPoll } from \"./poll.js\";\nimport { isPreEvaluated } from \"./compute/evaluate.js\";\nimport { setProperties } from \"./compute/setProperties.js\";\nimport { applyMode, applyTheme } from \"../themeAndMode.js\";\nimport type {\n ElementHolder,\n RuntimeBrickElement,\n RuntimeContext,\n} from \"./interfaces.js\";\nimport {\n getTplHostElement,\n getTplStateStore,\n} from \"./CustomTemplates/utils.js\";\nimport { handleHttpError, httpErrorToString } from \"../handleHttpError.js\";\nimport { getArgsOfFlowApi } from \"./data/FlowApi.js\";\nimport { Notification } from \"../Notification.js\";\nimport { getFormStateStore } from \"./FormRenderer/utils.js\";\n\nexport function bindListeners(\n brick: RuntimeBrickElement,\n eventsMap: BrickEventsMap | undefined,\n runtimeContext: RuntimeContext\n): void {\n if (!eventsMap) {\n return;\n }\n Object.entries(eventsMap).forEach(([eventType, handlers]) => {\n const listener = listenerFactory(handlers, runtimeContext, {\n element: brick,\n });\n brick.addEventListener(eventType, listener);\n\n // Remember added listeners for unbinding.\n if (!brick.$$listeners) {\n brick.$$listeners = [];\n }\n brick.$$listeners.push([eventType, listener]);\n\n // Remember added listeners for devtools.\n if (!brick.$$eventListeners) {\n brick.$$eventListeners = [];\n }\n for (const handler of ([] as BrickEventHandler[]).concat(handlers)) {\n brick.$$eventListeners.push([eventType, null, handler]);\n }\n });\n}\n\nexport function unbindListeners(brick: RuntimeBrickElement): void {\n if (brick.$$listeners) {\n for (const [eventType, listener] of brick.$$listeners) {\n brick.removeEventListener(eventType, listener);\n }\n brick.$$listeners.length = 0;\n }\n}\n\nexport function isBuiltinHandler(\n handler: BrickEventHandler\n): handler is BuiltinBrickEventHandler {\n return typeof (handler as BuiltinBrickEventHandler).action === \"string\";\n}\n\nexport function isUseProviderHandler(\n handler: BrickEventHandler\n): handler is UseProviderEventHandler {\n return typeof (handler as UseProviderEventHandler).useProvider === \"string\";\n}\n\nexport function isCustomHandler(\n handler: BrickEventHandler\n): handler is CustomBrickEventHandler {\n return !!(\n ((handler as CustomBrickEventHandler).target ||\n (handler as CustomBrickEventHandler).targetRef) &&\n ((handler as ExecuteCustomBrickEventHandler).method ||\n (handler as SetPropsCustomBrickEventHandler).properties)\n );\n}\n\nexport function isExecuteCustomHandler(\n handler: CustomBrickEventHandler\n): handler is ExecuteCustomBrickEventHandler {\n return !!(handler as ExecuteCustomBrickEventHandler).method;\n}\n\nexport function isSetPropsCustomHandler(\n handler: CustomBrickEventHandler\n): handler is SetPropsCustomBrickEventHandler {\n return !!(handler as SetPropsCustomBrickEventHandler).properties;\n}\n\nexport function listenerFactory(\n handlers: BrickEventHandler | BrickEventHandler[],\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder\n) {\n return function (event: Event): void {\n for (const handler of ([] as BrickEventHandler[]).concat(handlers)) {\n if (!checkIf(handler, { ...runtimeContext, event })) {\n continue;\n }\n if (isBuiltinHandler(handler)) {\n const [object, method] = handler.action.split(\".\") as any;\n switch (handler.action) {\n case \"history.push\":\n case \"history.replace\":\n case \"history.pushQuery\":\n case \"history.replaceQuery\":\n case \"history.pushAnchor\":\n case \"history.block\":\n case \"history.goBack\":\n case \"history.goForward\":\n case \"history.reload\":\n case \"history.unblock\":\n handleHistoryAction(\n event,\n method,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n // case \"segue.push\":\n // case \"segue.replace\":\n // case \"alias.push\":\n // case \"alias.replace\":\n\n case \"window.open\":\n handleWindowAction(event, handler.args, runtimeContext);\n break;\n\n case \"location.reload\":\n case \"location.assign\":\n handleLocationAction(event, method, handler.args, runtimeContext);\n break;\n\n case \"localStorage.setItem\":\n case \"localStorage.removeItem\":\n case \"sessionStorage.setItem\":\n case \"sessionStorage.removeItem\":\n handleStorageAction(\n event,\n object,\n method,\n handler.args,\n runtimeContext\n );\n break;\n\n case \"event.preventDefault\":\n event.preventDefault();\n break;\n\n case \"console.log\":\n case \"console.error\":\n case \"console.warn\":\n case \"console.info\":\n handleConsoleAction(event, method, handler.args, runtimeContext);\n break;\n\n case \"message.success\":\n case \"message.error\":\n case \"message.info\":\n case \"message.warn\":\n handleMessageAction(event, method, handler.args, runtimeContext);\n break;\n\n case \"handleHttpError\":\n handleHttpError((event as CustomEvent).detail);\n break;\n\n case \"context.assign\":\n case \"context.replace\":\n case \"context.refresh\":\n case \"context.load\":\n handleContextAction(\n event,\n method,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n case \"state.update\":\n case \"state.refresh\":\n case \"state.load\":\n handleTplStateAction(\n event,\n method,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n case \"tpl.dispatchEvent\": {\n const [type, init] = argsFactory(\n handler.args,\n runtimeContext,\n event\n ) as [string, CustomEventInit];\n const tplHostElement = getTplHostElement(\n runtimeContext,\n handler.action,\n `: ${type}`\n );\n tplHostElement.dispatchEvent(new CustomEvent(type, init));\n break;\n }\n\n case \"formstate.update\":\n handleFormStateAction(\n event,\n handler.args,\n handler.callback,\n runtimeContext\n );\n break;\n\n // case \"message.subscribe\":\n // case \"message.unsubscribe\":\n\n case \"theme.setDarkTheme\":\n case \"theme.setLightTheme\":\n applyTheme(\n handler.action === \"theme.setDarkTheme\" ? \"dark\" : \"light\"\n );\n break;\n case \"theme.setTheme\": {\n const [theme] = argsFactory(handler.args, runtimeContext, event);\n applyTheme(theme as SiteTheme);\n break;\n }\n case \"mode.setDashboardMode\":\n case \"mode.setDefaultMode\":\n applyMode(\n handler.action === \"mode.setDashboardMode\"\n ? \"dashboard\"\n : \"default\"\n );\n break;\n\n // case \"menu.clearMenuTitleCache\":\n // case \"menu.clearMenuCache\":\n\n // case \"analytics.event\":\n\n // case \"preview.debug\":\n\n default:\n // eslint-disable-next-line no-console\n console.error(\"unknown event listener action:\", handler.action);\n }\n } else if (isUseProviderHandler(handler)) {\n handleUseProviderAction(event, handler, runtimeContext, runtimeBrick);\n } else if (isCustomHandler(handler)) {\n handleCustomAction(event, handler, runtimeContext, runtimeBrick!);\n } else {\n // eslint-disable-next-line no-console\n console.error(\"unknown event handler:\", handler);\n }\n }\n };\n}\n\nasync function handleUseProviderAction(\n event: Event,\n handler: UseProviderEventHandler,\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder\n) {\n try {\n const providerBrick = await getProviderBrick(handler.useProvider);\n const method = handler.method !== \"saveAs\" ? \"resolve\" : \"saveAs\";\n brickCallback(\n event,\n providerBrick,\n handler,\n method,\n runtimeContext,\n runtimeBrick\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(httpErrorToString(error));\n }\n}\n\nfunction handleCustomAction(\n event: Event,\n handler: CustomBrickEventHandler,\n runtimeContext: RuntimeContext,\n runtimeBrick: ElementHolder\n) {\n let targets: HTMLElement[] = [];\n const rawTarget = handler.target;\n const rawTargetRef = handler.targetRef;\n let computedTarget = rawTarget;\n // Allow `target` to be set as evaluable string.\n if (\n typeof rawTarget === \"string\"\n ? isEvaluable(rawTarget)\n : isPreEvaluated(rawTarget)\n ) {\n computedTarget = computeRealValue(rawTarget, { ...runtimeContext, event });\n }\n if (typeof computedTarget === \"string\") {\n if (computedTarget === \"_self\") {\n targets.push(runtimeBrick.element!);\n } else if (handler.multiple) {\n targets = Array.from(document.querySelectorAll(computedTarget));\n } else {\n const found = document.querySelector(computedTarget) as HTMLElement;\n if (found !== null) {\n targets.push(found);\n }\n }\n } else if (computedTarget) {\n if (computedTarget instanceof HTMLElement) {\n targets.push(computedTarget as HTMLElement);\n } else {\n // eslint-disable-next-line no-console\n console.error(\"unexpected target:\", computedTarget);\n }\n } else if (rawTargetRef) {\n let computedTargetRef = rawTargetRef;\n // Allow `targetRef` to be set as evaluable string.\n if (\n typeof rawTargetRef === \"string\"\n ? isEvaluable(rawTargetRef)\n : isPreEvaluated(rawTargetRef)\n ) {\n computedTargetRef = computeRealValue(rawTargetRef, {\n ...runtimeContext,\n event,\n }) as string | string[];\n }\n const targetRefs = ([] as string[]).concat(computedTargetRef);\n const tplHostElement = getTplHostElement(\n runtimeContext,\n \"targetRef\",\n `: ${targetRefs.join(\", \")}`\n );\n targets.push(\n ...(targetRefs\n .map((ref) => tplHostElement.$$getElementByRef?.(ref))\n .filter(Boolean) as HTMLElement[])\n );\n }\n if (targets.length === 0) {\n // eslint-disable-next-line no-console\n console.error(\"target not found:\", rawTarget || rawTargetRef);\n return;\n }\n if (isExecuteCustomHandler(handler)) {\n targets.forEach((target) => {\n brickCallback(\n event,\n target,\n handler,\n handler.method,\n runtimeContext,\n runtimeBrick,\n {\n useEventAsDefault: true,\n }\n );\n });\n } else if (isSetPropsCustomHandler(handler)) {\n setProperties(targets, handler.properties, {\n ...runtimeContext,\n event,\n });\n }\n}\n\nasync function brickCallback(\n event: Event,\n target: HTMLElement,\n handler: ExecuteCustomBrickEventHandler | UseProviderEventHandler,\n method: string,\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder,\n options?: ArgsFactoryOptions\n): Promise<void> {\n if (typeof (target as any)[method] !== \"function\") {\n // eslint-disable-next-line no-console\n console.error(\"target has no method:\", {\n target,\n method: method,\n });\n return;\n }\n\n const task = async (): Promise<unknown> => {\n let computedArgs = argsFactory(\n handler.args,\n runtimeContext,\n event,\n options\n );\n if (isUseProviderHandler(handler)) {\n computedArgs = await getArgsOfFlowApi(\n handler.useProvider,\n computedArgs,\n method\n );\n }\n return (target as any)[method](...computedArgs);\n };\n\n if (!handler.callback) {\n task();\n return;\n }\n\n const callbackFactory = eventCallbackFactory(\n handler.callback,\n runtimeContext,\n runtimeBrick\n );\n\n const pollableCallback: Required<PollableCallback> = {\n progress: callbackFactory(\"progress\"),\n success: callbackFactory(\"success\"),\n error: callbackFactory(\"error\"),\n finally: callbackFactory(\"finally\"),\n };\n\n let poll: ProviderPollOptions | undefined;\n if (isUseProviderHandler(handler)) {\n poll = computeRealValue(handler.poll, { ...runtimeContext, event }) as\n | ProviderPollOptions\n | undefined;\n }\n\n if (poll?.enabled) {\n startPoll(task, pollableCallback, poll);\n } else {\n try {\n // Try to catch synchronized tasks too.\n const result = await task();\n pollableCallback.success(result);\n } catch (err) {\n pollableCallback.error(err);\n } finally {\n pollableCallback[\"finally\"]();\n }\n }\n}\n\nfunction handleHistoryAction(\n event: Event,\n method:\n | \"push\"\n | \"replace\"\n | \"pushQuery\"\n | \"replaceQuery\"\n | \"pushAnchor\"\n | \"block\"\n | \"goBack\"\n | \"goForward\"\n | \"reload\"\n | \"unblock\",\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n let baseArgsLength = 0;\n let hasCallback = false;\n let overrideMethod = method as \"setBlockMessage\";\n switch (method) {\n case \"push\":\n case \"replace\":\n case \"pushQuery\":\n case \"replaceQuery\":\n case \"pushAnchor\":\n baseArgsLength = 2;\n hasCallback = true;\n break;\n case \"reload\":\n hasCallback = true;\n break;\n case \"block\":\n baseArgsLength = 1;\n overrideMethod = \"setBlockMessage\";\n break;\n }\n let computedArgs: unknown[] = [];\n if (baseArgsLength > 0) {\n computedArgs = argsFactory(args, runtimeContext, event, {\n useEventDetailAsDefault: true,\n });\n computedArgs.length = baseArgsLength;\n }\n if (hasCallback && callback) {\n const callbackFactory = eventCallbackFactory(\n callback,\n runtimeContext,\n undefined\n );\n computedArgs.push((blocked: boolean) => {\n callbackFactory(blocked ? \"error\" : \"success\")({ blocked });\n callbackFactory(\"finally\")({ blocked });\n });\n }\n (getHistory()[overrideMethod] as (...args: unknown[]) => unknown)(\n ...computedArgs\n );\n}\n\nfunction handleWindowAction(\n event: Event,\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n const [url, target, features] = argsFactory(args, runtimeContext, event) as [\n string,\n string,\n string\n ];\n window.open(url, target || \"_self\", features);\n}\n\nfunction handleContextAction(\n event: Event,\n method: \"assign\" | \"replace\" | \"refresh\" | \"load\",\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n const [name, value] = argsFactory(args, runtimeContext, event);\n runtimeContext.ctxStore.updateValue(\n name as string,\n value,\n method,\n callback,\n runtimeContext\n );\n}\n\nfunction handleTplStateAction(\n event: Event,\n method: \"update\" | \"refresh\" | \"load\",\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n const [name, value] = argsFactory(args, runtimeContext, event);\n const tplStateStore = getTplStateStore(\n runtimeContext,\n `state.${method}`,\n `: ${name}`\n );\n tplStateStore.updateValue(\n name as string,\n value,\n method === \"update\" ? \"replace\" : method,\n callback,\n runtimeContext\n );\n}\n\nfunction handleFormStateAction(\n event: Event,\n args: unknown[] | undefined,\n callback: BrickEventHandlerCallback | undefined,\n runtimeContext: RuntimeContext\n) {\n const [name, value] = argsFactory(args, runtimeContext, event);\n const formStateStore = getFormStateStore(\n runtimeContext,\n \"formstate.update\",\n `: ${name}`\n );\n formStateStore.updateValue(\n name as string,\n value,\n \"replace\",\n callback,\n runtimeContext\n );\n}\n\nfunction handleLocationAction(\n event: Event,\n method: \"assign\" | \"reload\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n if (method === \"assign\") {\n const [url] = argsFactory(args, runtimeContext, event) as [string];\n location.assign(url);\n } else {\n location[method]();\n }\n}\n\nfunction handleStorageAction(\n event: Event,\n object: \"localStorage\" | \"sessionStorage\",\n method: \"setItem\" | \"removeItem\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n const storage = object === \"localStorage\" ? localStorage : sessionStorage;\n const [name, value] = argsFactory(args, runtimeContext, event);\n if (method === \"setItem\") {\n if (value !== undefined) {\n storage.setItem(name as string, JSON.stringify(value));\n }\n } else {\n storage.removeItem(name as string);\n }\n}\n\nfunction handleConsoleAction(\n event: Event,\n method: \"log\" | \"error\" | \"warn\" | \"info\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n // eslint-disable-next-line no-console\n console[method](\n ...argsFactory(args, runtimeContext, event, {\n useEventAsDefault: true,\n })\n );\n}\n\nfunction handleMessageAction(\n event: Event,\n method: \"success\" | \"error\" | \"info\" | \"warn\",\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext\n) {\n const computedArgs = argsFactory(args, runtimeContext, event, {\n useEventAsDefault: true,\n });\n Notification.show({\n type: method,\n message: computedArgs[0] as string,\n });\n}\n\nexport function eventCallbackFactory(\n callback: BrickEventHandlerCallback,\n runtimeContext: RuntimeContext,\n runtimeBrick?: ElementHolder\n) {\n return function callbackFactory(\n type: \"success\" | \"error\" | \"finally\" | \"progress\"\n ) {\n return function (result?: unknown) {\n const handlers = callback?.[type];\n if (handlers) {\n try {\n const event = new CustomEvent(`callback.${type}`, {\n detail: result,\n });\n listenerFactory(handlers, runtimeContext, runtimeBrick)(event);\n } catch (err) {\n // Do not throw errors in `callback.success` or `callback.progress`,\n // to avoid the following triggering of `callback.error`.\n // eslint-disable-next-line\n console.error(err);\n }\n } else if (type === \"error\") {\n // eslint-disable-next-line\n console.error(\"Unhandled callback error:\", result);\n }\n };\n };\n}\n\ninterface ArgsFactoryOptions {\n useEventAsDefault?: boolean;\n useEventDetailAsDefault?: boolean;\n}\n\nfunction argsFactory(\n args: unknown[] | undefined,\n runtimeContext: RuntimeContext,\n event: Event,\n options: ArgsFactoryOptions = {}\n): unknown[] {\n return Array.isArray(args)\n ? (computeRealValue(args, {\n ...runtimeContext,\n event,\n }) as unknown[])\n : options.useEventAsDefault\n ? [event]\n : options.useEventDetailAsDefault\n ? [(event as CustomEvent).detail]\n : [];\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrapData.js","names":["injectedBootstrapData","BOOTSTRAP_DATA","undefined","exports"],"sources":["../../../src/internal/bootstrapData.ts"],"sourcesContent":["import type { BootstrapData } from \"@next-core/types\";\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nexport const injectedBootstrapData: Partial<BootstrapData> | undefined =\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n typeof BOOTSTRAP_DATA !== \"undefined\" ? BOOTSTRAP_DATA : undefined;\n"],"mappings":";;;;;;AAEA;AACO,MAAMA,qBAAyD;AACpE;AACA;AACA,OAAOC,cAAc,KAAK,WAAW,GAAGA,cAAc,GAAGC,SAAS;AAACC,OAAA,CAAAH,qBAAA,GAAAA,qBAAA"}
1
+ {"version":3,"file":"bootstrapData.js","names":["injectedBootstrapData","BOOTSTRAP_DATA","undefined","exports"],"sources":["../../../src/internal/bootstrapData.ts"],"sourcesContent":["import type { BootstrapData } from \"@next-core/types\";\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nexport const injectedBootstrapData: BootstrapData | undefined =\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n typeof BOOTSTRAP_DATA !== \"undefined\" ? BOOTSTRAP_DATA : undefined;\n"],"mappings":";;;;;;AAEA;AACO,MAAMA,qBAAgD;AAC3D;AACA;AACA,OAAOC,cAAc,KAAK,WAAW,GAAGA,cAAc,GAAGC,SAAS;AAACC,OAAA,CAAAH,qBAAA,GAAAA,qBAAA"}
@@ -31,6 +31,7 @@ var _WidgetI18n = require("./WidgetI18n.js");
31
31
  var _images = require("./images.js");
32
32
  var _checkInstalledApps = require("../checkInstalledApps.js");
33
33
  var _isStrictMode = require("../../isStrictMode.js");
34
+ var _utils2 = require("../FormRenderer/utils.js");
34
35
  const symbolForRaw = Symbol.for("pre.evaluated.raw");
35
36
  const symbolForContext = Symbol.for("pre.evaluated.context");
36
37
  function isPreEvaluated(raw) {
@@ -75,12 +76,7 @@ runtimeContext, options = {}, isAsync) {
75
76
  // If the `raw` is not a string, it must be a pre-evaluated object.
76
77
  // Then fulfil the context, and restore the original `raw`.
77
78
 
78
- const {
79
- pendingPermissionsPreCheck: _1,
80
- tplStateStoreMap: _2,
81
- tplStateStoreScope: _3,
82
- ...passByRuntimeContext
83
- } = runtimeContext;
79
+ const passByRuntimeContext = (0, _lodash.omit)(runtimeContext, ["pendingPermissionsPreCheck", "tplStateStoreMap", "tplStateStoreScope", "formStateStoreMap", "formStateStoreScope"]);
84
80
  runtimeContext = {
85
81
  ...raw[symbolForContext],
86
82
  ...passByRuntimeContext
@@ -158,6 +154,11 @@ runtimeContext, options = {}, isAsync) {
158
154
  if (attemptToVisitGlobals.has("STATE") || !strict && attemptToVisitGlobals.has("TPL")) {
159
155
  tplStateStore = (0, _utils.getTplStateStore)(runtimeContext, "STATE", `: "${raw}"`);
160
156
  }
157
+ let usedFormStates;
158
+ let formStateStore;
159
+ if (attemptToVisitGlobals.has("FORM_STATE")) {
160
+ formStateStore = (0, _utils2.getFormStateStore)(runtimeContext, "FORM_STATE", `: "${raw}"`);
161
+ }
161
162
  const devHook = (0, _devtools.getDevHook)();
162
163
  if (isAsync || devHook) {
163
164
  if (attemptToVisitGlobals.has("CTX")) {
@@ -175,6 +176,10 @@ runtimeContext, options = {}, isAsync) {
175
176
  }
176
177
  isAsync && blockingList.push(tplStateStore.waitFor(usedStates));
177
178
  }
179
+ if (formStateStore) {
180
+ usedFormStates = (0, _storyboard.strictCollectMemberUsage)(raw, "FORM_STATE");
181
+ isAsync && blockingList.push(formStateStore.waitFor(usedFormStates));
182
+ }
178
183
  if (attemptToVisitGlobals.has("PROCESSORS")) {
179
184
  usedProcessors = (0, _storyboard.strictCollectMemberUsage)(raw, "PROCESSORS", 2);
180
185
  isAsync && blockingList.push((0, _loader.loadProcessorsImperatively)(usedProcessors, (0, _Runtime.getBrickPackages)()));
@@ -247,6 +252,16 @@ runtimeContext, options = {}, isAsync) {
247
252
  case "FLAGS":
248
253
  globalVariables[variableName] = (0, _proxyFactories.getReadOnlyProxy)(flags);
249
254
  break;
255
+ case "FORM_STATE":
256
+ globalVariables[variableName] = (0, _proxyFactories.getDynamicReadOnlyProxy)({
257
+ get(target, key) {
258
+ return formStateStore.getValue(key);
259
+ },
260
+ ownKeys() {
261
+ return Array.from(usedFormStates);
262
+ }
263
+ });
264
+ break;
250
265
  case "HASH":
251
266
  globalVariables[variableName] = location.hash;
252
267
  break;