-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #23 from newfold-labs/enhance/data-plugin-install-…
…script Event Listener in Installer Module for Premium Plugin Installation
- Loading branch information
Showing
12 changed files
with
18,598 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
name: "JS Lint Checker: Installer Module" | ||
on: | ||
workflow_dispatch: | ||
push: | ||
paths: | ||
- "src/**/*.js" | ||
- "src/**/*.scss" | ||
pull_request: | ||
types: [opened, edited, reopened, ready_for_review] | ||
paths: | ||
- "src/**/*.js" | ||
- "src/**/*.scss" | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
lint-check-spa: | ||
name: Run Lint Checks | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout Repository | ||
uses: actions/checkout@v3 | ||
|
||
# Install Node and npm | ||
- name: Setup Node.js | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: 16.x | ||
cache: 'npm' | ||
|
||
# Checks if node_modules exists in the cache. | ||
- name: Cache node_modules directory | ||
id: cache | ||
uses: actions/cache@v3 | ||
with: | ||
path: node_modules | ||
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} | ||
restore-keys: ${{ runner.os }}-node- | ||
|
||
- name: Setup Registry | ||
run: printf "@newfold-labs:registry=https://npm.pkg.github.com/\n//npm.pkg.github.com/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc | ||
if: steps.cache.outputs.cache-hit != 'true' | ||
|
||
# Installs @wordpress/scripts for lint checks if it does not exist in the cache. | ||
- name: Install dependencies | ||
run: npm i @wordpress/[email protected] --legacy-peer-deps | ||
if: steps.cache.outputs.cache-hit != 'true' | ||
|
||
# Gets the files changed wrt to trunk and filters out the js files. | ||
- uses: technote-space/get-diff-action@v6 | ||
with: | ||
PATTERNS: | | ||
+(src)/**/*.js | ||
# Runs wp-scripts for checking JS coding issues. | ||
- name: Run JS Lint | ||
id: js-lint | ||
run: npx wp-scripts lint-js ${{ env.GIT_DIFF }} | ||
if: "!! env.GIT_DIFF" | ||
|
||
# Gets the files changed wrt to trunk and filters out the SASS files. | ||
- uses: technote-space/get-diff-action@v6 | ||
with: | ||
PATTERNS: | | ||
+(src)/**/*.scss | ||
if: ${{ success() || steps.js-lint.conclusion == 'failure' }} | ||
|
||
# Runs wp-scripts for checking SASS coding issues. | ||
- name: Run SASS Lint | ||
id: sass-lint | ||
run: npx wp-scripts lint-style ${{ env.GIT_DIFF }} | ||
if: ${{ (!! env.GIT_DIFF) && (success() || steps.js-lint.conclusion == 'failure') }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
<?php | ||
|
||
namespace NewfoldLabs\WP\Module\Installer\Data; | ||
|
||
use NewfoldLabs\WP\ModuleLoader\Container; | ||
|
||
/** | ||
* Manages all the constants for the module. | ||
*/ | ||
class Constants { | ||
/** | ||
* Constructor for the Constants class. | ||
* | ||
* @param Container $container The module container. | ||
*/ | ||
public function __construct( $container ) { | ||
if ( ! defined( 'NFD_INSTALLER_VERSION' ) ) { | ||
define( 'NFD_INSTALLER_VERSION', '1.1.5' ); | ||
} | ||
if ( ! defined( 'NFD_INSTALLER_BUILD_DIR' ) && defined( 'NFD_INSTALLER_VERSION' ) ) { | ||
define( 'NFD_INSTALLER_BUILD_DIR', dirname( __DIR__, 2 ) . '/build/' . NFD_INSTALLER_VERSION ); | ||
} | ||
if ( ! defined( 'NFD_INSTALLER_BUILD_URL' && defined( 'NFD_INSTALLER_VERSION' ) ) ) { | ||
define( 'NFD_INSTALLER_BUILD_URL', $container->plugin()->url . '/vendor/newfold-labs/wp-module-installer/build/' . NFD_INSTALLER_VERSION ); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
<?php | ||
|
||
namespace NewfoldLabs\WP\Module\Installer\WPAdmin\Listeners; | ||
|
||
use NewfoldLabs\WP\Module\Installer\Services\PluginInstaller; | ||
|
||
/** | ||
* Manages all the data-* listening related functionalities for the module. | ||
*/ | ||
class DataAttrListener { | ||
/** | ||
* Constructor for the DataAttrListener class. | ||
*/ | ||
public function __construct() { | ||
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_data_attr_listener' ) ); | ||
} | ||
|
||
/** | ||
* Enqueues the data-* attribute listener script. | ||
* | ||
* @return void | ||
*/ | ||
public function enqueue_data_attr_listener() { | ||
$asset_file = NFD_INSTALLER_BUILD_DIR . '/dataAttrListener.asset.php'; | ||
|
||
if ( is_readable( $asset_file ) ) { | ||
$asset = include $asset_file; | ||
|
||
wp_register_script( | ||
'nfd-installer-data-attr-listener', | ||
NFD_INSTALLER_BUILD_URL . '/dataAttrListener.js', | ||
array_merge( $asset['dependencies'], array() ), | ||
$asset['version'], | ||
true | ||
); | ||
|
||
wp_add_inline_script( | ||
'nfd-installer-data-attr-listener', | ||
'var nfdInstaller =' . wp_json_encode( | ||
value: array( | ||
'restUrl' => \get_home_url() . '/index.php?rest_route=', | ||
'pluginInstallHash' => PluginInstaller::rest_get_plugin_install_hash(), | ||
) | ||
) . ';', | ||
'before' | ||
); | ||
|
||
wp_enqueue_script( 'nfd-installer-data-attr-listener' ); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
<?php | ||
|
||
namespace NewfoldLabs\WP\Module\Installer\WPAdmin; | ||
|
||
use NewfoldLabs\WP\Module\Installer\WPAdmin\Listeners\DataAttrListener; | ||
|
||
/** | ||
* Manages all the wp-admin related functionalities for the module. | ||
*/ | ||
class WPAdmin { | ||
/** | ||
* Constructor for the WPAdmin class. | ||
*/ | ||
public function __construct() { | ||
new DataAttrListener(); | ||
} | ||
} |
Oops, something went wrong.