Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Jan 20, 2023
  2. Jan 19, 2023
  3. Jan 17, 2023
  4. Jan 16, 2023
  5. Jan 13, 2023
    • metamben's avatar
      Support nested queries for MongoDB (#27615) · 76db79d9
      metamben authored
      Unverified
      76db79d9
    • Braden Shepherdson's avatar
      [metabase-lib] Number and currency formatting polish (#27616) · e7e422cf
      Braden Shepherdson authored
      - Use currency-specific decimals count (eg. 0 for JPY, 8 for BTC)
      - Use plural currency names in Java, matching JS
          - previously: singular proper name "7.23 US Dollar"
          - now: plural prose "7.23 US dollars"
      - "Small numbers" hack to treat min/max fraction digits as significant
        digits now applies to percentages under 1%, as well as the original
        |n| < 1
      Unverified
      e7e422cf
    • Braden Shepherdson's avatar
      [metabase-lib] Port date and time parsing and formatting to CLJC (#27551) · 335d161f
      Braden Shepherdson authored
      This adds a cross-platform date/time formatting library in CLJC, with
      (nearly) identical output in both JVM and JS environments.
      
      The only known difference is week numbers.
      
      CLJS (through Moment.js) has ordinal numbers, and renders the week
      number as "34th". Neither the JVM nor Clojure has a handy library for
      this (I'm sure it's out there somewhere, but it seems like a silly
      dep to add) so it renders week numbers as simply "34".
      
      Both platforms have date formatters that use pattern strings (eg.
      `"YYYY-MM-dd"`) to turn date/time objects into strings. There's a strong
      resemblance in how these work and what letters stand for what parts of
      the date and time, but they are far from identical.
      
      Rather than try to hackily convert one set of strings to another with
      regexes or other manipulations, this PR defines a set of names for
      fragments of dates (eg. `:year`, `:day-of-week-full`, `:hour-24-dd`)
      and includes functions to transform a list of these keys into a
      platform-specific format function.
      
      This is portable and transparent, and can be written in Clojure or
      JS code:
      
      ```clj
      [:year "-" :month-dd "-" :day-of-month-dd]   ; 2022-04-08
      [:month-full " " :day-of-month-d ", " :year] ; April 8, 2022
      [:hour-12-dd ":" :minute-dd " " :am-pm]      ; 7:52 AM
      ```
      
      ```js
      [":year", "-", ":month-dd", "-", ":day-of-month-dd"]   ; 2022-04-08
      [":month-full", " ", ":day-of-month-d", ", ", ":year"] ; April 8, 2022
      [":hour-12-dd", ":", ":minute-dd", " ", ":am-pm"]      ; 7:52 AM
      ```
      
      Note that the original code allowed an unrecognized `:date-style` string
      to be used directly as the formatting string. With the move to
      formatting data structures that no longer works. Instead there is a
      fixed map of format strings to the above data structures, that contains
      all the currently used `:date-style` inputs.
      
      If some caller needs a new format someday, we can either: (a) add the
      style to the map; or (b) pass the data structure form directly to the
      `:date-format` option, which if provided is used as the format.
      
      It's tempting to go to all the call sites and replace these `:date-style`
      strings with the new format structures. However, the strings are still
      embedded in the `:visualization_settings` in user appDBs, so we still
      need to recognize them.
      
      Most of the existing functions in the TS library have the same API.
      
      The set of allowed `:date-style` and `:time-style` values is turned into
      a type using `keyof`, so that we get precise type-checking of these
      values rather than simply `string`.
      
      One function has been dropped from the API: `getDateFormatFromStyle`.
      There was no practical way to implement it using the new format data
      structures. The only caller was the date format column settings, and it
      has been rewritten to use the formatted string for its sample date as
      its key instead.
      Unverified
      335d161f
  6. Jan 12, 2023
  7. Jan 11, 2023
  8. Jan 10, 2023
    • Anton Kulyk's avatar
    • Anton Kulyk's avatar
      Remove redundant components (#27607) · 9125f5d2
      Anton Kulyk authored
      * Delete `QuestionHistoryModal`
      
      * Delete `HistoryModal`
      
      * Delete `AdminEmptyText`
      
      * Delete `EditWarning`
      
      * Delete `Expandable`
      
      * Remove a bunch of question loaders
      
      * Delete `CandidateListLoader`
      
      * Delete `QuestionName`
      
      * Revert "Remove a bunch of question loaders"
      
      This reverts commit 209dbac68dec92083d6e3bdf34ff42ace76a3870.
      
      * Remove `QuestionAndResultLoader`
      Unverified
      9125f5d2
    • Alexander Polyankin's avatar
    • Anton Kulyk's avatar
      Virtualize table and card lists in data picker (#27582) · 14854fe3
      Anton Kulyk authored
      * Convert `VirtualizedList` to TypeScript
      
      * Add `VirtualizedSelectList` component
      
      * Virtualize raw table list
      
      * Virtualize model and question list
      
      * Fix rendering virtualized lists in tests
      Unverified
      14854fe3
    • Anton Kulyk's avatar
      Extract question components to questions module (#27605) · 74de573d
      Anton Kulyk authored
      * Move out `ArchiveQuestionModal`
      
      * Move out `QuestionMoveToast`
      Unverified
      74de573d
    • Anton Kulyk's avatar
      Add jest-dom and testing-library eslint plugins (#27577) · 6d3f5925
      Anton Kulyk authored
      * Install and enable plugins
      
      * Run eslint auto fix
      
      * Fix linter issues (part 1)
      
      * Fix Visualization test
      
      * Fix Pie Visualization test
      
      * Add `getIcon` and `queryIcon` helpers
      
      * Fix `VisibilityToggler` tests
      
      * Fix `QuestionActivityTimeline` tests
      
      * Fix formatting tests
      
      * Fix `EntityMenuItem` tests
      
      * Fix `ClampedText` tests
      
      * Fix `ObjectRelationships` tests
      
      * Fix `EmailAttachmentPicker` tests
      
      * Fix `SavedQuestionHeaderButton` tests
      
      * Fix `DatabaseEngineWarning` tests
      
      * Fix `Tooltip` tests
      
      * Fix `TippyPopoverWithTrigger` tests
      
      * Fix `TippyPopover` tests
      
      * Fix `TableLabel` tests
      
      * Fix `TableInfo` tests
      
      * Fix `ModerationStatusIcon` tests
      
      * Fix `Sidebar` tests
      
      * Fix `PermissionSelect` tests
      
      * Fix `PinnedItemCard` tests
      
      * Fix widget tests
      
      * Fix `DimensionSemanticTypeLabel` tests
      
      * Fix `ListSearchField` tests
      
      * Fix `ControlledPopoverWithTrigger` tests
      
      * Fix `FieldFingerprintInfo` tests
      
      * Fix `ErrorActionButton` tests
      
      * Fix `QueryValidationError` tests
      
      * Fix `LineAreaBarRenderer` tests
      
      * Fix `DataSelector` tests
      
      * Fix `PivotTable` tests
      
      * Fix `ItemPicker` tests
      
      * Fix `TokenField` tests
      
      * Fix `TagEditorParam` tests
      
      * Fix tests
      
      * Fix tests
      
      * Run prettier
      
      * Fix tests
      Unverified
      6d3f5925
  9. Jan 09, 2023
Loading