-
Notifications
You must be signed in to change notification settings - Fork 0
/
sample-ide-helper.php
136 lines (111 loc) · 3.21 KB
/
sample-ide-helper.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<?php
/**
*
* This file will always be different depending on the 'resources' and 'settings' that you've listed in your config.
* But I love to have that ide assistance, though it takes extra time in the beginning. I love having it.
* So here's a file that will give you a simple start on ide assistance
*
* (create a 'permission_name_helper.php' in the root of your project...then add the following, replacing all methods with your resources/settings)
*/
/** =========================================================================================
* Section For 'resources'
* - based on the following config:
* [
* 'resources' => [
* 'user',
* 'billing'
* ],
*
* 'settings' => [
* 'user',
* 'smtp'
* ]
* ]
* ========================================================================================== /
/** =======
* This section for the Facade Aliases (in the global namespace)
* - each 'resources' listed in your config
* =======*/
/**
*
* @method static \Jhavenz\PermissionName\Adapters\AllPermissionsAdapter setScope(string $scope)
*
* @method static \Jhavenz\PermissionName\Adapters\AllPermissionsAdapter setResource(string $resource)
*
* @method static \Illuminate\Support\Collection all()
*/
class AllPermissions
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\OwnedPermissionsAdapter all()
*/
class OwnedPermission
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\TeamPermissionsAdapter all()
*/
class TeamPermission
{
}
/** =======
* This section for the Facade Aliases (in the global namespace)
* - each 'settings' listed in your config
* =======*/
/**
* @method static \Jhavenz\PermissionName\Adapters\OwnedSettingPermissionsAdapter all()
*/
class OwnedSettingPermission
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\TeamSettingPermissionsAdapter all()
*/
class TeamSettingPermission
{
}
/** =======
* And now the Facades (in the "\Illuminate\Support\Facades\..." namespace)
* - each 'resources' listed in your config
* =======*/
namespace Illuminate\Support\Facades {
use Jhavenz\PermissionName\Adapters\AllPermissionsAdapter;
use Jhavenz\PermissionName\Adapters\OwnedPermissionsAdapter;
/**
*
* @method static \Jhavenz\PermissionName\Adapters\AllPermissionsAdapter setScope(string $scope)
*
* @method static \Jhavenz\PermissionName\Adapters\AllPermissionsAdapter setResource(string $resource)
*
* @method static \Jhavenz\PermissionName\Adapters\AllPermissionsAdapter all()
*
*/
class AllPermissions
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\OwnedPermissionsAdapter all()
*/
class OwnedPermission
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\TeamPermissionsAdapter all()
*/
class TeamPermission
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\OwnedSettingPermissionsAdapter all()
*/
class OwnedSettingPermission
{
}
/**
* @method static \Jhavenz\PermissionName\Adapters\TeamSettingPermissionsAdapter all()
*/
class TeamSettingPermission
{
}
}