Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: rewrite of ngx-sub-form without inheritance #188

Merged
merged 82 commits into from
Nov 21, 2021
Merged
Show file tree
Hide file tree
Changes from 81 commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
8d3400c
feat: rewrite of ngx-sub-form without inheritance
maxime1992 May 8, 2020
ab467a6
refactor(Lifecycle): restructure to internalise lifecycle lib
zak-cloudnc Jun 14, 2020
aeece91
chore: (attempt) to have pre release for the rewrite branch
maxime1992 Sep 12, 2020
47e4e6f
chore: upgrade semantic-release
maxime1992 Sep 12, 2020
6cab5f9
feat: split old and new API so that we can access them with ngx-sub-f…
maxime1992 Sep 13, 2020
a070baf
chore: fix pre release
maxime1992 Sep 13, 2020
519d203
fix imports in tests
maxime1992 Sep 13, 2020
85c76cf
fix: expose shared utils/types through ngx-sub-form/new path so that …
maxime1992 Sep 25, 2020
056b37c
feat: expose partial remap options when the form is not a remap form …
maxime1992 Sep 26, 2020
19ff12e
feat: provide a manualSave$ observable as an NgxRootFormOptions
maxime1992 Sep 27, 2020
3e024ba
fix: use `startWith` on the `writeValue$` hook otherwise root form co…
maxime1992 Sep 27, 2020
e1ed4db
fix: do not use angular internal function `markDirty` as it may not b…
maxime1992 Sep 27, 2020
18742e7
feat: implement missing handleEmissionRate
maxime1992 Sep 28, 2020
d5bbbe0
fix: relax isRemap check as we can implement `fromFormGroup` and/or `…
maxime1992 Sep 28, 2020
725f044
chore(Angular upgrade): Remove unused http module
zak-cloudnc Oct 22, 2020
adc790d
chore(Angular upgrade): Ran automigration to NG10
zak-cloudnc Oct 22, 2020
00182ac
chore(Observable Lifecycle): Remove all redundant decorators
zak-cloudnc Oct 22, 2020
a40ba20
chore(Observable Lifecycle): Upgrade to new version of observable lif…
zak-cloudnc Oct 22, 2020
c07d9b6
chore(Observable Lifecycle): Add test to verify oneof restoration cap…
zak-cloudnc Oct 22, 2020
d0a85b8
feat(Rewrite): @NgxSubForm() decorator is no longer needed and is not…
zak-cloudnc Oct 23, 2020
99b5fd3
fix: Update to patched version of ngx-observable-lifecycle
zak-cloudnc Oct 23, 2020
48b061c
fix: add ngx-observable-lifecycle to package dependencies
zak-cloudnc Oct 23, 2020
f606df1
fix: move ngx-observable-lifecycle and fast-deep-equal to peer deps
zak-cloudnc Oct 23, 2020
50327b8
fix(Update): prevent events emitting when data is populated, and when…
zak-cloudnc Oct 23, 2020
1115b21
feat(Rewrite): Move new strategy to top level api, mark old strategy …
zak-cloudnc Oct 23, 2020
491eecd
fix(CI): Refactor to use github actions
zak-cloudnc Oct 23, 2020
e99befb
fix(Validation): Fix validation errors not propagating immediately
zak-cloudnc Oct 23, 2020
6ad6df3
fix(CI): Add explicit waiter
zak-cloudnc Oct 23, 2020
74b8a2c
fix(CI): Fix readme and licence copying
zak-cloudnc Oct 23, 2020
0269b83
refactor(New strategy): Remove unneeded forwardRef
zak-cloudnc Oct 23, 2020
472bb20
chore(Semantic-release): dummy commit to collate moved tags
zak-cloudnc Oct 23, 2020
46171a2
fix(Semantic-release): dummy commit to trigger new release
zak-cloudnc Oct 23, 2020
4876331
feat(Rewrite): breakage summary
zak-cloudnc Oct 23, 2020
9d38dea
fix(CI): empty commit to trigger publish
zak-cloudnc Oct 23, 2020
3f2d02c
fix(CI): empty commit to trigger publish
zak-cloudnc Oct 23, 2020
1a9e62d
feat(Form Arrays): Add typesafety to form array option type
zak-cloudnc Oct 24, 2020
ada8453
feat(ControlValue): Add exported controlValue$ so components can easi…
zak-cloudnc Oct 26, 2020
274420a
fix(rewrite): custom change detection with OnPush
maxime1992 Dec 22, 2020
687ce21
fix(lib): `Cannot read property 'nodeIndex' of null` thrown when comp…
maxime1992 Dec 30, 2020
2c68848
chore(Deps): bump ngx-observable-lifecycle to latest
zak-cloudnc Feb 24, 2021
cc2bddd
Merge pull request #203 from zakhenry/chore/upgrade-ngx-observable-li…
zak-cloudnc Feb 24, 2021
b74c43a
fix(Deps): empty commit to trigger release of ngx-observable-lifecycl…
zak-cloudnc Feb 24, 2021
c45fc12
fix(Value emission): Fix invalid values being published that were val…
zak-cloudnc Mar 16, 2021
6dbed3d
Merge pull request #205 from zakhenry/fix/invalid-after-tick
maxime1992 Mar 16, 2021
57178d0
feat(Touched): Add ability for sub form components to mark sub contro…
zak-cloudnc Mar 16, 2021
0493115
feat(Output control): Add option to provide custom predicate for cont…
zak-cloudnc Mar 17, 2021
b04afc5
Merge pull request #207 from cloudnc/feat/customisable-filter-predicate
zak-cloudnc Mar 17, 2021
543357e
Merge pull request #206 from zakhenry/feat/optional-on-touched
zak-cloudnc Mar 17, 2021
078d9cd
fix(Root form emission): It is required to double check validation of…
zak-cloudnc Mar 17, 2021
412c588
Merge pull request #209 from cloudnc/fix/double-validation-is-required
zak-cloudnc Mar 17, 2021
9eb8531
fix(Root form emission): Fix mistaken missed negation in previous ref…
zak-cloudnc Mar 17, 2021
aaefb64
Merge pull request #210 from zakhenry/fix/mistaken-negation
zak-cloudnc Mar 17, 2021
68c7d55
fix(Disabled): Mark form as dirty when disabling to ensure the disabl…
zak-cloudnc Jun 23, 2021
b3e9ec1
Merge pull request #219 from zakhenry/feat/add-disabled-to-mark-dirty…
zak-cloudnc Jun 23, 2021
d1f95c1
feat(Disabled): Permit root forms to omit the disabled option, defaul…
zak-cloudnc Jun 23, 2021
8d9e3ce
Merge pull request #220 from zakhenry/feat/optional-disabled
zak-cloudnc Jun 23, 2021
c936ff7
fix(Disabled): Disabled must emit in fallback option
zak-cloudnc Jun 23, 2021
f520b7f
fix(Disabled): Apply the markDirty for disabled in the same side effe…
zak-cloudnc Jun 24, 2021
99c7c2f
fix(FormArray validation): Ensure FormArray level validator errors ar…
zak-cloudnc Oct 18, 2021
8f72aec
chore(Readme): Update readme with updated source code
zak-cloudnc Oct 18, 2021
394d13a
chore: update angular material and cdk to version 10.2.7
maxime1992 Nov 18, 2021
cb4eb57
chore: update angular deps to version 11.2.14
maxime1992 Nov 18, 2021
bfdd8a3
chore: update angular material and cdk to version 11.2.13
maxime1992 Nov 18, 2021
ffbc52a
chore: update angular deps to version 12.2.13
maxime1992 Nov 18, 2021
664c110
chore: update angular material and cdk to version 12.2.13
maxime1992 Nov 18, 2021
74cbc0c
chore: update angular deps to version 13.0.2
maxime1992 Nov 18, 2021
250de61
chore: update angular material and cdk to version 13.0.2
maxime1992 Nov 18, 2021
17e24f0
test: fix import reordered by IDE and breaking the tests
maxime1992 Nov 18, 2021
2fde1d0
chore: clean up old commands with view engine
maxime1992 Nov 18, 2021
6eb7bf3
chore(CI): use node 14.17
maxime1992 Nov 18, 2021
982d493
feat: upgrade to Angular 13 and Ivy only compilation
maxime1992 Nov 18, 2021
a83c698
chore: install eslint
maxime1992 Nov 18, 2021
4d0d201
chore: setup eslint globally and remove tslint
maxime1992 Nov 18, 2021
b8e27be
chore: turn off some eslint rules that are erroring for now
maxime1992 Nov 18, 2021
77df0a8
chore: fix prettier
maxime1992 Nov 18, 2021
16e89f8
doc: fix readme
maxime1992 Nov 18, 2021
7a87fbc
fix: build of library failing
maxime1992 Nov 18, 2021
bcf1d75
Merge pull request #230 from cloudnc/upgrade-angular-13-ivy-only
zak-cloudnc Nov 18, 2021
67391aa
refactor: mark a few functions as internal and rename some
maxime1992 Nov 19, 2021
0af034c
doc: rewrite the README.md to explain the new API
maxime1992 Nov 19, 2021
d9f9bdb
Merge pull request #231 from cloudnc/feat-rewrite-documentation
zak-cloudnc Nov 21, 2021
bea385d
chore: mark peer dependency @angular/* to be between 10 and 13 instea…
maxime1992 Nov 21, 2021
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
51 changes: 51 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"root": true,
"ignorePatterns": ["projects/**/*"],
"overrides": [
{
"files": ["*.ts"],
"parserOptions": {
"project": ["tsconfig.json", "e2e/tsconfig.json"],
"createDefaultProgram": true
},
"extends": [
"plugin:@angular-eslint/ng-cli-compat",
"plugin:@angular-eslint/ng-cli-compat--formatting-add-on",
"plugin:@angular-eslint/template/process-inline-templates",
"prettier"
],
"rules": {
// @todo: restore this one once the one below to turn it off temporarily is there
// "@typescript-eslint/consistent-type-definitions": "error",
"@typescript-eslint/dot-notation": "off",
"@typescript-eslint/explicit-member-accessibility": [
"off",
{
"accessibility": "explicit"
}
],
"@typescript-eslint/no-unused-expressions": "off",
"id-blacklist": "off",
"id-match": "off",
"no-underscore-dangle": "off",
// @todo: restore following
// during the migration to ng 13, did remove tslint in favor of eslint
// but don't want to have to deal with loads of errors during the upgrade
"@typescript-eslint/naming-convention": "off",
"@typescript-eslint/ban-types": "off",
"@typescript-eslint/member-ordering": "off",
"prefer-arrow/prefer-arrow-functions": "off",
"object-shorthand": "off",
"@typescript-eslint/no-empty-interface": "off",
"prefer-const": "off",
"arrow-body-style": "off",
"@typescript-eslint/consistent-type-definitions": "off"
}
},
{
"files": ["*.html"],
"extends": ["plugin:@angular-eslint/template/recommended"],
"rules": {}
}
]
}
55 changes: 55 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# GitHub Actions docs
# https://help.github.com/en/articles/about-github-actions
# https://help.github.com/en/articles/workflow-syntax-for-github-actions
name: CI

on: [push]

jobs:
build:
# Machine environment:
# https://help.github.com/en/articles/software-in-virtual-environments-for-github-actions#ubuntu-1804-lts
# We specify the Node.js version manually below, and use versioned Chrome from Puppeteer.
runs-on: ubuntu-18.04

steps:
- uses: actions/checkout@v1
- name: Use Node.js 14.17
uses: actions/setup-node@v1
with:
node-version: 14.17
- name: Install dependencies
run: yarn --frozen-lockfile --non-interactive --no-progress
- name: Lint Demo
run: yarn demo:lint:check
- name: Format check
run: yarn prettier:check
- name: Check Readme
run: yarn readme:check
- name: Test
run: yarn lib:test:ci
- name: Build Lib
run: yarn lib:build:prod
- name: Cypress run
uses: cypress-io/github-action@v2
with:
browser: chrome
start: yarn demo:start --port 4765
wait-on: http://localhost:4765/
- name: Copy built README & LICENCE into dist
run: cp README.md LICENSE dist/ngx-sub-form
- name: Build Demo
if: contains('refs/heads/master', github.ref)
run: yarn run demo:build:prod --progress=false --base-href "https://cloudnc.github.io/ngx-sub-form/"
- name: Deploy
if: contains('refs/heads/master', github.ref)
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./dist/ngx-sub-form-demo
- name: Release
if: contains('refs/heads/master refs/heads/next refs/heads/feat-rewrite', github.ref)
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npx semantic-release
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
*.launch
.settings/
*.sublime-workspace
.history

# IDE - VSCode
.vscode/*
Expand All @@ -25,6 +26,7 @@
!.vscode/extensions.json

# misc
/.angular/cache
/.sass-cache
/connect.lock
/coverage
Expand Down
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ package.json
dist
node_modules
.history
.angular
10 changes: 9 additions & 1 deletion .releaserc
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
{
"pkgRoot": "dist/ngx-sub-form"
"pkgRoot": "dist/ngx-sub-form",
"branches": [
"master",
{
"name": "feat-rewrite",
"channel": "feat-rewrite",
"prerelease": true
}
]
}
58 changes: 0 additions & 58 deletions .travis.yml

This file was deleted.

Loading