@indfnd/common-mobile 1.0.4 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,23 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [1.0.6](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/compare/v1.0.5...v1.0.6) (2025-12-30)
6
+
7
+
8
+ ### Features
9
+
10
+ * 修复null.length报错 ([807ee2d](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/commit/807ee2d66a8c71813a49f2e5ee580339c3df1abc))
11
+
12
+ ### [1.0.5](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/compare/v1.0.4...v1.0.5) (2025-12-30)
13
+
14
+
15
+ ### Bug Fixes
16
+
17
+ * 修改 ([75c6a8a](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/commit/75c6a8a01154d7cd4a598b46995205fd48344fd0))
18
+ * 修改 ([84f2cf0](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/commit/84f2cf0eb8a6a180f43478b76da99cc66eb7efec))
19
+ * 修改 ([afe8c96](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/commit/afe8c9644bdacf15e135807373865e217c6d806a))
20
+ * 修改 ([d3c5e85](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/commit/d3c5e85a1a95e518d1a9dda9e693a796eb10bd1a))
21
+
5
22
  ### [1.0.4](http://git.inspur.com/imp-ec/ind-front/ind-common-mobile-front/compare/v1.0.3...v1.0.4) (2025-12-30)
6
23
 
7
24
 
@@ -3,7 +3,7 @@ import { getQuarterNum, getHalfYearNum, formatDate, useConfig, getLocalStorage,
3
3
  import Vue$1 from "vue";
4
4
  import { DropdownMenu as DropdownMenu$1, DropdownItem as DropdownItem$1, Message, LoadingBar, Spin } from "view-design";
5
5
  const name$1 = "@indfnd/common-mobile";
6
- const version$2 = "1.0.3";
6
+ const version$2 = "1.0.5";
7
7
  const author$1 = "huxuetong";
8
8
  const publishConfig = {
9
9
  registry: "https://registry.npmjs.org/"
@@ -28235,9 +28235,16 @@ var render$4 = function() {
28235
28235
  _vm.searchValue = $$v;
28236
28236
  }, expression: "searchValue" } })], 1), _c("van-popup", { staticStyle: { "width": "80%", "height": "50%" }, attrs: { "round": true }, model: { value: _vm.show, callback: function($$v) {
28237
28237
  _vm.show = $$v;
28238
- }, expression: "show" } }, [_c("van-grid", { attrs: { "column-num": 4 } }, _vm._l(_vm.searchApp, function(item2, idx) {
28239
- return _c("van-grid-item", { key: idx }, [_c("apps-item", { attrs: { "item": item2, "state": item2.state, "editStatus": "off" }, on: { "touchend": _vm.routeTo } })], 1);
28240
- }), 1)], 1), _c("myapp", { attrs: { "icons": _vm.myAppList, "expanded": _vm.disMyapp, "list": _vm.paginatedApps }, on: { "edit": _vm.edit, "open": _vm.open } }), _c("div", { staticClass: "customnnnmmmm-tabs-container" }, [_c("div", { staticClass: "customnnnmmmm-tabs-header-wrapper" }, [_c("div", { ref: "tabsHeader", staticClass: "customnnnmmmm-tabs-header" }, _vm._l(_vm.apps_menus, function(tab, idx) {
28238
+ }, expression: "show" } }, [_c("div", { style: { display: "flex", flexWrap: "wrap" } }, _vm._l(_vm.searchApp, function(item2, idx) {
28239
+ return _c("div", { key: idx, style: {
28240
+ width: "calc(100% / 5)",
28241
+ height: "100%",
28242
+ backgroundColor: "#fff",
28243
+ display: "flex",
28244
+ alignItems: "center",
28245
+ justifyContent: "center"
28246
+ } }, [_c("apps-item", { attrs: { "item": item2, "state": item2.state, "editStatus": "off" }, on: { "touchend": _vm.routeTo } })], 1);
28247
+ }), 0)]), _c("myapp", { attrs: { "icons": _vm.myAppList, "expanded": _vm.disMyapp, "list": _vm.paginatedApps }, on: { "edit": _vm.edit, "open": _vm.open } }), _c("div", { staticClass: "customnnnmmmm-tabs-container" }, [_c("div", { staticClass: "customnnnmmmm-tabs-header-wrapper" }, [_c("div", { ref: "tabsHeader", staticClass: "customnnnmmmm-tabs-header" }, _vm._l(_vm.apps_menus, function(tab, idx) {
28241
28248
  return _c("div", { key: "tab" + idx, staticClass: "customnnnmmmm-tab-item", class: { active: _vm.active === idx }, on: { "click": function($event) {
28242
28249
  return _vm.handleTabClick(idx);
28243
28250
  } } }, [_c("div", { staticClass: "customnnnmmmm-tab-item-top", class: { active: _vm.active === idx } }, [_vm._v(" " + _vm._s(tab.meta.title) + " ")]), _c("div", { staticClass: "customnnnmmmm-tab-item-bottom", class: { active: _vm.active === idx } })]);
@@ -28248,7 +28255,7 @@ var render$4 = function() {
28248
28255
  }), 0), _c("div", { ref: "scrollContainer", staticClass: "ind-m-apps-container", staticStyle: { "padding-top": "0px", "padding-bottom": "500px", "height": "100%" } }, _vm._l(_vm.apps_menus[_vm.active] && _vm.apps_menus[_vm.active].children || [], function(item2, index2) {
28249
28256
  return _c("div", { key: index2, staticClass: "ind-m-menu-section", attrs: { "id": "section-" + _vm.active + "-" + index2, "data-index": index2 } }, [_c("div", { staticClass: "ind-m-divider-container" }, [_c("van-divider", { staticClass: "ind-m-custom-divider" }, [_vm._v(" " + _vm._s(item2.meta.title) + " ")])], 1), _c("div", { staticClass: "ind-m-menu-section-content" }, _vm._l((((_vm.apps_menus[_vm.active] || {}).children || [])[index2] || {}).children || [], function(subItem, subIndex) {
28250
28257
  return _c("div", { key: "level3-" + subIndex, class: ["ind-m-app-item-wrapper", { "full-width": subItem.children }] }, [!subItem.children ? _c("apps-item", { attrs: { "item": subItem, "state": subItem.state, "title": subItem.meta.title, "editStatus": "off" }, on: { "touchend": _vm.routeTo } }) : _vm._e(), subItem.children ? _c("div", { staticClass: "ind-m-category-header" }, [_c("div", { staticClass: "ind-m-category-indicator" }), _c("div", { staticClass: "ind-m-category-title" }, [_vm._v(_vm._s(subItem.meta.title))])]) : _vm._e(), subItem.children ? _c("van-grid", { attrs: { "border": false, "clickable": "", "gutter": 0, "column-num": 3 } }, _vm._l(_vm.apps_menus[_vm.active] && _vm.apps_menus[_vm.active].children[index2] && _vm.apps_menus[_vm.active].children[index2].children[subIndex] && _vm.apps_menus[_vm.active].children[index2].children[subIndex].children || [], function(menu) {
28251
- return _c("van-grid-item", { key: menu.meta.permissionId, staticClass: "menu" }, [_c("apps-item", { attrs: { "item": menu, "state": menu.state, "title": menu.meta.title, "editStatus": "off" }, on: { "touchend": _vm.routeTo } })], 1);
28258
+ return _c("van-grid-item", { key: menu.meta.permissionId }, [_c("apps-item", { attrs: { "item": menu, "state": menu.state, "title": menu.meta.title, "editStatus": "off" }, on: { "touchend": _vm.routeTo } })], 1);
28252
28259
  }), 1) : _vm._e()], 1);
28253
28260
  }), 0)]);
28254
28261
  }), 0)])]), _c("tabbar")], 1)], 1);
@@ -28291,30 +28298,43 @@ const __vue2_script$4 = {
28291
28298
  }
28292
28299
  },
28293
28300
  mounted() {
28294
- var _a;
28295
- this.myAppList = JSON.parse(sessionStorage.getItem("myAppsList"));
28301
+ this.myAppList = JSON.parse(sessionStorage.getItem("myAppsList")) || [];
28296
28302
  this.isHb = location.pathname.includes("scyxweb");
28297
- let menus = this.$store.getters.getMenuTreeList;
28298
- if (((_a = this.$config) == null ? void 0 : _a.mainType) == "singleApp") {
28299
- let mobileMainApp = menus.find(
28300
- (item2) => {
28301
- var _a2;
28302
- return item2.extendProps && ((_a2 = JSON.parse(item2.extendProps)) == null ? void 0 : _a2.mainMobile) == "1";
28303
- }
28304
- );
28305
- menus = mobileMainApp.children;
28306
- }
28307
- let temps = menus.filter((item2) => item2.name === this.name);
28308
- this.apps_menus = temps[0].children;
28309
- this.title = temps[0].meta.title;
28310
- this.appsMenusExtended(this.apps_menus);
28311
- this.tabActiveKeys = {};
28312
- this.apps_menus.forEach((_2, index2) => {
28313
- this.$set(this.tabActiveKeys, index2, 0);
28314
- });
28315
- this.initScrollHandler();
28316
- this.cacheSectionPositions();
28317
- this.setupResizeObserver();
28303
+ let retryCount = 0;
28304
+ let interval = setInterval(() => {
28305
+ var _a;
28306
+ retryCount++;
28307
+ let menus = this.$store.getters.getMenuTreeList || [];
28308
+ if (menus && menus.length > 0) {
28309
+ clearInterval(interval);
28310
+ console.log(`\u7B2C${retryCount}\u6B21\u5C1D\u8BD5\uFF0C\u6210\u529F\u83B7\u53D6\u5230 menus:`, menus);
28311
+ if (((_a = this.$config) == null ? void 0 : _a.mainType) == "singleApp") {
28312
+ let mobileMainApp = menus.find(
28313
+ (item2) => {
28314
+ var _a2;
28315
+ return item2.extendProps && ((_a2 = JSON.parse(item2.extendProps)) == null ? void 0 : _a2.mainMobile) == "1";
28316
+ }
28317
+ );
28318
+ menus = mobileMainApp.children;
28319
+ }
28320
+ let temps = menus.filter((item2) => item2.name === this.name);
28321
+ this.apps_menus = temps[0].children;
28322
+ this.title = temps[0].meta.title;
28323
+ this.appsMenusExtended(this.apps_menus);
28324
+ this.tabActiveKeys = {};
28325
+ this.apps_menus.forEach((_2, index2) => {
28326
+ this.$set(this.tabActiveKeys, index2, 0);
28327
+ });
28328
+ this.initScrollHandler();
28329
+ this.cacheSectionPositions();
28330
+ this.setupResizeObserver();
28331
+ } else if (retryCount >= MAX_RETRY) {
28332
+ clearInterval(interval);
28333
+ console.warn(`\u5C1D\u8BD5${MAX_RETRY}\u6B21\u540E\u4ECD\u672A\u83B7\u53D6\u5230 menus`);
28334
+ } else {
28335
+ console.log(`\u7B2C${retryCount}\u6B21\u5C1D\u8BD5\uFF0C\u7B49\u5F85\u83B7\u53D6 menus...`);
28336
+ }
28337
+ }, 100);
28318
28338
  },
28319
28339
  beforeDestroy() {
28320
28340
  this.removeScrollHandler();
@@ -28520,7 +28540,7 @@ const __vue2_script$4 = {
28520
28540
  },
28521
28541
  computed: {
28522
28542
  paginatedApps() {
28523
- const apps = this.myAppList;
28543
+ const apps = this.myAppList || [];
28524
28544
  const pageSize = 8;
28525
28545
  const pages2 = [];
28526
28546
  for (let i = 0; i < apps.length; i += pageSize) {
@@ -28559,9 +28579,16 @@ var render$3 = function() {
28559
28579
  _vm.searchValue = $$v;
28560
28580
  }, expression: "searchValue" } })], 1), _c("van-popup", { staticStyle: { "width": "80%", "height": "50%" }, attrs: { "round": true }, model: { value: _vm.show, callback: function($$v) {
28561
28581
  _vm.show = $$v;
28562
- }, expression: "show" } }, [_c("van-grid", { attrs: { "column-num": 4 } }, _vm._l(_vm.searchApp, function(item2, idx) {
28563
- return _c("van-grid-item", { key: idx }, [_c("apps-item", { attrs: { "item": item2, "state": item2.state, "editStatus": "off" }, on: { "touchend": _vm.routeTo } })], 1);
28564
- }), 1)], 1), _c("myapp", { attrs: { "icons": _vm.myAppList, "expanded": _vm.disMyapp, "list": _vm.paginatedApps }, on: { "edit": _vm.edit, "open": _vm.open } }), _c("div", [_c("div", { staticClass: "customnnnmmmm-tabs-header-wrapper" }, [_c("div", { ref: "tabsHeader", staticClass: "customnnnmmmm-tabs-header" }, _vm._l(_vm.titleList, function(tab, idx) {
28582
+ }, expression: "show" } }, [_c("div", { style: { display: "flex", flexWrap: "wrap" } }, _vm._l(_vm.searchApp, function(item2, idx) {
28583
+ return _c("div", { key: idx, style: {
28584
+ width: "calc(100% / 5)",
28585
+ height: "100%",
28586
+ backgroundColor: "#fff",
28587
+ display: "flex",
28588
+ alignItems: "center",
28589
+ justifyContent: "center"
28590
+ } }, [_c("apps-item", { attrs: { "item": item2, "state": item2.state, "editStatus": "off" }, on: { "touchend": _vm.routeTo } })], 1);
28591
+ }), 0)]), _c("myapp", { attrs: { "icons": _vm.myAppList, "expanded": _vm.disMyapp, "list": _vm.paginatedApps }, on: { "edit": _vm.edit, "open": _vm.open } }), _c("div", [_c("div", { staticClass: "customnnnmmmm-tabs-header-wrapper" }, [_c("div", { ref: "tabsHeader", staticClass: "customnnnmmmm-tabs-header" }, _vm._l(_vm.titleList, function(tab, idx) {
28565
28592
  return _c("div", { key: "tab" + idx, staticClass: "customnnnmmmm-tab-item", class: { active: _vm.active === idx }, on: { "click": function($event) {
28566
28593
  return _vm.handleTabClick(tab, idx);
28567
28594
  } } }, [_c("div", { staticClass: "customnnnmmmm-tab-item-top", class: { active: _vm.active === idx } }, [_vm._v(" " + _vm._s(tab) + " ")]), _c("div", { staticClass: "customnnnmmmm-tab-item-bottom", class: { active: _vm.active === idx } })]);
@@ -28619,39 +28646,54 @@ const __vue2_script$3 = {
28619
28646
  };
28620
28647
  },
28621
28648
  mounted() {
28622
- var _a;
28623
- this.myAppList = JSON.parse(sessionStorage.getItem("myAppsList"));
28649
+ this.myAppList = JSON.parse(sessionStorage.getItem("myAppsList")) || [];
28624
28650
  this.isHb = location.pathname.includes("scyxweb");
28625
- let menus = this.$store.getters.getMenuTreeList;
28626
- if (((_a = this.$config) == null ? void 0 : _a.mainType) == "singleApp") {
28627
- let mobileMainApp = menus.find(
28628
- (item2) => {
28629
- var _a2;
28630
- return item2.extendProps && ((_a2 = JSON.parse(item2.extendProps)) == null ? void 0 : _a2.mainMobile) == "1";
28631
- }
28632
- );
28633
- menus = mobileMainApp.children;
28634
- }
28635
- let temps = menus.filter((item2) => item2.name === this.name);
28636
- let titleList = temps[0].children.map((item2) => item2.meta.title);
28637
- this.titleList = ["\u5168\u90E8", ...titleList];
28638
- const allApps_menus = temps[0].children.reduce((obj, item2) => {
28639
- obj[item2.meta.title] = item2;
28640
- return obj;
28641
- }, {});
28642
- this.allApps_menus = { \u5168\u90E8: temps[0].children, ...allApps_menus };
28643
- this.apps_menus = this.allApps_menus["\u5168\u90E8"];
28644
- this.apps_menus = simplifyMenuTree(this.apps_menus);
28645
- this.title = temps[0].meta.title;
28651
+ let retryCount = 0;
28652
+ const MAX_RETRY2 = 50;
28653
+ let interval = setInterval(() => {
28654
+ var _a;
28655
+ retryCount++;
28656
+ let menus = this.$store.getters.getMenuTreeList || [];
28657
+ if (menus && menus.length > 0) {
28658
+ clearInterval(interval);
28659
+ console.log(`\u7B2C${retryCount}\u6B21\u5C1D\u8BD5\uFF0C\u6210\u529F\u83B7\u53D6\u5230 menus:`, menus);
28660
+ if (((_a = this.$config) == null ? void 0 : _a.mainType) == "singleApp") {
28661
+ let mobileMainApp = menus.find(
28662
+ (item2) => {
28663
+ var _a2;
28664
+ return item2.extendProps && ((_a2 = JSON.parse(item2.extendProps)) == null ? void 0 : _a2.mainMobile) == "1";
28665
+ }
28666
+ );
28667
+ menus = mobileMainApp.children;
28668
+ }
28669
+ let temps = menus.filter((item2) => item2.name === this.name);
28670
+ let titleList = temps[0].children.map((item2) => item2.meta.title);
28671
+ this.titleList = ["\u5168\u90E8", ...titleList];
28672
+ const allApps_menus = temps[0].children.reduce((obj, item2) => {
28673
+ obj[item2.meta.title] = item2;
28674
+ return obj;
28675
+ }, {});
28676
+ this.allApps_menus = { \u5168\u90E8: temps[0].children, ...allApps_menus };
28677
+ this.apps_menus = this.allApps_menus["\u5168\u90E8"];
28678
+ this.apps_menus = simplifyMenuTree(this.apps_menus);
28679
+ this.title = temps[0].meta.title;
28680
+ } else if (retryCount >= MAX_RETRY2) {
28681
+ clearInterval(interval);
28682
+ console.warn(`\u5C1D\u8BD5${MAX_RETRY2}\u6B21\u540E\u4ECD\u672A\u83B7\u53D6\u5230 menus`);
28683
+ } else {
28684
+ console.log(`\u7B2C${retryCount}\u6B21\u5C1D\u8BD5\uFF0C\u7B49\u5F85\u83B7\u53D6 menus...`);
28685
+ }
28686
+ }, 100);
28646
28687
  },
28647
28688
  methods: {
28648
28689
  handleTabClick(tab, index2) {
28690
+ var _a;
28649
28691
  if (this.active === index2)
28650
28692
  return;
28651
28693
  this.active = index2;
28652
28694
  this.apps_menus = this.allApps_menus[tab];
28653
28695
  if (tab !== "\u5168\u90E8") {
28654
- this.apps_menus = simplifyMenuTree(this.apps_menus.children);
28696
+ this.apps_menus = simplifyMenuTree(((_a = this.apps_menus) == null ? void 0 : _a.children) || []);
28655
28697
  } else {
28656
28698
  this.apps_menus = simplifyMenuTree(this.apps_menus);
28657
28699
  }
@@ -28682,6 +28724,19 @@ const __vue2_script$3 = {
28682
28724
  this.scrollToContent(this.active);
28683
28725
  });
28684
28726
  },
28727
+ scrollToContent(index2) {
28728
+ this.$nextTick(() => {
28729
+ const container = document.querySelector(".ind-my-app-container");
28730
+ const targetSection = container.children[index2];
28731
+ if (targetSection) {
28732
+ const scrollPosition = targetSection.offsetTop - 3;
28733
+ container.scrollTo({
28734
+ top: scrollPosition,
28735
+ behavior: "smooth"
28736
+ });
28737
+ }
28738
+ });
28739
+ },
28685
28740
  onSearch() {
28686
28741
  if (!this.searchValue.trim()) {
28687
28742
  this.show = false;
@@ -28727,7 +28782,7 @@ const __vue2_script$3 = {
28727
28782
  },
28728
28783
  computed: {
28729
28784
  paginatedApps() {
28730
- const apps = this.myAppList;
28785
+ const apps = this.myAppList || [];
28731
28786
  const pageSize = 8;
28732
28787
  const pages2 = [];
28733
28788
  for (let i = 0; i < apps.length; i += pageSize) {
@@ -28822,7 +28877,10 @@ const __vue2_script$2 = {
28822
28877
  created() {
28823
28878
  var _a;
28824
28879
  this.isHb = location.pathname.includes("scyxweb");
28825
- let menus = this.$store.getters.getMenuTreeList;
28880
+ let menus = this.$store.getters.getMenuTreeList || [];
28881
+ if (!menus.length) {
28882
+ console.error("getMenuTreeList\u4E3A\u7A7A\uFF0C\u5728apps-center-new\u91CC");
28883
+ }
28826
28884
  if (((_a = this.$config) == null ? void 0 : _a.mainType) == "singleApp") {
28827
28885
  let mobileMainApp = menus.find(
28828
28886
  (item2) => {
@@ -29218,6 +29276,7 @@ function listToMenuTree({ list: list2, menuTree, pageNode, parentId, crumbs, roo
29218
29276
  return;
29219
29277
  let appInfo = getSessionStorage("appInfo");
29220
29278
  list2.forEach((item2) => {
29279
+ var _a;
29221
29280
  const {
29222
29281
  permissionId,
29223
29282
  label: title4,
@@ -29236,7 +29295,7 @@ function listToMenuTree({ list: list2, menuTree, pageNode, parentId, crumbs, roo
29236
29295
  let hideInIbp2 = false;
29237
29296
  if (item2 && item2.extendProps) {
29238
29297
  try {
29239
- hideInIbp1 = JSON.parse(item2.extendProps).hideInIbp === "1";
29298
+ hideInIbp1 = ((_a = JSON.parse(item2.extendProps)) == null ? void 0 : _a.hideInIbp) === "1";
29240
29299
  } catch (error) {
29241
29300
  hideInIbp1 = false;
29242
29301
  }
@@ -29247,7 +29306,7 @@ function listToMenuTree({ list: list2, menuTree, pageNode, parentId, crumbs, roo
29247
29306
  const extension = JSON.parse(item2.extension);
29248
29307
  if (extension.extendProps) {
29249
29308
  const extendProps2 = typeof extension.extendProps === "string" ? JSON.parse(extension.extendProps) : extension.extendProps;
29250
- if (extendProps2.hideInMenu == 1) {
29309
+ if ((extendProps2 == null ? void 0 : extendProps2.hideInMenu) == 1) {
29251
29310
  hideInIbp2 = true;
29252
29311
  }
29253
29312
  }
@@ -30539,6 +30598,7 @@ async function renderRoutes({ router, store: store2, microType, allowPermissionL
30539
30598
  var _a, _b;
30540
30599
  await store2.dispatch("getUserInfo");
30541
30600
  await store2.dispatch("getAppListData");
30601
+ await store2.dispatch("getMyAppsList");
30542
30602
  const permissionData = await store2.dispatch("getPermissionData");
30543
30603
  const sessionVersion = JSON.parse(((_b = (_a = getSessionStorage("appInfo")) == null ? void 0 : _a.extendProps) == null ? void 0 : _b.extendProps) || "{}");
30544
30604
  const localVersion = getLocalStorage("versionInfo");
@@ -31112,7 +31172,10 @@ var app = {
31112
31172
  appId = (appInfo == null ? void 0 : appInfo.appId) || "";
31113
31173
  }
31114
31174
  if (!appId) {
31115
- let appInfo = appList.find((item2) => item2.application.extendProps.is_mobile_app == "1");
31175
+ let appInfo = appList.find((item2) => {
31176
+ var _a, _b;
31177
+ return ((_b = (_a = item2.application) == null ? void 0 : _a.extendProps) == null ? void 0 : _b.is_mobile_app) == "1";
31178
+ });
31116
31179
  appId = appInfo.appId || "";
31117
31180
  }
31118
31181
  commit2("setAppInfo", appId);