Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Aug 14, 2023
  2. Aug 13, 2023
  3. Aug 12, 2023
  4. Aug 11, 2023
  5. Aug 10, 2023
  6. Aug 09, 2023
  7. Aug 08, 2023
  8. Aug 07, 2023
  9. Aug 04, 2023
  10. Aug 02, 2023
    • Jesse Devaney's avatar
      Enable parameter mapping for heading dash-cards (#32462) · 84537554
      Jesse Devaney authored
      
      * add parameter mapping to heading cards
      
      * update unit tests for new props
      
      * memoize parameter mapped content
      
      * add heading card tests to text parameters spec
      
      * update test descriptions
      
      * add BE for params/substitute_tags
      
      * fix tests
      
      * fix test
      
      * update FE parameter substitution to use optional flag
      
      * heading cards should not escape characters
      
      * add test for dashboard sub
      
      * remove invalid specs -> desired behavior changed
      
      - enabled parameter mapping for heading cards
        - in parameter editing mode, we should display the option to map a parameter to a heading text variable, so we should not display the original text
      
      * fix react hook dependencies
      
      * improve parameterValues type
      
      * refactor E2E test to a unit test
      
      * address nits
      
      * fix spacing
      
      * update types and add unit tests
      
      * fix type errors
      
      ---------
      
      Co-authored-by: default avatarJerry Huang <jhuang37050@gmail.com>
      Unverified
      84537554
    • Kamil Mielnik's avatar
      [Epic] Allow basic deletes and updates on object detail views - Milestone 1 (#32470) · 338e80ba
      Kamil Mielnik authored
      * Add actions dropdown to object detail modal (#32331)
      
      * Rename showActions to showControls
      
      * Use Flex
      
      * Import Flex from local modules
      
      * Make horizontalAttachments a prop in EntityMenu
      
      * Use EntityMenu to create actions dropdown
      
      * Render actions menu conditionally
      
      * Add useActionListQuery
      
      * Fetch actions in ObjectDetailHeader
      
      * Remove unused canRunActions prop
      
      * Move logic to root component
      
      * Fix tests
      
      * Use canRunAction and fetch databases in ObjectDetail view
      
      * Rename actions to actionItems and getActions to getActionItems
      
      * Extract getActionItems to utils
      
      * Update tests
      
      * Rename modelActions to actions
      
      * Extract isValidImplicitDeleteAction and isValidImplicitUpdateAction out of getActionItems
      
      * Consolidate getActionItems
      
      * Use theme scale values for Mantine Flex component
      
      * Either render all controls or none
      
      * Fix default props/state in EntityMenu
      
      * Fix props
      
      * Update ObjectDetail unit tests
      
      * Add unit tests for isValidImplicitDeleteAction and isValidImplicitUpdateAction
      
      * Update tests with more specific non-implicit action cases
      
      * Use singular form to match function interface
      
      * Add unit tests for getActionItems
      
      * Update test case name
      
      * Avoid using Database constructor
      - Use metadata.database() instead
      
      * Add integration tests for basic cases when action menu is rendered and not
      
      * Fix post-merge error
      
      * Endpoint to fetch implicit actions param values (#32466)
      
      * Add default update action to actions dropdown in object detail modal (#32433)
      
      * Rename showActions to showControls
      
      * Use Flex
      
      * Import Flex from local modules
      
      * Make horizontalAttachments a prop in EntityMenu
      
      * Use EntityMenu to create actions dropdown
      
      * Render actions menu conditionally
      
      * Add useActionListQuery
      
      * Fetch actions in ObjectDetailHeader
      
      * Remove unused canRunActions prop
      
      * Move logic to root component
      
      * Fix tests
      
      * Use canRunAction and fetch databases in ObjectDetail view
      
      * Rename actions to actionItems and getActions to getActionItems
      
      * Extract getActionItems to utils
      
      * Update tests
      
      * Rename modelActions to actions
      
      * Extract isValidImplicitDeleteAction and isValidImplicitUpdateAction out of getActionItems
      
      * Consolidate getActionItems
      
      * Use theme scale values for Mantine Flex component
      
      * Either render all controls or none
      
      * Fix default props/state in EntityMenu
      
      * Fix props
      
      * Update ObjectDetail unit tests
      
      * Add unit tests for isValidImplicitDeleteAction and isValidImplicitUpdateAction
      
      * Update tests with more specific non-implicit action cases
      
      * Use singular form to match function interface
      
      * Add unit tests for getActionItems
      
      * Update test case name
      
      * Sort imports
      
      * Rename initialValues to values
      
      * Rename dashcardParamValues to initialValues
      
      * Lift fetchInitialValues up from ActionParametersInputForm
      
      * Rename refetchValues to prefetchValues
      
      * Fix tests
      
      * Refactor shouldPrefetch to be a prop
      
      * Get rid of dashboard and dashcard props from ActionParametersInputForm
      
      * Lift the canPrefetch condition up as it is not desired outside of dashboards
      
      * Hook update action with temporary API
      
      * Use executeActionId in fetchInitialValues
      
      * Fix post-merge conflict
      
      * Rename prefetchValues to prefetchDashcardValues
      
      * Use the new endpoint
      
      * Use rem values instead of scale values
      - See https://github.com/metabase/metabase/pull/32331#discussion_r1267827835
      
      * Lift data reloading out of executeRowAction
      
      * Add onSuccess prop to ActionExecuteModal
      
      * Use onSubmitSuccess from ActionParametersInputForm
      
      * Reload question after action is successful
      
      * Fix stale prop issues in ActionParametersInputForm
      
      * Fix object id in initialValues
      
      * Add prefetchesInitialValues prop to make useActionForm more generic
      
      * Ignore public actions for now
      
      * Fix id mixup
      
      * Update unit test
      
      * Remove redundant memoization
      
      * Use modern JS syntax instead of noop
      
      * Move getNextId to __support__/utils
      
      * Extract isImplicitDeleteAction & isImplicitUpdateAction
      
      * Reuse isImplicitDeleteAction
      
      * Log error to console
      
      * Get rid of useLatest
      
      * Fix post-merge build error
      
      * Add default delete action to actions dropdown in object detail modal (#32556)
      
      * Rename showActions to showControls
      
      * Use Flex
      
      * Import Flex from local modules
      
      * Make horizontalAttachments a prop in EntityMenu
      
      * Use EntityMenu to create actions dropdown
      
      * Render actions menu conditionally
      
      * Add useActionListQuery
      
      * Fetch actions in ObjectDetailHeader
      
      * Remove unused canRunActions prop
      
      * Move logic to root component
      
      * Fix tests
      
      * Use canRunAction and fetch databases in ObjectDetail view
      
      * Rename actions to actionItems and getActions to getActionItems
      
      * Extract getActionItems to utils
      
      * Update tests
      
      * Rename modelActions to actions
      
      * Extract isValidImplicitDeleteAction and isValidImplicitUpdateAction out of getActionItems
      
      * Consolidate getActionItems
      
      * Use theme scale values for Mantine Flex component
      
      * Either render all controls or none
      
      * Fix default props/state in EntityMenu
      
      * Fix props
      
      * Update ObjectDetail unit tests
      
      * Add unit tests for isValidImplicitDeleteAction and isValidImplicitUpdateAction
      
      * Update tests with more specific non-implicit action cases
      
      * Use singular form to match function interface
      
      * Add unit tests for getActionItems
      
      * Update test case name
      
      * Sort imports
      
      * Rename initialValues to values
      
      * Rename dashcardParamValues to initialValues
      
      * Lift fetchInitialValues up from ActionParametersInputForm
      
      * Rename refetchValues to prefetchValues
      
      * Fix tests
      
      * Refactor shouldPrefetch to be a prop
      
      * Get rid of dashboard and dashcard props from ActionParametersInputForm
      
      * Lift the canPrefetch condition up as it is not desired outside of dashboards
      
      * Hook update action with temporary API
      
      * Use executeActionId in fetchInitialValues
      
      * Fix post-merge conflict
      
      * Rename prefetchValues to prefetchDashcardValues
      
      * Use the new endpoint
      
      * Use rem values instead of scale values
      - See https://github.com/metabase/metabase/pull/32331#discussion_r1267827835
      
      * Lift data reloading out of executeRowAction
      
      * Add onSuccess prop to ActionExecuteModal
      
      * Use onSubmitSuccess from ActionParametersInputForm
      
      * Reload question after action is successful
      
      * Fix stale prop issues in ActionParametersInputForm
      
      * Fix object id in initialValues
      
      * Add prefetchesInitialValues prop to make useActionForm more generic
      
      * Ignore public actions for now
      
      * Fix id mixup
      
      * Update unit test
      
      * Add DeleteObjectModal
      
      * Introduce useActionQuery
      
      * Use useActionQuery in DeleteObjectModal
      
      * Hook action execution
      
      * Fix typo in copy
      
      * Sort exports
      
      * Remove redundant memoization
      
      * Use modern JS syntax instead of noop
      
      * Move getNextId to __support__/utils
      
      * Extract isImplicitDeleteAction & isImplicitUpdateAction
      
      * Reuse isImplicitDeleteAction
      
      * Fix object modal getting closed with Escape key when delete or update modals are open
      
      * Rename isUpdateModalOpen to isActionExecuteModalOpen, updateActionId to actionId
      
      * Navigate to sibling row or close the modal on deletion
      
      * Revert "Navigate to sibling row or close the modal on deletion"
      
      This reverts commit 8b24685eee5cd968f53cc14b7194a66588fb5845.
      
      * Close object detail on deletion
      
      * Add error handling
      
      * Add error handling
      
      * Greatly simplify DeleteObjectModal
      - remove useActionQuery usage
      - remove useActionQuery
      - remove DeleteObjectModal.styled.tsx
      
      * Improve diff
      
      * Shorten code
      
      * Always cast objectId to number
      - See https://metaboat.slack.com/archives/C057T1QTB3L/p1690292706101109?thread_ts=1690279562.697669&cid=C057T1QTB3L
        "the reason you’re not seeing it fail on the sample dataset is probably because you’re
        using h2 for sample-dataset. it’ll fail the same if you use a postgres one.
        h2 is probably more loose in type so it allows sending a string for id.
        nevertheless, I think you can use cast it to the correct type using the param type.
        I think we did that on the UI where we execute actions from model details page."
      
      * Inline disabled into JSX
      
      * Use a more friendly error message when failed to delete an object because it's referenced by other objects
      - See: https://metaboat.slack.com/archives/C057LE0Q4PQ/p1690377421352469?thread_ts=1690208614.530869&cid=C057LE0Q4PQ
      
      * Revert "Use a more friendly error message when failed to delete an object because it's referenced by other objects"
      
      This reverts commit 28327ac9b53ae92300e579d047b7f136d54e581e.
      
      Friendly message is going to be implemented in https://github.com/metabase/metabase/issues/32694
      
      * Rename initialValues back to dashcardParamValues in ActionVizForm
      
      * Tests for basic deletes and updates on object detail views (#32525)
      
      * Rename showActions to showControls
      
      * Use Flex
      
      * Import Flex from local modules
      
      * Make horizontalAttachments a prop in EntityMenu
      
      * Use EntityMenu to create actions dropdown
      
      * Render actions menu conditionally
      
      * Add useActionListQuery
      
      * Fetch actions in ObjectDetailHeader
      
      * Remove unused canRunActions prop
      
      * Move logic to root component
      
      * Fix tests
      
      * Use canRunAction and fetch databases in ObjectDetail view
      
      * Rename actions to actionItems and getActions to getActionItems
      
      * Extract getActionItems to utils
      
      * Update tests
      
      * Rename modelActions to actions
      
      * Extract isValidImplicitDeleteAction and isValidImplicitUpdateAction out of getActionItems
      
      * Consolidate getActionItems
      
      * Use theme scale values for Mantine Flex component
      
      * Either render all controls or none
      
      * Fix default props/state in EntityMenu
      
      * Fix props
      
      * Update ObjectDetail unit tests
      
      * Add unit tests for isValidImplicitDeleteAction and isValidImplicitUpdateAction
      
      * Update tests with more specific non-implicit action cases
      
      * Use singular form to match function interface
      
      * Add unit tests for getActionItems
      
      * Update test case name
      
      * Sort imports
      
      * Rename initialValues to values
      
      * Rename dashcardParamValues to initialValues
      
      * Lift fetchInitialValues up from ActionParametersInputForm
      
      * Rename refetchValues to prefetchValues
      
      * Fix tests
      
      * Refactor shouldPrefetch to be a prop
      
      * Get rid of dashboard and dashcard props from ActionParametersInputForm
      
      * Lift the canPrefetch condition up as it is not desired outside of dashboards
      
      * Hook update action with temporary API
      
      * Use executeActionId in fetchInitialValues
      
      * Fix post-merge conflict
      
      * Rename prefetchValues to prefetchDashcardValues
      
      * Use the new endpoint
      
      * Use rem values instead of scale values
      - See https://github.com/metabase/metabase/pull/32331#discussion_r1267827835
      
      
      
      * Lift data reloading out of executeRowAction
      
      * Add onSuccess prop to ActionExecuteModal
      
      * Use onSubmitSuccess from ActionParametersInputForm
      
      * Reload question after action is successful
      
      * Fix stale prop issues in ActionParametersInputForm
      
      * Fix object id in initialValues
      
      * Add prefetchesInitialValues prop to make useActionForm more generic
      
      * Add test cases for other types of actions
      
      * Ignore public actions for now
      
      * Add e2e test for actions in object detail view
      
      * Add second step and extract helpers
      
      * Remove duplication by changing hierarchy
      
      * Add step with enabling model actions
      
      * Fix visiting model page
      
      * Remove redundant code
      
      * Ignore public actions for now
      
      * Fix id mixup
      
      * Update unit test
      
      * Add objectId argument and function to open the modal
      
      * Define whole order object to reuse
      
      * Implement assertOrderFormPrefilled
      
      * Assert Created At
      
      * Add assertion to check whether object with new id has been reloaded
      
      * Use all caps for constants
      
      * Verify updating an object
      
      * Fix test name
      
      * Assert toast is shown on update
      
      * Format code
      
      * Use writable tables instead of sample db to avoid persisting updates between tests
      - do not mock objects, assert against whatever comes from API
      
      * Format code to wake GitHub up
      
      * Add DeleteObjectModal
      
      * Introduce useActionQuery
      
      * Use useActionQuery in DeleteObjectModal
      
      * Hook action execution
      
      * Fix typo in copy
      
      * Sort exports
      
      * Remove redundant memoization
      
      * Use modern JS syntax instead of noop
      
      * Move getNextId to __support__/utils
      
      * Extract isImplicitDeleteAction & isImplicitUpdateAction
      
      * Reuse isImplicitDeleteAction
      
      * Fix object modal getting closed with Escape key when delete or update modals are open
      
      * Rename isUpdateModalOpen to isActionExecuteModalOpen, updateActionId to actionId
      
      * Navigate to sibling row or close the modal on deletion
      
      * Revert "Navigate to sibling row or close the modal on deletion"
      
      This reverts commit 8b24685eee5cd968f53cc14b7194a66588fb5845.
      
      * Close object detail on deletion
      
      * Add error handling
      
      * Add error handling
      
      * Greatly simplify DeleteObjectModal
      - remove useActionQuery usage
      - remove useActionQuery
      - remove DeleteObjectModal.styled.tsx
      
      * Improve diff
      
      * Shorten code
      
      * Rename initialValues back to dashcardParamValues in ActionVizForm
      
      * Extract assertScoreUpdatedInTable
      
      * Extract visitModelDetail
      
      * Add deletion and toast assertion
      
      * Remove unused arguments
      
      * Assert delete failed
      
      * Update tests order after starting with writable db
      
      * Move assertions to beginning of the test, remove enableDatabaseActions
      
      * Test disabling model actions
      
      * Add extra assertion
      
      * Update names
      
      * Update the deletion assertion
      
      * Remove unused code
      
      * Wrap tests in another describe, setup dashboard test
      
      * Fix setup, use asAdmin util
      
      * Add assertion for dashboard object view
      
      * Update test names
      
      * Extract actions to a constant
      
      * Add test to open update object modal
      
      * Update assertion order
      
      * Add test to open delete object modal
      
      * Organize tests
      
      * Add a test case for implicit public delete action & implicit archived delete action
      
      * Remove redundant async
      
      * Reuse findActionInActionMenu
      
      * Remove redundant constant
      
      * Fix tests
      
      * Add a test case for databases with disabled actions
      
      * Update wording
      
      * Use dataset instad of a query question
      
      * Revert name change as it does not make sense
      
      * Format code
      
      * Add a test case for users with no write permission
      
      * Add a test case for when showControls is false
      
      * Add a test case for models with clauses
      
      * Use metadata.question() instead of new Question()
      
      * Tests for various number of PKs in a model (#32784)
      
      * Add a test case for 0 PKs in a model
      
      * Add a test case for 2 PKs in a model
      
      * Improve test names
      
      * Fix typo
      
      * Use plural form for "PK"
      
      ---------
      
      Co-authored-by: default avatarNgoc Khuat <qn.khuat@gmail.com>
      Unverified
      338e80ba
    • Mahatthana (Kelvin) Nomsawadi's avatar
      Fix long running queries possibly piling up via auto-refresh (#32754) · 6548584c
      Mahatthana (Kelvin) Nomsawadi authored
      * Simplify the code that fixes dashboard tab race condition
      
      Remove a part of dashboard reducer that addressed the race condition
      from https://github.com/metabase/metabase/pull/31578/files#r1240203745.
      
      I revert the code back to make it simpler and fix the race condition by
      calling certain actions in the right order.
      
      * Update the todo comment to use more standard todo tag
      
      * Prevent fetching a dashcard when the previous API isn't done and is auto-refresh
      
      * Only skip loading new dashcard on dashcoard auto refresh
      
      * fixup! Simplify the code that fixes dashboard tab race condition
      
      * Clean up dashboard action
      
      Rename an action with misleading name
      
      * Make the boolean flag easier to understand
      
      * fixup! Make the boolean flag easier to understand
      
      * Add E2E
      
      * Remove commented out code
      
      * Correct `startTime` behavior
      
      * Fix the case when navigating between dashboards
      
      * Make isRefreshing logic easier to follow
      
      * Fix failed unit tests
      Unverified
      6548584c
    • Nemanja Glumac's avatar
      Revert running E2E tests on Electron (#32800) · 781449b0
      Nemanja Glumac authored
      #32734 introduced a commit that removed "Chrome" as a predefined browser that Cypress runs on.
      This was needed due to frequent failures that were interfering with the release process.
      
      Even if we decide to switch to Electron, let's do it in a dedicated commit for easier git blame.
      We'll forget in a month already why a commit called "Disallow new H2 connections" switched E2E tests to Electron.
      Unverified
      781449b0
    • Nemanja Glumac's avatar
      Fix the failing E2E test in questions/settings (#32821) · 8d366f21
      Nemanja Glumac authored
      Breaking change was introduced in #32791.
      Unverified
      8d366f21
  11. Aug 01, 2023
Loading