Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
node_modules/
.vscode
build
dist
dist/
!vendor/dotcamp/
!vendor/dotcamp/**
/test-results/
/playwright-report/
/blob-report/
Expand Down
11 changes: 10 additions & 1 deletion packages/tableberg/composer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
{
"name": "dotcamp/tableberg",
"description": "Tableberg plugin by Dotcamp.",
"require": {
"dotcamp/promoter": "^1.0"
},
"require-dev": {
"php-stubs/wordpress-stubs": "^6.4"
},
Expand All @@ -16,5 +19,11 @@
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true
}
}
},
"repositories": [
{
"type": "path",
"url": "vendor/dotcamp/promoter"
}
]
}
75 changes: 70 additions & 5 deletions packages/tableberg/composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions packages/tableberg/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
"includes",
"vendor/composer",
"vendor/autoload.php",
"vendor/dotcamp/promoter/inc",
"vendor/dotcamp/promoter/dist",
"vendor/dotcamp/promoter/composer.json",
"readme.txt",
"tableberg.php",
"composer.json"
Expand Down
7 changes: 7 additions & 0 deletions packages/tableberg/tableberg.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
* @package Tableberg
*/

use DotCamp\Promoter\Promoter;

if (!defined('ABSPATH')) {
exit; // Exit if accessed directly.
}
Expand Down Expand Up @@ -153,3 +155,8 @@ function tableberg_load_textdomain() {
Tableberg\Patterns\RegisterPatterns::register_pattern_custom_rest_fields();
});
}

$default_promotions = Promoter::generate_default_promotions(TABLEBERG_PLUGIN_FILE, 'Tableberg', 'tableberg/tableberg.php');

Promoter::add_promotions($default_promotions, TABLEBERG_PLUGIN_FILE);

5 changes: 1 addition & 4 deletions packages/tableberg/vendor/autoload.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,7 @@
echo $err;
}
}
trigger_error(
$err,
E_USER_ERROR
);
throw new RuntimeException($err);
}

require_once __DIR__ . '/composer/autoload_real.php';
Expand Down
45 changes: 41 additions & 4 deletions packages/tableberg/vendor/composer/InstalledVersions.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,23 @@
*/
class InstalledVersions
{
/**
* @var string|null if set (by reflection by Composer), this should be set to the path where this class is being copied to
* @internal
*/
private static $selfDir = null;

/**
* @var mixed[]|null
* @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|null
*/
private static $installed;

/**
* @var bool
*/
private static $installedIsLocalDir;

/**
* @var bool|null
*/
Expand Down Expand Up @@ -309,6 +320,24 @@ public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();

// when using reload, we disable the duplicate protection to ensure that self::$installed data is
// always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not,
// so we have to assume it does not, and that may result in duplicate data being returned when listing
// all installed packages for example
self::$installedIsLocalDir = false;
}

/**
* @return string
*/
private static function getSelfDir()
{
if (self::$selfDir === null) {
self::$selfDir = strtr(__DIR__, '\\', '/');
}

return self::$selfDir;
}

/**
Expand All @@ -322,19 +351,27 @@ private static function getInstalled()
}

$installed = array();
$copiedLocalDir = false;

if (self::$canGetVendors) {
$selfDir = self::getSelfDir();
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
$vendorDir = strtr($vendorDir, '\\', '/');
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
$required = require $vendorDir.'/composer/installed.php';
$installed[] = self::$installedByVendor[$vendorDir] = $required;
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
self::$installedByVendor[$vendorDir] = $required;
$installed[] = $required;
if (self::$installed === null && $vendorDir.'/composer' === $selfDir) {
self::$installed = $required;
self::$installedIsLocalDir = true;
}
}
if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) {
$copiedLocalDir = true;
}
}
}

Expand All @@ -350,7 +387,7 @@ private static function getInstalled()
}
}

if (self::$installed !== array()) {
if (self::$installed !== array() && !$copiedLocalDir) {
$installed[] = self::$installed;
}

Expand Down
2 changes: 2 additions & 0 deletions packages/tableberg/vendor/composer/autoload_psr4.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,6 @@

return array(
'Tableberg\\' => array($baseDir . '/', $baseDir . '/includes'),
'DotCamp\\Promoter\\Tests\\' => array($vendorDir . '/dotcamp/promoter/__tests__'),
'DotCamp\\Promoter\\' => array($vendorDir . '/dotcamp/promoter/inc', $vendorDir . '/dotcamp/promoter/__tests__/php/unit/inc'),
);
2 changes: 2 additions & 0 deletions packages/tableberg/vendor/composer/autoload_real.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ public static function getLoader()
return self::$loader;
}

require __DIR__ . '/platform_check.php';

spl_autoload_register(array('ComposerAutoloaderInit5c4d43dcdd3f5361bd26ecb40ba79213', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInit5c4d43dcdd3f5361bd26ecb40ba79213', 'loadClassLoader'));
Expand Down
14 changes: 14 additions & 0 deletions packages/tableberg/vendor/composer/autoload_static.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@ class ComposerStaticInit5c4d43dcdd3f5361bd26ecb40ba79213
array (
'Tableberg\\' => 10,
),
'D' =>
array (
'DotCamp\\Promoter\\Tests\\' => 23,
'DotCamp\\Promoter\\' => 17,
),
);

public static $prefixDirsPsr4 = array (
Expand All @@ -19,6 +24,15 @@ class ComposerStaticInit5c4d43dcdd3f5361bd26ecb40ba79213
0 => __DIR__ . '/../..' . '/',
1 => __DIR__ . '/../..' . '/includes',
),
'DotCamp\\Promoter\\Tests\\' =>
array (
0 => __DIR__ . '/..' . '/dotcamp/promoter/__tests__',
),
'DotCamp\\Promoter\\' =>
array (
0 => __DIR__ . '/..' . '/dotcamp/promoter/inc',
1 => __DIR__ . '/..' . '/dotcamp/promoter/__tests__/php/unit/inc',
),
);

public static $classMap = array (
Expand Down
67 changes: 67 additions & 0 deletions packages/tableberg/vendor/composer/installed.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,72 @@
{
"packages": [
{
"name": "dotcamp/promoter",
"version": "1.0.3",
"version_normalized": "1.0.3.0",
"dist": {
"type": "path",
"url": "vendor/dotcamp/promoter",
"reference": "ff99ae0f8977bf16e7bef3a432133e18f40883fd"
},
"require": {
"php": ">=7.2"
},
"require-dev": {
"brain/monkey": "^2.6",
"phpcompatibility/phpcompatibility-wp": "*",
"phpunit/phpunit": "^12.0",
"wp-coding-standards/wpcs": "^3.0"
},
"type": "library",
"installation-source": "dist",
"autoload": {
"psr-4": {
"DotCamp\\Promoter\\": [
"inc/",
"__tests__/php/unit/inc"
],
"DotCamp\\Promoter\\Tests\\": "__tests__/"
}
},
"scripts": {
"test": [
"phpunit"
],
"lint": [
"@phpcs-check"
],
"lint-fix": [
"@phpcs-fix"
],
"phpcs-check": [
"phpcs -p --standard=.phpcs.xml --extensions=php __tests__ inc"
],
"phpcs-fix": [
"phpcbf -p --standard=.phpcs.xml --extensions=php __tests__ inc"
],
"compress": [
"composer archive --format=zip --dir=./zip --file=./dotcamp-promoter"
],
"release": [
"pnpm run production && composer run test && composer run lint-fix && composer run compress"
]
},
"license": [
"MIT"
],
"authors": [
{
"name": "Erdem Bircan",
"email": "erdem.erdembircan@gmail.com"
}
],
"description": "Promoter library for DotCamp products.",
"transport-options": {
"relative": true
},
"install-path": "../dotcamp/promoter"
},
{
"name": "php-stubs/wordpress-stubs",
"version": "v6.4.1",
Expand Down
Loading