metrixinfo / nova-iframe

A Laravel Nova iFrame field for detail view.
MIT License
7 stars 1 forks source link

Nova 4 support? #4

Closed timbertens closed 2 years ago

timbertens commented 2 years ago

Hi, will support for Nova 4 be added to this module or is it abandoned ? r,g Tim

metrixinfo commented 2 years ago

Sure. I will have it up here by tomorrow.

metrixinfo commented 2 years ago

@timbertens I created a v4 of the field for Nova 4. Can you give it a try and let me know it installs ok for you. Thanks.

timbertens commented 2 years ago

tx, it install without trouble but the Iframe field is not displayed project is an upgrade from nova v3 so nothing has changed in resource definition, I am just using

    public function fields(NovaRequest $request)
    {
        return [
            ID::make(__('ID'), 'id')->sortable(),
            Text::make('Sender name')
                ->hideFromIndex(),
            Text::make('Sender email')
                ->sortable()
                ->hideFromIndex(),
            Text::make('Recipient email')
                ->sortable(),
            Text::make('Subject')
                ->sortable(),
            Iframe::make('Email','content'),
            Text::make('Opens')
                ->sortable(),
            DateTime::make('Opened at')
                ->sortable()
                ->hideFromIndex(),
            Text::make('Clicks')
                ->sortable()
                ->hideFromDetail(),
            DateTime::make('Clicked at')
                ->sortable()
                ->hideFromIndex()
                ->hideFromDetail(),
            HasMany::make('Sent Email Url Clickeds', 'urlClicks'),
        ];
    }
metrixinfo commented 2 years ago

@timbertens I think I know the issue. I will take a look at it today after work.

metrixinfo commented 2 years ago

@timbertens I was able to test it in Nova 4 this time. :) It's working for me. Let me know please.

timbertens commented 2 years ago

@metrixinfo thanks for your effort, but unfortunately I still cannot see the field

Screenshot 2022-05-14 at 08 14 42
metrixinfo commented 2 years ago

@timbertens That's odd. Not even the field name! And the installed version is v4.0.1.

Are you seeing anything in the Developer Console or Laravel Logs?

I just tried it again and it seems to be working fine.

use Metrixinfo\Nova\Fields\Iframe\Iframe;

            Iframe::make('Preview', function (){
                return '<h1>This is a test</h1>';
            })

In composer:

    "require": {
        "php": "^8.0.2",
        "guzzlehttp/guzzle": "^7.2",
        "laravel/framework": "^9.2",
        "laravel/nova": "~4.0",
        "laravel/sanctum": "^2.15",
        "laravel/tinker": "^2.7",
        "laravel/ui": "^3.4",
        "metrixinfo/nova-iframe": "^4.0"
    },

image

timbertens commented 2 years ago

Very strange indeed. I've tried just adding the 'this is a test' but nothing is shown neither. There are no error shown in debugbar or logs.

These are the versions of all the components at my side, they do seem to match with your environment.

arcanedev/log-viewer               9.0.0    Provides a Log Viewer for Laravel
arcanedev/support                  9.0.0    ARCANEDEV Support Helpers
asm89/stack-cors                   v2.1.1   Cross-origin resource sharing library and stack middleware
aws/aws-crt-php                    v1.0.2   AWS Common Runtime for PHP
aws/aws-php-sns-message-validator  1.7.0    Amazon SNS message validation for PHP
aws/aws-sdk-php                    3.222.12 AWS SDK for PHP - Use Amazon Web Services in your PHP project
barryvdh/laravel-debugbar          v3.6.7   PHP Debugbar integration for Laravel
box/spout                          v3.3.0   PHP Library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way
brick/math                         0.9.3    Arbitrary-precision arithmetic library
brick/money                        0.5.3    Money and currency library
dflydev/dot-access-data            v3.0.1   Given a deep data structure, access data by dot notation.
doctrine/cache                     2.1.1    PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as ...
doctrine/dbal                      3.3.6    Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and ma...
doctrine/deprecations              v1.0.0   A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all depr...
doctrine/event-manager             1.1.1    The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrin...
doctrine/inflector                 2.0.4    PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lower...
doctrine/instantiator              1.4.1    A small, lightweight utility to instantiate objects in PHP without invoking their constructors
doctrine/lexer                     1.2.3    PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.
dragonmantank/cron-expression      v3.3.1   CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due
egulias/email-validator            3.1.2    A library for validating emails against several RFCs
eminiarts/nova-tabs                2.0.6    Laravel Nova - Tabs.
facade/ignition-contracts          1.0.2    Solution contracts for Ignition
fakerphp/faker                     v1.19.0  Faker is a PHP library that generates fake data for you.
filp/whoops                        2.14.5   php error handling for cool kids
fruitcake/laravel-cors             v2.2.0   Adds CORS (Cross-Origin Resource Sharing) headers support in your Laravel application
fruitcake/php-cors                 v1.2.0   Cross-origin resource sharing library for the Symfony HttpFoundation
graham-campbell/result-type        v1.0.4   An Implementation Of The Result Type
guzzlehttp/guzzle                  7.4.2    Guzzle is a PHP HTTP client library
guzzlehttp/promises                1.5.1    Guzzle promises library
guzzlehttp/psr7                    2.2.1    PSR-7 message implementation that also provides common utility methods
hamcrest/hamcrest-php              v2.0.1   This is the PHP port of Hamcrest Matchers
inertiajs/inertia-laravel          v0.6.0   The Laravel adapter for Inertia.js.
jdavidbakr/mail-tracker            6.0.5    Logs and tracks all outgoing emails from Laravel
kongulov/nova-tab-translatable     2.0.2    Making Nova Tab Translatable
laravel/framework                  v9.12.2  The Laravel Framework.
laravel/nova                       4.5.4    A wonderful administration interface for Laravel.
laravel/sail                       v1.14.4  Docker files for running a basic Laravel application.
laravel/sanctum                    v2.15.1  Laravel Sanctum provides a featherweight authentication system for SPAs and simple APIs.
laravel/serializable-closure       v1.1.1   Laravel Serializable Closure provides an easy and secure way to serialize closures in PHP.
laravel/tinker                     v2.7.2   Powerful REPL for the Laravel framework.
laravel/ui                         v3.4.5   Laravel UI utilities and presets.
league/commonmark                  2.3.1    Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdow...
league/config                      v1.1.1   Define configuration arrays with strict schemas and access values with dot notation
league/flysystem                   3.0.19   File storage abstraction for PHP
league/mime-type-detection         1.11.0   Mime-type detection for Flysystem
llaski/nova-scheduled-jobs         5.0.1    A Laravel Nova card to view your scheduled jobs.
maximebf/debugbar                  v1.18.0  Debug bar in the browser for php application
metrixinfo/nova-iframe             v4.0.1   A Laravel Nova iFrame field.
mockery/mockery                    1.5.0    Mockery is a simple yet flexible PHP mock object framework
monolog/monolog                    2.6.0    Sends your logs to files, sockets, inboxes, databases and various web services
mtdowling/jmespath.php             2.6.1    Declaratively specify how to extract elements from a JSON document
myclabs/deep-copy                  1.11.0   Create deep copies (clones) of your objects
nesbot/carbon                      2.58.0   An API extension for DateTime that supports 281 different languages.
nette/schema                       v1.2.2   📐 Nette Schema: validating data structures against a given Schema.
nette/utils                        v3.2.7   🛠  Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encodi...
nikic/php-parser                   v4.13.2  A PHP parser written in PHP
nunomaduro/collision               v6.2.0   Cli error handling for console/command-line PHP applications.
phar-io/manifest                   2.0.3    Component for reading phar.io manifest information from a PHP Archive (PHAR)
phar-io/version                    3.2.1    Library for handling version information and constraints
php-junior/nova-logs               v1.1     Provides a Log Viewer for Laravel Nova
phpdocumentor/reflection-common    2.2.0    Common reflection classes used by phpdocumentor to reflect the code structure
phpdocumentor/reflection-docblock  5.3.0    With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve inf...
phpdocumentor/type-resolver        1.6.1    A PSR-5 based resolver of Class names, Types and Structural Element Names
phpoption/phpoption                1.8.1    Option Type for PHP
phpspec/prophecy                   v1.15.0  Highly opinionated mocking framework for PHP 5.3+
phpunit/php-code-coverage          9.2.15   Library that provides collection, processing, and rendering functionality for PHP code coverage information.
phpunit/php-file-iterator          3.0.6    FilterIterator implementation that filters files based on a list of suffixes.
phpunit/php-invoker                3.1.1    Invoke callables with a timeout
phpunit/php-text-template          2.0.4    Simple template engine.
phpunit/php-timer                  5.0.3    Utility class for timing
phpunit/phpunit                    9.5.20   The PHP Unit Testing framework.
psr/cache                          3.0.0    Common interface for caching libraries
psr/container                      2.0.2    Common Container Interface (PHP FIG PSR-11)
psr/event-dispatcher               1.0.0    Standard interfaces for event handling.
psr/http-client                    1.0.1    Common interface for HTTP clients
psr/http-factory                   1.0.1    Common interfaces for PSR-7 HTTP message factories
psr/http-message                   1.0.1    Common interface for HTTP messages
psr/log                            3.0.0    Common interface for logging libraries
psr/simple-cache                   3.0.0    Common interfaces for simple caching
psy/psysh                          v0.11.4  An interactive shell for modern PHP.
ralouphie/getallheaders            3.0.3    A polyfill for getallheaders.
ramsey/collection                  1.2.2    A PHP library for representing and manipulating collections.
ramsey/uuid                        4.3.1    A PHP library for generating and working with universally unique identifiers (UUIDs).
rap2hpoutre/fast-excel             v3.2.0   Fast Excel import/export for Laravel
saumini/count                      v1.0.1   A Laravel Nova field.
sebastian/cli-parser               1.0.1    Library for parsing CLI options
sebastian/code-unit                1.0.8    Collection of value objects that represent the PHP code units
sebastian/code-unit-reverse-lookup 2.0.3    Looks up which function or method a line of code belongs to
sebastian/comparator               4.0.6    Provides the functionality to compare PHP values for equality
sebastian/complexity               2.0.2    Library for calculating the complexity of PHP code units
sebastian/diff                     4.0.4    Diff implementation
sebastian/environment              5.1.4    Provides functionality to handle HHVM/PHP environments
sebastian/exporter                 4.0.4    Provides the functionality to export PHP variables for visualization
sebastian/global-state             5.0.5    Snapshotting of global state
sebastian/lines-of-code            1.0.3    Library for counting the lines of code in PHP source code
sebastian/object-enumerator        4.0.4    Traverses array structures and object graphs to enumerate all referenced objects
sebastian/object-reflector         2.0.4    Allows reflection of object attributes, including inherited and non-public ones
sebastian/recursion-context        4.0.4    Provides functionality to recursively process PHP variables
sebastian/resource-operations      3.0.3    Provides a list of PHP built-in functions that operate on resources
sebastian/type                     3.0.0    Collection of value objects that represent the types of the PHP type system
sebastian/version                  3.0.2    Library that helps with managing the version number of Git-hosted PHP projects
spatie/backtrace                   1.2.1    A better backtrace
spatie/flare-client-php            1.1.1    Send PHP errors to Flare
spatie/ignition                    1.3.0    A beautiful error page for PHP applications.
spatie/laravel-ignition            1.2.3    A beautiful error page for Laravel applications.
spatie/laravel-package-tools       1.11.3   Tools for creating Laravel packages
spatie/laravel-translatable        6.0.0    A trait to make an Eloquent model hold translations
spatie/once                        3.1.0    A magic memoization function
symfony/console                    v6.0.8   Eases the creation of beautiful and testable command line interfaces
symfony/css-selector               v6.0.3   Converts CSS selectors to XPath expressions
symfony/debug                      v4.4.41  Provides tools to ease debugging PHP code
symfony/deprecation-contracts      v3.0.1   A generic function and convention to trigger deprecation notices
symfony/error-handler              v6.0.8   Provides tools to manage errors and ease debugging PHP code
symfony/event-dispatcher           v6.0.3   Provides tools that allow your application components to communicate with each other by dispatching events...
symfony/event-dispatcher-contracts v3.0.1   Generic abstractions related to dispatching event
symfony/finder                     v6.0.8   Finds files and directories via an intuitive fluent interface
symfony/http-foundation            v6.0.8   Defines an object-oriented layer for the HTTP specification
symfony/http-kernel                v6.0.8   Provides a structured process for converting a Request into a Response
symfony/intl                       v6.0.8   Provides a PHP replacement layer for the C intl extension that includes additional data from the ICU library
symfony/mailer                     v6.0.8   Helps sending emails
symfony/mime                       v6.0.8   Allows manipulating MIME messages
symfony/polyfill-ctype             v1.25.0  Symfony polyfill for ctype functions
symfony/polyfill-intl-grapheme     v1.25.0  Symfony polyfill for intl's grapheme_* functions
symfony/polyfill-intl-idn          v1.25.0  Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions
symfony/polyfill-intl-normalizer   v1.25.0  Symfony polyfill for intl's Normalizer class and related functions
symfony/polyfill-mbstring          v1.25.0  Symfony polyfill for the Mbstring extension
symfony/polyfill-php72             v1.25.0  Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions
symfony/polyfill-php80             v1.25.0  Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions
symfony/polyfill-php81             v1.25.0  Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions
symfony/process                    v6.0.8   Executes commands in sub-processes
symfony/routing                    v6.0.8   Maps an HTTP request to a set of configuration variables
symfony/service-contracts          v3.0.1   Generic abstractions related to writing services
symfony/string                     v6.0.8   Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters i...
symfony/translation                v6.0.8   Provides tools to internationalize your application
symfony/translation-contracts      v3.0.1   Generic abstractions related to translation
symfony/var-dumper                 v6.0.8   Provides mechanisms for walking through any arbitrary PHP variable
theseer/tokenizer                  1.2.1    A small library for converting tokenized PHP source code into XML and potentially other formats
tijsverkoyen/css-to-inline-styles  2.2.4    CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inlin...
vlucas/phpdotenv                   v5.4.1   Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.
voku/portable-ascii                2.0.1    Portable ASCII library - performance optimized (ascii) string functions for php.
webmozart/assert                   1.10.0   Assertions to validate method input/output with nice error messages.
timbertens commented 2 years ago

Just did an composer update on this project and I'm not quite sure which one, but one of these updates resolved the issue and made the field visible

  - Upgrading symfony/css-selector (v6.0.3 => v6.1.0): Extracting archive
  - Upgrading symfony/var-dumper (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/routing (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/process (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/mime (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/service-contracts (v3.0.1 => v3.1.0): Extracting archive
  - Upgrading symfony/event-dispatcher-contracts (v3.0.1 => v3.1.0): Extracting archive
  - Upgrading symfony/event-dispatcher (v6.0.3 => v6.1.0): Extracting archive
  - Upgrading egulias/email-validator (3.1.2 => 3.2): Extracting archive
  - Upgrading symfony/mailer (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/deprecation-contracts (v3.0.1 => v3.1.0): Extracting archive
  - Upgrading symfony/http-foundation (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/error-handler (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/http-kernel (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/finder (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/string (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/console (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading symfony/translation-contracts (v3.0.1 => v3.1.0): Extracting archive
  - Upgrading symfony/translation (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading league/flysystem (3.0.19 => 3.0.20): Extracting archive
  - Upgrading laravel/framework (v9.13.0 => v9.14.1): Extracting archive
  - Upgrading symfony/intl (v6.0.8 => v6.1.0): Extracting archive
  - Upgrading laravel/ui (v3.4.5 => v3.4.6): Extracting archive
  - Upgrading inertiajs/inertia-laravel (v0.6.0 => v0.6.2): Extracting archive
  - Upgrading laravel/nova (4.6.1 => 4.7.0): Extracting archive
  - Upgrading guzzlehttp/guzzle (7.4.2 => 7.4.3): Extracting archive
  - Upgrading aws/aws-sdk-php (3.222.17 => 3.224.0): Extracting archive
  - Upgrading jdavidbakr/mail-tracker (6.0.5 => 6.0.7): Extracting archive
  - Upgrading laravel/sail (v1.14.6 => v1.14.7): Extracting archive
  - Upgrading psy/psysh (v0.11.4 => v0.11.5): Extracting archive