Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • issue/project_browser-3278972
  • issue/project_browser-3240319
  • project/project_browser
  • issue/project_browser-3223747
  • issue/project_browser-3238996
  • issue/project_browser-3279510
  • issue/project_browser-3281209
  • issue/project_browser-3282592
  • issue/project_browser-3282691
  • issue/project_browser-3282681
  • issue/project_browser-3283861
  • issue/project_browser-3279918
  • issue/project_browser-3280627
  • issue/project_browser-3281216
  • issue/project_browser-3281692
  • issue/project_browser-3281891
  • issue/project_browser-3282201
  • issue/project_browser-3282707
  • issue/project_browser-3282732
  • issue/project_browser-3279927
  • issue/project_browser-3280190
  • issue/project_browser-3268626
  • issue/project_browser-3280706
  • issue/project_browser-3281388
  • issue/project_browser-3282777
  • issue/project_browser-3278333
  • issue/project_browser-3280167
  • issue/project_browser-3281252
  • issue/project_browser-3280006
  • issue/project_browser-3281686
  • issue/project_browser-3282698
  • issue/project_browser-3282688
  • issue/project_browser-3283826
  • issue/project_browser-3279676
  • issue/project_browser-3280176
  • issue/project_browser-3281327
  • issue/project_browser-3281624
  • issue/project_browser-3281217
  • issue/project_browser-3281187
  • issue/project_browser-3281200
  • issue/project_browser-3282591
  • issue/project_browser-3282648
  • issue/project_browser-3282705
  • issue/project_browser-3282589
  • issue/project_browser-3282692
  • issue/project_browser-3283683
  • issue/project_browser-3283825
  • issue/project_browser-3283875
  • issue/project_browser-3282709
  • issue/project_browser-3281418
  • issue/project_browser-3281620
  • issue/project_browser-3282499
  • issue/project_browser-3282778
  • issue/project_browser-3282683
  • issue/project_browser-3282700
  • issue/project_browser-3240318
  • issue/project_browser-3240128
  • issue/project_browser-3245770
  • issue/project_browser-3248299
  • issue/project_browser-3240321
  • issue/project_browser-3249483
  • issue/project_browser-3241358
  • issue/project_browser-3238572
  • issue/project_browser-3249958
  • issue/project_browser-3240320
  • issue/project_browser-3250132
  • issue/project_browser-3239477
  • issue/project_browser-3250356
  • issue/project_browser-3250413
  • issue/project_browser-3250454
  • issue/project_browser-3277551
  • issue/project_browser-3258248
  • issue/project_browser-3258247
  • issue/project_browser-3259324
  • issue/project_browser-3259657
  • issue/project_browser-3245948
  • issue/project_browser-3264474
  • issue/project_browser-3267656
  • issue/project_browser-3267658
  • issue/project_browser-3267661
  • issue/project_browser-3268636
  • issue/project_browser-3224709
  • issue/project_browser-3273634
  • issue/project_browser-3274010
  • issue/project_browser-3274277
  • issue/project_browser-3252674
  • issue/project_browser-3274701
  • issue/project_browser-3274520
  • issue/project_browser-3274906
  • issue/project_browser-3275413
  • issue/project_browser-3275536
  • issue/project_browser-3243019
  • issue/project_browser-3274577
  • issue/project_browser-3274335
  • issue/project_browser-3270210
  • issue/project_browser-3277052
  • issue/project_browser-3224896
  • issue/project_browser-3274897
  • issue/project_browser-3277253
  • issue/project_browser-3277260
  • issue/project_browser-3277264
  • issue/project_browser-3277764
  • issue/project_browser-3277808
  • issue/project_browser-3277811
  • issue/project_browser-3277832
  • issue/project_browser-3277224
  • issue/project_browser-3278352
  • issue/project_browser-3277255
  • issue/project_browser-3279663
  • issue/project_browser-3279983
  • issue/project_browser-3280721
  • issue/project_browser-3280765
  • issue/project_browser-3283771
  • issue/project_browser-3284094
  • issue/project_browser-3284233
  • issue/project_browser-3284092
  • issue/project_browser-3284312
  • issue/project_browser-3284321
  • issue/project_browser-3284315
  • issue/project_browser-3284333
  • issue/project_browser-3284325
  • issue/project_browser-3284327
  • issue/project_browser-3284463
  • issue/project_browser-3284330
  • issue/project_browser-3284347
  • issue/project_browser-3284332
  • issue/project_browser-3284631
  • issue/project_browser-3284945
  • issue/project_browser-3284880
  • issue/project_browser-3284341
  • issue/project_browser-3284309
  • issue/project_browser-3281218
  • issue/project_browser-3285889
  • issue/project_browser-3285874
  • issue/project_browser-3285880
  • issue/project_browser-3285878
  • issue/project_browser-3285870
  • issue/project_browser-3285443
  • issue/project_browser-3285879
  • issue/project_browser-3269587
  • issue/project_browser-3291995
  • issue/project_browser-3292019
  • issue/project_browser-3292395
  • issue/project_browser-3292562
  • issue/project_browser-3289165
  • issue/project_browser-3292996
  • issue/project_browser-3293014
  • issue/project_browser-3252678
  • issue/project_browser-3277214
  • issue/project_browser-3293691
  • issue/project_browser-3293694
  • issue/project_browser-3267678
  • issue/project_browser-3267685
  • issue/project_browser-3293909
  • issue/project_browser-3293937
  • issue/project_browser-3293898
  • issue/project_browser-3293905
  • issue/project_browser-3282163
  • issue/project_browser-3293899
  • issue/project_browser-3294763
  • issue/project_browser-3294754
  • issue/project_browser-3247332
  • issue/project_browser-3295320
  • issue/project_browser-3294608
  • issue/project_browser-3287419
  • issue/project_browser-3294576
  • issue/project_browser-3293424
  • issue/project_browser-3296264
  • issue/project_browser-3296324
  • issue/project_browser-3296494
  • issue/project_browser-3296250
  • issue/project_browser-3304245
  • issue/project_browser-3304569
  • issue/project_browser-3298525
  • issue/project_browser-3298575
  • issue/project_browser-3293929
  • issue/project_browser-3298755
  • issue/project_browser-3249550
  • issue/project_browser-3249553
  • issue/project_browser-3282842
  • issue/project_browser-3300093
  • issue/project_browser-3299285
  • issue/project_browser-3300447
  • issue/project_browser-3300262
  • issue/project_browser-3303920
  • issue/project_browser-3305515
  • issue/project_browser-3300735
  • issue/project_browser-3299029
  • issue/project_browser-3300520
  • issue/project_browser-3301498
  • issue/project_browser-3301577
  • issue/project_browser-3300397
  • issue/project_browser-3301989
  • issue/project_browser-3302094
  • issue/project_browser-3241731
  • issue/project_browser-3305551
  • issue/project_browser-3303328
  • issue/project_browser-3305983
  • issue/project_browser-3306162
  • issue/project_browser-3310703
  • issue/project_browser-3310725
  • issue/project_browser-3310876
  • issue/project_browser-3310884
  • issue/project_browser-3306717
  • issue/project_browser-3307512
  • issue/project_browser-3307674
  • issue/project_browser-3307917
  • issue/project_browser-3306714
  • issue/project_browser-3308068
  • issue/project_browser-3303496
  • issue/project_browser-3306722
  • issue/project_browser-3308522
  • issue/project_browser-3308525
  • issue/project_browser-3310864
  • issue/project_browser-3310877
  • issue/project_browser-3310898
  • issue/project_browser-3311370
  • issue/project_browser-3293977
  • issue/project_browser-3310893
  • issue/project_browser-3310874
  • issue/project_browser-3271591
  • issue/project_browser-3300090
  • issue/project_browser-3311763
  • issue/project_browser-3304183
  • issue/project_browser-3303522
  • issue/project_browser-3311980
  • issue/project_browser-3311992
  • issue/project_browser-3311978
  • issue/project_browser-3303520
  • issue/project_browser-3312289
  • issue/project_browser-3312537
  • issue/project_browser-3310882
  • issue/project_browser-3282338
  • issue/project_browser-3314210
  • issue/project_browser-3310896
  • issue/project_browser-3315866
  • issue/project_browser-3315853
  • issue/project_browser-3314520
  • issue/project_browser-3303373
  • issue/project_browser-3314728
  • issue/project_browser-3313292
  • issue/project_browser-3300350
  • issue/project_browser-3315867
  • issue/project_browser-3315860
  • issue/project_browser-3315854
  • issue/project_browser-3315858
  • issue/project_browser-3315859
  • issue/project_browser-3310906
  • issue/project_browser-3310903
  • issue/project_browser-3316454
  • issue/project_browser-3316740
  • issue/project_browser-3316744
  • issue/project_browser-3316820
  • issue/project_browser-3316852
  • issue/project_browser-3318442
  • issue/project_browser-3318732
  • issue/project_browser-3318789
  • issue/project_browser-3318905
  • issue/project_browser-3327323
  • issue/project_browser-3325409
  • issue/project_browser-3326049
  • issue/project_browser-3318794
  • issue/project_browser-3316357
  • issue/project_browser-3320295
  • issue/project_browser-3319785
  • issue/project_browser-3316998
  • issue/project_browser-3326245
  • issue/project_browser-3327400
  • issue/project_browser-3327684
  • issue/project_browser-3328136
  • issue/project_browser-3323354
  • issue/project_browser-3325630
  • issue/project_browser-3325658
  • issue/project_browser-3316162
  • issue/project_browser-3318750
  • issue/project_browser-3323531
  • issue/project_browser-3324905
  • issue/project_browser-3322594
  • issue/project_browser-3321703
  • issue/project_browser-3318791
  • issue/project_browser-3277506
  • issue/project_browser-3322164
  • issue/project_browser-3321698
  • issue/project_browser-3317264
  • issue/project_browser-3325657
  • issue/project_browser-3315862
  • issue/project_browser-3329644
  • issue/project_browser-3328124
  • issue/project_browser-3329861
  • issue/project_browser-3330071
  • issue/project_browser-3330102
  • issue/project_browser-3329889
  • issue/project_browser-3330128
  • issue/project_browser-3330129
  • issue/project_browser-3330122
  • issue/project_browser-3330124
  • issue/project_browser-3330887
  • issue/project_browser-3330123
  • issue/project_browser-3330116
  • issue/project_browser-3330130
  • issue/project_browser-3330133
  • issue/project_browser-3332968
  • issue/project_browser-3333456
  • issue/project_browser-3334585
  • issue/project_browser-3304184
  • issue/project_browser-3338357
  • issue/project_browser-3342535
  • issue/project_browser-3340133
  • issue/project_browser-3338356
  • issue/project_browser-3330235
  • issue/project_browser-3341230
  • issue/project_browser-3342128
  • issue/project_browser-3342218
  • issue/project_browser-3345607
  • issue/project_browser-3348249
  • issue/project_browser-3351987
  • issue/project_browser-3348781
  • issue/project_browser-3348872
  • issue/project_browser-3351137
  • issue/project_browser-3353355
  • issue/project_browser-3353483
  • issue/project_browser-3354450
  • issue/project_browser-3356614
  • issue/project_browser-3356685
  • issue/project_browser-3303190
  • issue/project_browser-3359678
  • issue/project_browser-3361123
  • issue/project_browser-3311503
  • issue/project_browser-3364776
  • issue/project_browser-3365345
  • issue/project_browser-3365350
  • issue/project_browser-3318726
  • issue/project_browser-3309273
  • issue/project_browser-3303381
  • issue/project_browser-3360062
  • issue/project_browser-3365404
  • issue/project_browser-3359980
  • issue/project_browser-3323860
  • issue/project_browser-3365180
  • issue/project_browser-3249549
  • issue/project_browser-3365678
  • issue/project_browser-3370284
  • issue/project_browser-3404483
  • issue/project_browser-3365435
  • issue/project_browser-3402908
  • issue/project_browser-3372796
  • issue/project_browser-3357036
  • issue/project_browser-3375619
  • issue/project_browser-3376206
  • issue/project_browser-3376201
  • issue/project_browser-3376202
  • issue/project_browser-3376203
  • issue/project_browser-3376208
  • issue/project_browser-3357003
  • issue/project_browser-3376291
  • issue/project_browser-3382457
  • issue/project_browser-3348761
  • issue/project_browser-3376160
  • issue/project_browser-3348960
  • issue/project_browser-3389246
  • issue/project_browser-3389250
  • issue/project_browser-3310908
  • issue/project_browser-3394166
  • issue/project_browser-3394570
  • issue/project_browser-3394904
  • issue/project_browser-3395472
  • issue/project_browser-3395480
  • issue/project_browser-3360033
  • issue/project_browser-3395478
  • issue/project_browser-3360063
  • issue/project_browser-3365392
  • issue/project_browser-3396245
  • issue/project_browser-3437724
  • issue/project_browser-3343805
  • issue/project_browser-3409134
  • issue/project_browser-3436249
  • issue/project_browser-3444662
  • issue/project_browser-3410505
  • issue/project_browser-3410797
  • issue/project_browser-3410947
  • issue/project_browser-3419177
  • issue/project_browser-3413564
  • issue/project_browser-3413763
  • issue/project_browser-3415079
  • issue/project_browser-3413567
  • issue/project_browser-3312354
  • issue/project_browser-3418454
  • issue/project_browser-3419925
  • issue/project_browser-3413498
  • issue/project_browser-3420501
  • issue/project_browser-3420552
  • issue/project_browser-3421211
  • issue/project_browser-3421699
  • issue/project_browser-3423695
  • issue/project_browser-3423697
  • issue/project_browser-3423915
  • issue/project_browser-3423429
  • issue/project_browser-3423442
  • issue/project_browser-3425989
  • issue/project_browser-3426658
  • issue/project_browser-3365103
  • issue/project_browser-3318817
  • issue/project_browser-3426767
  • issue/project_browser-3443929
  • issue/project_browser-3443930
  • issue/project_browser-3444658
  • issue/project_browser-3446591
  • issue/project_browser-3445765
  • issue/project_browser-3426094
  • issue/project_browser-3443943
  • issue/project_browser-3446092
  • issue/project_browser-3348954
  • issue/project_browser-3446604
  • issue/project_browser-3446414
  • issue/project_browser-3312056
  • issue/project_browser-3446109
  • issue/project_browser-3446257
  • issue/project_browser-3446416
  • issue/project_browser-3445811
  • issue/project_browser-3437721
  • issue/project_browser-3436529
  • issue/project_browser-3446322
  • issue/project_browser-3446528
  • issue/project_browser-3441425
  • issue/project_browser-3427491
  • issue/project_browser-3447377
  • issue/project_browser-3447420
  • issue/project_browser-3447764
  • issue/project_browser-3448808
  • issue/project_browser-3450499
  • issue/project_browser-3451142
  • issue/project_browser-3451659
  • issue/project_browser-3446161
  • issue/project_browser-3451863
  • issue/project_browser-3452431
  • issue/project_browser-3452504
  • issue/project_browser-3452541
  • issue/project_browser-3452737
  • issue/project_browser-3452787
  • issue/project_browser-3452784
  • issue/project_browser-3453039
  • issue/project_browser-3453101
  • issue/project_browser-3453437
  • issue/project_browser-3453766
  • issue/project_browser-3453775
  • issue/project_browser-3453794
  • issue/project_browser-3453808
  • issue/project_browser-3453997
  • issue/project_browser-3454248
  • issue/project_browser-3453738
  • issue/project_browser-3454294
  • issue/project_browser-3455152
  • issue/project_browser-3455284
  • issue/project_browser-3455215
  • issue/project_browser-3455220
  • issue/project_browser-3455477
  • issue/project_browser-3455485
  • issue/project_browser-3455210
  • issue/project_browser-3455715
  • issue/project_browser-3455917
  • issue/project_browser-3365434
  • issue/project_browser-3457003
  • issue/project_browser-3457054
  • issue/project_browser-3457376
  • issue/project_browser-3457682
  • issue/project_browser-3458287
  • issue/project_browser-3371084
  • issue/project_browser-3458765
  • issue/project_browser-3457972
  • issue/project_browser-3452435
  • issue/project_browser-3459662
  • issue/project_browser-3460033
  • issue/project_browser-3454873
  • issue/project_browser-3459288
  • issue/project_browser-3460938
  • issue/project_browser-3461670
  • issue/project_browser-3461518
  • issue/project_browser-3461892
  • issue/project_browser-3461879
  • issue/project_browser-3462173
  • issue/project_browser-3461340
  • issue/project_browser-3463833
  • issue/project_browser-3464077
  • issue/project_browser-3464450
  • issue/project_browser-3461037
  • issue/project_browser-3464794
  • issue/project_browser-3465046
  • issue/project_browser-3450629
  • issue/project_browser-3293907
  • issue/project_browser-3466307
  • issue/project_browser-3458908
  • issue/project_browser-3465232
  • issue/project_browser-3467911
  • issue/project_browser-3458844
  • issue/project_browser-3456978
  • issue/project_browser-3471232
  • issue/project_browser-3472206
  • issue/project_browser-3472230
  • issue/project_browser-3469490
  • issue/project_browser-3472231
  • issue/project_browser-3470540
  • issue/project_browser-3475056
  • issue/project_browser-3475852
  • issue/project_browser-3476400
  • issue/project_browser-3472334
  • issue/project_browser-3476717
  • issue/project_browser-3476812
  • issue/project_browser-3476887
  • issue/project_browser-3477288
  • issue/project_browser-3476818
  • issue/project_browser-3477314
  • issue/project_browser-3477343
  • issue/project_browser-3477232
  • issue/project_browser-3477231
  • issue/project_browser-3478295
  • issue/project_browser-3478832
  • issue/project_browser-3477335
  • issue/project_browser-3478994
  • issue/project_browser-3478437
  • issue/project_browser-3479219
  • issue/project_browser-3477238
  • issue/project_browser-3480064
  • issue/project_browser-3469552
  • issue/project_browser-3479907
  • issue/project_browser-3481084
  • issue/project_browser-3458840
  • issue/project_browser-3483725
  • issue/project_browser-3495318
  • issue/project_browser-3495328
  • issue/project_browser-3496059
  • issue/project_browser-3495317
  • issue/project_browser-3485108
  • issue/project_browser-3476807
  • issue/project_browser-3485386
  • issue/project_browser-3486091
  • issue/project_browser-3485747
  • issue/project_browser-3487842
  • issue/project_browser-3487834
  • issue/project_browser-3487868
  • issue/project_browser-3426179
  • issue/project_browser-3457378
  • issue/project_browser-3462307
  • issue/project_browser-3487835
  • issue/project_browser-3488078
  • issue/project_browser-3488141
  • issue/project_browser-3479924
  • issue/project_browser-3487960
  • issue/project_browser-3486291
  • issue/project_browser-3469860
  • issue/project_browser-3480098
  • issue/project_browser-3489028
  • issue/project_browser-3446603
  • issue/project_browser-3489573
  • issue/project_browser-3489665
  • issue/project_browser-3481652
  • issue/project_browser-3489810
  • issue/project_browser-3489827
  • issue/project_browser-3477950
  • issue/project_browser-3490176
  • issue/project_browser-3489972
  • issue/project_browser-3489126
  • issue/project_browser-3484474
  • issue/project_browser-3491232
  • issue/project_browser-3489422
  • issue/project_browser-3492153
  • issue/project_browser-3483412
  • issue/project_browser-3492108
  • issue/project_browser-3492209
  • issue/project_browser-3488156
  • issue/project_browser-3493332
  • issue/project_browser-3489729
  • issue/project_browser-3493778
  • issue/project_browser-3489054
  • issue/project_browser-3494672
  • issue/project_browser-3494858
  • issue/project_browser-3457966
  • issue/project_browser-3494506
  • issue/project_browser-3494655
  • issue/project_browser-3494978
  • issue/project_browser-3495112
  • issue/project_browser-3494818
  • issue/project_browser-3495168
  • issue/project_browser-3495211
  • issue/project_browser-3495330
  • issue/project_browser-3494819
  • issue/project_browser-3492262
  • issue/project_browser-3497778
  • issue/project_browser-3496236
  • issue/project_browser-3498040
  • issue/project_browser-3498231
  • issue/project_browser-3494512
  • issue/project_browser-3498267
  • issue/project_browser-3493916
  • issue/project_browser-3498560
  • issue/project_browser-3498835
  • issue/project_browser-3498901
  • issue/project_browser-3499390
  • issue/project_browser-3499406
  • issue/project_browser-3500024
  • issue/project_browser-3501036
  • issue/project_browser-3501194
  • issue/project_browser-3498564
  • issue/project_browser-3501590
  • issue/project_browser-3498562
  • issue/project_browser-3499411
  • issue/project_browser-3501766
  • issue/project_browser-3501455
  • issue/project_browser-3501453
  • issue/project_browser-3502161
  • issue/project_browser-3498570
  • issue/project_browser-3502465
  • issue/project_browser-3502399
  • issue/project_browser-3502612
  • issue/project_browser-3502645
  • issue/project_browser-3502666
  • issue/project_browser-3502643
  • issue/project_browser-3502604
  • issue/project_browser-3502850
  • issue/project_browser-3502918
  • issue/project_browser-3487845
  • issue/project_browser-3502935
  • issue/project_browser-3502986
  • issue/project_browser-3503148
  • issue/project_browser-3503140
  • issue/project_browser-3503197
  • issue/project_browser-3502854
  • issue/project_browser-3503137
  • issue/project_browser-3502603
  • issue/project_browser-3497909
  • issue/project_browser-3504656
  • issue/project_browser-3504781
  • issue/project_browser-3504960
  • issue/project_browser-3504997
  • issue/project_browser-3504665
  • issue/project_browser-3505152
  • issue/project_browser-3494824
  • issue/project_browser-3502734
  • issue/project_browser-3505188
  • issue/project_browser-3505249
  • issue/project_browser-3505285
  • issue/project_browser-3505450
  • issue/project_browser-3505607
  • issue/project_browser-3505608
  • issue/project_browser-3505592
  • issue/project_browser-3505700
  • issue/project_browser-3322601
  • issue/project_browser-3505837
  • issue/project_browser-3506252
  • issue/project_browser-3506178
  • issue/project_browser-3453724
  • issue/project_browser-3506517
  • issue/project_browser-3506511
  • issue/project_browser-3505159
  • issue/project_browser-3506547
  • issue/project_browser-3506557
  • issue/project_browser-3506377
  • issue/project_browser-3506454
  • issue/project_browser-3504655
  • issue/project_browser-3507468
  • issue/project_browser-3507536
  • issue/project_browser-3507922
  • issue/project_browser-3508090
  • issue/project_browser-3508182
  • issue/project_browser-3508334
  • issue/project_browser-3508547
  • issue/project_browser-3508350
  • issue/project_browser-3508631
  • issue/project_browser-3508786
  • issue/project_browser-3508956
  • issue/project_browser-3509170
  • issue/project_browser-3509222
  • issue/project_browser-3509184
  • issue/project_browser-3509242
  • issue/project_browser-3506513
  • issue/project_browser-3508906
  • issue/project_browser-3508971
  • issue/project_browser-3508969
  • issue/project_browser-3509375
  • issue/project_browser-3509380
  • issue/project_browser-3509449
  • issue/project_browser-3509499
  • issue/project_browser-3510420
  • issue/project_browser-3509730
  • issue/project_browser-3509217
  • issue/project_browser-3509733
  • issue/project_browser-3510642
  • issue/project_browser-3510506
  • issue/project_browser-3510796
  • issue/project_browser-3511079
  • issue/project_browser-3509162
  • issue/project_browser-3509674
  • issue/project_browser-3511104
  • issue/project_browser-3511069
  • issue/project_browser-3511080
  • issue/project_browser-3506565
  • issue/project_browser-3511246
  • issue/project_browser-3511417
  • issue/project_browser-3511994
  • issue/project_browser-3511927
  • issue/project_browser-3511942
  • issue/project_browser-3512609
  • issue/project_browser-3512610
  • issue/project_browser-3512781
  • issue/project_browser-3512785
  • issue/project_browser-3512856
  • issue/project_browser-3509738
  • issue/project_browser-3504664
  • issue/project_browser-3515746
  • issue/project_browser-3451012
  • issue/project_browser-3512831
  • issue/project_browser-3513763
  • issue/project_browser-3500926
  • issue/project_browser-3394832
713 results
Show changes
Commits on Source (240)
Showing
with 1655 additions and 150 deletions
......@@ -5,3 +5,12 @@ sirv
yarncheck
colinodell
testlogger
kanopi
tabwise
sophron
BOLDRED
NOCHANGES
CURLOPT
RETURNTRANSFER
varchar
techdebt
......@@ -4,3 +4,4 @@ composer.lock
.DS_Store
node_modules
sveltejs/report*
sveltejs/.yarn/install-state.gz
......@@ -39,6 +39,13 @@ include:
- '/includes/include.drupalci.variables.yml'
- '/includes/include.drupalci.workflows.yml'
stages:
- development
- build
- validate
- test
- publish
################
# Pipeline configuration variables
#
......@@ -49,11 +56,60 @@ include:
variables:
# For parallel running, needs more CPU resources.
KUBERNETES_CPU_REQUEST: 16
OPT_IN_TEST_PREVIOUS_MAJOR: '1'
OPT_IN_TEST_NEXT_MAJOR: '1'
# These two variables allow PHPUnit to run in a parallel job matrix.
_PHPUNIT_CONCURRENT: '1'
_PHPUNIT_TESTGROUPS: ''
# Broaden test coverage.
OPT_IN_TEST_PREVIOUS_MINOR: 1
OPT_IN_TEST_NEXT_MINOR: 1
OPT_IN_TEST_MAX_PHP: 1
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
.is-push-rule: &is-push-rule
if: $CI_PIPELINE_SOURCE == "push" && $CI_PROJECT_ROOT_NAMESPACE == "project"
.manual-rule: &manual-rule
- when: manual
allow_failure: true
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
.php-files-change-rule: &php-files-change-rule
- changes:
- "**/*.{php,module,inc,install,theme,profile}"
when: on_success
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
.css-files-change-rule: &css-files-change-rule
- changes:
- "**/*.css"
when: on_success
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
.module-metadata-files-change-rule: &module-metadata-files-change-rule
- changes:
- "**/*.yml"
when: on_success
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
.module-config-files-change-rule: &module-config-files-change-rule
- changes:
# config schema and/or default config
- config
when: on_success
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
composer-lint:
rules:
- *is-push-rule
- *php-files-change-rule
- changes:
- composer.json
when: on_success
- *manual-rule
################
# Require composer checks to pass.
################
......@@ -79,6 +135,50 @@ stylelint:
################
phpcs:
allow_failure: false
# @todo Remove when https://www.drupal.org/project/gitlab_templates/issues/3452183 lands.
rules:
- *is-push-rule
- *php-files-change-rule
# Also run whenever we catch up to the upstream PHPCS rules.
- changes:
- core.phpcs.xml.dist
when: on_success
- *manual-rule
phpcs-rules-match-drupal-11:
stage: development
script:
- |
# Download the file from the Drupal repository
curl -o drupal_core_phpcs.xml.dist https://git.drupalcode.org/project/drupal/-/raw/11.x/core/phpcs.xml.dist?ref_type=heads
# Check if the download was successful
if [ $? -ne 0 ]; then
echo "🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥"
echo "Error: Failed to download $DRUPAL_URL"
exit 1
fi
# Compare the downloaded file with the local file using a subshell to prevent premature exit
echo "Comparing downloaded file with local file..."
# With uses the braces the job just ends here for some reason.
{
diff drupal_core_phpcs.xml.dist core.phpcs.xml.dist
DIFF_EXIT_CODE=$?
} || true
if [ $DIFF_EXIT_CODE -ne 0 ]; then
echo "🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥"
echo "Error: core.phpcs.xml.dist not up to date with Drupal 11.x core/phpcs.xml.dist. Please create an issue to update this file."
else
echo "👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍"
echo "core.phpcs.xml.dist is up to date with Drupal 11.x core/phpcs.xml.dist"
fi
# Exit with the exit code of the diff command
exit $DIFF_EXIT_CODE
# Allow this to fail, to avoid disrupting XB's CI when upstream changes.
allow_failure: true
################
# Require phpstan checks to pass.
......@@ -94,6 +194,7 @@ eslint:
allow_failure: false
before_script:
- rm -fr sveltejs
- rm -fr recipes
################
# Add a new section for validation of Svelte JS.
......@@ -171,3 +272,12 @@ phpunit:
phpunit (next major):
# Require us to be compatible with the next major version of core.
allow_failure: false
phpstan (previous major):
extends: phpstan
rules:
- !reference [ .opt-in-previous-major-rule ]
- !reference [ .skip-phpstan-rule ]
- !reference [ .phpstan-allow-failure-rule ]
needs:
- 'composer (previous major)'
......@@ -15,7 +15,7 @@ Our goal is to make it easier to find and install modules for people new to Drup
This module requires no modules outside of Drupal core.
## Installation
## Installation
*If you intend to contribute to Project Browser, skip this step and use the "Contributing" instructions instead*
......@@ -28,7 +28,7 @@ Install with composer: `composer require drupal/project_browser` then enable the
) to clone project browser to your site
- In the `/project_browser` directory, install PHP dependencies with `composer install`
- In the `/project_browser/sveltejs` directory:
- install JS dependencies with `yarn install`
- install JS dependencies with `yarn install`
- For development, run the dev script `yarn dev` which will watch for filesystem changes
- Note: `yarn dev` will report the app is available localhost, but it is fully available in your Drupal site at `admin/modules/browse`
- When you are done, compile the changes with `yarn build`
......@@ -43,6 +43,16 @@ Filter by Recommended projects or All projects
Search and filter by Title, Sort By, Order and Categories
Customize results layout by List or Grid Format
## Updating fixtures for Drupal.org JSON:API
The tests in `tests/src/FunctionalJavascript/ProjectBrowserUiTestJsonApi.php` use data from local fixtures stored in the `tests/fixtures/drupalorg_jsonapi` folder instead of actual API endpoints.
`DrupalOrgClientMiddleware.php` contains the mapping from request to fixture file.
If this data needs to change, just change the queries or mapping in the above file and run the PHP script to regenerate the fixtures:
```
php scripts/regenerate-drupalorg-jsonapi-fixture.php
```
## Maintainers
......
......@@ -5,16 +5,20 @@
"license": "GPL-2.0-or-later",
"require": {
"php": ">=8.1",
"guzzlehttp/guzzle": "^6 || ^7",
"ext-simplexml": "*",
"composer-runtime-api": "^2",
"composer/semver": "^3.2",
"ext-simplexml": "*"
"guzzlehttp/guzzle": "^6 || ^7",
"symfony/finder": "^6.3 || ^7"
},
"require-dev": {
"drupal/automatic_updates": "^3",
"colinodell/psr-testlogger": "^1.2"
"colinodell/psr-testlogger": "^1.2",
"drupal/automatic_updates": "^3.1.3",
"drush/drush": "^12.5 || ^13"
},
"conflict": {
"drupal/automatic_updates": "<3.0"
"drupal/automatic_updates": "<3.0",
"drupal/gin": "<4.0.6"
},
"config": {
"optimize-autoloader": true,
......
enabled_sources:
- drupalorg_mockapi
- drupalorg_jsonapi
- recipes
allow_ui_install: false
disable_add_new_module: true
allowed_projects: {}
max_selections: null
......@@ -11,6 +11,58 @@ project_browser.admin_settings:
allow_ui_install:
type: boolean
label: 'Allow installing packages from within the UI'
disable_add_new_module:
allowed_projects:
type: sequence
label: 'Allow-lists of projects, keyed by source plugin ID'
sequence:
type: sequence
label: 'List of allowed projects'
sequence:
type: string
label: 'Project identifier'
constraints:
NotBlank: []
max_selections:
type: integer
nullable: true
label: 'The maximum number of projects that can be chosen for installation at once. Internal use only.'
block.settings.project_browser_block:*:
type: block_settings
label: 'Project Browser block settings'
constraints:
FullyValidatable: ~
mapping:
paginate:
type: boolean
label: 'Disable Add new module menu item'
label: 'Enable pagination'
page_sizes:
type: string
label: 'Page sizes'
constraints:
# A comma-separated list of numbers with fuzzy spacing, e.g. `32, 64,88`.
Regex: '/^([0-9]+\s*,?\s*)+$/'
sort_options:
type: sequence
label: 'Sort options'
nullable: true
sequence:
type: string
label: 'Sort option ID'
constraints:
NotBlank: []
default_sort:
type: string
label: 'Default sort criterion'
nullable: true
constraints:
NotBlank: []
filters:
type: sequence
label: 'Enabled filters'
nullable: true
sequence:
type: string
label: 'Filter ID'
constraints:
NotBlank: []
<?xml version="1.0" encoding="UTF-8"?>
<ruleset name="drupal_core">
<arg name="extensions" value="engine,inc,install,module,php,profile,test,theme,yml"/>
<description>Default PHP CodeSniffer configuration for Drupal core.</description>
<!--Exclude folders used by common frontend tools. These folders match the file_scan_ignore_directories setting in default.settings.php-->
<exclude-pattern>*/bower_components/*</exclude-pattern>
<exclude-pattern>*/node_modules/*</exclude-pattern>
<!--Exclude third party code.-->
<exclude-pattern>./assets/vendor/*</exclude-pattern>
<!--Exclude the PHPStan baseline and temp dir from coding standards.-->
<exclude-pattern>./core/.phpstan-baseline.php</exclude-pattern>
<!-- Exclude third-party code maintained within core that does not follow our standards. -->
<!-- @todo This rule may be removed when https://www.drupal.org/node/1848264 is resolved. -->
<exclude-pattern>./core/lib/Drupal/Component/Diff/</exclude-pattern>
<exclude-pattern>./core/phpstan-tmp/*</exclude-pattern>
<exclude-pattern>./core/tests/Drupal/Tests/Component/Annotation/Doctrine/</exclude-pattern>
<!--Exclude test files that are intentionally empty, or intentionally violate coding standards.-->
<exclude-pattern>./modules/system/tests/fixtures/HtaccessTest</exclude-pattern>
<file>.</file>
<file>../composer</file>
<file>scripts/password-hash.sh</file>
<file>scripts/rebuild_token_calculator.sh</file>
<file>scripts/run-tests.sh</file>
<file>scripts/update-countries.sh</file>
<!-- Only include specific sniffs that pass. This ensures that, if new sniffs are added, HEAD does not fail.-->
<!-- Drupal sniffs -->
<rule ref="Drupal.Arrays.Array"/>
<rule ref="Drupal.Arrays.Array.LongLineDeclaration">
<include-pattern>core/*/Unit/*</include-pattern>
<include-pattern>core/*/FunctionalJavascript/*</include-pattern>
<include-pattern>core/*/Kernel/*</include-pattern>
<include-pattern>core/lib/*</include-pattern>
<include-pattern>core/modules/*/tests/modules/*</include-pattern>
</rule>
<rule ref="Drupal.CSS.ClassDefinitionNameSpacing"/>
<rule ref="Drupal.CSS.ColourDefinition"/>
<rule ref="Drupal.Classes.ClassCreateInstance"/>
<rule ref="Drupal.Classes.ClassDeclaration"/>
<rule ref="Drupal.Classes.ClassFileName"/>
<rule ref="Drupal.Classes.FullyQualifiedNamespace"/>
<rule ref="Drupal.Classes.InterfaceName"/>
<rule ref="Drupal.Classes.PropertyDeclaration"/>
<rule ref="Drupal.Classes.UnusedUseStatement"/>
<rule ref="Drupal.Classes.UseGlobalClass"/>
<rule ref="Drupal.Classes.UseLeadingBackslash"/>
<rule ref="Drupal.Commenting.ClassComment"/>
<rule ref="Drupal.Commenting.DataTypeNamespace"/>
<rule ref="Drupal.Commenting.Deprecated"/>
<rule ref="Drupal.Commenting.DocComment">
<!-- Sniff for these errors: SpacingAfterTagGroup, WrongEnd, SpacingBetween,
ContentAfterOpen, SpacingBeforeShort, TagValueIndent, ShortStartSpace,
SpacingAfter, LongNotCapital, ShortFullStop, TagGroupSpacing, Empty,
TagsNotGrouped, ParamGroup -->
<exclude name="Drupal.Commenting.DocComment.LongFullStop"/>
<exclude name="Drupal.Commenting.DocComment.MissingShort"/>
</rule>
<rule ref="Drupal.Commenting.DocCommentAlignment"/>
<rule ref="Drupal.Commenting.DocCommentLongArraySyntax"/>
<rule ref="Drupal.Commenting.DocCommentStar"/>
<rule ref="Drupal.Commenting.FileComment"/>
<rule ref="Drupal.Commenting.FunctionComment"/>
<rule ref="Drupal.Commenting.FunctionComment.Missing">
<include-pattern>core/*/src/Plugin/*</include-pattern>
<include-pattern>*/Database/*</include-pattern>
<include-pattern>*/FunctionalJavascript/*</include-pattern>
<include-pattern>*/Kernel/*</include-pattern>
<include-pattern>*/Functional/*</include-pattern>
<include-pattern>*/Unit/*</include-pattern>
</rule>
<rule ref="Drupal.Commenting.FunctionComment.MissingParamType"/>
<rule ref="Drupal.Commenting.FunctionComment.MissingReturnComment">
<include-pattern>core/lib/Drupal/Core/*</include-pattern>
<include-pattern>core/lib/Drupal/Component/*</include-pattern>
<include-pattern>core/tests/*</include-pattern>
<include-pattern>core/*/tests/*</include-pattern>
</rule>
<rule ref="Drupal.Commenting.GenderNeutralComment"/>
<rule ref="Drupal.Commenting.HookComment"/>
<rule ref="Drupal.Commenting.InlineComment">
<!-- Sniff for: NoSpaceBefore, SpacingBefore, WrongStyle -->
<exclude name="Drupal.Commenting.InlineComment.InvalidEndChar"/>
<exclude name="Drupal.Commenting.InlineComment.SpacingAfter"/>
</rule>
<rule ref="Drupal.Commenting.InlineVariableComment"/>
<rule ref="Drupal.Commenting.PostStatementComment"/>
<rule ref="Drupal.Commenting.TodoComment" />
<rule ref="Drupal.Commenting.VariableComment"/>
<rule ref="Drupal.ControlStructures.ControlSignature"/>
<rule ref="Drupal.ControlStructures.ElseIf"/>
<rule ref="Drupal.ControlStructures.InlineControlStructure"/>
<rule ref="Drupal.Files.EndFileNewline"/>
<rule ref="Drupal.Files.FileEncoding"/>
<rule ref="Drupal.Files.LineLength">
<include-pattern>*/core/lib/*</include-pattern>
<exclude-pattern>*/core/lib/*/*Trait</exclude-pattern>
<include-pattern>*/core/includes/*</include-pattern>
<include-pattern>*/core/profiles/*</include-pattern>
<include-pattern>*/core/recipes/*</include-pattern>
<include-pattern>*/core/themes/*</include-pattern>
</rule>
<rule ref="Drupal.Files.TxtFileLineLength"/>
<rule ref="Drupal.Formatting.MultiLineAssignment"/>
<rule ref="Drupal.Formatting.MultipleStatementAlignment"/>
<rule ref="Drupal.Formatting.SpaceInlineIf"/>
<rule ref="Drupal.Formatting.SpaceUnaryOperator"/>
<rule ref="Drupal.Functions.DiscouragedFunctions"/>
<rule ref="Drupal.Functions.FunctionDeclaration"/>
<rule ref="Drupal.Functions.MultiLineFunctionDeclaration"/>
<rule ref="Drupal.InfoFiles.AutoAddedKeys"/>
<rule ref="Drupal.InfoFiles.ClassFiles"/>
<rule ref="Drupal.InfoFiles.DuplicateEntry"/>
<rule ref="Drupal.InfoFiles.Required"/>
<rule ref="Drupal.Methods.MethodDeclaration">
<!-- Silence method name underscore warning which is covered already in
Drupal.NamingConventions.ValidFunctionName.ScopeNotCamelCaps. -->
<exclude name="Drupal.Methods.MethodDeclaration.Underscore"/>
</rule>
<rule ref="Drupal.NamingConventions.ValidClassName"/>
<rule ref="Drupal.NamingConventions.ValidGlobal"/>
<rule ref="Drupal.NamingConventions.ValidVariableName"/>
<rule ref="Drupal.NamingConventions.ValidVariableName.LowerCamelName"/>
<rule ref="Drupal.Scope.MethodScope"/>
<rule ref="Drupal.Semantics.ConstantName.ConstantStart"/>
<rule ref="Drupal.Semantics.EmptyInstall"/>
<rule ref="Drupal.Semantics.FunctionAlias"/>
<rule ref="Drupal.Semantics.FunctionT"/>
<rule ref="Drupal.Semantics.FunctionTriggerError"/>
<rule ref="Drupal.Semantics.FunctionWatchdog"/>
<rule ref="Drupal.Semantics.InstallHooks"/>
<rule ref="Drupal.Semantics.LStringTranslatable"/>
<rule ref="Drupal.Semantics.PregSecurity"/>
<rule ref="Drupal.Semantics.RemoteAddress"/>
<rule ref="Drupal.Semantics.TInHookMenu"/>
<rule ref="Drupal.Semantics.TInHookSchema"/>
<rule ref="Drupal.Strings.UnnecessaryStringConcat"/>
<rule ref="Drupal.WhiteSpace.CloseBracketSpacing"/>
<rule ref="Drupal.WhiteSpace.Comma"/>
<rule ref="Drupal.WhiteSpace.EmptyLines"/>
<rule ref="Drupal.WhiteSpace.Namespace"/>
<rule ref="Drupal.WhiteSpace.ObjectOperatorIndent"/>
<rule ref="Drupal.WhiteSpace.ObjectOperatorSpacing"/>
<rule ref="Drupal.WhiteSpace.OpenBracketSpacing"/>
<rule ref="Drupal.WhiteSpace.OpenTagNewline"/>
<rule ref="Drupal.WhiteSpace.ScopeClosingBrace"/>
<rule ref="Drupal.WhiteSpace.ScopeIndent"/>
<!-- Drupal Practice sniffs -->
<rule ref="DrupalPractice.CodeAnalysis.VariableAnalysis">
<!-- Do not run this sniff on API files or transliteration data. -->
<exclude-pattern>*.api.php</exclude-pattern>
<exclude-pattern>core/lib/Drupal/Component/Transliteration/data/*.php</exclude-pattern>
<properties>
<property name="allowUnusedFunctionParameters" value="true"/>
</properties>
</rule>
<rule ref="DrupalPractice.CodeAnalysis.VariableAnalysis.UndefinedUnsetVariable">
<severity>0</severity>
</rule>
<rule ref="DrupalPractice.CodeAnalysis.VariableAnalysis.UndefinedVariable">
<!-- Setting severity to 0 to completely disable an error message in this sniff, without excluding the whole sniff -->
<!-- See https://github.com/squizlabs/PHP_CodeSniffer/wiki/Configuration-Options#changing-the-default-severity-levels -->
<severity>0</severity>
</rule>
<rule ref="DrupalPractice.Commenting.ExpectedException"/>
<rule ref="DrupalPractice.General.ExceptionT"/>
<rule ref="DrupalPractice.InfoFiles.NamespacedDependency"/>
<rule ref="DrupalPractice.Objects.GlobalFunction"/>
<!-- Generic sniffs -->
<rule ref="Generic.Arrays.DisallowLongArraySyntax"/>
<rule ref="Generic.CodeAnalysis.EmptyPHPStatement"/>
<rule ref="Generic.Files.ByteOrderMark"/>
<rule ref="Generic.Files.LineEndings"/>
<rule ref="Generic.Formatting.DisallowMultipleStatements"/>
<rule ref="Generic.Formatting.SpaceAfterCast"/>
<rule ref="Generic.Functions.FunctionCallArgumentSpacing"/>
<rule ref="Generic.NamingConventions.ConstructorName"/>
<rule ref="Generic.NamingConventions.UpperCaseConstantName"/>
<rule ref="Generic.PHP.DeprecatedFunctions"/>
<rule ref="Generic.PHP.DisallowShortOpenTag"/>
<rule ref="Generic.PHP.LowerCaseKeyword"/>
<rule ref="Generic.PHP.UpperCaseConstant"/>
<rule ref="Generic.WhiteSpace.DisallowTabIndent"/>
<!-- Internal sniffs -->
<rule ref="Internal.NoCodeFound">
<!-- No PHP code in *.yml -->
<exclude-pattern>*.yml</exclude-pattern>
</rule>
<!-- MySource sniffs -->
<rule ref="MySource.Debug.DebugCode"/>
<!-- PEAR sniffs -->
<rule ref="PEAR.Files.IncludingFile"/>
<!-- Disable some error messages that we do not want. -->
<rule ref="PEAR.Files.IncludingFile.UseInclude">
<severity>0</severity>
</rule>
<rule ref="PEAR.Files.IncludingFile.UseIncludeOnce">
<severity>0</severity>
</rule>
<rule ref="PEAR.Files.IncludingFile.UseRequire">
<severity>0</severity>
</rule>
<rule ref="PEAR.Files.IncludingFile.UseRequireOnce">
<severity>0</severity>
</rule>
<rule ref="PEAR.Functions.FunctionCallSignature"/>
<!-- The sniffs inside PEAR.Functions.FunctionCallSignature silenced below are
also silenced in Drupal CS' ruleset.xml. The code below is a 1-on-1 copy
from that file. -->
<rule ref="PEAR.Functions.FunctionCallSignature.CloseBracketLine">
<severity>0</severity>
</rule>
<rule ref="PEAR.Functions.FunctionCallSignature.ContentAfterOpenBracket">
<severity>0</severity>
</rule>
<rule ref="PEAR.Functions.FunctionCallSignature.EmptyLine">
<severity>0</severity>
</rule>
<!-- Disable some error messages that we do not want. -->
<rule ref="PEAR.Functions.FunctionCallSignature.Indent">
<severity>0</severity>
</rule>
<rule ref="PEAR.Functions.FunctionCallSignature.OpeningIndent">
<severity>0</severity>
</rule>
<!-- Disable some error messages that we already cover. -->
<rule ref="PEAR.Functions.FunctionCallSignature.SpaceAfterOpenBracket">
<severity>0</severity>
</rule>
<rule ref="PEAR.Functions.FunctionCallSignature.SpaceBeforeCloseBracket">
<severity>0</severity>
</rule>
<rule ref="PEAR.Functions.ValidDefaultValue"/>
<!-- PSR-2 sniffs -->
<rule ref="PSR2.Classes.PropertyDeclaration">
<!-- Silence method name underscore warning which is covered already in
Drupal.Classes.PropertyDeclaration. -->
<exclude name="PSR2.Classes.PropertyDeclaration.Underscore"/>
</rule>
<rule ref="PSR2.Namespaces.NamespaceDeclaration"/>
<rule ref="PSR2.Namespaces.UseDeclaration"/>
<!-- SlevomatCodingStandard sniffs -->
<rule ref="SlevomatCodingStandard.Classes.BackedEnumTypeSpacing"/>
<rule ref="SlevomatCodingStandard.Commenting.ForbiddenAnnotations">
<properties>
<property name="forbiddenAnnotations" type="array">
<element value="@inheritDoc"/>
<element value="@inheritdoc"/>
<element value="@returns"/>
</property>
</properties>
</rule>
<rule ref="SlevomatCodingStandard.Commenting.ForbiddenComments">
<properties>
<property name="forbiddenCommentPatterns" type="array">
<element value="/@inheritDoc/"/>
</property>
</properties>
</rule>
<rule ref="SlevomatCodingStandard.ControlStructures.RequireNullCoalesceOperator"/>
<rule ref="SlevomatCodingStandard.ControlStructures.RequireShortTernaryOperator"/>
<rule ref="SlevomatCodingStandard.Exceptions.RequireNonCapturingCatch" />
<rule ref="SlevomatCodingStandard.TypeHints.DeclareStrictTypes">
<properties>
<property name="spacesCountAroundEqualsSign" value="0" />
</properties>
<include-pattern>*/tests/*</include-pattern>
<exclude-pattern>*/fixtures/*</exclude-pattern>
</rule>
<rule ref="SlevomatCodingStandard.TypeHints.NullableTypeForNullDefaultValue"/>
<!-- Squiz sniffs -->
<rule ref="Squiz.Arrays.ArrayBracketSpacing"/>
<rule ref="Squiz.Arrays.ArrayDeclaration">
<exclude name="Squiz.Arrays.ArrayDeclaration.KeySpecified"/>
<exclude name="Squiz.Arrays.ArrayDeclaration.NoKeySpecified"/>
</rule>
<!-- Disable some error messages that we do not want. -->
<rule ref="Squiz.Arrays.ArrayDeclaration.CloseBraceNotAligned">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.DoubleArrowNotAligned">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.FirstValueNoNewline">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.KeyNotAligned">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.MultiLineNotAllowed">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.NoComma">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.NoCommaAfterLast">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.NotLowerCase">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.SingleLineNotAllowed">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.ValueNoNewline">
<severity>0</severity>
</rule>
<rule ref="Squiz.Arrays.ArrayDeclaration.ValueNotAligned">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.ForEachLoopDeclaration"/>
<!-- Disable some error messages that we already cover. -->
<rule ref="Squiz.ControlStructures.ForEachLoopDeclaration.AsNotLower">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.ForEachLoopDeclaration.SpaceAfterOpen">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.ForEachLoopDeclaration.SpaceBeforeClose">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.ForLoopDeclaration"/>
<!-- Disable some error messages that we already cover. -->
<rule ref="Squiz.ControlStructures.ForLoopDeclaration.SpacingAfterOpen">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.ForLoopDeclaration.SpacingBeforeClose">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration"/>
<!-- Disable some error messages that we do not want. -->
<rule ref="Squiz.ControlStructures.SwitchDeclaration.BreakIndent">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.CaseIndent">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.CloseBraceAlign">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.DefaultIndent">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.DefaultNoBreak">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.EmptyCase">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.EmptyDefault">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.MissingDefault">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.SpacingAfterCase">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.SpacingAfterDefaultBreak">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.SwitchDeclaration.SpacingBeforeBreak">
<severity>0</severity>
</rule>
<rule ref="Squiz.Functions.FunctionDeclarationArgumentSpacing">
<properties>
<property name="equalsSpacing" value="1"/>
</properties>
</rule>
<rule ref="Squiz.Functions.FunctionDeclarationArgumentSpacing.NoSpaceBeforeArg">
<severity>0</severity>
</rule>
<rule ref="Squiz.PHP.LowercasePHPFunctions"/>
<rule ref="Squiz.PHP.NonExecutableCode"/>
<rule ref="Squiz.Strings.ConcatenationSpacing">
<properties>
<property name="spacing" value="1"/>
<property name="ignoreNewlines" value="true"/>
</properties>
</rule>
<rule ref="Squiz.WhiteSpace.FunctionSpacing">
<properties>
<property name="spacing" value="1"/>
</properties>
</rule>
<rule ref="Squiz.WhiteSpace.LanguageConstructSpacing"/>
<rule ref="Squiz.WhiteSpace.OperatorSpacing">
<properties>
<property name="ignoreNewlines" value="true"/>
</properties>
</rule>
<rule ref="Squiz.WhiteSpace.ScopeKeywordSpacing"/>
<rule ref="Squiz.WhiteSpace.SemicolonSpacing"/>
<rule ref="Squiz.WhiteSpace.SuperfluousWhitespace"/>
<!-- Zend sniffs -->
<rule ref="Zend.Files.ClosingTag"/>
</ruleset>
/* cspell:ignore xxxs */
#project-browser .search__form-container,
#project-browser .pb-layout,
#project-browser .pb-module-page {
margin-block-start: 0;
padding: var(--gin-spacing-s);
border: 1px solid var(--gin-border-color-layer);
border-radius: var(--gin-border-l);
background: var(--gin-bg-layer);
box-shadow: var(--gin-shadow-l1);
}
@media (min-width: 48em) {
#project-browser .search__form-container,
#project-browser .pb-layout,
#project-browser .pb-module-page {
padding: var(--gin-spacing-l);
}
}
.gin--dark-mode #project-browser .search__form-container,
.gin--dark-mode #project-browser .pb-layout,
.gin--dark-mode #project-browser .pb-module-page {
box-shadow: 0 6px 16px var(--gin-border-color-layer);
}
.gin--high-contrast-mode #project-browser .search__form-container,
.gin--high-contrast-mode #project-browser .pb-layout,
.gin--high-contrast-mode #project-browser .pb-module-page {
box-shadow: none;
}
#project-browser .search__form-container {
margin-block-start: var(--gin-spacing-l);
}
#project-browser .search__search-bar {
border: none;
background: none;
}
#project-browser .search__search-bar .search__search_term {
padding: var(--gin-spacing-m);
border: 1px solid var(--gin-border-color-form-element);
}
#project-browser .search__search-icon {
width: 16px;
height: 16px;
inset-inline-end: 20px;
inset-block-end: 20px;
}
#project-browser .search__search-clear {
z-index: 2;
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
margin-right: 10px;
padding: 0;
border-radius: 50%;
background: var(--gin-status-bg);
inset-block-start: 17px;
inset-inline-end: 16px;
}
#project-browser .search__search-clear img {
width: 12px;
height: 12px;
}
.gin--dark-mode #project-browser .search__search-clear img {
filter: brightness(0) invert(1);
}
#project-browser .search__search-clear + .search__search-icon {
display: none;
}
#project-browser .search__form-item {
margin-block-start: 0;
margin-block-end: var(--gin-spacing-s);
}
#project-browser .search__results-count {
display: flex;
flex-wrap: wrap;
gap: var(--gin-spacing-xs);
}
#project-browser .search__form-filters-container {
padding: var(--gin-spacing-m);
border: 1px solid var(--gin-border-color);
border-radius: var(--gin-border-m);
background: none;
}
#project-browser .search__form-filters {
align-items: baseline;
}
#project-browser .search__form-filters .form-item {
padding-block-start: 0;
margin-block: 0 var(--gin-spacing-s);
}
#project-browser .search__grid-container,
#project-browser .search__dropdown.dropdown-filters {
border: none;
background-color: transparent;
}
#project-browser .search__grid-container {
grid-gap: 0;
padding: 0;
}
#project-browser .search__filters {
margin-block-start: 0;
padding: 0;
background: none;
}
#project-browser .search__filter-wrapper {
gap: var(--gin-spacing-s);
margin-block-start: var(--gin-spacing-s);
}
@media (min-width: 48em) {
#project-browser .search__filter-wrapper {
margin-block-start: 0;
}
}
#project-browser .search__filter__toggle-container {
margin-inline-end: 0;
}
#project-browser .search__filter-button {
color: var(--gin-color-primary);
font-size: var(--gin-font-size-xs);
}
#project-browser .search__filter__toggle.form-element,
#project-browser .search__sort-select.form-element {
margin-block-start: 0;
margin-inline-start: 0;
transition: var(--gin-transition);
text-decoration: none;
color: var(--gin-color-text);
border: 1px solid var(--gin-border-color-form-element);
border-radius: var(--gin-border-m);
background-color: var(--gin-bg-input);
}
#project-browser .search__checkbox-label {
font-size: var(--gin-font-size-s);
}
#project-browser
.search__filter__toggle.form-element
.search__filter__toggle-img {
padding: 0;
}
.gin--dark-mode
#project-browser
.search__filter__toggle.form-element
.search__filter__toggle-img {
filter: invert(1);
}
#project-browser .search__sort {
display: flex;
align-items: center;
gap: var(--gin-spacing-xs);
}
#project-browser .search__sort label {
flex-shrink: 0;
}
#project-browser .pb-display {
gap: var(--gin-spacing-xxxs);
margin-block-end: 0;
margin-inline-end: 0;
padding: var(--gin-spacing-xxs);
border: 1px solid var(--gin-border-color);
border-radius: var(--gin-spacing-xl);
background: var(--gin-bg-layer);
}
#project-browser .pb-display__button {
padding: var(--gin-spacing-xs) var(--gin-spacing-s);
color: var(--gin-color-text);
border-radius: var(--gin-border-xl);
background: var(--gin-bg-layer);
box-shadow: none;
font-size: var(--gin-font-size-s);
}
#project-browser .pb-display__button:hover {
z-index: 2;
color: var(--gin-color-primary);
background: var(--gin-color-primary-light);
}
#project-browser .pb-display__button:active,
#project-browser .pb-display__button:focus,
#project-browser .pb-display__button--selected {
z-index: 2;
color: var(--gin-color-button-text);
background: var(--gin-color-primary);
}
#project-browser .pb-display__button:active img,
#project-browser .pb-display__button:focus img,
#project-browser .pb-display__button--selected img {
filter: invert(1);
}
.gin--dark-mode #project-browser .pb-display__button:active img,
.gin--dark-mode #project-browser .pb-display__button:focus img,
.gin--dark-mode #project-browser .pb-display__button--selected img {
filter: none;
}
#project-browser .pb-display__button:focus {
box-shadow:
0 0 0 1px var(--gin-color-focus-border),
0 0 0 4px var(--gin-color-focus);
}
.gin--dark-mode #project-browser .pb-display__button-icon {
filter: invert(1);
}
#project-browser .pb-layout__header {
align-items: baseline;
margin-block: var(--gin-spacing-l) var(--gin-spacing-s);
border-block-end: none;
}
#project-browser .filter-group__title-wrapper,
#project-browser .pb-filter__heading {
margin-block-end: 0;
color: var(--gin-color-title);
font-size: var(--gin-font-size-s);
font-weight: var(--gin-font-weight-bold);
}
#project-browser .pb-filter__heading {
display: inline-flex;
}
@media (min-width: 61em) {
#project-browser .pb-filter__heading {
margin-block-end: var(--gin-spacing-s);
}
}
#project-browser .pb-filter__summary {
padding: var(--gin-spacing-s);
border-radius: var(--gin-border-m);
background: var(--gin-bg-layer2);
}
#project-browser .pb-filter__checkbox-label {
padding-block-start: 0;
font-size: var(--gin-font-size-s);
}
#project-browser .filter-applied {
min-height: 2rem;
margin: 0;
color: var(--gin-color-primary-active);
background: var(--gin-color-primary-light);
font-size: var(--gin-font-size-xs);
font-weight: var(--gin-font-weight-semibold);
padding-block: 0;
padding-inline: var(--gin-spacing-s) var(--gin-spacing-xs);
}
.gin--dark-mode #project-browser .filter-applied img {
filter: invert(1);
}
.pb-project.pb-project--grid,
.pb-project.pb-project--list {
border: 1px solid var(--gin-border-color-layer2);
border-radius: var(--gin-border-m);
background: transparent;
box-shadow: none;
}
.gin--dark-mode .pb-project.pb-project--grid,
.gin--dark-mode .pb-project.pb-project--list {
background: var(--gin-bg-layer2);
}
.pb-project.pb-project--grid .pb-project__logo,
.pb-project.pb-project--list .pb-project__logo {
line-height: 0;
}
.pb-project.pb-project--grid .pb-project__logo-image,
.pb-project.pb-project--list .pb-project__logo-image {
width: 64px;
}
.pb-project.pb-project--grid .pb-project__title,
.pb-project.pb-project--list .pb-project__title {
margin-block-end: var(--gin-spacing-xxs);
font-size: var(--gin-font-size-l);
font-weight: var(--gin-font-weight-bold);
}
.pb-project.pb-project--grid .pb-project__title .pb-project__link,
.pb-project.pb-project--list .pb-project__title .pb-project__link {
text-decoration: none;
color: var(--gin-color-primary);
}
.pb-project.pb-project--grid .pb-project__body,
.pb-project.pb-project--list .pb-project__body {
font-size: var(--gin-font-size-s);
}
.pb-project.pb-project--grid .project__action_button,
.pb-project.pb-project--list .project__action_button {
border-radius: var(--gin-border-s);
font-size: var(--gin-font-size-xxs);
padding-block: calc(var(--gin-spacing-xxs) + 2px);
padding-inline: var(--gin-spacing-s);
}
.pb-project--list {
grid-template-columns: 64px 1fr;
}
.pb-project__image--list {
padding-inline-start: 0;
}
.pb-project__project-usage-container {
gap: var(--gin-spacing-xxxs);
}
.pb-project__status-icon img {
width: 24px;
}
.pb-search-results {
margin: 0;
margin-block-start: var(--gin-spacing-xs);
font-size: var(--gin-font-size-h3);
font-weight: var(--gin-font-weight-bold);
}
.pb-actions .project_status-indicator {
display: inline-flex;
border-radius: var(--gin-border-xl);
font-size: var(--gin-font-size-s);
font-weight: var(--gin-font-weight-bold);
gap: var(--gin-spacing-xs);
padding-block: var(--gin-spacing-xxs);
padding-inline: var(--gin-spacing-xs) var(--gin-spacing-s);
}
.pb-actions__icon {
color: var(--gin-status-success-text);
}
.gin--dark-mode .pb-icon--usage {
filter: invert(1);
}
.pb-icon--module-details {
width: auto;
margin-inline: 0;
}
.gin--dark-mode .pb-icon--status.pb-module-page__module-details-icon,
.gin--dark-mode .pb-project__status-icon img {
mix-blend-mode: plus-lighter;
}
.gin--dark-mode .project-browser-popup .command-box,
.gin--dark-mode .project-browser-popup input {
background: var(--gin-bg-layer2);
}
.search__form .filter-applied,
.pb-project-categories__item,
.pb-module-page__categories-list-item {
margin-inline-end: 0.25em;
border-radius: 2rem;
font-size: var(--gin-font-size-xs);
font-weight: var(--gin-font-weight-semibold);
}
.pb-project-categories__item,
.pb-module-page__categories-list-item {
padding: var(--gin-spacing-xxxs) var(--gin-spacing-xs);
}
.pb-module-page {
display: flex;
flex-wrap: wrap;
gap: var(--gin-spacing-xl);
margin-block-start: var(--gin-spacing-s) !important;
}
@media (min-width: 61em) {
.pb-module-page {
flex-wrap: nowrap;
}
}
.pb-module-page__sidebar,
.pb-module-page__main {
flex-basis: 100%;
padding: var(--gin-spacing-s);
}
@media (min-width: 61em) {
.pb-module-page__sidebar,
.pb-module-page__main {
padding: 0;
}
}
.pb-module-page__main {
overflow: auto;
max-width: 100%;
}
@media (min-width: 61em) {
.pb-module-page__sidebar {
flex-basis: 320px;
}
}
.pb-module-page hr {
margin-block: var(--gin-spacing-s);
}
.pb-module-page__project-logo {
max-width: 96px;
margin-block-end: var(--gin-spacing-xs);
}
.pb-module-page__title {
color: var(--gin-color-title);
font-size: var(--gin-font-size-h1);
font-weight: var(--gin-font-weight-bold);
margin-block: 0;
}
.pb-module-page__author {
margin-block-start: 0;
margin-block-end: var(--gin-spacing-m);
color: var(--gin-color-text-light);
}
.pb-module-page__details-title {
position: absolute !important;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
width: 1px;
height: 1px;
word-wrap: normal;
}
.pb-module-page__module-details {
grid-template-columns: 2rem 2fr;
align-items: start;
}
.pb-module-page__module-details-info {
margin: 0;
margin-block-end: var(--gin-spacing-s);
font-size: var(--gin-font-size-s);
}
.pb-module-page__categories-list {
display: flex;
flex-wrap: wrap;
height: auto;
margin-block-end: var(--gin-spacing-m);
gap: var(--gin-spacing-xs);
}
.pb-module-page__categories-label {
margin-block-end: var(--gin-spacing-xs);
}
.pb-module-page__actions {
margin: var(--gin-spacing-s) 0;
}
.pb-module-page__categories-list-item {
margin: 0;
}
/* Prevent the dropbutton from being misaligned within the row of icons. For some
* reason, this is caused by Gin exacerbating the `inline-flex` display of
* dropbuttons that is defined by core. */
.pb-actions .dropbutton-wrapper {
display: inherit;
/* Move the dropbutton slightly away from the "installed" badge. */
margin-block-start: 4px;
}
.gin--dark-mode .pb-filter__multi-dropdown__items--visible {
background-color: var(--gin-bg-layer);
}
.gin--dark-mode .pb-filter__multi-dropdown__items--visible div:hover {
background-color: var(--gin-bg-layer2);
}
.gin--dark-mode .project_status-indicator__label {
color: var(--gin-status-success-text);
}
[data-gin-accent="blue"] .pb-layout__main .views-bulk-actions {
background: rgba(var(--gin-color-sticky-rgb), 0.9);
}
.gin--dark-mode [data-gin-accent="blue"] .pb-layout__main .views-bulk-actions {
background: rgba(27, 27, 29, 0.8);
}
[data-gin-accent="blue"] .views-bulk-actions__item {
color: var(--gin-color-text-light);
}
.gin--dark-mode button.project_status-indicator.project_status-indicator {
margin-bottom: 5px;
margin-left: 5px;
background: none;
font-size: 16px;
font-weight: 700;
}
This diff is collapsed.
services:
project_browser.commands:
class: Drupal\project_browser\Commands\UpdateFixtureCommands
tags:
- { name: drush.command }
arguments: ['@logger.factory', '@project_browser.enabled_source', '@event_dispatcher', '@project_browser.fixture_helper', '@module_handler']
Source diff could not be displayed: it is too large. Options to address this: view the blob.
This diff is collapsed.
#!/bin/sh
# colors
RED='\e[31m'
BOLDRED='\033[1m'
NORMAL='\e[0m'
cd sveltejs; yarn run rollup -c
git diff --quiet; NOCHANGES=$?
if [ "$NOCHANGES" -ne 0 ]; then
echo "";
echo "${RED}##################################${NORMAL}"
echo "${RED} PUSH ABORTED!!! ${NORMAL}"
echo "${RED}Please, run ${BOLDRED}yarn build${NORMAL}${RED} before push ${NORMAL}"
echo "${RED}################################## ${NORMAL}"
echo "";
exit 1;
fi
<svg width="31" height="31" viewBox="3 4 25 23" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M24.2438 7.82616L16.2878 4.41643C15.7847 4.20081 15.2152 4.20081 14.7121 4.41643L6.75603 7.82616C5.9368 8.17726 5.44876 9.0281 5.55932 9.91252L6.46397 17.1497C6.68412 18.9109 7.56509 20.5228 8.92862 21.659L14.2196 26.0681C14.9612 26.6862 16.0386 26.6862 16.7803 26.0681L22.0712 21.659C23.4347 20.5228 24.3157 18.9109 24.5359 17.1497L25.4405 9.91252C25.5511 9.0281 25.063 8.17726 24.2438 7.82616Z" stroke="#003CC5" stroke-width="2" stroke-linecap="round"/>
<path d="M11.6251 15.5L15.0688 18.9437C15.2919 19.1668 15.6634 19.1301 15.8384 18.8675L20.6667 11.625" stroke="#003CC5" stroke-width="2" stroke-linecap="round"/>
</svg>
\ No newline at end of file
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 13"><path d="M2 6.571L5.6 10 14 2" fill="none" stroke="#42a877" stroke-width="3"/></svg>
<svg width="31" height="31" viewBox="-3 1 25 23" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M19.7856 4.65941L11.8295 1.24968C11.3264 1.03406 10.7569 1.03406 10.2538 1.24968L2.29778 4.65941C1.47855 5.01051 0.990512 5.86135 1.10106 6.74577L2.00572 13.983C2.22587 15.7442 3.10684 17.356 4.47037 18.4923L9.7613 22.9014C10.503 23.5195 11.5803 23.5195 12.322 22.9014L17.613 18.4923C18.9765 17.356 19.8575 15.7442 20.0776 13.983L20.9823 6.74577C21.0928 5.86135 20.6048 5.01051 19.7856 4.65941Z"
stroke="#71B43D" stroke-width="2" stroke-linecap="round"/>
<path d="M8.11154 10.9899L7.34928 11.6372L7.88422 12.2672L8.60366 11.8605L8.11154 10.9899ZM11.6207 9.00614L12.1129 9.87667L12.8539 9.45775L12.5587 8.65935L11.6207 9.00614ZM13.2092 18.0066C13.4792 18.4883 14.0887 18.6599 14.5704 18.3899C15.0522 18.1198 15.2238 17.5104 14.9537 17.0286L13.2092 18.0066ZM5.57218 7.16219C5.40773 7.64804 5.34215 8.11967 5.39734 8.58696C5.45262 9.05488 5.62146 9.45431 5.8345 9.80386C6.04064 10.1421 6.3001 10.4518 6.54986 10.7351C6.81997 11.0414 7.06271 11.2997 7.34928 11.6372L8.87379 10.3427C8.57775 9.99404 8.26679 9.65818 8.04992 9.41225C7.81271 9.14325 7.6519 8.94281 7.54229 8.76297C7.43959 8.59446 7.3972 8.468 7.38353 8.35234C7.3698 8.23605 7.37758 8.06639 7.4666 7.80341L5.57218 7.16219ZM12.5587 8.65935C12.4279 8.3056 12.3295 7.96118 12.2183 7.58989C12.1136 7.24024 11.9914 6.84446 11.8225 6.48856C11.65 6.12512 11.3978 5.73392 10.9911 5.43968C10.5709 5.13569 10.0753 4.99929 9.53106 4.99669L9.52149 6.99666C9.72727 6.99765 9.79608 7.04363 9.81883 7.06008C9.85505 7.08629 9.92429 7.15361 10.0156 7.34604C10.1105 7.54602 10.1945 7.80345 10.3024 8.16366C10.4038 8.50222 10.5243 8.92429 10.6828 9.35293L12.5587 8.65935ZM8.60366 11.8605L10.3583 10.8686L9.37402 9.12752L7.61942 10.1194L8.60366 11.8605ZM10.3583 10.8686L12.1129 9.87667L11.1286 8.13561L9.37402 9.12752L10.3583 10.8686ZM8.99385 10.487L13.2092 18.0066L14.9537 17.0286L10.7384 9.50906L8.99385 10.487Z"
fill="#71B43D"/>
<mask id="path-3-inside-1_137_4246" fill="white">
<path d="M14 16.5C14 16.7761 13.7761 17 13.5 17C13.2239 17 13 16.7761 13 16.5C13 16.2239 13.2239 16 13.5 16C13.7761 16 14 16.2239 14 16.5Z"/>
</mask>
<path d="M14 16.5C14 16.7761 13.7761 17 13.5 17C13.2239 17 13 16.7761 13 16.5C13 16.2239 13.2239 16 13.5 16C13.7761 16 14 16.2239 14 16.5Z"
fill="white"/>
<path d="M13 16.5C13 16.2239 13.2239 16 13.5 16V18C14.3284 18 15 17.3284 15 16.5H13ZM13.5 16C13.7761 16 14 16.2239 14 16.5H12C12 17.3284 12.6716 18 13.5 18V16ZM14 16.5C14 16.7761 13.7761 17 13.5 17V15C12.6716 15 12 15.6716 12 16.5H14ZM13.5 17C13.2239 17 13 16.7761 13 16.5H15C15 15.6716 14.3284 15 13.5 15V17Z"
fill="#71B43D" mask="url(#path-3-inside-1_137_4246)"/>
</svg>
<svg fill="#55565B" height="16" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m6.464 13.676c-.194.194-.513.194-.707 0l-4.96-4.955c-.194-.193-.194-.513 0-.707l1.405-1.407c.194-.195.512-.195.707 0l2.849 2.848c.194.193.513.193.707 0l6.629-6.626c.195-.194.514-.194.707 0l1.404 1.404c.193.194.193.513 0 .707z"/></svg>
images/recipe-logo.png

149 KiB

name: Project Browser Devel
type: module
description: Provides a Project Browser source plugin that generates random data.
core_version_requirement: ^10 || ^11
dependencies:
- project_browser:project_browser