Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions .github/workflows/test.yml-template
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Test

on:
pull_request:
branches: [ master ]

jobs:
build:

runs-on: ubuntu-latest

strategy:
matrix:
node-version: [20.x]

steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm test
7 changes: 7 additions & 0 deletions npm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Start-Process : �� 㤠���� �믮����� ������� ��-�� ᫥���饩 �訡��: �� 㤠���� ���� 㪠����� 䠩�.
��ப�:1 ����:1
+ Start-Process -Filepath 'C:\Users\corey\OneDrive\Documents\workspace\ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

9 changes: 5 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"license": "GPL-3.0",
"devDependencies": {
"@mate-academy/eslint-config": "latest",
"@mate-academy/scripts": "^1.8.6",
"@mate-academy/scripts": "^2.1.3",
"eslint": "^8.57.0",
"eslint-plugin-jest": "^28.6.0",
"eslint-plugin-node": "^11.1.0",
Expand Down
Empty file added prettier
Empty file.
21 changes: 20 additions & 1 deletion src/transformStateWithClones.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,26 @@
* @return {Object[]}
*/
function transformStateWithClones(state, actions) {
// write code here
let newState = { ...state }; // используем let
const results = [];

for (const action of actions) {
if (action.type === 'addProperties') {
newState = { ...newState, ...action.extraData };
} else if (action.type === 'removeProperties') {
newState = { ...newState };

for (const key of action.keysToRemove) {
delete newState[key];
}
} else if (action.type === 'clear') {
newState = {};
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This violates checklist item #2: '[CODE STYLE]: Use switch statement if you have limited amount of conditions.'

You should use a switch statement to handle the different action.type values. When you refactor this, also remember to include a default case to handle unknown action types, as required by checklist item #3.


results.push(newState);
}

return results; // возвращаем массив всех состояний
}

module.exports = transformStateWithClones;
1 change: 1 addition & 0 deletions [email protected]
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
��������� ��易⥫�� ��ࠬ��� -