Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On Demand Identify #2187

Merged
merged 1 commit into from
May 9, 2024
Merged

On Demand Identify #2187

merged 1 commit into from
May 9, 2024

Conversation

james-rae
Copy link
Member

@james-rae james-rae commented Apr 29, 2024

Related Item(s)

Donethankses

#1940
#2184
#2186

Incrementally improves

#2155

Adds functionality to let this one start

#2156

Changes

  • Restores the "toggle details" functionality of that event.
  • Changes the "show details" button in the grid to always show instead of toggle.
  • When the grid creates a payload for the "show details" button, it now uses standard API instead of trickery.
  • Fixes race condition bug when attempting to highlight the "list view" in details.
  • Identify results will now wait to be explicitly load()ed instead of automatically hitting server.
  • Identify panel will only load results when they are visible.
  • Removed some ESRI imports that were not being used.
  • Stopped the "highlight" toggle from resetting every time the details panel closed.
  • Doc and var name updates.
  • Fixed a crime against the alphabet.

Notes

When showing a list view of results and items are still resolving, the list does not show items until they have loaded. Which leads to the list "populating" in chunks. Am guessing a better solution is to show the list item with a spinner, then have it update with the icon and name once loaded. This should be explored when the pagination gets added to the list view.

Now that items require a load() call, this is a breaking change and will be noted on the release notes.

This doesn't solve the bot-spam issue, just preps for it. So don't try tests on the CAM sample cuz it will still lovebomb the server when in details list view.

Testing

Note there is a temporary random delay in loading individual items. So expect a bit of a pause (lets you observe behavior that slower services would exhibit). This will also impact maptips and zoomies.

Identify List bug and delayed load

  1. Open Sample 15
  2. Click a big cluster of points (southern ontario is good)
  3. Validate that a result appears in the identify panel as expected
  4. Click the list view button on the detail
  5. Watch the list populate as items load (see notes above)
  6. Once list is ready (should be within 5 seconds), zoom in the map a bit and verify items are hilighted (water ones are easier to detect). Devs can look at console for screeching errors.

Grid button and toggle event

Test A:

Re-do the steps in #1940 . They're a bit confusing but I tried different permutations of interpretations and all worked. Try your best.

Test B:

  1. Open Sample 38.
  2. Open the grid for a layer under the Heterogenous Merge Grid.
  3. Use the Details button in the grid rows. Ensure things open (this validates the OID mapping isn't broken).
  4. Try rows from different source layers (look at the symbols to differentiate).

Test C:

  1. On any grid you like, click the Details button in a row.
  2. See the panel open.
  3. Then click the button again. Panel should no longer toggle closed. You may see a refresh due to the slow-loader temp patch. Normally with would be cached and snappy.
  4. Close details panel
  5. Click the same grid row button again. Panel should open.

General fun

  • Try identifying your favourite layer
  • Try out the controls like the arrows that go to next result, turning highlight toggle on and off, minimizing panel and re-opening

This change is Reviewable

@james-rae james-rae changed the title on demand identify On Demand Identify Apr 29, 2024
@james-rae
Copy link
Member Author

src/geo/layer/attrib-layer.ts line 433 at r1 (raw file):

        // delay between 0.5 and 3 seconds
        await this.sleep(Math.floor(Math.random() * 2500) + 500);

blocker. This and sleep() above will get removed prior to mashing the green button

Copy link
Member

@spencerwahl spencerwahl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 33 of 34 files at r1, 1 of 1 files at r2, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion

Copy link
Member

@szczz szczz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 33 of 34 files at r1, 1 of 1 files at r2, 2 of 2 files at r3, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on @spencerwahl)

Copy link
Member

@dnlnashed dnlnashed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 33 of 34 files at r1, 1 of 1 files at r2, 2 of 2 files at r3, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on @spencerwahl)

Copy link
Member

@spencerwahl spencerwahl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 2 of 2 files at r3, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion

Copy link
Member

@sharvenp sharvenp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 33 of 34 files at r1, 1 of 1 files at r2, 2 of 2 files at r3, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion

Copy link
Member

@RyanCoulsonCA RyanCoulsonCA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 33 of 34 files at r1, 1 of 1 files at r2, 2 of 2 files at r3, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion

Copy link
Member Author

@james-rae james-rae left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewable status: 35 of 36 files reviewed, all discussions resolved (waiting on @dnlnashed, @RyanCoulsonCA, @sharvenp, @spencerwahl, and @szczz)


src/geo/layer/attrib-layer.ts line 433 at r1 (raw file):

Previously, james-rae (James Rae) wrote…

blocker. This and sleep() above will get removed prior to mashing the green button

all good

Copy link
Member

@dnlnashed dnlnashed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 1 of 1 files at r4, all commit messages.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on @james-rae)

@dnlnashed dnlnashed merged commit 08f89fa into ramp4-pcar4:main May 9, 2024
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants