@bit-sun/business-component 2.0.40 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/.editorconfig +16 -16
  2. package/.fatherrc.ts +5 -5
  3. package/.gitlab-ci.yml +174 -174
  4. package/.prettierignore +7 -7
  5. package/.prettierrc +11 -11
  6. package/.umirc.ts +74 -74
  7. package/README.md +27 -27
  8. package/dist/index.esm.js +3 -4
  9. package/dist/index.js +3 -4
  10. package/docs/index.md +21 -21
  11. package/lib/assets/drag.svg +17 -17
  12. package/lib/assets/exportFail.svg +37 -37
  13. package/lib/assets/exportProcessing.svg +28 -28
  14. package/lib/assets/exportSuccess.svg +34 -34
  15. package/lib/assets/label_icon_bottom.svg +25 -25
  16. package/lib/assets/upExport.svg +22 -22
  17. package/package.json +71 -71
  18. package/src/assets/32.svg +27 -27
  19. package/src/assets/addIcon.svg +17 -17
  20. package/src/assets/allfunc.svg +27 -27
  21. package/src/assets/arrowRight.svg +24 -24
  22. package/src/assets/btn-delete.svg +29 -29
  23. package/src/assets/btn-edit.svg +19 -19
  24. package/src/assets/btn-more.svg +17 -17
  25. package/src/assets/btn-submit.svg +19 -19
  26. package/src/assets/caidan.svg +11 -11
  27. package/src/assets/close.svg +26 -26
  28. package/src/assets/drag.svg +17 -17
  29. package/src/assets/exportFail.svg +37 -37
  30. package/src/assets/exportProcessing.svg +28 -28
  31. package/src/assets/exportSuccess.svg +34 -34
  32. package/src/assets/fixed-left-active.svg +11 -11
  33. package/src/assets/fixed-left.svg +15 -15
  34. package/src/assets/fixed-right-active.svg +11 -11
  35. package/src/assets/fixed-right.svg +15 -15
  36. package/src/assets/guanbi.svg +15 -15
  37. package/src/assets/icon-quanping.svg +15 -15
  38. package/src/assets/icon-shezhi.svg +17 -17
  39. package/src/assets/label_icon_bottom.svg +25 -25
  40. package/src/assets/list-no-img.svg +21 -21
  41. package/src/assets/morentouxiang-32.svg +23 -23
  42. package/src/assets/scanning.svg +24 -24
  43. package/src/assets/upExport.svg +22 -22
  44. package/src/components/Business/AddSelectBusiness/index.md +41 -41
  45. package/src/components/Business/AddSelectBusiness/index.tsx +290 -290
  46. package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +111 -111
  47. package/src/components/Business/BsLayouts/Components/AllFunc/index.less +153 -153
  48. package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +70 -70
  49. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +90 -90
  50. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +37 -37
  51. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +242 -242
  52. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +384 -384
  53. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +285 -285
  54. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +74 -74
  55. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +170 -170
  56. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +64 -64
  57. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +153 -153
  58. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +72 -72
  59. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +157 -157
  60. package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +85 -85
  61. package/src/components/Business/BsLayouts/Components/RightContent/home.less +218 -218
  62. package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +156 -156
  63. package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +160 -160
  64. package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +75 -75
  65. package/src/components/Business/BsLayouts/index.less +79 -79
  66. package/src/components/Business/BsLayouts/index.tsx +1465 -1465
  67. package/src/components/Business/BsLayouts/service.ts +10 -10
  68. package/src/components/Business/BsLayouts/utils.tsx +210 -210
  69. package/src/components/Business/BsSulaQueryTable/index.less +219 -219
  70. package/src/components/Business/BsSulaQueryTable/index.tsx +505 -505
  71. package/src/components/Business/BsSulaQueryTable/setting.tsx +799 -799
  72. package/src/components/Business/BsSulaQueryTable/utils.less +65 -65
  73. package/src/components/Business/BsSulaQueryTable/utils.tsx +688 -688
  74. package/src/components/Business/CommodityEntry/index.md +70 -70
  75. package/src/components/Business/CommodityEntry/index.tsx +80 -80
  76. package/src/components/Business/CommonAlert/index.tsx +23 -23
  77. package/src/components/Business/CommonGuideWrapper/index.less +111 -111
  78. package/src/components/Business/CommonGuideWrapper/index.md +39 -39
  79. package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
  80. package/src/components/Business/DetailPageWrapper/index.less +79 -79
  81. package/src/components/Business/DetailPageWrapper/index.tsx +334 -334
  82. package/src/components/Business/DetailPageWrapper/utils.tsx +100 -100
  83. package/src/components/Business/HomePageWrapper/index.less +33 -33
  84. package/src/components/Business/HomePageWrapper/index.md +45 -45
  85. package/src/components/Business/HomePageWrapper/index.tsx +162 -162
  86. package/src/components/Business/SearchSelect/BusinessUtils.ts +1458 -1458
  87. package/src/components/Business/SearchSelect/common.ts +53 -53
  88. package/src/components/Business/SearchSelect/index.md +1137 -1137
  89. package/src/components/Business/SearchSelect/index.tsx +51 -51
  90. package/src/components/Business/SearchSelect/utils.ts +100 -100
  91. package/src/components/Business/StateFlow/index.less +130 -130
  92. package/src/components/Business/StateFlow/index.md +60 -60
  93. package/src/components/Business/StateFlow/index.tsx +29 -29
  94. package/src/components/Business/TreeSearchSelect/index.md +126 -126
  95. package/src/components/Business/TreeSearchSelect/index.tsx +34 -34
  96. package/src/components/Business/TreeSearchSelect/utils.ts +60 -60
  97. package/src/components/Business/columnSettingTable/columnSetting.tsx +763 -763
  98. package/src/components/Business/columnSettingTable/index.less +247 -247
  99. package/src/components/Business/columnSettingTable/index.md +357 -357
  100. package/src/components/Business/columnSettingTable/index.tsx +232 -232
  101. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +240 -240
  102. package/src/components/Business/columnSettingTable/utils.tsx +68 -68
  103. package/src/components/Functional/AddSelect/index.less +367 -367
  104. package/src/components/Functional/AddSelect/index.md +122 -122
  105. package/src/components/Functional/AddSelect/index.tsx +962 -962
  106. package/src/components/Functional/BillEntry/index.less +371 -371
  107. package/src/components/Functional/BillEntry/index.md +39 -39
  108. package/src/components/Functional/BillEntry/index.tsx +613 -613
  109. package/src/components/Functional/DataImport/index.less +63 -63
  110. package/src/components/Functional/DataImport/index.md +44 -44
  111. package/src/components/Functional/DataImport/index.tsx +689 -695
  112. package/src/components/Functional/DataValidation/index.less +63 -63
  113. package/src/components/Functional/DataValidation/index.md +38 -39
  114. package/src/components/Functional/DataValidation/index.tsx +681 -687
  115. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
  116. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +59 -59
  117. package/src/components/Functional/QueryMutipleInput/index.less +37 -37
  118. package/src/components/Functional/QueryMutipleInput/index.md +33 -33
  119. package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
  120. package/src/components/Functional/SearchSelect/index.less +115 -115
  121. package/src/components/Functional/SearchSelect/index.md +141 -141
  122. package/src/components/Functional/SearchSelect/index.tsx +812 -812
  123. package/src/components/Functional/TreeSearchSelect/index.md +47 -47
  124. package/src/components/Functional/TreeSearchSelect/index.tsx +149 -149
  125. package/src/index.ts +31 -31
  126. package/src/styles/bsDefault.less +1906 -1906
  127. package/src/utils/CheckOneUser/index.md +39 -39
  128. package/src/utils/CheckOneUser/index.ts +51 -51
  129. package/src/utils/enumConfig.ts +9 -9
  130. package/src/utils/requestUtils.ts +33 -33
  131. package/src/utils/utils.ts +51 -51
  132. package/tsconfig.json +29 -29
  133. package/typings.d.ts +4 -4
@@ -1,39 +1,39 @@
1
- ---
2
- nav:
3
- title: '工具方法'
4
- order: 2
5
- group:
6
- title: 方法
7
- order: 0
8
- title: 确保单用户登录
9
- order: 1
10
- ---
11
-
12
- ## CheckOneUser
13
-
14
- Demo:
15
-
16
- ```tsx
17
- import React, { useRef } from 'react';
18
- import { message } from 'antd';
19
-
20
- import { CheckOneUser } from '../../index';
21
-
22
- CheckOneUser('userInfo.a.information.name', 3, () => {
23
- message.warning('检测新用户登录,当前页面会在3s之后刷新!');
24
- })
25
-
26
- export default () => {
27
-
28
- const handleOnChange = (value) => {
29
- console.log(value);
30
- };
31
-
32
- return (
33
- <div>
34
- </div>
35
- );
36
- };
37
- ```
38
-
39
- More skills for writing demo: https://d.umijs.org/guide/demo-principle
1
+ ---
2
+ nav:
3
+ title: '工具方法'
4
+ order: 2
5
+ group:
6
+ title: 方法
7
+ order: 0
8
+ title: 确保单用户登录
9
+ order: 1
10
+ ---
11
+
12
+ ## CheckOneUser
13
+
14
+ Demo:
15
+
16
+ ```tsx
17
+ import React, { useRef } from 'react';
18
+ import { message } from 'antd';
19
+
20
+ import { CheckOneUser } from '../../index';
21
+
22
+ CheckOneUser('userInfo.a.information.name', 3, () => {
23
+ message.warning('检测新用户登录,当前页面会在3s之后刷新!');
24
+ })
25
+
26
+ export default () => {
27
+
28
+ const handleOnChange = (value) => {
29
+ console.log(value);
30
+ };
31
+
32
+ return (
33
+ <div>
34
+ </div>
35
+ );
36
+ };
37
+ ```
38
+
39
+ More skills for writing demo: https://d.umijs.org/guide/demo-principle
@@ -1,52 +1,52 @@
1
- /*
2
- * @Description:
3
- * @Author: rodchen
4
- * @Date: 2022-01-14 14:12:01
5
- * @LastEditTime: 2022-01-14 17:17:26
6
- * @LastEditors: rodchen
7
- */
8
- export default (storageKeyString: string, seconds: number = 2, tipsCallFunction?: () =>{}) => {
9
- if (typeof seconds !== 'number' ) throw new Error('seconds should be number');
10
-
11
- let cacheValue = getStorageVale(storageKeyString);
12
-
13
- if (document.hidden !== undefined) {
14
- document.addEventListener('visibilitychange', () => {
15
- if (!document.hidden) {
16
- let currentValue = getStorageVale(storageKeyString);
17
- if (currentValue !== cacheValue) {
18
- if (tipsCallFunction && typeof tipsCallFunction === 'function') {
19
- tipsCallFunction();
20
- } else {
21
- window.alert('检测新用户登录,当前页面会在2s之后刷新!');
22
- }
23
-
24
- setTimeout(() => {
25
- window.location.reload();
26
- }, seconds * 1000)
27
- }
28
- }
29
- })
30
- }
31
- }
32
-
33
- function getStorageVale (storageKeyString: string) {
34
- var [localstorage, ...restKeyArrays] = storageKeyString.split('.');
35
- let localStorageInfo = window.localStorage.getItem(localstorage)
36
-
37
- if (!restKeyArrays.length) return localStorageInfo;
38
-
39
- let returnVal = JSON.parse(localStorageInfo || '{}');
40
-
41
- for(let i = 0; i < restKeyArrays.length; i++ ) {
42
- returnVal = returnVal[restKeyArrays[i]]
43
-
44
- if (!returnVal) return '';
45
-
46
- if (typeof returnVal === 'string') {
47
- return returnVal
48
- }
49
- }
50
-
51
- return ""
1
+ /*
2
+ * @Description:
3
+ * @Author: rodchen
4
+ * @Date: 2022-01-14 14:12:01
5
+ * @LastEditTime: 2022-01-14 17:17:26
6
+ * @LastEditors: rodchen
7
+ */
8
+ export default (storageKeyString: string, seconds: number = 2, tipsCallFunction?: () =>{}) => {
9
+ if (typeof seconds !== 'number' ) throw new Error('seconds should be number');
10
+
11
+ let cacheValue = getStorageVale(storageKeyString);
12
+
13
+ if (document.hidden !== undefined) {
14
+ document.addEventListener('visibilitychange', () => {
15
+ if (!document.hidden) {
16
+ let currentValue = getStorageVale(storageKeyString);
17
+ if (currentValue !== cacheValue) {
18
+ if (tipsCallFunction && typeof tipsCallFunction === 'function') {
19
+ tipsCallFunction();
20
+ } else {
21
+ window.alert('检测新用户登录,当前页面会在2s之后刷新!');
22
+ }
23
+
24
+ setTimeout(() => {
25
+ window.location.reload();
26
+ }, seconds * 1000)
27
+ }
28
+ }
29
+ })
30
+ }
31
+ }
32
+
33
+ function getStorageVale (storageKeyString: string) {
34
+ var [localstorage, ...restKeyArrays] = storageKeyString.split('.');
35
+ let localStorageInfo = window.localStorage.getItem(localstorage)
36
+
37
+ if (!restKeyArrays.length) return localStorageInfo;
38
+
39
+ let returnVal = JSON.parse(localStorageInfo || '{}');
40
+
41
+ for(let i = 0; i < restKeyArrays.length; i++ ) {
42
+ returnVal = returnVal[restKeyArrays[i]]
43
+
44
+ if (!returnVal) return '';
45
+
46
+ if (typeof returnVal === 'string') {
47
+ return returnVal
48
+ }
49
+ }
50
+
51
+ return ""
52
52
  }
@@ -1,10 +1,10 @@
1
- export default {
2
- // 浏览器缓存信息
3
- BROWSER_CACHE: {
4
- COLUMN_CONDITION: 'columnCondition', //表格列信息缓存
5
- MAIN_AUTH_CODES: 'menuAuth_mainProject', //按钮资源权限集合
6
- LIMIT_MENU_DATA: 'limitedMenuData', //权限过滤后的菜单数据
7
- USER_INFO: 'userInfo', //用户信息
8
- DICT_CODES: 'dicData', //数据字典数据
9
- }
1
+ export default {
2
+ // 浏览器缓存信息
3
+ BROWSER_CACHE: {
4
+ COLUMN_CONDITION: 'columnCondition', //表格列信息缓存
5
+ MAIN_AUTH_CODES: 'menuAuth_mainProject', //按钮资源权限集合
6
+ LIMIT_MENU_DATA: 'limitedMenuData', //权限过滤后的菜单数据
7
+ USER_INFO: 'userInfo', //用户信息
8
+ DICT_CODES: 'dicData', //数据字典数据
9
+ }
10
10
  }
@@ -1,33 +1,33 @@
1
- import axios from 'axios';
2
- import ENUM from './enumConfig';
3
-
4
- const resposne = JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.USER_INFO) || '{}');
5
-
6
- export function handleRequestAuthHeader(config?: any) {
7
- // https://www.kdocs.cn/l/coNbPpjamr5v这个表格里面涉及的接口,接口请求头里需要添加参数:x-biz-code 值就是列表里的code
8
- // 例:x-biz-code=STORE_CODE
9
- // 物理仓选择组件
10
- if(config?.url?.indexOf( '/stock/physicalWarehouse?') > -1) {
11
- config.headers['x-biz-code'] = 'PW_STOCK_CODE';
12
- }
13
- // 逻辑仓选择组件
14
- if(config?.url?.indexOf( '/stock/realWarehouse?') > -1) {
15
- config.headers['x-biz-code'] = 'RW_STOCK_CODE';
16
- }
17
- }
18
-
19
- // 处理请求头
20
- const handleRequestHeader = (config: any) => {
21
- config.headers['sso-sessionid'] = resposne?.sessionId || ''
22
- config.headers['x-tenant-id'] = resposne?.tenantId || '1'
23
- if (localStorage.getItem('x-user-auth-context')) {
24
- config.headers['x-user-auth-context'] = localStorage.getItem('x-user-auth-context');
25
- }
26
- handleRequestAuthHeader(config)
27
- }
28
-
29
- // 拦截器
30
- axios.interceptors.request.use((config: any) => {
31
- handleRequestHeader(config)
32
- return config
33
- })
1
+ import axios from 'axios';
2
+ import ENUM from './enumConfig';
3
+
4
+ const resposne = JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.USER_INFO) || '{}');
5
+
6
+ export function handleRequestAuthHeader(config?: any) {
7
+ // https://www.kdocs.cn/l/coNbPpjamr5v这个表格里面涉及的接口,接口请求头里需要添加参数:x-biz-code 值就是列表里的code
8
+ // 例:x-biz-code=STORE_CODE
9
+ // 物理仓选择组件
10
+ if(config?.url?.indexOf( '/stock/physicalWarehouse?') > -1) {
11
+ config.headers['x-biz-code'] = 'PW_STOCK_CODE';
12
+ }
13
+ // 逻辑仓选择组件
14
+ if(config?.url?.indexOf( '/stock/realWarehouse?') > -1) {
15
+ config.headers['x-biz-code'] = 'RW_STOCK_CODE';
16
+ }
17
+ }
18
+
19
+ // 处理请求头
20
+ const handleRequestHeader = (config: any) => {
21
+ config.headers['sso-sessionid'] = resposne?.sessionId || ''
22
+ config.headers['x-tenant-id'] = resposne?.tenantId || '1'
23
+ if (localStorage.getItem('x-user-auth-context')) {
24
+ config.headers['x-user-auth-context'] = localStorage.getItem('x-user-auth-context');
25
+ }
26
+ handleRequestAuthHeader(config)
27
+ }
28
+
29
+ // 拦截器
30
+ axios.interceptors.request.use((config: any) => {
31
+ handleRequestHeader(config)
32
+ return config
33
+ })
@@ -1,52 +1,52 @@
1
- // @ts-nocheck
2
- import memoizeOne from 'memoize-one';
3
- import { formatMessage } from 'umi';
4
- import isEqual from 'lodash/isEqual';
5
-
6
- export function downloadExcel(data: any, fileName?: any, isResUrl?: boolean) {
7
- const resUrl = isResUrl
8
- ? data
9
- : window.URL.createObjectURL(
10
- new Blob([data], {
11
- type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
12
- }),
13
- );
14
- const save_link = document.createElement('a');
15
- save_link.href = resUrl;
16
- if (fileName) {
17
- save_link.download = fileName; /// 设置下载文件名
18
- }
19
- save_link.click();
20
- }
21
-
22
- export const formatter = (data, parentAuthority, parentName) => {
23
- return data
24
- .map((item) => {
25
- if (!item.name || !item.path) {
26
- return null;
27
- }
28
-
29
- let locale = 'menu';
30
- if (parentName) {
31
- locale = `${parentName}.${item.name}`;
32
- } else {
33
- locale = `menu.${item.name}`;
34
- }
35
- const result = {
36
- ...item,
37
- name: formatMessage && formatMessage({ id: locale, defaultMessage: item.name }) || item.name,
38
- locale,
39
- authority: item.authority || parentAuthority,
40
- };
41
- if (item.routes) {
42
- const children = formatter(item.routes, item.authority, locale);
43
- // Reduce memory usage
44
- result.children = children;
45
- }
46
- delete result.routes;
47
- return result;
48
- })
49
- .filter((item) => item);
50
- };
51
-
1
+ // @ts-nocheck
2
+ import memoizeOne from 'memoize-one';
3
+ import { formatMessage } from 'umi';
4
+ import isEqual from 'lodash/isEqual';
5
+
6
+ export function downloadExcel(data: any, fileName?: any, isResUrl?: boolean) {
7
+ const resUrl = isResUrl
8
+ ? data
9
+ : window.URL.createObjectURL(
10
+ new Blob([data], {
11
+ type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
12
+ }),
13
+ );
14
+ const save_link = document.createElement('a');
15
+ save_link.href = resUrl;
16
+ if (fileName) {
17
+ save_link.download = fileName; /// 设置下载文件名
18
+ }
19
+ save_link.click();
20
+ }
21
+
22
+ export const formatter = (data, parentAuthority, parentName) => {
23
+ return data
24
+ .map((item) => {
25
+ if (!item.name || !item.path) {
26
+ return null;
27
+ }
28
+
29
+ let locale = 'menu';
30
+ if (parentName) {
31
+ locale = `${parentName}.${item.name}`;
32
+ } else {
33
+ locale = `menu.${item.name}`;
34
+ }
35
+ const result = {
36
+ ...item,
37
+ name: formatMessage && formatMessage({ id: locale, defaultMessage: item.name }) || item.name,
38
+ locale,
39
+ authority: item.authority || parentAuthority,
40
+ };
41
+ if (item.routes) {
42
+ const children = formatter(item.routes, item.authority, locale);
43
+ // Reduce memory usage
44
+ result.children = children;
45
+ }
46
+ delete result.routes;
47
+ return result;
48
+ })
49
+ .filter((item) => item);
50
+ };
51
+
52
52
  export const memoizeOneFormatter = memoizeOne(formatter, isEqual);
package/tsconfig.json CHANGED
@@ -1,29 +1,29 @@
1
- {
2
- "compilerOptions": {
3
- "target": "esnext",
4
- "module": "esnext",
5
- "moduleResolution": "node",
6
- "importHelpers": true,
7
- "jsx": "react",
8
- "esModuleInterop": true,
9
- "sourceMap": true,
10
- "baseUrl": "./",
11
- "strict": true,
12
- "paths": {
13
- "@/*": ["src/*"],
14
- "@@/*": ["src/.umi/*"]
15
- },
16
- "allowSyntheticDefaultImports": true
17
- },
18
- "exclude": [
19
- "node_modules",
20
- "lib",
21
- "es",
22
- "dist",
23
- "typings",
24
- "**/__test__",
25
- "test",
26
- "docs",
27
- "tests"
28
- ]
29
- }
1
+ {
2
+ "compilerOptions": {
3
+ "target": "esnext",
4
+ "module": "esnext",
5
+ "moduleResolution": "node",
6
+ "importHelpers": true,
7
+ "jsx": "react",
8
+ "esModuleInterop": true,
9
+ "sourceMap": true,
10
+ "baseUrl": "./",
11
+ "strict": true,
12
+ "paths": {
13
+ "@/*": ["src/*"],
14
+ "@@/*": ["src/.umi/*"]
15
+ },
16
+ "allowSyntheticDefaultImports": true
17
+ },
18
+ "exclude": [
19
+ "node_modules",
20
+ "lib",
21
+ "es",
22
+ "dist",
23
+ "typings",
24
+ "**/__test__",
25
+ "test",
26
+ "docs",
27
+ "tests"
28
+ ]
29
+ }
package/typings.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- declare module '*.css';
2
- declare module '*.less';
3
- declare module '*.png';
4
- declare module '*.svg';
1
+ declare module '*.css';
2
+ declare module '*.less';
3
+ declare module '*.png';
4
+ declare module '*.svg';
5
5
  declare module 'bssula';