Commit Graph

9 Commits

Author SHA1 Message Date
Muhammed Mustafa
210d75c23c refactor(client): move to uiw react codemirror for challenge editor (#49323)
* refactor(client): move to uiw react codemirror

use editor value to set the input

revert my test which I added by mistake

Remove the state test

update pnpm lock

* fix the broken lock file

* rename the file for clearance

* Move the old properties to the old classs

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* fix typo

---------

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
2023-04-07 21:19:37 +02:00
Muhammed Mustafa
6e89d3b2dd feat(tools): remove assertion in params inside challenge editor (#49931) 2023-04-03 18:38:22 +00:00
Slieptsov Denys
e64bac9a3f fix(learn): progress bar label alignment (#49659)
Co-authored-by: Denys Slieptsov <denys.slieptsov@leaseplan.com>
2023-03-15 13:15:39 +00:00
Oliver Eyton-Williams
d7848ae01a feat: migrate to pnpm for better workspace DX (#49293)
* feat: npm -> pnpm 

This resolves the issues with the gatsby client (gatsby-plugin-pnpm
deals with the fact that gatsby is relying on its own dependencies
being de-duped)
and challenge-editor (which doesn't seem to want to automatically install
codemirror and needed its own eslint config)

* fix: correct mocha path for curriculum tests

* fix: use select workspace with -F not -w

* fix: reorganise packages and restrict hoisting

pnpm works best if the workspaces keep their own dependencies, since
dependencies are not flattened and then what node resolves from a
require is predictable.

@types seem to be a special case and more care is required to prevent
them getting smushed together in the root (hence the .npmrc)

* fix: add types for tools + root

* fix: decouple challenge-auditor from client

* fix: add ui-components types

* fix(client): use the latest types for react 16

* fix: prettify

* fix: prettierignore pnpm-lock

* fix: relax hoisting

Turns out pnpm works just fine with types. I don't know what was going
wrong before, but there are no-longer any type conflicts.

* fix: add @redux-saga/core to fix eslint issue

It seems to only be redux-saga that import/named can't cope with, so it
is probably okay to work around this one.

* chore: add chai to tools/scripts/build

* fix: add store to root for cypress

* fix: allow cypress to download binaries

If we want to keep preventing cypress from downloading binaries, we can
figure out a workaround, but I'm allowing it to ease the transition to
pnpm.

My guess about why this is happening is that npm triggers Cypress's
postinstall script, but pnpm does not (because pnpm install only
installs if necessary, perferring to link)

* chore: re-enable pre/post scripts

* fix: update build scripts for client

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>

* chore: update engines to use pnpm


* fix: enable choice of (super)block for tests

Only 'nix machines for now.

* chore: pin pnpm to version 7

* chore: remove last npms

Except web + curriculum-server. I'll update them when I start work on
them again.

* fix: lockfile check to catch any package-locks

* fix(action): install pnpm for upcoming tests

* chore: add nodemon to new api

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2023-03-02 18:17:44 +00:00
Naomi Carrigan
6221b2b1a5 chore: rename files in challenge editor to kebab case (#49224)
chore: rename files
2023-02-02 07:59:02 +01:00
Niraj Nandish
02e2309598 fix(tools): challenge editor - input text color (#48733)
fix(tools): input text color
2022-12-12 14:15:17 +01:00
hanswang123456
d2d1bc8dab fix(curriculum): correctly describe insert step in Challenge Editor (#47331)
* Update InsertStep.tsx

* Update Tools.tsx

* Update how-to-work-on-practice-projects.md

* removed redundant example

* Update tools/challenge-editor/client/src/components/tools/Tools.tsx

Co-authored-by: Ilenia <nethleen@gmail.com>

Co-authored-by: Ilenia <nethleen@gmail.com>
2022-08-20 10:30:46 +02:00
Shaun Hamilton
cc7f584b96 feat(challenge-editor): make work in gitpod (#46784)
* feat(challenge-editor): make work in gitpod

* gitpod: make chal-editor ports public

* refactor: use .env files to set variables

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-07-08 11:25:36 +02:00
Naomi Carrigan
56820d90f8 feat: add challenge editor tool (#45214)
* feat: add challenge editor tool

chore: prepare API/Client setup

feat: migrate to react!

feat: styling

fix: useEffect loop

feat: add challenge helpers

feat: use actual code editor

feat: styling

Bring it a bit more in line with /learn

* refactor: use workspaces

Which unfortunately required a rollback to React 16, because having
multiple React versions causes all sorts of issues.

* chore: apply Oliver's review suggestions

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* chore: remove test files for now

* fix: prettier issue

* chore: apply oliver's review suggestions

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* chore: move scripts to root

* fix: lint errors oops

* chore: remove reportWebVitals thing

* chore: DRY out paths

* fix: create-empty-steps takes one arg

* chore: start doesn't make sense now

* chore: DRY out button requests

* chore: one more review suggestion

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* chore: cleanup CRA files

* fix: correct note for creating new project

* feat: enable js and jsx highlighting

* feat: include all superblocks

* feat: improve button ux

* feat: add "breadcrumbs"

* feat: add link back to block from step tools

* chore: remove unused deps

* chore: apply oliver's review suggestions

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* chore: parity between file names and commands

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-04-26 12:33:43 -05:00