@ulu/frontend 0.1.0-beta.81 → 0.1.0-beta.82
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/docs-dev/changelog/index.html +16 -0
- package/docs-dev/demos/card/index.html +16 -16
- package/docs-dev/demos/data-table/index.html +100 -100
- package/js/ui/dialog.js +16 -44
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 0.1.0-beta.82
|
|
4
|
+
|
|
5
|
+
- **js/utils/dialog.js**
|
|
6
|
+
- Remove native resize detection (resizeObserver, etc) since all resizing is done by resizer now
|
|
7
|
+
- Backed up this idea to reference/ideas/removed-idea-on-how-to-detect-native-resizing-has-no-event.js incase it's needed in the future
|
|
8
|
+
- Add flag internally to ensure that click outside is prevented if the pointer event originated from a resizer event
|
|
9
|
+
|
|
3
10
|
## 0.1.0-beta.81
|
|
4
11
|
|
|
5
12
|
- **scss/components/css-icons.scss**
|
|
@@ -5196,6 +5196,9 @@
|
|
|
5196
5196
|
<div class="toc">
|
|
5197
5197
|
<ol>
|
|
5198
5198
|
|
|
5199
|
+
<li><a href="#0.1.0-beta.82">0.1.0-beta.82</a>
|
|
5200
|
+
</li>
|
|
5201
|
+
|
|
5199
5202
|
<li><a href="#0.1.0-beta.81">0.1.0-beta.81</a>
|
|
5200
5203
|
</li>
|
|
5201
5204
|
|
|
@@ -5487,6 +5490,19 @@
|
|
|
5487
5490
|
|
|
5488
5491
|
<div class="changelog">
|
|
5489
5492
|
<h1 id="change-log" tabindex="-1">Change Log</h1>
|
|
5493
|
+
<h2 id="0.1.0-beta.82" tabindex="-1">0.1.0-beta.82</h2>
|
|
5494
|
+
<ul>
|
|
5495
|
+
<li><strong>js/utils/dialog.js</strong>
|
|
5496
|
+
<ul>
|
|
5497
|
+
<li>Remove native resize detection (resizeObserver, etc) since all resizing is done by resizer now
|
|
5498
|
+
<ul>
|
|
5499
|
+
<li>Backed up this idea to reference/ideas/removed-idea-on-how-to-detect-native-resizing-has-no-event.js incase it's needed in the future</li>
|
|
5500
|
+
</ul>
|
|
5501
|
+
</li>
|
|
5502
|
+
<li>Add flag internally to ensure that click outside is prevented if the pointer event originated from a resizer event</li>
|
|
5503
|
+
</ul>
|
|
5504
|
+
</li>
|
|
5505
|
+
</ul>
|
|
5490
5506
|
<h2 id="0.1.0-beta.81" tabindex="-1">0.1.0-beta.81</h2>
|
|
5491
5507
|
<ul>
|
|
5492
5508
|
<li><strong>scss/components/css-icons.scss</strong>
|
|
@@ -5214,60 +5214,60 @@
|
|
|
5214
5214
|
<legend>Elements Visible</legend>
|
|
5215
5215
|
<div>
|
|
5216
5216
|
<div class="form-theme__item form-theme__item--checkbox">
|
|
5217
|
-
<input type="checkbox" id="live-demo-id-
|
|
5218
|
-
<label for="live-demo-id-
|
|
5217
|
+
<input type="checkbox" id="live-demo-id-89" name="title" checked="">
|
|
5218
|
+
<label for="live-demo-id-89">
|
|
5219
5219
|
Title
|
|
5220
5220
|
</label>
|
|
5221
5221
|
</div>
|
|
5222
5222
|
<div class="form-theme__item form-theme__item--checkbox">
|
|
5223
|
-
<input type="checkbox" id="live-demo-id-
|
|
5224
|
-
<label for="live-demo-id-
|
|
5223
|
+
<input type="checkbox" id="live-demo-id-90" name="body" checked="">
|
|
5224
|
+
<label for="live-demo-id-90">
|
|
5225
5225
|
Body
|
|
5226
5226
|
</label>
|
|
5227
5227
|
</div>
|
|
5228
5228
|
<div class="form-theme__item form-theme__item--checkbox">
|
|
5229
|
-
<input type="checkbox" id="live-demo-id-
|
|
5230
|
-
<label for="live-demo-id-
|
|
5229
|
+
<input type="checkbox" id="live-demo-id-91" name="content" checked="">
|
|
5230
|
+
<label for="live-demo-id-91">
|
|
5231
5231
|
Content
|
|
5232
5232
|
</label>
|
|
5233
5233
|
</div>
|
|
5234
5234
|
<div class="form-theme__item form-theme__item--checkbox">
|
|
5235
|
-
<input type="checkbox" id="live-demo-id-
|
|
5236
|
-
<label for="live-demo-id-
|
|
5235
|
+
<input type="checkbox" id="live-demo-id-92" name="aside" checked="">
|
|
5236
|
+
<label for="live-demo-id-92">
|
|
5237
5237
|
Aside
|
|
5238
5238
|
</label>
|
|
5239
5239
|
</div>
|
|
5240
5240
|
<div class="form-theme__item form-theme__item--checkbox">
|
|
5241
|
-
<input type="checkbox" id="live-demo-id-
|
|
5242
|
-
<label for="live-demo-id-
|
|
5241
|
+
<input type="checkbox" id="live-demo-id-93" name="footer" checked="">
|
|
5242
|
+
<label for="live-demo-id-93">
|
|
5243
5243
|
Footer
|
|
5244
5244
|
</label>
|
|
5245
5245
|
</div>
|
|
5246
5246
|
</div>
|
|
5247
5247
|
</fieldset>
|
|
5248
5248
|
<div class="form-theme__item form-theme__item--select">
|
|
5249
|
-
<label for="live-demo-id-
|
|
5249
|
+
<label for="live-demo-id-94">
|
|
5250
5250
|
Action
|
|
5251
5251
|
<span class="fas fa-info-circle" data-ulu-tooltip="Proxy click only works when title is present"></span>
|
|
5252
5252
|
</label>
|
|
5253
|
-
<select id="live-demo-id-
|
|
5253
|
+
<select id="live-demo-id-94" name="action">
|
|
5254
5254
|
<option value="">None</option>,<option value="link">Card is Link</option>,<option value="proxy">Proxy Click</option>
|
|
5255
5255
|
</select>
|
|
5256
5256
|
</div>
|
|
5257
5257
|
<div class="form-theme__item form-theme__item--select">
|
|
5258
|
-
<label for="live-demo-id-
|
|
5258
|
+
<label for="live-demo-id-95">
|
|
5259
5259
|
Media
|
|
5260
5260
|
</label>
|
|
5261
|
-
<select id="live-demo-id-
|
|
5261
|
+
<select id="live-demo-id-95" name="media">
|
|
5262
5262
|
<option value="icon">Icon</option>,<option value="image">Image</option>,<option value="imageFit">Image (fit)</option>,<option value="none">No Image</option>
|
|
5263
5263
|
</select>
|
|
5264
5264
|
</div>
|
|
5265
5265
|
<div class="form-theme__item form-theme__item--select">
|
|
5266
|
-
<label for="live-demo-id-
|
|
5266
|
+
<label for="live-demo-id-96">
|
|
5267
5267
|
Layout
|
|
5268
5268
|
<span class="fas fa-info-circle" data-ulu-tooltip="Overlay is not compatible with 'Icon' and 'No Image' options"></span>
|
|
5269
5269
|
</label>
|
|
5270
|
-
<select id="live-demo-id-
|
|
5270
|
+
<select id="live-demo-id-96" name="layout">
|
|
5271
5271
|
<option value="">Default</option>,<option value="horizontal">Horizontal</option>,<option value="horizontalCenter">Horizontal Center</option>,<option value="overlay">Overlay</option>
|
|
5272
5272
|
</select>
|
|
5273
5273
|
</div>
|
|
@@ -5252,178 +5252,178 @@
|
|
|
5252
5252
|
</table>
|
|
5253
5253
|
<h2 class="h2">Complex Table</h2>
|
|
5254
5254
|
<h2 class="h2">Striped Table</h2>
|
|
5255
|
-
<table class="data-table data-table--striped" id="dt-
|
|
5255
|
+
<table class="data-table data-table--striped" id="dt-45">
|
|
5256
5256
|
<caption>
|
|
5257
5257
|
This Is The Table's Caption
|
|
5258
5258
|
</caption>
|
|
5259
5259
|
<thead>
|
|
5260
5260
|
<tr>
|
|
5261
|
-
<th id="dt-
|
|
5262
|
-
<th id="dt-
|
|
5263
|
-
<th id="dt-
|
|
5264
|
-
<th id="dt-
|
|
5261
|
+
<th id="dt-45-type" rowspan="2">Type</th>
|
|
5262
|
+
<th id="dt-45-group" colspan="2">Group</th>
|
|
5263
|
+
<th id="dt-45-details" colspan="2">Details</th>
|
|
5264
|
+
<th id="dt-45-id" rowspan="2">Id</th>
|
|
5265
5265
|
</tr>
|
|
5266
5266
|
<tr>
|
|
5267
|
-
<th headers="dt-
|
|
5268
|
-
<th headers="dt-
|
|
5269
|
-
<th headers="dt-
|
|
5270
|
-
<th headers="dt-
|
|
5267
|
+
<th headers="dt-45-group" id="dt-45-primary">Primary</th>
|
|
5268
|
+
<th headers="dt-45-group" id="dt-45-secondary">Secondary</th>
|
|
5269
|
+
<th headers="dt-45-details" id="dt-45-before">Before Task</th>
|
|
5270
|
+
<th headers="dt-45-details" id="dt-45-after">After Task</th>
|
|
5271
5271
|
</tr>
|
|
5272
5272
|
</thead>
|
|
5273
5273
|
<tbody>
|
|
5274
5274
|
<tr>
|
|
5275
|
-
<th rowspan="3" headers="dt-
|
|
5276
|
-
<td headers="dt-
|
|
5277
|
-
<td headers="dt-
|
|
5278
|
-
<td headers="dt-
|
|
5279
|
-
<td headers="dt-
|
|
5280
|
-
<td headers="dt-
|
|
5275
|
+
<th rowspan="3" headers="dt-45-type dt-45-r1" id="dt-45-r1">Default</th>
|
|
5276
|
+
<td headers="dt-45-group dt-45-primary dt-45-r1">Lorem Ipsum</td>
|
|
5277
|
+
<td headers="dt-45-group dt-45-secondary dt-45-r1">Lorem Ipsum</td>
|
|
5278
|
+
<td headers="dt-45-details dt-45-before dt-45-r1">Lorem Ipsum</td>
|
|
5279
|
+
<td headers="dt-45-details dt-45-after dt-45-r1">Lorem Ipsum</td>
|
|
5280
|
+
<td headers="dt-45-id">OL-53-GHSLE</td>
|
|
5281
5281
|
</tr>
|
|
5282
5282
|
<tr>
|
|
5283
|
-
<td headers="dt-
|
|
5284
|
-
<td headers="dt-
|
|
5285
|
-
<td headers="dt-
|
|
5286
|
-
<td headers="dt-
|
|
5287
|
-
<td headers="dt-
|
|
5283
|
+
<td headers="dt-45-group dt-45-primary dt-45-r1">Lorem Ipsum</td>
|
|
5284
|
+
<td headers="dt-45-group dt-45-secondary dt-45-r1">Lorem Ipsum</td>
|
|
5285
|
+
<td headers="dt-45-details dt-45-before dt-45-r1">Lorem Ipsum</td>
|
|
5286
|
+
<td headers="dt-45-details dt-45-after dt-45-r1">Lorem Ipsum</td>
|
|
5287
|
+
<td headers="dt-45-id">OL-53-GHSLE</td>
|
|
5288
5288
|
</tr>
|
|
5289
5289
|
<tr>
|
|
5290
|
-
<td headers="dt-
|
|
5291
|
-
<td headers="dt-
|
|
5292
|
-
<td headers="dt-
|
|
5293
|
-
<td headers="dt-
|
|
5294
|
-
<td headers="dt-
|
|
5290
|
+
<td headers="dt-45-group dt-45-primary dt-45-r1">Lorem Ipsum</td>
|
|
5291
|
+
<td headers="dt-45-group dt-45-secondary dt-45-r1">Lorem Ipsum</td>
|
|
5292
|
+
<td headers="dt-45-details dt-45-before dt-45-r1">Lorem Ipsum</td>
|
|
5293
|
+
<td headers="dt-45-details dt-45-after dt-45-r1">Lorem Ipsum</td>
|
|
5294
|
+
<td headers="dt-45-id">OL-53-GHSLE</td>
|
|
5295
5295
|
</tr>
|
|
5296
5296
|
</tbody>
|
|
5297
5297
|
</table>
|
|
5298
5298
|
<h2 class="h2">Large-first Table</h2>
|
|
5299
|
-
<table class="data-table data-table--large-first" id="dt-
|
|
5299
|
+
<table class="data-table data-table--large-first" id="dt-46">
|
|
5300
5300
|
<caption>
|
|
5301
5301
|
This Is The Table's Caption
|
|
5302
5302
|
</caption>
|
|
5303
5303
|
<thead>
|
|
5304
5304
|
<tr>
|
|
5305
|
-
<th id="dt-
|
|
5306
|
-
<th id="dt-
|
|
5307
|
-
<th id="dt-
|
|
5308
|
-
<th id="dt-
|
|
5305
|
+
<th id="dt-46-type" rowspan="2">Type</th>
|
|
5306
|
+
<th id="dt-46-group" colspan="2">Group</th>
|
|
5307
|
+
<th id="dt-46-details" colspan="2">Details</th>
|
|
5308
|
+
<th id="dt-46-id" rowspan="2">Id</th>
|
|
5309
5309
|
</tr>
|
|
5310
5310
|
<tr>
|
|
5311
|
-
<th headers="dt-
|
|
5312
|
-
<th headers="dt-
|
|
5313
|
-
<th headers="dt-
|
|
5314
|
-
<th headers="dt-
|
|
5311
|
+
<th headers="dt-46-group" id="dt-46-primary">Primary</th>
|
|
5312
|
+
<th headers="dt-46-group" id="dt-46-secondary">Secondary</th>
|
|
5313
|
+
<th headers="dt-46-details" id="dt-46-before">Before Task</th>
|
|
5314
|
+
<th headers="dt-46-details" id="dt-46-after">After Task</th>
|
|
5315
5315
|
</tr>
|
|
5316
5316
|
</thead>
|
|
5317
5317
|
<tbody>
|
|
5318
5318
|
<tr>
|
|
5319
|
-
<th rowspan="3" headers="dt-
|
|
5320
|
-
<td headers="dt-
|
|
5321
|
-
<td headers="dt-
|
|
5322
|
-
<td headers="dt-
|
|
5323
|
-
<td headers="dt-
|
|
5324
|
-
<td headers="dt-
|
|
5319
|
+
<th rowspan="3" headers="dt-46-type dt-46-r1" id="dt-46-r1">Default</th>
|
|
5320
|
+
<td headers="dt-46-group dt-46-primary dt-46-r1">Lorem Ipsum</td>
|
|
5321
|
+
<td headers="dt-46-group dt-46-secondary dt-46-r1">Lorem Ipsum</td>
|
|
5322
|
+
<td headers="dt-46-details dt-46-before dt-46-r1">Lorem Ipsum</td>
|
|
5323
|
+
<td headers="dt-46-details dt-46-after dt-46-r1">Lorem Ipsum</td>
|
|
5324
|
+
<td headers="dt-46-id">OL-53-GHSLE</td>
|
|
5325
5325
|
</tr>
|
|
5326
5326
|
<tr>
|
|
5327
|
-
<td headers="dt-
|
|
5328
|
-
<td headers="dt-
|
|
5329
|
-
<td headers="dt-
|
|
5330
|
-
<td headers="dt-
|
|
5331
|
-
<td headers="dt-
|
|
5327
|
+
<td headers="dt-46-group dt-46-primary dt-46-r1">Lorem Ipsum</td>
|
|
5328
|
+
<td headers="dt-46-group dt-46-secondary dt-46-r1">Lorem Ipsum</td>
|
|
5329
|
+
<td headers="dt-46-details dt-46-before dt-46-r1">Lorem Ipsum</td>
|
|
5330
|
+
<td headers="dt-46-details dt-46-after dt-46-r1">Lorem Ipsum</td>
|
|
5331
|
+
<td headers="dt-46-id">OL-53-GHSLE</td>
|
|
5332
5332
|
</tr>
|
|
5333
5333
|
<tr>
|
|
5334
|
-
<td headers="dt-
|
|
5335
|
-
<td headers="dt-
|
|
5336
|
-
<td headers="dt-
|
|
5337
|
-
<td headers="dt-
|
|
5338
|
-
<td headers="dt-
|
|
5334
|
+
<td headers="dt-46-group dt-46-primary dt-46-r1">Lorem Ipsum</td>
|
|
5335
|
+
<td headers="dt-46-group dt-46-secondary dt-46-r1">Lorem Ipsum</td>
|
|
5336
|
+
<td headers="dt-46-details dt-46-before dt-46-r1">Lorem Ipsum</td>
|
|
5337
|
+
<td headers="dt-46-details dt-46-after dt-46-r1">Lorem Ipsum</td>
|
|
5338
|
+
<td headers="dt-46-id">OL-53-GHSLE</td>
|
|
5339
5339
|
</tr>
|
|
5340
5340
|
</tbody>
|
|
5341
5341
|
</table>
|
|
5342
5342
|
<h2 class="h2">Large-header Table</h2>
|
|
5343
|
-
<table class="data-table data-table--large-header" id="dt-
|
|
5343
|
+
<table class="data-table data-table--large-header" id="dt-47">
|
|
5344
5344
|
<caption>
|
|
5345
5345
|
This Is The Table's Caption
|
|
5346
5346
|
</caption>
|
|
5347
5347
|
<thead>
|
|
5348
5348
|
<tr>
|
|
5349
|
-
<th id="dt-
|
|
5350
|
-
<th id="dt-
|
|
5351
|
-
<th id="dt-
|
|
5352
|
-
<th id="dt-
|
|
5349
|
+
<th id="dt-47-type" rowspan="2">Type</th>
|
|
5350
|
+
<th id="dt-47-group" colspan="2">Group</th>
|
|
5351
|
+
<th id="dt-47-details" colspan="2">Details</th>
|
|
5352
|
+
<th id="dt-47-id" rowspan="2">Id</th>
|
|
5353
5353
|
</tr>
|
|
5354
5354
|
<tr>
|
|
5355
|
-
<th headers="dt-
|
|
5356
|
-
<th headers="dt-
|
|
5357
|
-
<th headers="dt-
|
|
5358
|
-
<th headers="dt-
|
|
5355
|
+
<th headers="dt-47-group" id="dt-47-primary">Primary</th>
|
|
5356
|
+
<th headers="dt-47-group" id="dt-47-secondary">Secondary</th>
|
|
5357
|
+
<th headers="dt-47-details" id="dt-47-before">Before Task</th>
|
|
5358
|
+
<th headers="dt-47-details" id="dt-47-after">After Task</th>
|
|
5359
5359
|
</tr>
|
|
5360
5360
|
</thead>
|
|
5361
5361
|
<tbody>
|
|
5362
5362
|
<tr>
|
|
5363
|
-
<th rowspan="3" headers="dt-
|
|
5364
|
-
<td headers="dt-
|
|
5365
|
-
<td headers="dt-
|
|
5366
|
-
<td headers="dt-
|
|
5367
|
-
<td headers="dt-
|
|
5368
|
-
<td headers="dt-
|
|
5363
|
+
<th rowspan="3" headers="dt-47-type dt-47-r1" id="dt-47-r1">Default</th>
|
|
5364
|
+
<td headers="dt-47-group dt-47-primary dt-47-r1">Lorem Ipsum</td>
|
|
5365
|
+
<td headers="dt-47-group dt-47-secondary dt-47-r1">Lorem Ipsum</td>
|
|
5366
|
+
<td headers="dt-47-details dt-47-before dt-47-r1">Lorem Ipsum</td>
|
|
5367
|
+
<td headers="dt-47-details dt-47-after dt-47-r1">Lorem Ipsum</td>
|
|
5368
|
+
<td headers="dt-47-id">OL-53-GHSLE</td>
|
|
5369
5369
|
</tr>
|
|
5370
5370
|
<tr>
|
|
5371
|
-
<td headers="dt-
|
|
5372
|
-
<td headers="dt-
|
|
5373
|
-
<td headers="dt-
|
|
5374
|
-
<td headers="dt-
|
|
5375
|
-
<td headers="dt-
|
|
5371
|
+
<td headers="dt-47-group dt-47-primary dt-47-r1">Lorem Ipsum</td>
|
|
5372
|
+
<td headers="dt-47-group dt-47-secondary dt-47-r1">Lorem Ipsum</td>
|
|
5373
|
+
<td headers="dt-47-details dt-47-before dt-47-r1">Lorem Ipsum</td>
|
|
5374
|
+
<td headers="dt-47-details dt-47-after dt-47-r1">Lorem Ipsum</td>
|
|
5375
|
+
<td headers="dt-47-id">OL-53-GHSLE</td>
|
|
5376
5376
|
</tr>
|
|
5377
5377
|
<tr>
|
|
5378
|
-
<td headers="dt-
|
|
5379
|
-
<td headers="dt-
|
|
5380
|
-
<td headers="dt-
|
|
5381
|
-
<td headers="dt-
|
|
5382
|
-
<td headers="dt-
|
|
5378
|
+
<td headers="dt-47-group dt-47-primary dt-47-r1">Lorem Ipsum</td>
|
|
5379
|
+
<td headers="dt-47-group dt-47-secondary dt-47-r1">Lorem Ipsum</td>
|
|
5380
|
+
<td headers="dt-47-details dt-47-before dt-47-r1">Lorem Ipsum</td>
|
|
5381
|
+
<td headers="dt-47-details dt-47-after dt-47-r1">Lorem Ipsum</td>
|
|
5382
|
+
<td headers="dt-47-id">OL-53-GHSLE</td>
|
|
5383
5383
|
</tr>
|
|
5384
5384
|
</tbody>
|
|
5385
5385
|
</table>
|
|
5386
5386
|
<h2 class="h2">No-border Table</h2>
|
|
5387
|
-
<table class="data-table data-table--no-border" id="dt-
|
|
5387
|
+
<table class="data-table data-table--no-border" id="dt-48">
|
|
5388
5388
|
<caption>
|
|
5389
5389
|
This Is The Table's Caption
|
|
5390
5390
|
</caption>
|
|
5391
5391
|
<thead>
|
|
5392
5392
|
<tr>
|
|
5393
|
-
<th id="dt-
|
|
5394
|
-
<th id="dt-
|
|
5395
|
-
<th id="dt-
|
|
5396
|
-
<th id="dt-
|
|
5393
|
+
<th id="dt-48-type" rowspan="2">Type</th>
|
|
5394
|
+
<th id="dt-48-group" colspan="2">Group</th>
|
|
5395
|
+
<th id="dt-48-details" colspan="2">Details</th>
|
|
5396
|
+
<th id="dt-48-id" rowspan="2">Id</th>
|
|
5397
5397
|
</tr>
|
|
5398
5398
|
<tr>
|
|
5399
|
-
<th headers="dt-
|
|
5400
|
-
<th headers="dt-
|
|
5401
|
-
<th headers="dt-
|
|
5402
|
-
<th headers="dt-
|
|
5399
|
+
<th headers="dt-48-group" id="dt-48-primary">Primary</th>
|
|
5400
|
+
<th headers="dt-48-group" id="dt-48-secondary">Secondary</th>
|
|
5401
|
+
<th headers="dt-48-details" id="dt-48-before">Before Task</th>
|
|
5402
|
+
<th headers="dt-48-details" id="dt-48-after">After Task</th>
|
|
5403
5403
|
</tr>
|
|
5404
5404
|
</thead>
|
|
5405
5405
|
<tbody>
|
|
5406
5406
|
<tr>
|
|
5407
|
-
<th rowspan="3" headers="dt-
|
|
5408
|
-
<td headers="dt-
|
|
5409
|
-
<td headers="dt-
|
|
5410
|
-
<td headers="dt-
|
|
5411
|
-
<td headers="dt-
|
|
5412
|
-
<td headers="dt-
|
|
5407
|
+
<th rowspan="3" headers="dt-48-type dt-48-r1" id="dt-48-r1">Default</th>
|
|
5408
|
+
<td headers="dt-48-group dt-48-primary dt-48-r1">Lorem Ipsum</td>
|
|
5409
|
+
<td headers="dt-48-group dt-48-secondary dt-48-r1">Lorem Ipsum</td>
|
|
5410
|
+
<td headers="dt-48-details dt-48-before dt-48-r1">Lorem Ipsum</td>
|
|
5411
|
+
<td headers="dt-48-details dt-48-after dt-48-r1">Lorem Ipsum</td>
|
|
5412
|
+
<td headers="dt-48-id">OL-53-GHSLE</td>
|
|
5413
5413
|
</tr>
|
|
5414
5414
|
<tr>
|
|
5415
|
-
<td headers="dt-
|
|
5416
|
-
<td headers="dt-
|
|
5417
|
-
<td headers="dt-
|
|
5418
|
-
<td headers="dt-
|
|
5419
|
-
<td headers="dt-
|
|
5415
|
+
<td headers="dt-48-group dt-48-primary dt-48-r1">Lorem Ipsum</td>
|
|
5416
|
+
<td headers="dt-48-group dt-48-secondary dt-48-r1">Lorem Ipsum</td>
|
|
5417
|
+
<td headers="dt-48-details dt-48-before dt-48-r1">Lorem Ipsum</td>
|
|
5418
|
+
<td headers="dt-48-details dt-48-after dt-48-r1">Lorem Ipsum</td>
|
|
5419
|
+
<td headers="dt-48-id">OL-53-GHSLE</td>
|
|
5420
5420
|
</tr>
|
|
5421
5421
|
<tr>
|
|
5422
|
-
<td headers="dt-
|
|
5423
|
-
<td headers="dt-
|
|
5424
|
-
<td headers="dt-
|
|
5425
|
-
<td headers="dt-
|
|
5426
|
-
<td headers="dt-
|
|
5422
|
+
<td headers="dt-48-group dt-48-primary dt-48-r1">Lorem Ipsum</td>
|
|
5423
|
+
<td headers="dt-48-group dt-48-secondary dt-48-r1">Lorem Ipsum</td>
|
|
5424
|
+
<td headers="dt-48-details dt-48-before dt-48-r1">Lorem Ipsum</td>
|
|
5425
|
+
<td headers="dt-48-details dt-48-after dt-48-r1">Lorem Ipsum</td>
|
|
5426
|
+
<td headers="dt-48-id">OL-53-GHSLE</td>
|
|
5427
5427
|
</tr>
|
|
5428
5428
|
</tbody>
|
|
5429
5429
|
</table>
|
package/js/ui/dialog.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* @module ui/dialog
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
+
import { getName } from "../events/index.js";
|
|
5
6
|
import { ComponentInitializer } from "../utils/system.js";
|
|
6
7
|
import { wasClickOutside, preventScroll as setupPreventScroll } from "@ulu/utils/browser/dom.js";
|
|
7
|
-
import { debounce } from "@ulu/utils/performance.js";
|
|
8
8
|
import { pauseVideos as pauseYoutubeVideos, prepVideos as prepYoutubeVideos } from "../utils/pause-youtube-video.js";
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -132,37 +132,15 @@ export function setupDialog(dialog, userOptions) {
|
|
|
132
132
|
const options = Object.assign({}, currentDefaults, userOptions);
|
|
133
133
|
const body = document.body;
|
|
134
134
|
const { preventScrollShift: preventShift } = options;
|
|
135
|
-
let isPointerDown = false;
|
|
136
|
-
let isResizing = false;
|
|
137
135
|
|
|
138
|
-
|
|
139
|
-
//
|
|
140
|
-
|
|
141
|
-
// native resize handle. If this causes issues in the future we can explore tracking the pointer
|
|
142
|
-
// with setPointerCapture but I'm worried about it affecting inner elements with their own pointer events
|
|
143
|
-
// This seems like it will be ok we just don't allow outside closing if there was pointerdown from within the modal
|
|
144
|
-
dialog.addEventListener("pointerdown", handlePointerdown);
|
|
136
|
+
// Stores active pointerId for resizer until after the whole pointer event series
|
|
137
|
+
// is finished which is after the click is complete
|
|
138
|
+
let activeResizePointer;
|
|
145
139
|
|
|
140
|
+
dialog.addEventListener(getName("resizer:start"), handleResizeStart);
|
|
141
|
+
dialog.addEventListener(getName("resizer:end"), handleResizeEnd);
|
|
146
142
|
dialog.addEventListener("click", handleClicks);
|
|
147
143
|
|
|
148
|
-
// Watching for resizes to avoid closing outside during resizes
|
|
149
|
-
// - There is no resize event for css resize (so this uses pointerdown and resize observer)
|
|
150
|
-
const handleResizeEnd = debounce(() => {
|
|
151
|
-
if (isResizing && !isPointerDown) {
|
|
152
|
-
isResizing = false;
|
|
153
|
-
}
|
|
154
|
-
}, 500);
|
|
155
|
-
|
|
156
|
-
const resizeObserver = new ResizeObserver(() => {
|
|
157
|
-
if (isPointerDown) {
|
|
158
|
-
if (!isResizing) {
|
|
159
|
-
isResizing = true;
|
|
160
|
-
}
|
|
161
|
-
handleResizeEnd();
|
|
162
|
-
}
|
|
163
|
-
});
|
|
164
|
-
resizeObserver.observe(dialog);
|
|
165
|
-
|
|
166
144
|
if (options.documentEnd) {
|
|
167
145
|
body.appendChild(dialog);
|
|
168
146
|
}
|
|
@@ -187,26 +165,11 @@ export function setupDialog(dialog, userOptions) {
|
|
|
187
165
|
});
|
|
188
166
|
}
|
|
189
167
|
|
|
190
|
-
function handlePointerdown() {
|
|
191
|
-
if (isPointerDown) return;
|
|
192
|
-
isPointerDown = true;
|
|
193
|
-
|
|
194
|
-
const done = () => {
|
|
195
|
-
// After event queue (click) - so after click handler for outside is called
|
|
196
|
-
setTimeout(() => {
|
|
197
|
-
isPointerDown = false;
|
|
198
|
-
isResizing = false;
|
|
199
|
-
}, 0);
|
|
200
|
-
};
|
|
201
|
-
document.addEventListener("pointerup", done, { once: true });
|
|
202
|
-
document.addEventListener("pointercancel", done, { once: true });
|
|
203
|
-
}
|
|
204
|
-
|
|
205
168
|
function handleClicks(event) {
|
|
206
169
|
const { target } = event;
|
|
207
170
|
const targetIsDialog = target === dialog;
|
|
208
171
|
const closeFromButton = target.closest(initializer.attributeSelector("close"));
|
|
209
|
-
const allowCloseOutside = !
|
|
172
|
+
const allowCloseOutside = !activeResizePointer && options.clickOutsideCloses;
|
|
210
173
|
const closeFromOutside = allowCloseOutside && targetIsDialog && wasClickOutside(dialog, event);
|
|
211
174
|
if (closeFromOutside || closeFromButton) {
|
|
212
175
|
if (options.pauseVideos) {
|
|
@@ -215,6 +178,15 @@ export function setupDialog(dialog, userOptions) {
|
|
|
215
178
|
dialog.close();
|
|
216
179
|
}
|
|
217
180
|
}
|
|
181
|
+
function handleResizeStart(event) {
|
|
182
|
+
activeResizePointer = event.pointerId;
|
|
183
|
+
}
|
|
184
|
+
function handleResizeEnd(event) {
|
|
185
|
+
if (activeResizePointer === event.pointerId) {
|
|
186
|
+
// next event cycle (after click/pointer events finish in current)
|
|
187
|
+
setTimeout(() => { activeResizePointer = null;}, 0);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
218
190
|
}
|
|
219
191
|
|
|
220
192
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ulu/frontend",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.82",
|
|
4
4
|
"description": "A versatile SCSS and JavaScript component library offering configurable, accessible components and flexible integration into any project, with SCSS modules suitable for modern JS frameworks.",
|
|
5
5
|
"browser": "js/index.js",
|
|
6
6
|
"main": "index.js",
|