@ni/nimble-angular 19.3.1 → 19.4.0

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.
@@ -15,12 +15,12 @@ export class NimbleTableColumnAnchorNavigationGuardDirective {
15
15
  const clickEvent = delegatedEvent;
16
16
  // Only call the navigationGuard for plain left clicks.
17
17
  // Those are the only ones that should potentially use the router.
18
- // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L453
18
+ // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L302
19
19
  if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {
20
20
  return;
21
21
  }
22
22
  const cellView = delegatedEvent.target;
23
- // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L457
23
+ // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L306
24
24
  if (typeof cellView.columnConfig?.target === 'string' && cellView.columnConfig.target !== '_self') {
25
25
  return;
26
26
  }
@@ -28,7 +28,7 @@ export class NimbleTableColumnAnchorNavigationGuardDirective {
28
28
  if (!href) {
29
29
  return;
30
30
  }
31
- if (this.navigationGuard && !this.navigationGuard(recordId)) {
31
+ if (this.navigationGuard && !this.navigationGuard(recordId, href)) {
32
32
  clickEvent.preventDefault();
33
33
  }
34
34
  }
@@ -46,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
46
46
  type: HostListener,
47
47
  args: ['delegated-event', ['$event.detail.originalEvent', '$event.detail.recordId']]
48
48
  }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1hbmNob3ItbmF2aWdhdGlvbi1ndWFyZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaS9uaW1ibGUtYW5ndWxhci90YWJsZS1jb2x1bW4vYW5jaG9yL25pbWJsZS10YWJsZS1jb2x1bW4tYW5jaG9yLW5hdmlnYXRpb24tZ3VhcmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLL0Q7Ozs7OztHQU1HO0FBSUgsTUFBTSxPQUFPLCtDQUErQztJQUtoRCxnQkFBZ0IsQ0FBQyxjQUFxQixFQUFFLFFBQTRCO1FBQ3hFLElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7WUFDakMsT0FBTztTQUNWO1FBRUQsTUFBTSxVQUFVLEdBQUcsY0FBNEIsQ0FBQztRQUNoRCx1REFBdUQ7UUFDdkQsa0VBQWtFO1FBQ2xFLGdKQUFnSjtRQUNoSixJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsSUFBSSxVQUFVLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUU7WUFDakgsT0FBTztTQUNWO1FBRUQsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLE1BQW1DLENBQUM7UUFDcEUsZ0pBQWdKO1FBQ2hKLElBQUksT0FBTyxRQUFRLENBQUMsWUFBWSxFQUFFLE1BQU0sS0FBSyxRQUFRLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFO1lBQy9GLE9BQU87U0FDVjtRQUVELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDUCxPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3pELFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUMvQjtJQUNMLENBQUM7OzZJQWhDUSwrQ0FBK0M7aUlBQS9DLCtDQUErQzs0RkFBL0MsK0NBQStDO2tCQUgzRCxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw2Q0FBNkM7aUJBQzFEOzhCQUdVLGVBQWU7c0JBRHJCLEtBQUs7Z0JBSUUsZ0JBQWdCO3NCQUR2QixZQUFZO3VCQUFDLGlCQUFpQixFQUFFLENBQUMsNkJBQTZCLEVBQUUsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgVGFibGVDb2x1bW5BbmNob3JDZWxsVmlldyB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZS1jb2x1bW4vYW5jaG9yL2NlbGwtdmlldyc7XG5cbmV4cG9ydCB0eXBlIE5hdmlnYXRpb25HdWFyZCA9IChyb3dSZWNvcmRJZDogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiBib29sZWFuO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBhbGxvdyBjbGllbnQgdG8gaW50ZXJjZXB0IGFuY2hvciBjbGlja3MgYW5kIGRvIHJvdXRlciBuYXZpZ2F0aW9uIGluc3RlYWQgb2ZcbiAqIGxldHRpbmcgdGhlIGRlZmF1bHQgYWN0aW9uIGhhbmRsZSB0aGUgbmF2aWdhdGlvbi4gVGhlIGNsaWVudCBzdXBwbGllcyBhIGZ1bmN0aW9uIHdoaWNoIGlzXG4gKiBleHBlY3RlZCB0byBidWlsZCB0aGUgcHJvcGVyIHVybCBhbmQgY2FsbCBvbmUgb2YgdGhlIHJvdXRlcidzIG5hdmlnYXRpb24gZnVuY3Rpb25zLCBwYXNzaW5nXG4gKiB0aGUgdXJsIGFuZCBhbnkgbmF2aWdhdGlvbiBvcHRpb25zLiBJZiB0aGUgcm91dGVyIHN1Y2Nlc3NmdWxseSBuYXZpZ2F0ZWQsIHRoZSBmdW5jdGlvbiBzaG91bGRcbiAqIHJldHVybiBmYWxzZSB0byBwcmV2ZW50IHRoZSBsaW5rJ3MgZGVmYXVsdCBjbGljayBoYW5kbGVyIGZyb20gYWxzbyBwZXJmb3JtaW5nIHRoZSBuYXZpZ2F0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4tYW5jaG9yW25hdmlnYXRpb25HdWFyZF0nXG59KVxuZXhwb3J0IGNsYXNzIE5pbWJsZVRhYmxlQ29sdW1uQW5jaG9yTmF2aWdhdGlvbkd1YXJkRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBuYXZpZ2F0aW9uR3VhcmQ/OiBOYXZpZ2F0aW9uR3VhcmQ7XG5cbiAgICBASG9zdExpc3RlbmVyKCdkZWxlZ2F0ZWQtZXZlbnQnLCBbJyRldmVudC5kZXRhaWwub3JpZ2luYWxFdmVudCcsICckZXZlbnQuZGV0YWlsLnJlY29yZElkJ10pXG4gICAgcHJpdmF0ZSBvbkRlbGVnYXRlZEV2ZW50KGRlbGVnYXRlZEV2ZW50OiBFdmVudCwgcmVjb3JkSWQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgICAgICBpZiAoZGVsZWdhdGVkRXZlbnQudHlwZSAhPT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2xpY2tFdmVudCA9IGRlbGVnYXRlZEV2ZW50IGFzIE1vdXNlRXZlbnQ7XG4gICAgICAgIC8vIE9ubHkgY2FsbCB0aGUgbmF2aWdhdGlvbkd1YXJkIGZvciBwbGFpbiBsZWZ0IGNsaWNrcy5cbiAgICAgICAgLy8gVGhvc2UgYXJlIHRoZSBvbmx5IG9uZXMgdGhhdCBzaG91bGQgcG90ZW50aWFsbHkgdXNlIHRoZSByb3V0ZXIuXG4gICAgICAgIC8vIEJhc2VkIG9uOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvMzVhM2ZkZTViNzFlZjNiNTAyODJmZTZmN2IzN2NhMWM5MmI4ZDJhMC9wYWNrYWdlcy9yb3V0ZXIvc3JjL2RpcmVjdGl2ZXMvcm91dGVyX2xpbmsudHMjTDQ1M1xuICAgICAgICBpZiAoY2xpY2tFdmVudC5idXR0b24gIT09IDAgfHwgY2xpY2tFdmVudC5jdHJsS2V5IHx8IGNsaWNrRXZlbnQuc2hpZnRLZXkgfHwgY2xpY2tFdmVudC5hbHRLZXkgfHwgY2xpY2tFdmVudC5tZXRhS2V5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjZWxsVmlldyA9IGRlbGVnYXRlZEV2ZW50LnRhcmdldCBhcyBUYWJsZUNvbHVtbkFuY2hvckNlbGxWaWV3O1xuICAgICAgICAvLyBCYXNlZCBvbjogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iLzM1YTNmZGU1YjcxZWYzYjUwMjgyZmU2ZjdiMzdjYTFjOTJiOGQyYTAvcGFja2FnZXMvcm91dGVyL3NyYy9kaXJlY3RpdmVzL3JvdXRlcl9saW5rLnRzI0w0NTdcbiAgICAgICAgaWYgKHR5cGVvZiBjZWxsVmlldy5jb2x1bW5Db25maWc/LnRhcmdldCA9PT0gJ3N0cmluZycgJiYgY2VsbFZpZXcuY29sdW1uQ29uZmlnLnRhcmdldCAhPT0gJ19zZWxmJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaHJlZiA9IGNlbGxWaWV3LmNlbGxSZWNvcmQ/LmhyZWY7XG4gICAgICAgIGlmICghaHJlZikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubmF2aWdhdGlvbkd1YXJkICYmICF0aGlzLm5hdmlnYXRpb25HdWFyZChyZWNvcmRJZCkpIHtcbiAgICAgICAgICAgIGNsaWNrRXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1hbmNob3ItbmF2aWdhdGlvbi1ndWFyZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaS9uaW1ibGUtYW5ndWxhci90YWJsZS1jb2x1bW4vYW5jaG9yL25pbWJsZS10YWJsZS1jb2x1bW4tYW5jaG9yLW5hdmlnYXRpb24tZ3VhcmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLL0Q7Ozs7OztHQU1HO0FBSUgsTUFBTSxPQUFPLCtDQUErQztJQUtoRCxnQkFBZ0IsQ0FBQyxjQUFxQixFQUFFLFFBQTRCO1FBQ3hFLElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7WUFDakMsT0FBTztTQUNWO1FBRUQsTUFBTSxVQUFVLEdBQUcsY0FBNEIsQ0FBQztRQUNoRCx1REFBdUQ7UUFDdkQsa0VBQWtFO1FBQ2xFLCtHQUErRztRQUMvRyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsSUFBSSxVQUFVLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUU7WUFDakgsT0FBTztTQUNWO1FBRUQsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLE1BQW1DLENBQUM7UUFDcEUsK0dBQStHO1FBQy9HLElBQUksT0FBTyxRQUFRLENBQUMsWUFBWSxFQUFFLE1BQU0sS0FBSyxRQUFRLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFO1lBQy9GLE9BQU87U0FDVjtRQUVELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDUCxPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUMvRCxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDL0I7SUFDTCxDQUFDOzs2SUFoQ1EsK0NBQStDO2lJQUEvQywrQ0FBK0M7NEZBQS9DLCtDQUErQztrQkFIM0QsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsNkNBQTZDO2lCQUMxRDs4QkFHVSxlQUFlO3NCQURyQixLQUFLO2dCQUlFLGdCQUFnQjtzQkFEdkIsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxDQUFDLDZCQUE2QixFQUFFLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFRhYmxlQ29sdW1uQW5jaG9yQ2VsbFZpZXcgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2FuY2hvci9jZWxsLXZpZXcnO1xuXG5leHBvcnQgdHlwZSBOYXZpZ2F0aW9uR3VhcmQgPSAocm93UmVjb3JkSWQ6IHN0cmluZyB8IHVuZGVmaW5lZCwgaHJlZjogc3RyaW5nKSA9PiBib29sZWFuO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBhbGxvdyBjbGllbnQgdG8gaW50ZXJjZXB0IGFuY2hvciBjbGlja3MgYW5kIGRvIHJvdXRlciBuYXZpZ2F0aW9uIGluc3RlYWQgb2ZcbiAqIGxldHRpbmcgdGhlIGRlZmF1bHQgYWN0aW9uIGhhbmRsZSB0aGUgbmF2aWdhdGlvbi4gVGhlIGNsaWVudCBzdXBwbGllcyBhIGZ1bmN0aW9uIHdoaWNoIGlzXG4gKiBleHBlY3RlZCB0byBidWlsZCB0aGUgcHJvcGVyIHVybCBhbmQgY2FsbCBvbmUgb2YgdGhlIHJvdXRlcidzIG5hdmlnYXRpb24gZnVuY3Rpb25zLCBwYXNzaW5nXG4gKiB0aGUgdXJsIGFuZCBhbnkgbmF2aWdhdGlvbiBvcHRpb25zLiBJZiB0aGUgcm91dGVyIHN1Y2Nlc3NmdWxseSBuYXZpZ2F0ZWQsIHRoZSBmdW5jdGlvbiBzaG91bGRcbiAqIHJldHVybiBmYWxzZSB0byBwcmV2ZW50IHRoZSBsaW5rJ3MgZGVmYXVsdCBjbGljayBoYW5kbGVyIGZyb20gYWxzbyBwZXJmb3JtaW5nIHRoZSBuYXZpZ2F0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4tYW5jaG9yW25hdmlnYXRpb25HdWFyZF0nXG59KVxuZXhwb3J0IGNsYXNzIE5pbWJsZVRhYmxlQ29sdW1uQW5jaG9yTmF2aWdhdGlvbkd1YXJkRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBuYXZpZ2F0aW9uR3VhcmQ/OiBOYXZpZ2F0aW9uR3VhcmQ7XG5cbiAgICBASG9zdExpc3RlbmVyKCdkZWxlZ2F0ZWQtZXZlbnQnLCBbJyRldmVudC5kZXRhaWwub3JpZ2luYWxFdmVudCcsICckZXZlbnQuZGV0YWlsLnJlY29yZElkJ10pXG4gICAgcHJpdmF0ZSBvbkRlbGVnYXRlZEV2ZW50KGRlbGVnYXRlZEV2ZW50OiBFdmVudCwgcmVjb3JkSWQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgICAgICBpZiAoZGVsZWdhdGVkRXZlbnQudHlwZSAhPT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2xpY2tFdmVudCA9IGRlbGVnYXRlZEV2ZW50IGFzIE1vdXNlRXZlbnQ7XG4gICAgICAgIC8vIE9ubHkgY2FsbCB0aGUgbmF2aWdhdGlvbkd1YXJkIGZvciBwbGFpbiBsZWZ0IGNsaWNrcy5cbiAgICAgICAgLy8gVGhvc2UgYXJlIHRoZSBvbmx5IG9uZXMgdGhhdCBzaG91bGQgcG90ZW50aWFsbHkgdXNlIHRoZSByb3V0ZXIuXG4gICAgICAgIC8vIEJhc2VkIG9uOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvMTUuMi4xMC9wYWNrYWdlcy9yb3V0ZXIvc3JjL2RpcmVjdGl2ZXMvcm91dGVyX2xpbmsudHMjTDMwMlxuICAgICAgICBpZiAoY2xpY2tFdmVudC5idXR0b24gIT09IDAgfHwgY2xpY2tFdmVudC5jdHJsS2V5IHx8IGNsaWNrRXZlbnQuc2hpZnRLZXkgfHwgY2xpY2tFdmVudC5hbHRLZXkgfHwgY2xpY2tFdmVudC5tZXRhS2V5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjZWxsVmlldyA9IGRlbGVnYXRlZEV2ZW50LnRhcmdldCBhcyBUYWJsZUNvbHVtbkFuY2hvckNlbGxWaWV3O1xuICAgICAgICAvLyBCYXNlZCBvbjogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iLzE1LjIuMTAvcGFja2FnZXMvcm91dGVyL3NyYy9kaXJlY3RpdmVzL3JvdXRlcl9saW5rLnRzI0wzMDZcbiAgICAgICAgaWYgKHR5cGVvZiBjZWxsVmlldy5jb2x1bW5Db25maWc/LnRhcmdldCA9PT0gJ3N0cmluZycgJiYgY2VsbFZpZXcuY29sdW1uQ29uZmlnLnRhcmdldCAhPT0gJ19zZWxmJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaHJlZiA9IGNlbGxWaWV3LmNlbGxSZWNvcmQ/LmhyZWY7XG4gICAgICAgIGlmICghaHJlZikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubmF2aWdhdGlvbkd1YXJkICYmICF0aGlzLm5hdmlnYXRpb25HdWFyZChyZWNvcmRJZCwgaHJlZikpIHtcbiAgICAgICAgICAgIGNsaWNrRXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -22,12 +22,12 @@ class NimbleTableColumnAnchorNavigationGuardDirective {
22
22
  const clickEvent = delegatedEvent;
23
23
  // Only call the navigationGuard for plain left clicks.
24
24
  // Those are the only ones that should potentially use the router.
25
- // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L453
25
+ // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L302
26
26
  if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {
27
27
  return;
28
28
  }
29
29
  const cellView = delegatedEvent.target;
30
- // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L457
30
+ // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L306
31
31
  if (typeof ((_a = cellView.columnConfig) === null || _a === void 0 ? void 0 : _a.target) === 'string' && cellView.columnConfig.target !== '_self') {
32
32
  return;
33
33
  }
@@ -35,7 +35,7 @@ class NimbleTableColumnAnchorNavigationGuardDirective {
35
35
  if (!href) {
36
36
  return;
37
37
  }
38
- if (this.navigationGuard && !this.navigationGuard(recordId)) {
38
+ if (this.navigationGuard && !this.navigationGuard(recordId, href)) {
39
39
  clickEvent.preventDefault();
40
40
  }
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ni-nimble-angular-table-column-anchor.mjs","sources":["../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor-navigation-guard.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.module.ts","../../../../projects/ni/nimble-angular/table-column/anchor/ni-nimble-angular-table-column-anchor.ts"],"sourcesContent":["import { Directive, HostListener, Input } from '@angular/core';\nimport type { TableColumnAnchorCellView } from '@ni/nimble-components/dist/esm/table-column/anchor/cell-view';\n\nexport type NavigationGuard = (rowRecordId: string | undefined) => boolean;\n\n/**\n * Directive to allow client to intercept anchor clicks and do router navigation instead of\n * letting the default action handle the navigation. The client supplies a function which is\n * expected to build the proper url and call one of the router's navigation functions, passing\n * the url and any navigation options. If the router successfully navigated, the function should\n * return false to prevent the link's default click handler from also performing the navigation.\n */\n@Directive({\n selector: 'nimble-table-column-anchor[navigationGuard]'\n})\nexport class NimbleTableColumnAnchorNavigationGuardDirective {\n @Input()\n public navigationGuard?: NavigationGuard;\n\n @HostListener('delegated-event', ['$event.detail.originalEvent', '$event.detail.recordId'])\n private onDelegatedEvent(delegatedEvent: Event, recordId: string | undefined): void {\n if (delegatedEvent.type !== 'click') {\n return;\n }\n\n const clickEvent = delegatedEvent as MouseEvent;\n // Only call the navigationGuard for plain left clicks.\n // Those are the only ones that should potentially use the router.\n // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L453\n if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {\n return;\n }\n\n const cellView = delegatedEvent.target as TableColumnAnchorCellView;\n // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L457\n if (typeof cellView.columnConfig?.target === 'string' && cellView.columnConfig.target !== '_self') {\n return;\n }\n\n const href = cellView.cellRecord?.href;\n if (!href) {\n return;\n }\n\n if (this.navigationGuard && !this.navigationGuard(recordId)) {\n clickEvent.preventDefault();\n }\n }\n}\n","import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';\nimport { type TableColumnAnchor, tableColumnAnchorTag } from '@ni/nimble-components/dist/esm/table-column/anchor';\nimport { AnchorAppearance } from '@ni/nimble-components/dist/esm/anchor/types';\nimport { BooleanValueOrAttribute, NumberValueOrAttribute, toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';\nimport { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';\n\nexport type { TableColumnAnchor };\nexport { tableColumnAnchorTag };\nexport { AnchorAppearance };\n\n/**\n * Directive to provide Angular integration for the table column element for links.\n */\n@Directive({\n selector: 'nimble-table-column-anchor'\n})\nexport class NimbleTableColumnAnchorDirective extends NimbleTableColumnBaseDirective<TableColumnAnchor> {\n public get labelFieldName(): string | undefined {\n return this.elementRef.nativeElement.labelFieldName;\n }\n\n @Input('label-field-name') public set labelFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'labelFieldName', value);\n }\n\n public get hrefFieldName(): string | undefined {\n return this.elementRef.nativeElement.hrefFieldName;\n }\n\n @Input('href-field-name') public set hrefFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hrefFieldName', value);\n }\n\n public get appearance(): AnchorAppearance {\n return this.elementRef.nativeElement.appearance;\n }\n\n @Input() public set appearance(value: AnchorAppearance) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'appearance', value);\n }\n\n public get underlineHidden(): boolean {\n return this.elementRef.nativeElement.underlineHidden;\n }\n\n @Input('underline-hidden') public set underlineHidden(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'underlineHidden', toBooleanProperty(value));\n }\n\n public get hreflang(): string | undefined {\n return this.elementRef.nativeElement.hreflang;\n }\n\n @Input() public set hreflang(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hreflang', value);\n }\n\n public get ping(): string | undefined {\n return this.elementRef.nativeElement.ping;\n }\n\n @Input() public set ping(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'ping', value);\n }\n\n public get referrerpolicy(): string | undefined {\n return this.elementRef.nativeElement.referrerpolicy;\n }\n\n @Input() public set referrerpolicy(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'referrerpolicy', value);\n }\n\n public get rel(): string | undefined {\n return this.elementRef.nativeElement.rel;\n }\n\n @Input() public set rel(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'rel', value);\n }\n\n public get target(): string | undefined {\n return this.elementRef.nativeElement.target;\n }\n\n @Input() public set target(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'target', value);\n }\n\n public get type(): string | undefined {\n return this.elementRef.nativeElement.type;\n }\n\n @Input() public set type(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'type', value);\n }\n\n public get download(): string | undefined {\n return this.elementRef.nativeElement.download;\n }\n\n @Input() public set download(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'download', value);\n }\n\n public get fractionalWidth(): number | null | undefined {\n return this.elementRef.nativeElement.fractionalWidth;\n }\n\n @Input('fractional-width') public set fractionalWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));\n }\n\n public get minPixelWidth(): number | null | undefined {\n return this.elementRef.nativeElement.minPixelWidth;\n }\n\n @Input('min-pixel-width') public set minPixelWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));\n }\n\n public get groupIndex(): number | null | undefined {\n return this.elementRef.nativeElement.groupIndex;\n }\n\n @Input('group-index') public set groupIndex(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));\n }\n\n public get groupingDisabled(): boolean {\n return this.elementRef.nativeElement.groupingDisabled;\n }\n\n @Input('grouping-disabled') public set groupingDisabled(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));\n }\n\n public constructor(renderer: Renderer2, elementRef: ElementRef<TableColumnAnchor>) {\n super(renderer, elementRef);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NimbleTableColumnAnchorDirective } from './nimble-table-column-anchor.directive';\nimport { NimbleTableColumnAnchorNavigationGuardDirective } from './nimble-table-column-anchor-navigation-guard.directive';\n\nimport '@ni/nimble-components/dist/esm/table-column/anchor';\n\n@NgModule({\n declarations: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective],\n imports: [CommonModule],\n exports: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective]\n})\nexport class NimbleTableColumnAnchorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ni-nimble-angular-table-column-anchor.mjs","sources":["../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor-navigation-guard.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.module.ts","../../../../projects/ni/nimble-angular/table-column/anchor/ni-nimble-angular-table-column-anchor.ts"],"sourcesContent":["import { Directive, HostListener, Input } from '@angular/core';\nimport type { TableColumnAnchorCellView } from '@ni/nimble-components/dist/esm/table-column/anchor/cell-view';\n\nexport type NavigationGuard = (rowRecordId: string | undefined, href: string) => boolean;\n\n/**\n * Directive to allow client to intercept anchor clicks and do router navigation instead of\n * letting the default action handle the navigation. The client supplies a function which is\n * expected to build the proper url and call one of the router's navigation functions, passing\n * the url and any navigation options. If the router successfully navigated, the function should\n * return false to prevent the link's default click handler from also performing the navigation.\n */\n@Directive({\n selector: 'nimble-table-column-anchor[navigationGuard]'\n})\nexport class NimbleTableColumnAnchorNavigationGuardDirective {\n @Input()\n public navigationGuard?: NavigationGuard;\n\n @HostListener('delegated-event', ['$event.detail.originalEvent', '$event.detail.recordId'])\n private onDelegatedEvent(delegatedEvent: Event, recordId: string | undefined): void {\n if (delegatedEvent.type !== 'click') {\n return;\n }\n\n const clickEvent = delegatedEvent as MouseEvent;\n // Only call the navigationGuard for plain left clicks.\n // Those are the only ones that should potentially use the router.\n // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L302\n if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {\n return;\n }\n\n const cellView = delegatedEvent.target as TableColumnAnchorCellView;\n // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L306\n if (typeof cellView.columnConfig?.target === 'string' && cellView.columnConfig.target !== '_self') {\n return;\n }\n\n const href = cellView.cellRecord?.href;\n if (!href) {\n return;\n }\n\n if (this.navigationGuard && !this.navigationGuard(recordId, href)) {\n clickEvent.preventDefault();\n }\n }\n}\n","import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';\nimport { type TableColumnAnchor, tableColumnAnchorTag } from '@ni/nimble-components/dist/esm/table-column/anchor';\nimport { AnchorAppearance } from '@ni/nimble-components/dist/esm/anchor/types';\nimport { BooleanValueOrAttribute, NumberValueOrAttribute, toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';\nimport { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';\n\nexport type { TableColumnAnchor };\nexport { tableColumnAnchorTag };\nexport { AnchorAppearance };\n\n/**\n * Directive to provide Angular integration for the table column element for links.\n */\n@Directive({\n selector: 'nimble-table-column-anchor'\n})\nexport class NimbleTableColumnAnchorDirective extends NimbleTableColumnBaseDirective<TableColumnAnchor> {\n public get labelFieldName(): string | undefined {\n return this.elementRef.nativeElement.labelFieldName;\n }\n\n @Input('label-field-name') public set labelFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'labelFieldName', value);\n }\n\n public get hrefFieldName(): string | undefined {\n return this.elementRef.nativeElement.hrefFieldName;\n }\n\n @Input('href-field-name') public set hrefFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hrefFieldName', value);\n }\n\n public get appearance(): AnchorAppearance {\n return this.elementRef.nativeElement.appearance;\n }\n\n @Input() public set appearance(value: AnchorAppearance) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'appearance', value);\n }\n\n public get underlineHidden(): boolean {\n return this.elementRef.nativeElement.underlineHidden;\n }\n\n @Input('underline-hidden') public set underlineHidden(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'underlineHidden', toBooleanProperty(value));\n }\n\n public get hreflang(): string | undefined {\n return this.elementRef.nativeElement.hreflang;\n }\n\n @Input() public set hreflang(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hreflang', value);\n }\n\n public get ping(): string | undefined {\n return this.elementRef.nativeElement.ping;\n }\n\n @Input() public set ping(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'ping', value);\n }\n\n public get referrerpolicy(): string | undefined {\n return this.elementRef.nativeElement.referrerpolicy;\n }\n\n @Input() public set referrerpolicy(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'referrerpolicy', value);\n }\n\n public get rel(): string | undefined {\n return this.elementRef.nativeElement.rel;\n }\n\n @Input() public set rel(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'rel', value);\n }\n\n public get target(): string | undefined {\n return this.elementRef.nativeElement.target;\n }\n\n @Input() public set target(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'target', value);\n }\n\n public get type(): string | undefined {\n return this.elementRef.nativeElement.type;\n }\n\n @Input() public set type(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'type', value);\n }\n\n public get download(): string | undefined {\n return this.elementRef.nativeElement.download;\n }\n\n @Input() public set download(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'download', value);\n }\n\n public get fractionalWidth(): number | null | undefined {\n return this.elementRef.nativeElement.fractionalWidth;\n }\n\n @Input('fractional-width') public set fractionalWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));\n }\n\n public get minPixelWidth(): number | null | undefined {\n return this.elementRef.nativeElement.minPixelWidth;\n }\n\n @Input('min-pixel-width') public set minPixelWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));\n }\n\n public get groupIndex(): number | null | undefined {\n return this.elementRef.nativeElement.groupIndex;\n }\n\n @Input('group-index') public set groupIndex(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));\n }\n\n public get groupingDisabled(): boolean {\n return this.elementRef.nativeElement.groupingDisabled;\n }\n\n @Input('grouping-disabled') public set groupingDisabled(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));\n }\n\n public constructor(renderer: Renderer2, elementRef: ElementRef<TableColumnAnchor>) {\n super(renderer, elementRef);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NimbleTableColumnAnchorDirective } from './nimble-table-column-anchor.directive';\nimport { NimbleTableColumnAnchorNavigationGuardDirective } from './nimble-table-column-anchor-navigation-guard.directive';\n\nimport '@ni/nimble-components/dist/esm/table-column/anchor';\n\n@NgModule({\n declarations: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective],\n imports: [CommonModule],\n exports: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective]\n})\nexport class NimbleTableColumnAnchorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;AAKA;;;;;;AAMG;MAIU,+CAA+C,CAAA;IAKhD,gBAAgB,CAAC,cAAqB,EAAE,QAA4B,EAAA;;AACxE,QAAA,IAAI,cAAc,CAAC,IAAI,KAAK,OAAO,EAAE;YACjC,OAAO;AACV,SAAA;QAED,MAAM,UAAU,GAAG,cAA4B,CAAC;;;;QAIhD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE;YACjH,OAAO;AACV,SAAA;AAED,QAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAmC,CAAC;;AAEpE,QAAA,IAAI,QAAO,CAAA,EAAA,GAAA,QAAQ,CAAC,YAAY,0CAAE,MAAM,CAAA,KAAK,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,KAAK,OAAO,EAAE;YAC/F,OAAO;AACV,SAAA;QAED,MAAM,IAAI,GAAG,CAAA,EAAA,GAAA,QAAQ,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE;YACP,OAAO;AACV,SAAA;AAED,QAAA,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE;YAC/D,UAAU,CAAC,cAAc,EAAE,CAAC;AAC/B,SAAA;KACJ;;6IAhCQ,+CAA+C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iIAA/C,+CAA+C,EAAA,QAAA,EAAA,6CAAA,EAAA,MAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,sEAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAA/C,+CAA+C,EAAA,UAAA,EAAA,CAAA;kBAH3D,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,6CAA6C;iBAC1D,CAAA;8BAGU,eAAe,EAAA,CAAA;sBADrB,KAAK;gBAIE,gBAAgB,EAAA,CAAA;sBADvB,YAAY;gBAAC,IAAA,EAAA,CAAA,iBAAiB,EAAE,CAAC,6BAA6B,EAAE,wBAAwB,CAAC,CAAA;;;ACT9F;;AAEG;AAIG,MAAO,gCAAiC,SAAQ,8BAAiD,CAAA;IAyHnG,WAAmB,CAAA,QAAmB,EAAE,UAAyC,EAAA;AAC7E,QAAA,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;KAC/B;AA1HD,IAAA,IAAW,cAAc,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC;KACvD;IAED,IAAsC,cAAc,CAAC,KAAyB,EAAA;AAC1E,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;KACrF;AAED,IAAA,IAAW,aAAa,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC;KACtD;IAED,IAAqC,aAAa,CAAC,KAAyB,EAAA;AACxE,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;KACpF;AAED,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC;KACnD;IAED,IAAoB,UAAU,CAAC,KAAuB,EAAA;AAClD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;KACjF;AAED,IAAA,IAAW,eAAe,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,eAAe,CAAC;KACxD;IAED,IAAsC,eAAe,CAAC,KAA8B,EAAA;AAChF,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;KACzG;AAED,IAAA,IAAW,QAAQ,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC;KACjD;IAED,IAAoB,QAAQ,CAAC,KAAyB,EAAA;AAClD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;KAC/E;AAED,IAAA,IAAW,IAAI,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC;KAC7C;IAED,IAAoB,IAAI,CAAC,KAAyB,EAAA;AAC9C,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;KAC3E;AAED,IAAA,IAAW,cAAc,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC;KACvD;IAED,IAAoB,cAAc,CAAC,KAAyB,EAAA;AACxD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;KACrF;AAED,IAAA,IAAW,GAAG,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC;KAC5C;IAED,IAAoB,GAAG,CAAC,KAAyB,EAAA;AAC7C,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;KAC1E;AAED,IAAA,IAAW,MAAM,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC;KAC/C;IAED,IAAoB,MAAM,CAAC,KAAyB,EAAA;AAChD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;KAC7E;AAED,IAAA,IAAW,IAAI,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC;KAC7C;IAED,IAAoB,IAAI,CAAC,KAAyB,EAAA;AAC9C,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;KAC3E;AAED,IAAA,IAAW,QAAQ,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC;KACjD;IAED,IAAoB,QAAQ,CAAC,KAAyB,EAAA;AAClD,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;KAC/E;AAED,IAAA,IAAW,eAAe,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,eAAe,CAAC;KACxD;IAED,IAAsC,eAAe,CAAC,KAAgD,EAAA;AAClG,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,iBAAiB,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;KAChH;AAED,IAAA,IAAW,aAAa,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC;KACtD;IAED,IAAqC,aAAa,CAAC,KAAgD,EAAA;AAC/F,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC9G;AAED,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC;KACnD;IAED,IAAiC,UAAU,CAAC,KAAgD,EAAA;AACxF,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC3G;AAED,IAAA,IAAW,gBAAgB,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC;KACzD;IAED,IAAuC,gBAAgB,CAAC,KAA8B,EAAA;AAClF,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC1G;;8HAvHQ,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kHAAhC,gCAAgC,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,CAAA,kBAAA,EAAA,gBAAA,CAAA,EAAA,aAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,CAAA,EAAA,UAAA,EAAA,YAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,GAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,aAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,CAAA,EAAA,UAAA,EAAA,CAAA,aAAA,EAAA,YAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,4BAA4B;iBACzC,CAAA;yHAMyC,cAAc,EAAA,CAAA;sBAAnD,KAAK;uBAAC,kBAAkB,CAAA;gBAQY,aAAa,EAAA,CAAA;sBAAjD,KAAK;uBAAC,iBAAiB,CAAA;gBAQJ,UAAU,EAAA,CAAA;sBAA7B,KAAK;gBAQgC,eAAe,EAAA,CAAA;sBAApD,KAAK;uBAAC,kBAAkB,CAAA;gBAQL,QAAQ,EAAA,CAAA;sBAA3B,KAAK;gBAQc,IAAI,EAAA,CAAA;sBAAvB,KAAK;gBAQc,cAAc,EAAA,CAAA;sBAAjC,KAAK;gBAQc,GAAG,EAAA,CAAA;sBAAtB,KAAK;gBAQc,MAAM,EAAA,CAAA;sBAAzB,KAAK;gBAQc,IAAI,EAAA,CAAA;sBAAvB,KAAK;gBAQc,QAAQ,EAAA,CAAA;sBAA3B,KAAK;gBAQgC,eAAe,EAAA,CAAA;sBAApD,KAAK;uBAAC,kBAAkB,CAAA;gBAQY,aAAa,EAAA,CAAA;sBAAjD,KAAK;uBAAC,iBAAiB,CAAA;gBAQS,UAAU,EAAA,CAAA;sBAA1C,KAAK;uBAAC,aAAa,CAAA;gBAQmB,gBAAgB,EAAA,CAAA;sBAAtD,KAAK;uBAAC,mBAAmB,CAAA;;;MCzHjB,6BAA6B,CAAA;;2HAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;4HAA7B,6BAA6B,EAAA,YAAA,EAAA,CAJvB,gCAAgC,EAAE,+CAA+C,aACtF,YAAY,CAAA,EAAA,OAAA,EAAA,CACZ,gCAAgC,EAAE,+CAA+C,CAAA,EAAA,CAAA,CAAA;AAElF,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,YAH5B,YAAY,CAAA,EAAA,CAAA,CAAA;4FAGb,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,YAAY,EAAE,CAAC,gCAAgC,EAAE,+CAA+C,CAAC;oBACjG,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE,CAAC,gCAAgC,EAAE,+CAA+C,CAAC;iBAC/F,CAAA;;;ACXD;;AAEG;;;;"}
@@ -21,12 +21,12 @@ class NimbleTableColumnAnchorNavigationGuardDirective {
21
21
  const clickEvent = delegatedEvent;
22
22
  // Only call the navigationGuard for plain left clicks.
23
23
  // Those are the only ones that should potentially use the router.
24
- // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L453
24
+ // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L302
25
25
  if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {
26
26
  return;
27
27
  }
28
28
  const cellView = delegatedEvent.target;
29
- // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L457
29
+ // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L306
30
30
  if (typeof cellView.columnConfig?.target === 'string' && cellView.columnConfig.target !== '_self') {
31
31
  return;
32
32
  }
@@ -34,7 +34,7 @@ class NimbleTableColumnAnchorNavigationGuardDirective {
34
34
  if (!href) {
35
35
  return;
36
36
  }
37
- if (this.navigationGuard && !this.navigationGuard(recordId)) {
37
+ if (this.navigationGuard && !this.navigationGuard(recordId, href)) {
38
38
  clickEvent.preventDefault();
39
39
  }
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ni-nimble-angular-table-column-anchor.mjs","sources":["../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor-navigation-guard.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.module.ts","../../../../projects/ni/nimble-angular/table-column/anchor/ni-nimble-angular-table-column-anchor.ts"],"sourcesContent":["import { Directive, HostListener, Input } from '@angular/core';\nimport type { TableColumnAnchorCellView } from '@ni/nimble-components/dist/esm/table-column/anchor/cell-view';\n\nexport type NavigationGuard = (rowRecordId: string | undefined) => boolean;\n\n/**\n * Directive to allow client to intercept anchor clicks and do router navigation instead of\n * letting the default action handle the navigation. The client supplies a function which is\n * expected to build the proper url and call one of the router's navigation functions, passing\n * the url and any navigation options. If the router successfully navigated, the function should\n * return false to prevent the link's default click handler from also performing the navigation.\n */\n@Directive({\n selector: 'nimble-table-column-anchor[navigationGuard]'\n})\nexport class NimbleTableColumnAnchorNavigationGuardDirective {\n @Input()\n public navigationGuard?: NavigationGuard;\n\n @HostListener('delegated-event', ['$event.detail.originalEvent', '$event.detail.recordId'])\n private onDelegatedEvent(delegatedEvent: Event, recordId: string | undefined): void {\n if (delegatedEvent.type !== 'click') {\n return;\n }\n\n const clickEvent = delegatedEvent as MouseEvent;\n // Only call the navigationGuard for plain left clicks.\n // Those are the only ones that should potentially use the router.\n // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L453\n if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {\n return;\n }\n\n const cellView = delegatedEvent.target as TableColumnAnchorCellView;\n // Based on: https://github.com/angular/angular/blob/35a3fde5b71ef3b50282fe6f7b37ca1c92b8d2a0/packages/router/src/directives/router_link.ts#L457\n if (typeof cellView.columnConfig?.target === 'string' && cellView.columnConfig.target !== '_self') {\n return;\n }\n\n const href = cellView.cellRecord?.href;\n if (!href) {\n return;\n }\n\n if (this.navigationGuard && !this.navigationGuard(recordId)) {\n clickEvent.preventDefault();\n }\n }\n}\n","import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';\nimport { type TableColumnAnchor, tableColumnAnchorTag } from '@ni/nimble-components/dist/esm/table-column/anchor';\nimport { AnchorAppearance } from '@ni/nimble-components/dist/esm/anchor/types';\nimport { BooleanValueOrAttribute, NumberValueOrAttribute, toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';\nimport { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';\n\nexport type { TableColumnAnchor };\nexport { tableColumnAnchorTag };\nexport { AnchorAppearance };\n\n/**\n * Directive to provide Angular integration for the table column element for links.\n */\n@Directive({\n selector: 'nimble-table-column-anchor'\n})\nexport class NimbleTableColumnAnchorDirective extends NimbleTableColumnBaseDirective<TableColumnAnchor> {\n public get labelFieldName(): string | undefined {\n return this.elementRef.nativeElement.labelFieldName;\n }\n\n @Input('label-field-name') public set labelFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'labelFieldName', value);\n }\n\n public get hrefFieldName(): string | undefined {\n return this.elementRef.nativeElement.hrefFieldName;\n }\n\n @Input('href-field-name') public set hrefFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hrefFieldName', value);\n }\n\n public get appearance(): AnchorAppearance {\n return this.elementRef.nativeElement.appearance;\n }\n\n @Input() public set appearance(value: AnchorAppearance) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'appearance', value);\n }\n\n public get underlineHidden(): boolean {\n return this.elementRef.nativeElement.underlineHidden;\n }\n\n @Input('underline-hidden') public set underlineHidden(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'underlineHidden', toBooleanProperty(value));\n }\n\n public get hreflang(): string | undefined {\n return this.elementRef.nativeElement.hreflang;\n }\n\n @Input() public set hreflang(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hreflang', value);\n }\n\n public get ping(): string | undefined {\n return this.elementRef.nativeElement.ping;\n }\n\n @Input() public set ping(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'ping', value);\n }\n\n public get referrerpolicy(): string | undefined {\n return this.elementRef.nativeElement.referrerpolicy;\n }\n\n @Input() public set referrerpolicy(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'referrerpolicy', value);\n }\n\n public get rel(): string | undefined {\n return this.elementRef.nativeElement.rel;\n }\n\n @Input() public set rel(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'rel', value);\n }\n\n public get target(): string | undefined {\n return this.elementRef.nativeElement.target;\n }\n\n @Input() public set target(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'target', value);\n }\n\n public get type(): string | undefined {\n return this.elementRef.nativeElement.type;\n }\n\n @Input() public set type(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'type', value);\n }\n\n public get download(): string | undefined {\n return this.elementRef.nativeElement.download;\n }\n\n @Input() public set download(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'download', value);\n }\n\n public get fractionalWidth(): number | null | undefined {\n return this.elementRef.nativeElement.fractionalWidth;\n }\n\n @Input('fractional-width') public set fractionalWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));\n }\n\n public get minPixelWidth(): number | null | undefined {\n return this.elementRef.nativeElement.minPixelWidth;\n }\n\n @Input('min-pixel-width') public set minPixelWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));\n }\n\n public get groupIndex(): number | null | undefined {\n return this.elementRef.nativeElement.groupIndex;\n }\n\n @Input('group-index') public set groupIndex(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));\n }\n\n public get groupingDisabled(): boolean {\n return this.elementRef.nativeElement.groupingDisabled;\n }\n\n @Input('grouping-disabled') public set groupingDisabled(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));\n }\n\n public constructor(renderer: Renderer2, elementRef: ElementRef<TableColumnAnchor>) {\n super(renderer, elementRef);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NimbleTableColumnAnchorDirective } from './nimble-table-column-anchor.directive';\nimport { NimbleTableColumnAnchorNavigationGuardDirective } from './nimble-table-column-anchor-navigation-guard.directive';\n\nimport '@ni/nimble-components/dist/esm/table-column/anchor';\n\n@NgModule({\n declarations: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective],\n imports: [CommonModule],\n exports: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective]\n})\nexport class NimbleTableColumnAnchorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ni-nimble-angular-table-column-anchor.mjs","sources":["../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor-navigation-guard.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.directive.ts","../../../../projects/ni/nimble-angular/table-column/anchor/nimble-table-column-anchor.module.ts","../../../../projects/ni/nimble-angular/table-column/anchor/ni-nimble-angular-table-column-anchor.ts"],"sourcesContent":["import { Directive, HostListener, Input } from '@angular/core';\nimport type { TableColumnAnchorCellView } from '@ni/nimble-components/dist/esm/table-column/anchor/cell-view';\n\nexport type NavigationGuard = (rowRecordId: string | undefined, href: string) => boolean;\n\n/**\n * Directive to allow client to intercept anchor clicks and do router navigation instead of\n * letting the default action handle the navigation. The client supplies a function which is\n * expected to build the proper url and call one of the router's navigation functions, passing\n * the url and any navigation options. If the router successfully navigated, the function should\n * return false to prevent the link's default click handler from also performing the navigation.\n */\n@Directive({\n selector: 'nimble-table-column-anchor[navigationGuard]'\n})\nexport class NimbleTableColumnAnchorNavigationGuardDirective {\n @Input()\n public navigationGuard?: NavigationGuard;\n\n @HostListener('delegated-event', ['$event.detail.originalEvent', '$event.detail.recordId'])\n private onDelegatedEvent(delegatedEvent: Event, recordId: string | undefined): void {\n if (delegatedEvent.type !== 'click') {\n return;\n }\n\n const clickEvent = delegatedEvent as MouseEvent;\n // Only call the navigationGuard for plain left clicks.\n // Those are the only ones that should potentially use the router.\n // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L302\n if (clickEvent.button !== 0 || clickEvent.ctrlKey || clickEvent.shiftKey || clickEvent.altKey || clickEvent.metaKey) {\n return;\n }\n\n const cellView = delegatedEvent.target as TableColumnAnchorCellView;\n // Based on: https://github.com/angular/angular/blob/15.2.10/packages/router/src/directives/router_link.ts#L306\n if (typeof cellView.columnConfig?.target === 'string' && cellView.columnConfig.target !== '_self') {\n return;\n }\n\n const href = cellView.cellRecord?.href;\n if (!href) {\n return;\n }\n\n if (this.navigationGuard && !this.navigationGuard(recordId, href)) {\n clickEvent.preventDefault();\n }\n }\n}\n","import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';\nimport { type TableColumnAnchor, tableColumnAnchorTag } from '@ni/nimble-components/dist/esm/table-column/anchor';\nimport { AnchorAppearance } from '@ni/nimble-components/dist/esm/anchor/types';\nimport { BooleanValueOrAttribute, NumberValueOrAttribute, toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';\nimport { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';\n\nexport type { TableColumnAnchor };\nexport { tableColumnAnchorTag };\nexport { AnchorAppearance };\n\n/**\n * Directive to provide Angular integration for the table column element for links.\n */\n@Directive({\n selector: 'nimble-table-column-anchor'\n})\nexport class NimbleTableColumnAnchorDirective extends NimbleTableColumnBaseDirective<TableColumnAnchor> {\n public get labelFieldName(): string | undefined {\n return this.elementRef.nativeElement.labelFieldName;\n }\n\n @Input('label-field-name') public set labelFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'labelFieldName', value);\n }\n\n public get hrefFieldName(): string | undefined {\n return this.elementRef.nativeElement.hrefFieldName;\n }\n\n @Input('href-field-name') public set hrefFieldName(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hrefFieldName', value);\n }\n\n public get appearance(): AnchorAppearance {\n return this.elementRef.nativeElement.appearance;\n }\n\n @Input() public set appearance(value: AnchorAppearance) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'appearance', value);\n }\n\n public get underlineHidden(): boolean {\n return this.elementRef.nativeElement.underlineHidden;\n }\n\n @Input('underline-hidden') public set underlineHidden(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'underlineHidden', toBooleanProperty(value));\n }\n\n public get hreflang(): string | undefined {\n return this.elementRef.nativeElement.hreflang;\n }\n\n @Input() public set hreflang(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'hreflang', value);\n }\n\n public get ping(): string | undefined {\n return this.elementRef.nativeElement.ping;\n }\n\n @Input() public set ping(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'ping', value);\n }\n\n public get referrerpolicy(): string | undefined {\n return this.elementRef.nativeElement.referrerpolicy;\n }\n\n @Input() public set referrerpolicy(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'referrerpolicy', value);\n }\n\n public get rel(): string | undefined {\n return this.elementRef.nativeElement.rel;\n }\n\n @Input() public set rel(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'rel', value);\n }\n\n public get target(): string | undefined {\n return this.elementRef.nativeElement.target;\n }\n\n @Input() public set target(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'target', value);\n }\n\n public get type(): string | undefined {\n return this.elementRef.nativeElement.type;\n }\n\n @Input() public set type(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'type', value);\n }\n\n public get download(): string | undefined {\n return this.elementRef.nativeElement.download;\n }\n\n @Input() public set download(value: string | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'download', value);\n }\n\n public get fractionalWidth(): number | null | undefined {\n return this.elementRef.nativeElement.fractionalWidth;\n }\n\n @Input('fractional-width') public set fractionalWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));\n }\n\n public get minPixelWidth(): number | null | undefined {\n return this.elementRef.nativeElement.minPixelWidth;\n }\n\n @Input('min-pixel-width') public set minPixelWidth(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));\n }\n\n public get groupIndex(): number | null | undefined {\n return this.elementRef.nativeElement.groupIndex;\n }\n\n @Input('group-index') public set groupIndex(value: NumberValueOrAttribute | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));\n }\n\n public get groupingDisabled(): boolean {\n return this.elementRef.nativeElement.groupingDisabled;\n }\n\n @Input('grouping-disabled') public set groupingDisabled(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));\n }\n\n public constructor(renderer: Renderer2, elementRef: ElementRef<TableColumnAnchor>) {\n super(renderer, elementRef);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NimbleTableColumnAnchorDirective } from './nimble-table-column-anchor.directive';\nimport { NimbleTableColumnAnchorNavigationGuardDirective } from './nimble-table-column-anchor-navigation-guard.directive';\n\nimport '@ni/nimble-components/dist/esm/table-column/anchor';\n\n@NgModule({\n declarations: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective],\n imports: [CommonModule],\n exports: [NimbleTableColumnAnchorDirective, NimbleTableColumnAnchorNavigationGuardDirective]\n})\nexport class NimbleTableColumnAnchorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-angular",
3
- "version": "19.3.1",
3
+ "version": "19.4.0",
4
4
  "description": "Angular components for the NI Nimble Design System",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,5 +1,5 @@
1
1
  import * as i0 from "@angular/core";
2
- export declare type NavigationGuard = (rowRecordId: string | undefined) => boolean;
2
+ export declare type NavigationGuard = (rowRecordId: string | undefined, href: string) => boolean;
3
3
  /**
4
4
  * Directive to allow client to intercept anchor clicks and do router navigation instead of
5
5
  * letting the default action handle the navigation. The client supplies a function which is