mirror of
https://github.com/bigskysoftware/hypermedia-systems.git
synced 2025-07-17 00:01:52 -04:00
Compare commits
2 Commits
30e5bdc628
...
af33d17f2e
Author | SHA1 | Date | |
---|---|---|---|
|
af33d17f2e | ||
|
7dfc89612f |
492
book/INDEX.adoc
492
book/INDEX.adoc
@ -70,7 +70,7 @@ event, submit (see hx-trigger, submit)
|
|||||||
* HDA (see Hypermedia-Driven Application)
|
* HDA (see Hypermedia-Driven Application)
|
||||||
* Hotwire 84
|
* Hotwire 84
|
||||||
* HOWL stack 41
|
* HOWL stack 41
|
||||||
HTML
|
* HTML
|
||||||
** <details> 155
|
** <details> 155
|
||||||
** 2.0 16, 25
|
** 2.0 16, 25
|
||||||
** history of 16
|
** history of 16
|
||||||
@ -96,7 +96,11 @@ HTML
|
|||||||
** htmx:afterRequest 182
|
** htmx:afterRequest 182
|
||||||
** htmx:beforeSwap 187
|
** htmx:beforeSwap 187
|
||||||
** htmx:configRequest 182
|
** htmx:configRequest 182
|
||||||
|
*** detail.parameters 183
|
||||||
|
*** detail.target 183
|
||||||
|
*** detail.verb 183
|
||||||
** htmx:load 182
|
** htmx:load 182
|
||||||
|
|
||||||
* htmx patterns
|
* htmx patterns
|
||||||
** active search 128
|
** active search 128
|
||||||
** boosting 102
|
** boosting 102
|
||||||
@ -109,20 +113,79 @@ HTML
|
|||||||
** inline delete 144
|
** inline delete 144
|
||||||
** inline validation 115, 118
|
** inline validation 115, 118
|
||||||
** integration using events 226
|
** integration using events 226
|
||||||
|
** HX-Request 39
|
||||||
** keyboard shortcut 93
|
** keyboard shortcut 93
|
||||||
** lazy loading 139
|
** lazy loading 139
|
||||||
** pagination 120-122
|
** pagination 120-122
|
||||||
** request indicator 137, 143
|
** request indicator 137, 143
|
||||||
** server-triggered events 189
|
** server-triggered events 189
|
||||||
|
|
||||||
* htmx-indicator 138, 143
|
* htmx-indicator 138, 143
|
||||||
* htmx-swapping 150
|
* htmx-swapping 150
|
||||||
|
|
||||||
* htmx attributes 85, 176
|
* htmx attributes 85, 176
|
||||||
** attribute inheritance 104
|
** attribute inheritance 104
|
||||||
* htmx:configRequest
|
** hx-boost 102-107
|
||||||
** detail.parameters 183
|
*** disabling 173
|
||||||
** detail.target 183
|
** hx-confirm 112, 152
|
||||||
** detail.verb 183
|
** hx-delete 85, 90, 107, 145
|
||||||
HTTP
|
** hx-disable 180, 193
|
||||||
|
** hx-get 85, 124
|
||||||
|
** hx-include 95, 152
|
||||||
|
** hx-indicator 138, 143
|
||||||
|
** hx-patch 85
|
||||||
|
** hx-post 85
|
||||||
|
** hx-preserve 179
|
||||||
|
** hx-push-url 98, 111, 136, 179
|
||||||
|
** hx-put, about 85
|
||||||
|
** hx-select, example 124
|
||||||
|
** hx-swap 88, 170, 150, 176
|
||||||
|
*** afterbegin 88
|
||||||
|
*** afterend 88
|
||||||
|
*** beforebegin 88
|
||||||
|
*** beforeend 88
|
||||||
|
*** delay 150
|
||||||
|
*** delete 88
|
||||||
|
*** focus-scroll 176
|
||||||
|
*** innerHTML 88
|
||||||
|
*** none 89
|
||||||
|
*** outerHTML 88, 124, 146
|
||||||
|
*** scroll 176
|
||||||
|
*** settle 176
|
||||||
|
*** show 176
|
||||||
|
** hx-swap-oob 188
|
||||||
|
** hx-sync 180
|
||||||
|
** hx-target 87, 110,129, 176
|
||||||
|
** hx-trigger 90, 93, 177
|
||||||
|
*** defaults 90, 177
|
||||||
|
*** change
|
||||||
|
*** changed 120, 177
|
||||||
|
*** consume 178
|
||||||
|
*** delay 119, 128, 177
|
||||||
|
*** event filters 91, 178
|
||||||
|
*** from: 93, 178
|
||||||
|
*** intersect 179
|
||||||
|
*** keyup 92, 128
|
||||||
|
*** load 142
|
||||||
|
*** multiple events 92
|
||||||
|
*** once 177
|
||||||
|
*** queue 178
|
||||||
|
*** revealed 125, 144
|
||||||
|
*** synthetic events 125, 179
|
||||||
|
*** target 178
|
||||||
|
*** throttle 178
|
||||||
|
** hx-vals 96-97
|
||||||
|
*** js: prefix 97
|
||||||
|
*** JSON 97
|
||||||
|
|
||||||
|
* htmx response headers
|
||||||
|
** HX-Location 186
|
||||||
|
** HX-Push-Url 186
|
||||||
|
** HX-Refresh 186
|
||||||
|
** HX-Retarget 186
|
||||||
|
** HX-Trigger 185
|
||||||
|
|
||||||
|
* HTTP
|
||||||
** cookies 239
|
** cookies 239
|
||||||
** methods 36, 81
|
** methods 36, 81
|
||||||
*** DELETE 36
|
*** DELETE 36
|
||||||
@ -130,6 +193,7 @@ HTTP
|
|||||||
*** PATCH 36
|
*** PATCH 36
|
||||||
*** POST 19, 36, 72, 82
|
*** POST 19, 36, 72, 82
|
||||||
*** PUT 37
|
*** PUT 37
|
||||||
|
|
||||||
** response caching 39
|
** response caching 39
|
||||||
** response codes 38, 109, 186
|
** response codes 38, 109, 186
|
||||||
** response headers
|
** response headers
|
||||||
@ -137,235 +201,191 @@ HTTP
|
|||||||
*** Content-Disposition 169
|
*** Content-Disposition 169
|
||||||
*** Vary 40, 136
|
*** Vary 40, 136
|
||||||
|
|
||||||
hx-boost 102-107
|
* hx- (see htmx attributes)
|
||||||
hx-boost, disabling 173
|
|
||||||
hx-confirm 112, 152
|
* HXML 248
|
||||||
hx-delete 85, 90, 107, 145
|
** Hello World! 252
|
||||||
hx-disable 180, 193
|
** styling 258
|
||||||
hx-get 85, 124
|
** custom elements
|
||||||
hx-include 95, 152
|
|
||||||
hx-indicator 138, 143
|
** <body> 253
|
||||||
hx-patch 85
|
** <date-field>
|
||||||
hx-post 85
|
** <doc>
|
||||||
hx-preserve 179
|
** <form> 296
|
||||||
hx-push-url 98, 111, 136, 179
|
** <header> 253
|
||||||
hx-put, about 85
|
** <image> 255-6
|
||||||
HX-Request 39
|
** <item> 253-4
|
||||||
hx-select, example 124
|
** <list> 253-4, 287
|
||||||
hx-swap 150, 176
|
** <screen> 252-3
|
||||||
hx-swap-oob 188
|
** <section-list> 255
|
||||||
hx-swap 88, 170, 176
|
** <section-title>
|
||||||
hx-swap, afterbegin 88
|
** <section> 255,
|
||||||
hx-swap, afterend 88
|
** <select-multiple> 257
|
||||||
hx-swap, beforebegin 88
|
** <select-single> 257
|
||||||
hx-swap, beforeend 88
|
** <styles> 253
|
||||||
hx-swap, delay 150
|
** <switch> 257
|
||||||
hx-swap, delete 88
|
** <text-field> 257
|
||||||
hx-swap, focus-scroll 176
|
** <text> 253
|
||||||
hx-swap, innerHTML 88
|
** <view> 253
|
||||||
hx-swap, none 89
|
|
||||||
hx-swap, outerHTML 88, 124, 146
|
* Hyperview Actions
|
||||||
hx-swap, scroll 176
|
** action=‘alert’ 305
|
||||||
hx-swap, settle 176
|
** action=‘append’ 266, 304
|
||||||
hx-swap, show 176
|
** action=‘back’ 264
|
||||||
hx-sync 180
|
** action=‘close’ 264
|
||||||
hx-target, about 87, 176
|
** action=‘hide’ 270
|
||||||
hx-target, example 87, 110, 129
|
** action=‘navigate’ 264
|
||||||
hx-trigger, about 90, 93, 177
|
** action=‘new’ 264
|
||||||
hx-trigger, change
|
** action=‘prepend’ 266
|
||||||
hx-trigger, changed 120, 177
|
** action=‘push’ 264-5, 294
|
||||||
hx-trigger, consume 178
|
** action=‘reload’ 264-5, 295
|
||||||
hx-trigger, delay 119, 128, 177
|
** action=‘replace-inner’ 266, 287, 291
|
||||||
hx-trigger, element defaults 90, 177
|
** action=‘replace’ 266
|
||||||
hx-trigger, event filters 91, 178
|
** action=‘select-all’ 271
|
||||||
hx-trigger, from: 93, 178
|
** action=‘set-value’ 271
|
||||||
hx-trigger, intersect 179
|
** action=‘show’ 270
|
||||||
hx-trigger, keyup 92, 128
|
** action=‘toggle’ 270
|
||||||
hx-trigger, load 142
|
|
||||||
hx-trigger, multiple events 92
|
* Hyperview Behaviors
|
||||||
hx-trigger, once 177
|
** <behavior> 262-3
|
||||||
hx-trigger, queue 178
|
** behaviors 262
|
||||||
hx-trigger, revealed 125, 144
|
** behavior actions 263
|
||||||
hx-trigger, synthetic events 125, 179
|
** multiple behaviors 275
|
||||||
hx-trigger, target 178
|
|
||||||
hx-trigger, throttle 178
|
** navigation actions 264
|
||||||
hx-vals, about 96
|
** trigger=‘change’ 287
|
||||||
hx-vals, example 97
|
** trigger=‘load’ 274, 298
|
||||||
hx-vals, js: prefix 97
|
** trigger=‘longPress’ 273
|
||||||
hx-vals, JSON 97
|
** trigger=‘on-event’ 301-2
|
||||||
HXML 248
|
** trigger=‘press’ 273
|
||||||
HXML, <behavior> 262-3
|
** trigger=‘refresh’ 274, 290
|
||||||
HXML, <body> 253
|
** trigger=‘visible’ 274, 289
|
||||||
HXML, <date-field>
|
** update actions 266
|
||||||
HXML, <doc>
|
|
||||||
HXML, <form> 296
|
* hyperlink (see anchor tag) 14, 17, 81
|
||||||
HXML, <header> 253
|
|
||||||
HXML, <image> 255-6
|
* hypermedia 14
|
||||||
HXML, <item> 253-4
|
** advantages 24
|
||||||
HXML, <list> 253-4, 287
|
** client 7, 41, 249
|
||||||
HXML, <screen> 252-3
|
** control 14
|
||||||
HXML, <section-list> 255
|
** for mobile 246
|
||||||
HXML, <section-title>
|
** history 15
|
||||||
HXML, <section> 255,
|
** limitations of 30, 189, 251, 334
|
||||||
HXML, <select-multiple> 257
|
** servers 40
|
||||||
HXML, <select-single> 257
|
** system 14
|
||||||
HXML, <styles> 253
|
** when to use 29
|
||||||
HXML, <switch> 257
|
|
||||||
HXML, <text-field> 257
|
* Hypermedia-Driven Application (HDA) 9, 27-29
|
||||||
HXML, <text> 253
|
|
||||||
HXML, <view> 253
|
|
||||||
HXML, action=‘alert’ 305
|
* hyperscript 218
|
||||||
HXML, action=‘append’ 266, 304
|
** about 219-20
|
||||||
HXML, action=‘back’ 264
|
** installing 219
|
||||||
HXML, action=‘close’ 264
|
** array property access 222
|
||||||
HXML, action=‘hide’ 270
|
** async transparency 222
|
||||||
HXML, action=‘navigate’ 264
|
** CSS syntax 222
|
||||||
HXML, action=‘new’ 264
|
** event filter 221
|
||||||
HXML, action=‘prepend’ 266
|
** event listener 221
|
||||||
HXML, action=‘push’ 264-5, 294
|
** event support 222
|
||||||
HXML, action=‘reload’ 264-5, 295
|
** filter expression 220
|
||||||
HXML, action=‘replace-inner’ 266, 287, 291
|
** from 221
|
||||||
HXML, action=‘replace’ 266
|
** keyboard shortcut 221
|
||||||
HXML, action=‘select-all’ 271
|
|
||||||
HXML, action=‘set-value’ 271
|
* hypertext (see hyperlink)
|
||||||
HXML, action=‘show’ 270
|
|
||||||
HXML, action=‘toggle’ 270
|
* Hyperview 248
|
||||||
HXML, behavior actions 263
|
** alert 271
|
||||||
HXML, behaviors 262
|
** behaviors 261
|
||||||
HXML, custom elements
|
** client 249
|
||||||
HXML, Hello World! 252
|
** confirmation 305
|
||||||
HXML, multiple behaviors 275
|
** custom actions 272
|
||||||
HXML, navigation actions 264
|
** custom elements 259
|
||||||
HXML, styling
|
** deployment 308
|
||||||
HXML, trigger=‘change’ 287
|
** email 316-19
|
||||||
HXML, trigger=‘load’ 274, 298
|
** entry point URL 280-1
|
||||||
HXML, trigger=‘longPress’ 273
|
** events 301
|
||||||
HXML, trigger=‘on-event’ 301-2
|
** images
|
||||||
HXML, trigger=‘press’ 273
|
** infinite scroll 288
|
||||||
HXML, trigger=‘refresh’ 274, 290
|
** inputs 256-8
|
||||||
HXML, trigger=‘visible’ 274, 289
|
** installing 280
|
||||||
HXML, update actions 266
|
** messages 319-323
|
||||||
hyperlink 17, 81
|
** phone calls 316-19
|
||||||
hypermedia 14
|
** post requests 269-70
|
||||||
hypermedia client 249
|
** pull-to-refresh 290
|
||||||
hypermedia control 14
|
** redirects 299
|
||||||
hypermedia system 14
|
** search 281, 286
|
||||||
Hypermedia-Driven Application 9, 27-29
|
** share 271
|
||||||
hypermedia, advantages 24
|
** styling 258
|
||||||
Hypermedia, client 7, 41
|
** swipe gesture 324-333
|
||||||
hypermedia, for mobile 246
|
** XML namespaces
|
||||||
Hypermedia, history 15
|
|
||||||
hypermedia, limitations 30, 189, 251, 334
|
* input values 153
|
||||||
Hypermedia, servers 40
|
* Islands of interactivity 334
|
||||||
hypermedia, when to use 29
|
* JavaScript 22, 198
|
||||||
hyperscript 218
|
** Fatigue 24, 338
|
||||||
hyperscript, array property access 222
|
** library, integrate via events 225
|
||||||
hyperscript, async transparency 222
|
** limitations of 'on*' 204
|
||||||
hyperscript, CSS syntax 222
|
* Jinja2 59
|
||||||
hyperscript, event filter 221
|
* jQuery soup 202
|
||||||
hyperscript, event listener 221
|
* JSON 21
|
||||||
hyperscript, event support 222
|
* JSON API 22, 229
|
||||||
hyperscript, filter expression 220
|
** vs. HTML 231-3
|
||||||
hyperscript, from 221
|
** API churn 24, 47
|
||||||
hyperscript, installing 219
|
** Data API 22, 229, 233
|
||||||
hyperscript, keyboard shortcut 221
|
** endpoint 234
|
||||||
hyperscript, syntax 219-20
|
* Locality of Behavior (LoB) 203
|
||||||
hypertext 14
|
* localStorage 182
|
||||||
Hyperview 248
|
* Markdown 174
|
||||||
Hyperview, alert 271
|
* Microformats 241
|
||||||
Hyperview, behaviors 261
|
* modals 126
|
||||||
Hyperview, client 249
|
* Model-View-Controller (MVC) 240-1
|
||||||
Hyperview, confirmation 305
|
* Multi-Page Application (MPA) 26
|
||||||
Hyperview, custom actions 272
|
* opacity 150
|
||||||
Hyperview, custom elements 259
|
* polling 163, 167
|
||||||
Hyperview, deployment 308
|
* Post/Redirect/Get (PRG) 67, 73
|
||||||
Hyperview, email 316-19
|
* progress bar 164-5
|
||||||
Hyperview, entry point URL 280-1
|
* progressive enhancement 105, 112
|
||||||
Hyperview, events 301
|
* Python 54
|
||||||
Hyperview, images
|
* query parameters 58, 93, 121, 289
|
||||||
Hyperview, infinite scroll 288
|
* query strings 58
|
||||||
Hyperview, inputs 256-8
|
* React 23
|
||||||
Hyperview, installing 280
|
* reactivity 23, 215
|
||||||
Hyperview, messages 319-323
|
* relative CSS selectors 96, 116-117
|
||||||
Hyperview, phone calls 316-19
|
** closest 96, 116, 124
|
||||||
Hyperview, post requests 269-70
|
** find 96, 116
|
||||||
Hyperview, pull-to-refresh 290
|
** next 96, 116
|
||||||
Hyperview, redirects 299
|
** previous 96, 116
|
||||||
Hyperview, search 281, 286
|
** this 96, 116
|
||||||
Hyperview, share 271
|
|
||||||
Hyperview, styling 258
|
* REST 8, 42, 233, 309
|
||||||
Hyperview, swipe gesture 324-333
|
** API 233
|
||||||
Hyperview, XML namespaces
|
** constraints 42-58
|
||||||
input values 153
|
|
||||||
Islands of interactivity 334
|
* RSJS guidelines 204
|
||||||
JavaScript 22, 198
|
* scripting, hypermedia friendly 196
|
||||||
Javascript Fatigue 24, 338
|
* search 94
|
||||||
JavaScript library, integrate via events 225
|
* security 192
|
||||||
JavaScript, on* 204
|
* Separation of Concerns (SoC) 201
|
||||||
Jinja2 59
|
* Single Page Application (SPA) 22, 25
|
||||||
jQuery soup 202
|
** API Churn 24
|
||||||
JSON 21
|
** complexity 24, 199
|
||||||
JSON API 22, 229
|
** UX advantage 24
|
||||||
JSON API, vs. HTML 231-3
|
* SweetAlert2 224
|
||||||
JSON, API churn 24, 47
|
* templating 59, 133, 277
|
||||||
JSON, Data API 22, 229, 233
|
* thick client application 23
|
||||||
JSON, endpoint 234
|
* tight coupling 22
|
||||||
Locality of Behavior (LoB) 203
|
* transclusion (see htmx swap model) 83, 86
|
||||||
localStorage 182
|
* Transitional applications 26
|
||||||
Markdown 174
|
* Uniform Resource Locator (URL) 34
|
||||||
Microformats 241
|
* Unpoly 84
|
||||||
modals 126
|
* updateUI method 22
|
||||||
Model-View-Controller (MVC) 240-1
|
* validation 113, 117, 120
|
||||||
Multi-Page Application (MPA) 26
|
** server-side vs. client-side 114-115
|
||||||
opacity 150
|
* Vue.js 23
|
||||||
polling 163, 167
|
* W3C 16
|
||||||
Post/Redirect/Get (PRG) 67, 73
|
* web browser (see ‘hypermedia client’) 7, 41, 62
|
||||||
progress bar 164-5
|
* Web Components 222-224
|
||||||
progressive enhancement 105, 112
|
* web stack 53
|
||||||
Python 54
|
* web, 1.0 20
|
||||||
query parameters 58, 93, 121, 289
|
|
||||||
query strings 58
|
|
||||||
React 23
|
|
||||||
reactivity 23, 215
|
|
||||||
relative CSS selectors, about 96, 116-117
|
|
||||||
relative CSS selectors, closest 96, 116, 124
|
|
||||||
relative CSS selectors, find 96, 116
|
|
||||||
relative CSS selectors, next 96, 116
|
|
||||||
relative CSS selectors, previous 96, 116
|
|
||||||
relative CSS selectors, this 96, 116
|
|
||||||
response header, HX-Location 186
|
|
||||||
response header, HX-Push-Url 186
|
|
||||||
response header, HX-Refresh 186
|
|
||||||
response header, HX-Retarget 186
|
|
||||||
response header, HX-Trigger 185
|
|
||||||
REST 8, 42, 233, 309
|
|
||||||
REST API 233
|
|
||||||
REST, constraints 42-58
|
|
||||||
RSJS guidelines 204
|
|
||||||
scripting, hypermedia friendly 196
|
|
||||||
search 94
|
|
||||||
security 192
|
|
||||||
Separation of Concerns (SoC) 201
|
|
||||||
Single Page Application (SPA) 22, 25
|
|
||||||
Single Page Application (SPA), API Churn 24
|
|
||||||
Single Page Application (SPA), complexity 24, 199
|
|
||||||
Single Page Application (SPA), UX advantage 24
|
|
||||||
SweetAlert2 224
|
|
||||||
templating 59, 133, 277
|
|
||||||
thick client application 23
|
|
||||||
tight coupling 22
|
|
||||||
transclusion 83, 86
|
|
||||||
Transitional applications 26
|
|
||||||
Uniform Resource Locator (URL) 34
|
|
||||||
Unpoly 84
|
|
||||||
updateUI method 22
|
|
||||||
validation 113, 117, 120
|
|
||||||
validation, server-side vs. client-side 114-115
|
|
||||||
Vue.js 23
|
|
||||||
W3C 16
|
|
||||||
web browser (see ‘hypermedia client’) 7, 41, 62
|
|
||||||
Web Components 222-224
|
|
||||||
web stack 53
|
|
||||||
web, 1.0 20
|
|
||||||
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user