5.0.70 • Published 8 months ago

pro-gallery-blueprints v5.0.70

Weekly downloads
-
License
-
Repository
github
Last release
8 months ago

pro-gallery-lib

The pro-gallery-lib containys helpers and files that can be imported individually.

Blueprints - v.3+

The pro-gallery-lib exports Blueprints and BlueprintsManager

BlueprintsManager

The BlueprintsManager is a class that takes care of fetching needed params and creating a new blueprint when it might be needed.

The blueprintsManager works with an api provided by the user (see blow)

Function Namedescriptionargumentsreturn
async createBlueprintUsed when changes were made that might require a new blueprint, params can be empty - the manager will fetch by the provided apiparams: {options, items, container, totalItemsCount}{blueprint: object, blueprintChange: boolean}
initcall to provide the deviceType and apiconfig: {api, deviceType, totalItemsCount}--
getMoreItemsCall this when the gallery needs more itemscurrentItemsLength: number--

BlueprintsManager API

To use the blueprints Manager to the full extent you need to provide it with an api to be able to manage fetching needed data and updating on ready blueprints.

An example can be found in the Playground code

Function Namedescriptionargumentsexpected return
fetchMoreItemsWill be called when the BM requires more items (under the totalItemsCount)currentItemLength: number--
fetchItemsWill be called by the BM to get the current items--items
fetchOptionsWill be called by the BM to get the current options--options
fetchContainerWill be called by the BM to get the current container--container
getTotalItemsCountWill be called by the BM to get the totalItemsCount--totalItemsCount: number
onBlueprintReadyWill be called by the BM when a requested blueprint is ready{blueprint: object, blueprintChanged: boolean}--
isUsingCustomInfoElementsWill be called by the BM to know if Custom Info Elements are used--boolean

basic usage

import { BlueprintsManager, GALLERY_CONSTS } from 'pro-gallery-lib'

const blueprintsManager = new BlueprintsManager({
      id: `gallery1`,
    });
    const blueprintsApi = {
        fetchMoreItems(currentItemLength) {
            // fire your get more items method here; no return expected;
        }
        fetchItems() {
            //return the current items array;
        }
        fetchOptions() {
            //return the current options object;
        }
        fetchContainer() {
            //return the current container object;
        }
        getTotalItemsCount() {
            //return the current totalItemsCount;
        }
        onBlueprintReady({ blueprint, blueprintChanged }) {
            // set the new blueprint as the new state, blueprintChanged can be used to do this only if there was an actual change in the blueprint object.
        }

        isUsingCustomInfoElements() {
            // return true/false to reflect the usage of Custom info elements. used to process the options accordingly.
        }
    }
blueprintsManager.init({
    api: blueprintsApi,
    deviceType: GALLERY_CONSTS.deviceType.DESKTOP,
    // totalItemsCont, This is optional and can be passed in the params in createBlueprint(params) or via the api;
});
const triggerBlueprintCreation = () => { //call this whenever something changes (options/ items/ container...anything). If this was called and nothing relevant changed the BM will call the onBlueprintReady api with a false blueprintChanged flag.
    blueprintsManager.createBlueprint({}); //since the api is used params can be empty, the BM will use the provided api to fetch all the needed params to create a blueprint.
}

Basic component code:

Here we use the ProGalleryRenderer instead of the ProGallery.

Instead of the normal options, items, container props we will destruct the blueprint we got from the blueprintsManager into the props.

import { ProGalleryRenderer } from 'pro-gallery'
import 'pro-gallery/dist/statics/main.css';


<ProGalleryRenderer
    id={id}
    {...blueprint}
    scrollingElement = { () => document.getElementById('gallery') || window }
    eventsListener = {(eventName, eventData) => console.log({eventName, eventData})}
    createMediaUrl =  {({item, originalUrl, resizeMethod, requiredWidth, requiredHeight}) => `https://...`}
    isPrerenderMode = {isPrerenderMode}
/>
4.1.106

10 months ago

4.1.107

9 months ago

4.1.108

9 months ago

4.1.109

8 months ago

4.1.104

12 months ago

4.1.105

12 months ago

5.0.70

8 months ago

5.0.60

10 months ago

5.0.61

10 months ago

5.0.62

10 months ago

5.0.63

10 months ago

5.0.64

10 months ago

5.0.65

9 months ago

5.0.66

9 months ago

5.0.67

9 months ago

5.0.68

9 months ago

5.0.69

8 months ago

5.0.50

12 months ago

5.0.51

12 months ago

5.0.52

11 months ago

5.0.53

11 months ago

5.0.54

11 months ago

5.0.55

11 months ago

5.0.56

11 months ago

5.0.57

11 months ago

5.0.58

10 months ago

5.0.59

10 months ago

5.0.48

12 months ago

5.0.49

12 months ago

4.1.103

1 year ago

5.0.47

1 year ago

4.1.102

1 year ago

4.1.100

1 year ago

4.1.101

1 year ago

5.0.30

1 year ago

5.0.31

1 year ago

5.0.32

1 year ago

5.0.33

1 year ago

5.0.34

1 year ago

5.0.35

1 year ago

5.0.36

1 year ago

5.0.37

1 year ago

5.0.38

1 year ago

5.0.39

1 year ago

5.0.20

1 year ago

5.0.21

1 year ago

5.0.22

1 year ago

5.0.23

1 year ago

5.0.24

1 year ago

5.0.25

1 year ago

5.0.26

1 year ago

5.0.27

1 year ago

5.0.28

1 year ago

5.0.29

1 year ago

5.0.9

1 year ago

5.0.10

1 year ago

5.0.11

1 year ago

5.0.12

1 year ago

5.0.13

1 year ago

5.0.14

1 year ago

5.0.15

1 year ago

5.0.16

1 year ago

5.0.17

1 year ago

5.0.18

1 year ago

5.0.19

1 year ago

5.0.40

1 year ago

5.0.41

1 year ago

5.0.42

1 year ago

5.0.43

1 year ago

5.0.44

1 year ago

5.0.45

1 year ago

5.0.46

1 year ago

4.1.90

1 year ago

4.1.91

1 year ago

4.1.96

1 year ago

4.1.97

1 year ago

4.1.98

1 year ago

4.1.99

1 year ago

4.1.92

1 year ago

4.1.93

1 year ago

4.1.94

1 year ago

4.1.95

1 year ago

5.0.8

1 year ago

5.0.7

1 year ago

5.0.6

1 year ago

5.0.5

1 year ago

5.0.4

1 year ago

5.0.3

1 year ago

5.0.2

1 year ago

5.0.1

1 year ago

4.1.52

2 years ago

4.1.53

2 years ago

4.1.54

2 years ago

4.1.55

2 years ago

4.1.50

2 years ago

4.1.51

2 years ago

4.1.56

2 years ago

4.1.57

2 years ago

4.1.58

2 years ago

4.1.59

2 years ago

4.1.74

1 year ago

4.1.75

1 year ago

4.1.76

1 year ago

4.1.70

2 years ago

4.1.71

1 year ago

4.1.72

1 year ago

4.1.73

1 year ago

4.1.78

1 year ago

4.1.79

1 year ago

4.1.63

2 years ago

4.1.64

2 years ago

4.1.65

2 years ago

4.1.66

2 years ago

4.1.60

2 years ago

4.1.61

2 years ago

4.1.62

2 years ago

4.1.67

2 years ago

4.1.68

2 years ago

4.1.69

2 years ago

4.1.80

1 year ago

4.1.85

1 year ago

4.1.86

1 year ago

4.1.87

1 year ago

4.1.88

1 year ago

4.1.81

1 year ago

4.1.82

1 year ago

4.1.83

1 year ago

4.1.84

1 year ago

4.1.89

1 year ago

4.1.41

2 years ago

4.1.42

2 years ago

4.1.43

2 years ago

4.1.44

2 years ago

4.1.40

2 years ago

4.1.49

2 years ago

4.1.45

2 years ago

4.1.46

2 years ago

4.1.47

2 years ago

4.1.48

2 years ago

4.1.8

2 years ago

4.1.7

2 years ago

4.1.9

2 years ago

4.1.4

2 years ago

4.1.3

2 years ago

4.1.6

2 years ago

4.1.5

2 years ago

4.1.0

2 years ago

4.1.2

2 years ago

4.1.1

2 years ago

4.0.15-beta.299

2 years ago

4.0.15-beta.298

2 years ago

4.0.15-beta.295

2 years ago

4.0.15-beta.294

2 years ago

4.0.15-beta.297

2 years ago

4.0.15-beta.296

2 years ago

4.0.15-beta.291

2 years ago

4.0.15-beta.293

2 years ago

4.0.15-beta.292

2 years ago

4.0.15-beta.303

2 years ago

4.0.15-beta.302

2 years ago

4.0.15-beta.304

2 years ago

4.0.15-beta.301

2 years ago

4.0.15-beta.300

2 years ago

4.1.30

2 years ago

4.1.31

2 years ago

4.1.32

2 years ago

4.1.33

2 years ago

4.1.38

2 years ago

4.1.39

2 years ago

4.1.34

2 years ago

4.1.35

2 years ago

4.1.36

2 years ago

4.1.37

2 years ago

4.1.20

2 years ago

4.1.21

2 years ago

4.1.22

2 years ago

4.1.27

2 years ago

4.1.28

2 years ago

4.1.29

2 years ago

4.1.23

2 years ago

4.1.24

2 years ago

4.1.25

2 years ago

4.1.26

2 years ago

4.1.10

2 years ago

4.1.11

2 years ago

4.1.16

2 years ago

4.1.17

2 years ago

4.1.18

2 years ago

4.1.19

2 years ago

4.1.12

2 years ago

4.1.13

2 years ago

4.1.14

2 years ago

4.1.15

2 years ago

4.0.15-beta.288

2 years ago

4.0.15-beta.287

2 years ago

4.0.15-beta.289

2 years ago

4.0.15-beta.284

2 years ago

4.0.15-beta.283

2 years ago

4.0.15-beta.286

2 years ago

4.0.15-beta.285

2 years ago

4.0.15-beta.290

2 years ago

4.0.15-beta.259

2 years ago

4.0.15-beta.258

2 years ago

4.0.15-beta.255

2 years ago

4.0.15-beta.254

2 years ago

4.0.15-beta.257

2 years ago

4.0.15-beta.256

2 years ago

4.0.15-beta.251

2 years ago

4.0.15-beta.250

2 years ago

4.0.15-beta.253

2 years ago

4.0.15-beta.252

2 years ago

4.0.15-beta.260

2 years ago

4.0.15-beta.248

2 years ago

4.0.15-beta.247

2 years ago

4.0.15-beta.249

2 years ago

4.0.15-beta.244

2 years ago

4.0.15-beta.243

2 years ago

4.0.15-beta.246

2 years ago

4.0.15-beta.245

2 years ago

4.0.15-beta.242

2 years ago

4.0.15-beta.277

2 years ago

4.0.15-beta.276

2 years ago

4.0.15-beta.279

2 years ago

4.0.15-beta.278

2 years ago

4.0.15-beta.273

2 years ago

4.0.15-beta.272

2 years ago

4.0.15-beta.275

2 years ago

4.0.15-beta.274

2 years ago

4.0.15-beta.280

2 years ago

4.0.15-beta.282

2 years ago

4.0.15-beta.281

2 years ago

4.0.15-beta.269

2 years ago

4.0.15-beta.266

2 years ago

4.0.15-beta.265

2 years ago

4.0.15-beta.268

2 years ago

4.0.15-beta.267

2 years ago

4.0.15-beta.262

2 years ago

4.0.15-beta.261

2 years ago

4.0.15-beta.264

2 years ago

4.0.15-beta.263

2 years ago

4.0.15-beta.271

2 years ago

4.0.15-beta.270

2 years ago

4.0.15-beta.237

2 years ago

4.0.15-beta.236

2 years ago

4.0.15-beta.239

2 years ago

4.0.15-beta.238

2 years ago

4.0.15-beta.240

2 years ago

4.0.15-beta.241

2 years ago

4.0.15-beta.233

2 years ago

4.0.15-beta.232

2 years ago

4.0.15-beta.235

2 years ago

4.0.15-beta.234

2 years ago

4.0.15-beta.231

2 years ago

4.0.15-beta.230

2 years ago

4.0.15-beta.229

2 years ago

4.0.15-beta.226

2 years ago

4.0.15-beta.225

2 years ago

4.0.15-beta.228

2 years ago

4.0.15-beta.227

2 years ago

4.0.15-beta.222

2 years ago

4.0.15-beta.221

2 years ago

4.0.15-beta.224

2 years ago

4.0.15-beta.223

2 years ago

4.0.15-beta.220

2 years ago

4.0.15-beta.219

2 years ago

4.0.15-beta.218

2 years ago

4.0.15-beta.215

2 years ago

4.0.15-beta.214

2 years ago

4.0.15-beta.217

2 years ago

4.0.15-beta.216

2 years ago

4.0.15-beta.211

2 years ago

4.0.15-beta.210

2 years ago

4.0.15-beta.213

2 years ago

4.0.15-beta.212

2 years ago

4.0.15-beta.208

2 years ago

4.0.15-beta.207

2 years ago

4.0.15-beta.209

2 years ago

4.0.15-beta.204

2 years ago

4.0.15-beta.203

2 years ago

4.0.15-beta.206

2 years ago

4.0.15-beta.205

2 years ago

4.0.15-beta.200

2 years ago

4.0.15-beta.202

2 years ago

4.0.15-beta.201

2 years ago

4.0.15-beta.199

2 years ago

4.0.15-beta.196

2 years ago

4.0.15-beta.195

2 years ago

4.0.15-beta.198

2 years ago

4.0.15-beta.197

2 years ago

4.0.15-beta.189

2 years ago

4.0.15-beta.188

2 years ago

4.0.15-beta.185

2 years ago

4.0.15-beta.184

2 years ago

4.0.15-beta.187

2 years ago

4.0.15-beta.186

2 years ago

4.0.15-beta.192

2 years ago

4.0.15-beta.191

2 years ago

4.0.15-beta.194

2 years ago

4.0.15-beta.193

2 years ago

4.0.15-beta.190

2 years ago

4.0.15-beta.178

2 years ago

4.0.15-beta.177

2 years ago

4.0.15-beta.179

2 years ago

4.0.15-beta.174

2 years ago

4.0.15-beta.173

2 years ago

4.0.15-beta.176

2 years ago

4.0.15-beta.175

2 years ago

4.0.15-beta.181

2 years ago

4.0.15-beta.180

2 years ago

4.0.15-beta.183

2 years ago

4.0.15-beta.182

2 years ago

4.0.15-beta.167

2 years ago

4.0.15-beta.166

2 years ago

4.0.15-beta.169

2 years ago

4.0.15-beta.168

2 years ago

4.0.15-beta.165

2 years ago

4.0.15-beta.164

3 years ago

4.0.15-beta.170

2 years ago

4.0.15-beta.172

2 years ago

4.0.15-beta.171

2 years ago

4.0.15-beta.161

3 years ago

4.0.15-beta.160

3 years ago

4.0.15-beta.163

3 years ago

4.0.15-beta.162

3 years ago

4.0.15-beta.159

3 years ago

4.0.15-beta.156

3 years ago

4.0.15-beta.155

3 years ago

4.0.15-beta.158

3 years ago

4.0.15-beta.157

3 years ago

4.0.15-beta.152

3 years ago

4.0.15-beta.151

3 years ago

4.0.15-beta.154

3 years ago

4.0.15-beta.153

3 years ago

4.0.15-beta.149

3 years ago

4.0.15-beta.148

3 years ago

4.0.15-beta.145

3 years ago

4.0.15-beta.147

3 years ago

4.0.15-beta.146

3 years ago

4.0.15-beta.150

3 years ago

4.0.15-beta.144

3 years ago

4.0.15-beta.143

3 years ago

4.0.15-beta.141

3 years ago

4.0.15-beta.142

3 years ago

4.0.15-beta.139

3 years ago

4.0.15-beta.140

3 years ago

4.0.15-beta.138

3 years ago

4.0.15-beta.137

3 years ago

4.0.15-beta.134

3 years ago

4.0.15-beta.133

3 years ago

4.0.15-beta.136

3 years ago

4.0.15-beta.135

3 years ago

4.0.15-beta.132

3 years ago

4.0.15-beta.131

3 years ago

4.0.15-beta.130

3 years ago

4.0.15-beta.129

3 years ago

4.0.15-beta.128

3 years ago

4.0.15-beta.127

3 years ago

4.0.15-beta.126

3 years ago

4.0.15-beta.125

3 years ago

4.0.15-beta.124

3 years ago

4.0.15-beta.123

3 years ago

4.0.15-beta.122

3 years ago

4.0.15-beta.121

3 years ago

4.0.15-beta.119

3 years ago

4.0.15-beta.118

3 years ago

4.0.15-beta.117

3 years ago

4.0.15-beta.120

3 years ago

4.0.15-beta.116

3 years ago

4.0.15-beta.115

3 years ago

4.0.15-beta.114

3 years ago

4.0.15-beta.113

3 years ago

4.0.15-beta.112

3 years ago

4.0.15-beta.111

3 years ago

4.0.15-beta.110

3 years ago

4.0.15-beta.109

3 years ago

4.0.15-beta.108

3 years ago

4.0.15-beta.105

3 years ago

4.0.15-beta.104

3 years ago

4.0.15-beta.107

3 years ago

4.0.15-beta.106

3 years ago

4.0.15-beta.103

3 years ago

4.0.15-beta.102

3 years ago

4.0.15-beta.98

3 years ago

4.0.15-beta.99

3 years ago

4.0.15-beta.96

3 years ago

4.0.15-beta.97

3 years ago

4.0.15-beta.95

3 years ago

4.0.15-beta.101

3 years ago

4.0.15-beta.100

3 years ago

4.0.15-beta.92

3 years ago

4.0.15-beta.93

3 years ago

4.0.15-beta.90

3 years ago

4.0.15-beta.91

3 years ago

4.0.15-beta.94

3 years ago

4.0.15-beta.89

3 years ago

4.0.15-beta.87

3 years ago

4.0.15-beta.88

3 years ago

4.0.15-beta.85

3 years ago

4.0.15-beta.86

3 years ago

4.0.15-beta.81

3 years ago

4.0.15-beta.82

3 years ago

4.0.15-beta.80

3 years ago

4.0.15-beta.83

3 years ago

4.0.15-beta.84

3 years ago

4.0.15-beta.78

3 years ago

4.0.15-beta.79

3 years ago

4.0.15-beta.76

3 years ago

4.0.15-beta.77

3 years ago

4.0.15-beta.70

3 years ago

4.0.15-beta.71

3 years ago

4.0.15-beta.74

3 years ago

4.0.15-beta.75

3 years ago

4.0.15-beta.72

3 years ago

4.0.15-beta.73

3 years ago

4.0.15-beta.69

3 years ago