@stellar-expert/ui-framework 1.21.1 → 1.21.2

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.
Files changed (76) hide show
  1. package/account/account-address.js +6 -6
  2. package/account/signer-key.js +1 -1
  3. package/api/explorer-api-hooks.js +4 -4
  4. package/api/explorer-api-paginated-list-hooks.js +4 -4
  5. package/api/explorer-tx-api.js +3 -3
  6. package/api/ledger-stream.js +2 -2
  7. package/asset/amount.js +2 -2
  8. package/asset/asset-icon.js +2 -2
  9. package/asset/asset-issuer.js +2 -2
  10. package/asset/asset-link.js +6 -6
  11. package/asset/asset-list-hooks.js +3 -3
  12. package/asset/asset-meta-hooks.js +3 -3
  13. package/asset/asset-selector.js +3 -3
  14. package/charts/axis/axis.js +3 -3
  15. package/charts/axis/tick-positioner.js +1 -1
  16. package/charts/chart-default-options.js +1 -1
  17. package/charts/chart-options-builder.js +2 -2
  18. package/charts/chart.js +5 -5
  19. package/charts/core/animate.js +1 -1
  20. package/charts/core/chart.js +13 -13
  21. package/charts/core/options.js +1 -1
  22. package/charts/globals.js +5 -5
  23. package/charts/index.js +2 -2
  24. package/charts/interaction/tooltip.js +2 -2
  25. package/charts/pie/pie-chart.js +2 -2
  26. package/charts/polar/polar-chart.js +2 -2
  27. package/charts/series/area-series.js +3 -3
  28. package/charts/series/candlestick-series.js +2 -2
  29. package/charts/series/column-series.js +3 -3
  30. package/charts/series/index.js +4 -4
  31. package/charts/series/line-series.js +3 -3
  32. package/charts/series/series.js +1 -1
  33. package/charts/stock/data-grouping.js +1 -1
  34. package/charts/stock/navigator.js +3 -3
  35. package/charts/stock/range-selector.js +1 -1
  36. package/claimable-balance/claimable-balance-claimants.js +2 -2
  37. package/claimable-balance/claimable-balance-id.js +1 -1
  38. package/contract/contract-api.js +2 -2
  39. package/contract/invocation-info-view.js +6 -6
  40. package/contract/sc-val.js +1 -1
  41. package/controls/dropdown.js +1 -1
  42. package/controls/info-tooltip.js +1 -1
  43. package/controls/tabs.js +1 -1
  44. package/controls/update-highlighter.js +1 -1
  45. package/date/utc-timestamp.js +28 -28
  46. package/directory/directory-hooks.js +2 -2
  47. package/effect/effect-description.js +9 -9
  48. package/effect/op-effects-view.js +57 -57
  49. package/errors/error-boundary.js +1 -1
  50. package/filter/editors/account-filter-view.js +2 -2
  51. package/filter/editors/asset-filter-view.js +2 -2
  52. package/filter/editors/timestamp-filter-view.js +3 -3
  53. package/filter/editors/type-filter-view.js +1 -1
  54. package/filter/filter-editors.js +6 -6
  55. package/filter/filter-view.js +2 -2
  56. package/horizon/horizon-account-helpers.js +1 -1
  57. package/horizon/horizon-ledger-helpers.js +1 -1
  58. package/horizon/horizon-orderbook-helpers.js +14 -14
  59. package/horizon/horizon-trades-helper.js +1 -1
  60. package/horizon/horizon-transaction-helpers.js +1 -1
  61. package/index.js +73 -73
  62. package/interaction/system-dialog.js +2 -2
  63. package/interaction/theme-selector.js +1 -1
  64. package/ledger/ledger-entry-href-formatter.js +1 -1
  65. package/ledger/ledger-entry-link.js +2 -2
  66. package/module/dynamic-module.js +1 -1
  67. package/package.json +2 -3
  68. package/state/page-visibility-hooks.js +1 -1
  69. package/toast/toast-notifications-block.js +2 -2
  70. package/tx/op-accounting-changes.js +26 -26
  71. package/tx/op-description-view.js +13 -13
  72. package/tx/parser/tx-details-parser.js +2 -2
  73. package/tx/parser/tx-matcher.js +1 -1
  74. package/tx/tx-fee-effect.js +13 -13
  75. package/tx/tx-list-hooks.js +2 -2
  76. package/tx/tx-operations-list.js +6 -6
@@ -1,12 +1,12 @@
1
1
  import React from 'react'
2
2
  import cn from 'classnames'
3
3
  import {shortenString} from '@stellar-expert/formatter'
4
- import {AccountIdenticon} from './identicon.js'
5
- import {InfoTooltip} from '../controls/info-tooltip.js'
6
- import {useDirectory} from '../directory/directory-hooks.js'
7
- import {formatExplorerLink} from '../ledger/ledger-entry-href-formatter.js'
8
- import {useStellarNetwork} from '../state/stellar-network-hooks.js'
9
- import {decodeKeyType} from '../stellar/key-type.js'
4
+ import {AccountIdenticon} from './identicon'
5
+ import {InfoTooltip} from '../controls/info-tooltip'
6
+ import {useDirectory} from '../directory/directory-hooks'
7
+ import {formatExplorerLink} from '../ledger/ledger-entry-href-formatter'
8
+ import {useStellarNetwork} from '../state/stellar-network-hooks'
9
+ import {decodeKeyType} from '../stellar/key-type'
10
10
  import './account-address.scss'
11
11
 
12
12
 
@@ -1,6 +1,6 @@
1
1
  import React from 'react'
2
2
  import {StrKey} from '@stellar/stellar-sdk'
3
- import {AccountAddress} from './account-address.js'
3
+ import {AccountAddress} from './account-address'
4
4
 
5
5
  /**
6
6
  * Decode a Stellar signer object (XDR or parsed) into a StrKey-encoded key and weight
@@ -1,10 +1,10 @@
1
1
  import {useEffect, useState} from 'react'
2
2
  import isEqual from 'react-fast-compare'
3
3
  import {stringifyQuery} from '@stellar-expert/navigation'
4
- import {addVisibilityChangeListener, isDocumentVisible} from '../state/page-visibility-helpers.js'
5
- import {useStellarNetwork} from '../state/stellar-network-hooks.js'
6
- import {fetchExplorerApi} from './explorer-api-call.js'
7
- import apiCache from './api-cache.js'
4
+ import {addVisibilityChangeListener, isDocumentVisible} from '../state/page-visibility-helpers'
5
+ import {useStellarNetwork} from '../state/stellar-network-hooks'
6
+ import {fetchExplorerApi} from './explorer-api-call'
7
+ import apiCache from './api-cache'
8
8
 
9
9
  export class ExplorerApiResult {
10
10
  constructor(apiEndpoint, data, ts) {
@@ -1,10 +1,10 @@
1
1
  import {useRef} from 'react'
2
2
  import isEqual from 'react-fast-compare'
3
3
  import {parseQuery, stringifyQuery, navigation} from '@stellar-expert/navigation'
4
- import {useStellarNetwork} from '../state/stellar-network-hooks.js'
5
- import {useDependantState} from '../state/state-hooks.js'
6
- import {fetchExplorerApi} from './explorer-api-call.js'
7
- import apiCache from './api-cache.js'
4
+ import {useStellarNetwork} from '../state/stellar-network-hooks'
5
+ import {useDependantState} from '../state/state-hooks'
6
+ import {fetchExplorerApi} from './explorer-api-call'
7
+ import apiCache from './api-cache'
8
8
 
9
9
  function inverseOrder(order) {
10
10
  return order === 'desc' ? 'asc' : 'desc'
@@ -1,6 +1,6 @@
1
- import {parseStellarGenericId} from '../stellar/ledger-generic-id.js'
2
- import {getCurrentStellarNetwork} from '../state/stellar-network-hooks.js'
3
- import {fetchExplorerApi} from './explorer-api-call.js'
1
+ import {parseStellarGenericId} from '../stellar/ledger-generic-id'
2
+ import {getCurrentStellarNetwork} from '../state/stellar-network-hooks'
3
+ import {fetchExplorerApi} from './explorer-api-call'
4
4
 
5
5
  /**
6
6
  * Load transaction from API
@@ -1,5 +1,5 @@
1
- import {getCurrentStellarNetwork} from '../state/stellar-network-hooks.js'
2
- import {fetchExplorerApi} from './explorer-api-call.js'
1
+ import {getCurrentStellarNetwork} from '../state/stellar-network-hooks'
2
+ import {fetchExplorerApi} from './explorer-api-call'
3
3
 
4
4
  /**
5
5
  * Long-polling stream that notifies listeners about new ledgers
package/asset/amount.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import React from 'react'
2
2
  import {formatWithPrecision, formatWithAutoPrecision, fromStroops} from '@stellar-expert/formatter'
3
3
  import {AssetDescriptor, isAssetValid, isValidPoolId} from '@stellar-expert/asset-descriptor'
4
- import {useAssetMeta} from './asset-meta-hooks.js'
5
- import {AssetLink} from './asset-link.js'
4
+ import {useAssetMeta} from './asset-meta-hooks'
5
+ import {AssetLink} from './asset-link'
6
6
 
7
7
  /**
8
8
  * Formatted tokens amount
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import {AssetDescriptor} from '@stellar-expert/asset-descriptor'
3
- import {drawIdenticon} from '../account/identicon.js'
4
- import {useAssetMeta} from './asset-meta-hooks.js'
3
+ import {drawIdenticon} from '../account/identicon'
4
+ import {useAssetMeta} from './asset-meta-hooks'
5
5
 
6
6
  /**
7
7
  * Inline asset icon
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import {AssetDescriptor} from '@stellar-expert/asset-descriptor'
3
- import {AccountAddress} from '../account/account-address.js'
4
- import {useAssetMeta} from './asset-meta-hooks.js'
3
+ import {AccountAddress} from '../account/account-address'
4
+ import {useAssetMeta} from './asset-meta-hooks'
5
5
 
6
6
  /**
7
7
  * Inline asset issuer
@@ -2,12 +2,12 @@ import React from 'react'
2
2
  import cn from 'classnames'
3
3
  import {shortenString} from '@stellar-expert/formatter'
4
4
  import {AssetDescriptor} from '@stellar-expert/asset-descriptor'
5
- import {useStellarNetwork} from '../state/stellar-network-hooks.js'
6
- import {formatExplorerLink} from '../ledger/ledger-entry-href-formatter.js'
7
- import {AccountAddress} from '../account/account-address.js'
8
- import {useAssetMeta} from './asset-meta-hooks.js'
9
- import {AssetIcon} from './asset-icon.js'
10
- import {AssetIssuer} from './asset-issuer.js'
5
+ import {useStellarNetwork} from '../state/stellar-network-hooks'
6
+ import {formatExplorerLink} from '../ledger/ledger-entry-href-formatter'
7
+ import {AccountAddress} from '../account/account-address'
8
+ import {useAssetMeta} from './asset-meta-hooks'
9
+ import {AssetIcon} from './asset-icon'
10
+ import {AssetIssuer} from './asset-issuer'
11
11
  import './asset-link.scss'
12
12
 
13
13
  /**
@@ -2,9 +2,9 @@ import React, {useState} from 'react'
2
2
  import {throttle} from 'throttle-debounce'
3
3
  import equal from 'react-fast-compare'
4
4
  import {stringifyQuery} from '@stellar-expert/navigation'
5
- import {fetchExplorerApi} from '../api/explorer-api-call.js'
6
- import {useDeepEffect} from '../state/state-hooks.js'
7
- import {getCurrentStellarNetwork} from '../state/stellar-network-hooks.js'
5
+ import {fetchExplorerApi} from '../api/explorer-api-call'
6
+ import {useDeepEffect} from '../state/state-hooks'
7
+ import {getCurrentStellarNetwork} from '../state/stellar-network-hooks'
8
8
 
9
9
  const defaults = {
10
10
  limit: 20,
@@ -2,9 +2,9 @@ import {useEffect, useState} from 'react'
2
2
  import {AssetDescriptor} from '@stellar-expert/asset-descriptor'
3
3
  import {stringifyQuery} from '@stellar-expert/navigation'
4
4
  import {InMemoryClientCache} from '@stellar-expert/client-cache'
5
- import {fetchExplorerApi} from '../api/explorer-api-call.js'
6
- import {ExplorerBatchInfoLoader} from '../api/explorer-batch-info-loader.js'
7
- import {getCurrentStellarNetwork} from '../state/stellar-network-hooks.js'
5
+ import {fetchExplorerApi} from '../api/explorer-api-call'
6
+ import {ExplorerBatchInfoLoader} from '../api/explorer-batch-info-loader'
7
+ import {getCurrentStellarNetwork} from '../state/stellar-network-hooks'
8
8
 
9
9
  /**
10
10
  * @typedef AssetBasicTomlInfo
@@ -1,7 +1,7 @@
1
1
  import React, {useCallback, useRef, useState} from 'react'
2
- import {Dropdown} from '../controls/dropdown.js'
3
- import {AssetLink} from './asset-link.js'
4
- import {useAssetList} from './asset-list-hooks.js'
2
+ import {Dropdown} from '../controls/dropdown'
3
+ import {AssetLink} from './asset-link'
4
+ import {useAssetList} from './asset-list-hooks'
5
5
  import './asset-selector.scss'
6
6
 
7
7
  /**
@@ -1,6 +1,6 @@
1
- import {isNumber, pick, relativeLength, defined} from '../core/utilities.js'
2
- import {getDateTimeTickPositions, dateTimeLabelFormat, dateFormat} from '../core/time.js'
3
- import {getLinearTickPositions, niceAlignedTicks, zeroBasedGridTicks, formatAxisNumber, axisNumberUnit} from './tick-positioner.js'
1
+ import {isNumber, pick, relativeLength, defined} from '../core/utilities'
2
+ import {getDateTimeTickPositions, dateTimeLabelFormat, dateFormat} from '../core/time'
3
+ import {getLinearTickPositions, niceAlignedTicks, zeroBasedGridTicks, formatAxisNumber, axisNumberUnit} from './tick-positioner'
4
4
 
5
5
  const LABEL_FONT = 12
6
6
  const LABEL_FONT_CSS = LABEL_FONT + 'px "Roboto Condensed",sans-serif'
@@ -1,5 +1,5 @@
1
1
  //Linear "nice number" tick interval + positions.
2
- import {addThousandsSep} from '../core/utilities.js'
2
+ import {addThousandsSep} from '../core/utilities'
3
3
 
4
4
  /**
5
5
  * Round an interval to a human-friendly value (1, 2, 2.5, 5, 10 * 10^n).
@@ -1,6 +1,6 @@
1
1
  //StellarExpert explorer chart theme — colors, fonts and per-type defaults applied on top of the
2
2
  //engine baseline via setOptions, plus the custom logarithmic axis scaling used by balance/distribution charts.
3
- import ChartEngine from './globals.js'
3
+ import ChartEngine from './globals'
4
4
 
5
5
  //allow negative values on the logarithmic axis
6
6
  ChartEngine.Axis.prototype.allowNegativeLog = true
@@ -1,7 +1,7 @@
1
1
  //Normalizes per-chart options before they reach the engine: applies grouping/range/legend flags and
2
2
  //registers optional engine modules. Uses the engine's own merge (no deepmerge dependency).
3
- import {merge} from './core/utilities.js'
4
- import {ChartEngine} from './chart-default-options.js'
3
+ import {merge} from './core/utilities'
4
+ import {ChartEngine} from './chart-default-options'
5
5
 
6
6
  const rangeSelectorOptions = {
7
7
  //the in-house range selector renders span controls styled via chart.scss (.chart-zoom-btn);
package/charts/chart.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import React, {useRef} from 'react'
2
2
  import cn from 'classnames'
3
3
  import PropTypes from 'prop-types'
4
- import {useDeepEffect} from '../state/state-hooks.js'
5
- import {withErrorBoundary} from '../errors/error-boundary.js'
6
- import {ChartEngine} from './chart-default-options.js'
7
- import {prepareChartOptions} from './chart-options-builder.js'
8
- import {ChartLoader} from './chart-loader.js'
4
+ import {useDeepEffect} from '../state/state-hooks'
5
+ import {withErrorBoundary} from '../errors/error-boundary'
6
+ import {ChartEngine} from './chart-default-options'
7
+ import {prepareChartOptions} from './chart-options-builder'
8
+ import {ChartLoader} from './chart-loader'
9
9
  import './chart.scss'
10
10
 
11
11
  export {ChartEngine, ChartLoader}
@@ -1,6 +1,6 @@
1
1
  //Load/draw animations for the initial chart render (a per-series-type entrance).
2
2
  //Only runs once, on first paint — redraws (zoom, legend toggle, resize) skip it.
3
- import {uniqueId} from './utilities.js'
3
+ import {uniqueId} from './utilities'
4
4
 
5
5
  export const DEFAULT_DURATION = 1500
6
6
 
@@ -1,16 +1,16 @@
1
- import {Axis} from '../axis/axis.js'
2
- import {niceAlignedTicks} from '../axis/tick-positioner.js'
3
- import {createSeries} from '../series/index.js'
4
- import {Legend} from '../interaction/legend.js'
5
- import {Tooltip} from '../interaction/tooltip.js'
6
- import {groupSeriesData} from '../stock/data-grouping.js'
7
- import {RangeSelector} from '../stock/range-selector.js'
8
- import {renderPolar} from '../polar/polar-chart.js'
9
- import {renderPie} from '../pie/pie-chart.js'
10
- import {Navigator} from '../stock/navigator.js'
11
- import {merge, resolveContainer, pick, relativeLength, uniqueId, defined, isNumber} from './utilities.js'
12
- import {getOptions} from './options.js'
13
- import {SvgRenderer} from './svg-renderer.js'
1
+ import {Axis} from '../axis/axis'
2
+ import {niceAlignedTicks} from '../axis/tick-positioner'
3
+ import {createSeries} from '../series'
4
+ import {Legend} from '../interaction/legend'
5
+ import {Tooltip} from '../interaction/tooltip'
6
+ import {groupSeriesData} from '../stock/data-grouping'
7
+ import {RangeSelector} from '../stock/range-selector'
8
+ import {renderPolar} from '../polar/polar-chart'
9
+ import {renderPie} from '../pie/pie-chart'
10
+ import {Navigator} from '../stock/navigator'
11
+ import {merge, resolveContainer, pick, relativeLength, uniqueId, defined, isNumber} from './utilities'
12
+ import {getOptions} from './options'
13
+ import {SvgRenderer} from './svg-renderer'
14
14
 
15
15
  const X_LABEL_HEIGHT = 22
16
16
 
@@ -1,4 +1,4 @@
1
- import {merge} from './utilities.js'
1
+ import {merge} from './utilities'
2
2
 
3
3
  //Engine baseline defaults. The explorer theme (applied via setOptions in chart-default-options.js)
4
4
  //deep-merges on top of this, and per-chart options on top of that.
package/charts/globals.js CHANGED
@@ -1,10 +1,10 @@
1
1
  //The engine namespace exposed to consumers and to the theme/options-builder — the small public
2
2
  //surface (chart constructors, options, Color, Axis, merge) that views and modules touch.
3
- import {Chart} from './core/chart.js'
4
- import {getOptions, setOptions} from './core/options.js'
5
- import {Color} from './core/color.js'
6
- import {Axis} from './axis/axis.js'
7
- import {merge} from './core/utilities.js'
3
+ import {Chart} from './core/chart'
4
+ import {getOptions, setOptions} from './core/options'
5
+ import {Color} from './core/color'
6
+ import {Axis} from './axis/axis'
7
+ import {merge} from './core/utilities'
8
8
 
9
9
  function ChartCtor(renderTo, options) {
10
10
  return new Chart(renderTo, options, 'Chart')
package/charts/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  //Pure-JS SVG charting library — public entry point.
2
2
  //Props: options/type/title/grouped/range/noLegend/inline/modules/children.
3
- export {default} from './chart.js'
4
- export {ChartEngine, ChartLoader} from './chart.js'
3
+ export {default} from './chart'
4
+ export {ChartEngine, ChartLoader} from './chart'
@@ -1,5 +1,5 @@
1
- import {dateFormat} from '../core/time.js'
2
- import {isNumber, addThousandsSep} from '../core/utilities.js'
1
+ import {dateFormat} from '../core/time'
2
+ import {isNumber, addThousandsSep} from '../core/utilities'
3
3
 
4
4
  function formatValue(v, tooltipOpts) {
5
5
  if (!isNumber(v))
@@ -1,7 +1,7 @@
1
1
  //Pie / variable-pie rendering path (contract users chart).
2
2
  //variable-pie: slice ANGLE scales with y, slice OUTER RADIUS scales with z.
3
- import {pick, relativeLength, isNumber, addThousandsSep} from '../core/utilities.js'
4
- import {animate, DEFAULT_DURATION} from '../core/animate.js'
3
+ import {pick, relativeLength, isNumber, addThousandsSep} from '../core/utilities'
4
+ import {animate, DEFAULT_DURATION} from '../core/animate'
5
5
 
6
6
  const TEXT_STYLE = {
7
7
  fontSize: '12px',
@@ -1,7 +1,7 @@
1
1
  //Polar/radar rendering path (asset rating chart): categories around a circle, radial value axis,
2
2
  //polygon gridlines (gridLineInterpolation: 'polygon').
3
- import {pick, relativeLength} from '../core/utilities.js'
4
- import {animateFromCenter} from '../core/animate.js'
3
+ import {pick, relativeLength} from '../core/utilities'
4
+ import {animateFromCenter} from '../core/animate'
5
5
 
6
6
  const TEXT_STYLE = {
7
7
  fontSize: '12px',
@@ -1,6 +1,6 @@
1
- import {pick, uniqueId, isNumber, clamp} from '../core/utilities.js'
2
- import {revealLeftToRight} from '../core/animate.js'
3
- import {LineSeries} from './line-series.js'
1
+ import {pick, uniqueId, isNumber, clamp} from '../core/utilities'
2
+ import {revealLeftToRight} from '../core/animate'
3
+ import {LineSeries} from './line-series'
4
4
 
5
5
  export class AreaSeries extends LineSeries {
6
6
  resolveFill() {
@@ -1,5 +1,5 @@
1
- import {isNumber, pick} from '../core/utilities.js'
2
- import {Series} from './series.js'
1
+ import {isNumber, pick} from '../core/utilities'
2
+ import {Series} from './series'
3
3
 
4
4
  export class CandlestickSeries extends Series {
5
5
  //candlesticks plot OHLC, not a single y; expose extremes from high/low for the axis
@@ -1,6 +1,6 @@
1
- import {Series} from './series.js'
2
- import {pick, isNumber, clamp} from '../core/utilities.js'
3
- import {animateColumns} from '../core/animate.js'
1
+ import {Series} from './series'
2
+ import {pick, isNumber, clamp} from '../core/utilities'
3
+ import {animateColumns} from '../core/animate'
4
4
 
5
5
  export class ColumnSeries extends Series {
6
6
  render(group) {
@@ -1,7 +1,7 @@
1
- import {LineSeries} from './line-series.js'
2
- import {AreaSeries} from './area-series.js'
3
- import {ColumnSeries} from './column-series.js'
4
- import {CandlestickSeries} from './candlestick-series.js'
1
+ import {LineSeries} from './line-series'
2
+ import {AreaSeries} from './area-series'
3
+ import {ColumnSeries} from './column-series'
4
+ import {CandlestickSeries} from './candlestick-series'
5
5
 
6
6
  //series type registry — extended in later phases (spline-smoothing, candlestick, variablepie, ...)
7
7
  export const seriesTypes = {
@@ -1,6 +1,6 @@
1
- import {pick} from '../core/utilities.js'
2
- import {revealLeftToRight} from '../core/animate.js'
3
- import {Series} from './series.js'
1
+ import {pick} from '../core/utilities'
2
+ import {revealLeftToRight} from '../core/animate'
3
+ import {Series} from './series'
4
4
 
5
5
  export class LineSeries extends Series {
6
6
  render(group) {
@@ -1,4 +1,4 @@
1
- import {pick, isNumber} from '../core/utilities.js'
1
+ import {pick, isNumber} from '../core/utilities'
2
2
 
3
3
  //Catmull-Rom -> cubic bezier smoothing for spline series
4
4
  function smoothSegmentPath(pts) {
@@ -1,5 +1,5 @@
1
1
  //Downsample raw series points into calendar-aligned time buckets (stock data grouping).
2
- import {isNumber} from '../core/utilities.js'
2
+ import {isNumber} from '../core/utilities'
3
3
 
4
4
  const day = 24 * 3600 * 1000
5
5
  const week = 7 * day
@@ -1,6 +1,6 @@
1
- import {isNumber, clamp} from '../core/utilities.js'
2
- import {animateLineDraw} from '../core/animate.js'
3
- import {getDateTimeTickPositions, dateTimeLabelFormat, dateFormat} from '../core/time.js'
1
+ import {isNumber, clamp} from '../core/utilities'
2
+ import {animateLineDraw} from '../core/animate'
3
+ import {getDateTimeTickPositions, dateTimeLabelFormat, dateFormat} from '../core/time'
4
4
 
5
5
  //Navigator look: a thin red overview line, the SELECTED window masked with a light fill,
6
6
  //a light outline, and small grip handles centred vertically on each edge.
@@ -1,4 +1,4 @@
1
- import {isNumber} from '../core/utilities.js'
1
+ import {isNumber} from '../core/utilities'
2
2
 
3
3
  const DAY = 24 * 3600 * 1000
4
4
 
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import {xdrParseClaimant} from '@stellar-expert/claimable-balance-utils'
3
- import {AccountAddress} from '../account/account-address.js'
4
- import {CodeBlock} from '../controls/code-block.js'
3
+ import {AccountAddress} from '../account/account-address'
4
+ import {CodeBlock} from '../controls/code-block'
5
5
 
6
6
  /**
7
7
  * Displays a list of claimable balance claimants with their addresses and predicates
@@ -1,6 +1,6 @@
1
1
  import React from 'react'
2
2
  import {shortenString} from '@stellar-expert/formatter'
3
- import {formatExplorerLink} from '../ledger/ledger-entry-href-formatter.js'
3
+ import {formatExplorerLink} from '../ledger/ledger-entry-href-formatter'
4
4
 
5
5
  export function ClaimableBalanceId({balance}) {
6
6
  if (!balance)
@@ -1,6 +1,6 @@
1
1
  import {useEffect, useState} from 'react'
2
- import {useExplorerApi} from '../api/explorer-api-hooks.js'
3
- import {getCurrentStellarNetwork} from '../state/stellar-network-hooks.js'
2
+ import {useExplorerApi} from '../api/explorer-api-hooks'
3
+ import {getCurrentStellarNetwork} from '../state/stellar-network-hooks'
4
4
 
5
5
  /**
6
6
  * React hook that fetches contract information from the Explorer API
@@ -1,12 +1,12 @@
1
1
  import React from 'react'
2
2
  import {parseContractMetadata} from '@stellar-expert/contract-wasm-interface-parser'
3
3
  import {shortenString} from '@stellar-expert/formatter'
4
- import {AccountAddress} from '../account/account-address.js'
5
- import {AssetLink} from '../asset/asset-link.js'
6
- import {Tooltip} from '../controls/tooltip.js'
7
- import {parseScValValue, primitiveTypes, ScVal, ScValStruct} from './sc-val.js'
8
- import {useContractSource} from './contract-api.js'
9
- import {sacInterface} from './sac-interface.js'
4
+ import {AccountAddress} from '../account/account-address'
5
+ import {AssetLink} from '../asset/asset-link'
6
+ import {Tooltip} from '../controls/tooltip'
7
+ import {parseScValValue, primitiveTypes, ScVal, ScValStruct} from './sc-val'
8
+ import {useContractSource} from './contract-api'
9
+ import {sacInterface} from './sac-interface'
10
10
 
11
11
  /**
12
12
  * Basic Soroban contract invocation info
@@ -3,7 +3,7 @@ import cn from 'classnames'
3
3
  import {xdr, scValToBigInt} from '@stellar/stellar-sdk'
4
4
  import {xdrParserUtils} from '@stellar-expert/tx-meta-effects-parser'
5
5
  import {shortenString} from '@stellar-expert/formatter'
6
- import {AccountAddress} from '../account/account-address.js'
6
+ import {AccountAddress} from '../account/account-address'
7
7
  import './sc-val.scss'
8
8
 
9
9
  /**
@@ -3,7 +3,7 @@ import {createPortal} from 'react-dom'
3
3
  import PropTypes from 'prop-types'
4
4
  import cn from 'classnames'
5
5
  import {throttle} from 'throttle-debounce'
6
- import {useDependantState} from '../state/state-hooks.js'
6
+ import {useDependantState} from '../state/state-hooks'
7
7
  import './dropdown.scss'
8
8
 
9
9
  /**
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
3
  import cn from 'classnames'
4
- import {Tooltip} from './tooltip.js'
4
+ import {Tooltip} from './tooltip'
5
5
  import './info-tooltip.scss'
6
6
 
7
7
  /**
package/controls/tabs.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import React, {useEffect} from 'react'
2
2
  import cn from 'classnames'
3
3
  import {navigation} from '@stellar-expert/navigation'
4
- import {useDependantState} from '../state/state-hooks.js'
4
+ import {useDependantState} from '../state/state-hooks'
5
5
  import './tabs.scss'
6
6
 
7
7
  /**
@@ -1,7 +1,7 @@
1
1
  import React, {useRef} from 'react'
2
2
  import PropTypes from 'prop-types'
3
3
  import cn from 'classnames'
4
- import {useDependantState} from '../state/state-hooks.js'
4
+ import {useDependantState} from '../state/state-hooks'
5
5
  import './update-highlighter.scss'
6
6
 
7
7
  /**
@@ -1,29 +1,29 @@
1
- import React from 'react'
2
- import PropTypes from 'prop-types'
3
- import cn from 'classnames'
4
- import {normalizeDate, formatDateUTC} from '@stellar-expert/formatter'
5
- import {BlockSelect} from '../interaction/block-select.js'
6
-
7
- export const UtcTimestamp = React.memo(function UtcTimestamp({date, dateOnly, className}) {
8
- let formatted
9
- try {
10
- date = normalizeDate(date)
11
- formatted = formatDateUTC(date)
12
- if (dateOnly) {
13
- formatted = formatted.split(' ')[0]
14
- } else {
15
- formatted += ' UTC'
16
- }
17
- } catch (e) {
18
- console.error(e)
19
- return null
20
- }
21
- const localTime = date.toString().replace(/ \(.+\)/, '').replace(/\w+ /, '')
22
- return <BlockSelect className={cn('condensed nowrap', className)} title={localTime}>{formatted}</BlockSelect>
23
- })
24
-
25
- UtcTimestamp.propTypes = {
26
- date: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.instanceOf(Date)]).isRequired,
27
- dateOnly: PropTypes.bool,
28
- className: PropTypes.string
1
+ import React from 'react'
2
+ import PropTypes from 'prop-types'
3
+ import cn from 'classnames'
4
+ import {normalizeDate, formatDateUTC} from '@stellar-expert/formatter'
5
+ import {BlockSelect} from '../interaction/block-select'
6
+
7
+ export const UtcTimestamp = React.memo(function UtcTimestamp({date, dateOnly, className}) {
8
+ let formatted
9
+ try {
10
+ date = normalizeDate(date)
11
+ formatted = formatDateUTC(date)
12
+ if (dateOnly) {
13
+ formatted = formatted.split(' ')[0]
14
+ } else {
15
+ formatted += ' UTC'
16
+ }
17
+ } catch (e) {
18
+ console.error(e)
19
+ return null
20
+ }
21
+ const localTime = date.toString().replace(/ \(.+\)/, '').replace(/\w+ /, '')
22
+ return <BlockSelect className={cn('condensed nowrap', className)} title={localTime}>{formatted}</BlockSelect>
23
+ })
24
+
25
+ UtcTimestamp.propTypes = {
26
+ date: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.instanceOf(Date)]).isRequired,
27
+ dateOnly: PropTypes.bool,
28
+ className: PropTypes.string
29
29
  }
@@ -2,8 +2,8 @@ import {useEffect, useState} from 'react'
2
2
  import {StrKey} from '@stellar/stellar-sdk'
3
3
  import {stringifyQuery} from '@stellar-expert/navigation'
4
4
  import {InMemoryClientCache} from '@stellar-expert/client-cache'
5
- import {fetchExplorerApi} from '../api/explorer-api-call.js'
6
- import {ExplorerBatchInfoLoader} from '../api/explorer-batch-info-loader.js'
5
+ import {fetchExplorerApi} from '../api/explorer-api-call'
6
+ import {ExplorerBatchInfoLoader} from '../api/explorer-batch-info-loader'
7
7
 
8
8
  const cache = new InMemoryClientCache({})
9
9