Skip to content

Commit f9354fe

Browse files
MartynasStrazdasgrigaspsaskliutas
authored
[Tree-widget]: learning snippets (#1031)
* initial tests * test fixes and aditional tests * Tree widget left over tests * cleanup * Update dependencies * warning fixes * readMe adjustments * cleanUp * cleanup * dependencies and act warning fixes * import fix * fix * small fixes * Change * import order fix * fixes * Update change/@itwin-tree-widget-react-0bdfd58a-2c3d-4499-9a14-66ff2ac7a367.json Co-authored-by: Grigas <[email protected]> * Fixes * fixes * readme adjustments * pipeline fix * Partial fixes * Update apps/learning-snippets/src/test/tree-widget/Telemetry.test.tsx Co-authored-by: Grigas <[email protected]> * fixes * fix * Destructure useButtonProps result * lint --------- Co-authored-by: Grigas <[email protected]> Co-authored-by: Saulius.Skliutas <[email protected]>
1 parent b000452 commit f9354fe

29 files changed

+10277
-241
lines changed

.vscode/launch.json

+17-1
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,22 @@
115115
"outFiles": [
116116
"${workspaceFolder}/packages/itwin/map-layers/lib/**/*.js"
117117
]
118+
},
119+
{
120+
"name": "Tests: Learning-snippets",
121+
"cwd": "${workspaceFolder}/apps/learning-snippets",
122+
"type": "node",
123+
"request": "launch",
124+
"program": "${workspaceFolder}/apps/learning-snippets/node_modules/mocha/bin/_mocha",
125+
"args": [
126+
"--config",
127+
"./.mocharc.json",
128+
"--no-timeouts",
129+
"lib/test/**/*.test.js"
130+
],
131+
"outFiles": [
132+
"${workspaceFolder}/apps/learning-snippets/lib/**/*.js"
133+
]
118134
}
119135
]
120-
}
136+
}

apps/learning-snippets/.mocharc.json

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"require": [
3+
"raf/polyfill",
4+
"ignore-styles"
5+
],
6+
"check-leaks": true,
7+
"timeout": "60000",
8+
"globals": [
9+
"IS_REACT_ACT_ENVIRONMENT"
10+
],
11+
"file": [
12+
"./lib/test/setup.js"
13+
],
14+
"ignore": [
15+
"lib/coverage/**/*"
16+
],
17+
"reporter": "node_modules/@itwin/build-tools/mocha-reporter",
18+
"reporter-option": [
19+
"mochaFile=lib/test/junit_results.xml"
20+
],
21+
"spec": [
22+
"./lib/test/**/*.test.js"
23+
]
24+
}
+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/*---------------------------------------------------------------------------------------------
2+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3+
* See LICENSE.md in the project root for license terms and full copyright notice.
4+
*--------------------------------------------------------------------------------------------*/
5+
const iTwinPlugin = require("@itwin/eslint-plugin");
6+
const reactPlugin = require("eslint-plugin-react");
7+
const eslintConfigPrettier = require("eslint-config-prettier");
8+
const unusedImports = require("eslint-plugin-unused-imports");
9+
10+
module.exports = [
11+
{
12+
files: ["**/*.{ts,tsx}"],
13+
...iTwinPlugin.configs.uiConfig,
14+
rules: {
15+
...iTwinPlugin.configs.uiConfig.rules,
16+
"@itwin/no-internal": ["error"],
17+
},
18+
},
19+
{
20+
files: ["**/*.{ts,tsx}"],
21+
rules: {
22+
...reactPlugin.configs["jsx-runtime"].rules,
23+
},
24+
},
25+
{
26+
plugins: {
27+
"unused-imports": unusedImports,
28+
},
29+
files: ["**/*.{ts,tsx}"],
30+
rules: {
31+
"no-duplicate-imports": "off",
32+
"import/no-duplicates": "error",
33+
"object-curly-spacing": ["error", "always"],
34+
"@typescript-eslint/consistent-type-imports": "error",
35+
"@typescript-eslint/no-unused-vars": "off",
36+
"unused-imports/no-unused-imports": "error",
37+
"unused-imports/no-unused-vars": ["error", { vars: "all", varsIgnorePattern: "^_", args: "after-used", argsIgnorePattern: "^_" }],
38+
curly: ["error", "all"],
39+
},
40+
},
41+
eslintConfigPrettier,
42+
];

apps/learning-snippets/package.json

+87
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
{
2+
"name": "@itwin/presentation-learning-snippets",
3+
"version": "0.0.0",
4+
"description": "Learning snippets for ReadMes",
5+
"private": true,
6+
"scripts": {
7+
"build": "npm run link:deps && tsc",
8+
"build:watch": "tsc -w",
9+
"clean": "rimraf lib build",
10+
"cover": "npm run -s test",
11+
"lint": "eslint ./src/**/*.{ts,tsx}",
12+
"test": "mocha --enable-source-maps --config ./.mocharc.json",
13+
"docs": "betools extract --fileExt=ts,tsx --extractFrom=./src --recursive --out=./build/docs/extract",
14+
"link:deps": "node ./scripts/linkWorkspaceDeps.js"
15+
},
16+
"dependencies": {
17+
"@itwin/tree-widget-react": "workspace:*",
18+
"@itwin/presentation-hierarchies": "^0.5.0",
19+
"@itwin/presentation-shared": "^0.4.1",
20+
"@itwin/itwinui-react": "3.14.1",
21+
"@itwin/unified-selection": "^0.5",
22+
"@itwin/appui-abstract": "^4.8.0",
23+
"@itwin/appui-react": "^4.16.0",
24+
"@itwin/build-tools": "^4.8.0",
25+
"@itwin/components-react": "^4.16.0",
26+
"@itwin/core-backend": "^4.8.0",
27+
"@itwin/core-bentley": "^4.8.0",
28+
"@itwin/core-common": "^4.8.0",
29+
"@itwin/core-frontend": "^4.8.0",
30+
"@itwin/core-geometry": "^4.8.0",
31+
"@itwin/core-orbitgt": "4.8.0",
32+
"@itwin/core-quantity": "^4.8.0",
33+
"@itwin/core-react": "^4.16.0",
34+
"@itwin/core-telemetry": "^4.8.0",
35+
"@itwin/ecschema-metadata": "^4.8.0",
36+
"@itwin/ecschema-rpcinterface-common": "^4.8.0",
37+
"@itwin/ecschema-rpcinterface-impl": "^4.8.0",
38+
"@itwin/eslint-plugin": "^4.1.1",
39+
"@itwin/imodel-components-react": "^4.16.0",
40+
"@itwin/presentation-backend": "^4.8.0",
41+
"@itwin/presentation-common": "^4.8.0",
42+
"@itwin/presentation-components": "^5.3.3",
43+
"@itwin/presentation-frontend": "^4.8.0",
44+
"@itwin/presentation-testing": "^5.0.13",
45+
"@testing-library/dom": "^9.3.3",
46+
"@testing-library/react": "^14.1.2",
47+
"@testing-library/user-event": "^14.5.2",
48+
"@types/chai": "4.3.5",
49+
"@types/jsdom": "^21.1.6",
50+
"@types/mocha": "^10.0.6",
51+
"@types/node": "^18.18.10",
52+
"@types/react": "^18.2.57",
53+
"@types/react-dom": "^18.2.19",
54+
"@types/sinon": "^17.0.2",
55+
"@types/sinon-chai": "^3.2.12",
56+
"@typescript-eslint/eslint-plugin": "^7.16.1",
57+
"@typescript-eslint/parser": "^7.16.1",
58+
"chai": "^4.3.7",
59+
"eslint": "^8.57.0",
60+
"eslint-config-prettier": "^9.1.0",
61+
"eslint-plugin-react": "^7.34.4",
62+
"eslint-plugin-unused-imports": "^3.2.0",
63+
"fast-xml-parser": "^4.3.6",
64+
"global-jsdom": "^9.2.0",
65+
"ignore-styles": "^5.0.1",
66+
"jsdom": "^23.1.0",
67+
"mocha": "^10.2.0",
68+
"raf": "^3.4.0",
69+
"react": "^18.2.0",
70+
"react-dom": "^18.2.0",
71+
"rimraf": "^6.0.1",
72+
"sinon": "^17.0.1",
73+
"sinon-chai": "^3.7.0",
74+
"typescript": "~5.0.0",
75+
"xmlhttprequest": "^1.8.0"
76+
},
77+
"dependenciesMeta": {
78+
"@itwin/tree-widget-react": {
79+
"injected": true
80+
}
81+
},
82+
"eslintConfig": {
83+
"extends": [
84+
".eslintrc.js"
85+
]
86+
}
87+
}

0 commit comments

Comments
 (0)