Skip to content

Nova 4 custom field assets compilation #3813

@gpanos

Description

@gpanos
  • Laravel Version: 9.*
  • Nova Version: 4.*
  • PHP Version: 8.1
  • Database Driver & Version: mysql 8
  • Operating System and Version: macOs Big Sur
  • Browser type and version: Chrome Version 99.0.4844.84

Description:

After following the upgrade guide for Nova 3 to Nova 4 step by step I am still having problems creating custom tools, fields etc.
For example creating a custom field using the following command.

php artisan nova:field acme/color-picker

When trying to compile the assets for this field I get the following stack trace:

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 1:0-36
Module not found: Error: Can't resolve 'axios' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 2:0-39
Module not found: Error: Can't resolve 'lodash/debounce' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 3:0-33
Module not found: Error: Can't resolve 'lodash/forIn' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 4:0-29
Module not found: Error: Can't resolve 'lodash/get' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 5:0-39
Module not found: Error: Can't resolve 'lodash/identity' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 6:0-33
Module not found: Error: Can't resolve 'lodash/isNil' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/DependentFormField.js 7:0-35
Module not found: Error: Can't resolve 'lodash/pickBy' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/FormEvents.js 1:0-33
Module not found: Error: Can't resolve 'lodash/isNil' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/FormField.js 7:0-29
Module not found: Error: Can't resolve 'lodash/get' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/FormField.js 8:0-33
Module not found: Error: Can't resolve 'lodash/isNil' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/HandlesFormRequest.js 1:0-49
Module not found: Error: Can't resolve 'form-backend-validation' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/HandlesValidationErrors.js 1:0-49
Module not found: Error: Can't resolve 'form-backend-validation' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/HasCards.js 1:0-61
Module not found: Error: Can't resolve '@babel/runtime/regenerator' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/HasCards.js 7:0-35
Module not found: Error: Can't resolve 'lodash/filter' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/Localization.js 1:0-37
Module not found: Error: Can't resolve 'lodash/forEach' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/PreventsFormAbandonment.js 7:0-48
Module not found: Error: Can't resolve 'vuex' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/PreventsFormAbandonment.js 8:0-45
Module not found: Error: Can't resolve '@inertiajs/inertia' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/PreventsModalAbandonment.js 7:0-48
Module not found: Error: Can't resolve 'vuex' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/packages.js 13:0-49
Module not found: Error: Can't resolve 'form-backend-validation' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ../../vendor/laravel/nova/resources/js/mixins/propTypes.js 1:0-31
Module not found: Error: Can't resolve 'lodash/pick' in '/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins'

ERROR in ./resources/js/field.js + 29 modules
Assigning to rvalue (54:8)
|       if (this.canLeaveForm == true) {
|         Object(function webpackMissingModule() { var e = new Error("Cannot find module '@inertiajs/inertia'"); e.code = 'MODULE_NOT_FOUND'; throw e; }())(Object(function webpackMissingModule() { var e = new Error("Cannot find module '@inertiajs/inertia'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()));
|         Object(function webpackMissingModule() { var e = new Error("Cannot find module '@inertiajs/inertia'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()) = true;
|       }
| 
while analyzing module /Users/dimitriskarapanos/Sites/laravel/wingly-api/nova-components/MoneyField/node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!/Users/dimitriskarapanos/Sites/laravel/wingly-api/vendor/laravel/nova/resources/js/mixins/PreventsFormAbandonment.js for concatenation

webpack compiled with 21 errors
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ production: `mix --production`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the @ production script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/dimitriskarapanos/.npm/_logs/2022-04-05T15_18_03_633Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ prod: `npm run production`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the @ prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/dimitriskarapanos/.npm/_logs/2022-04-05T15_18_03_673Z-debug.log

Not sure if I missed anything from the upgrading steps but everything else works. Never had a problem with custom fields, tools on Nova 3.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions