@artsy/palette 37.2.2 → 37.2.3

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.
@@ -31,6 +31,7 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _ty
31
31
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
32
32
  // In order to satisfy the Relay compilers readonly list types. This is in
33
33
  // support for passing different kinds of item types as props, like aggregations
34
+
34
35
  var filterSelectReducer = function filterSelectReducer(state, action) {
35
36
  switch (action.type) {
36
37
  case "SET_QUERY":
@@ -1 +1 @@
1
- {"version":3,"file":"FilterSelectContext.js","names":["_lodash","require","_react","_interopRequireWildcard","_utils","_ShowMore","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","length","err","return","Array","isArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","n","toString","slice","name","from","test","iter","len","arr2","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","filterSelectReducer","state","action","type","query","payload","isFiltered","filteredItems","items","_ref","label","toLowerCase","includes","isFound","selectedItems","find","item","reject","multiselect","concat","initialState","initialItemsToShow","INITIAL_ITEMS_TO_SHOW","onChange","x","order","placeholder","renderItemLabel","FilterSelectContext","createContext","FilterSelectContextProvider","_ref2","_props$selectedItems","children","props","_useReducer","useReducer","_useReducer2","dispatch","contextValue","toggleSelectedItem","setQuery","setSelectedItems","useUpdateEffect","useLayoutEffect","_props$query","createElement","Provider","exports","displayName","useFilterSelectContext","useContext"],"sources":["../../../../src/elements/FilterSelect/Components/FilterSelectContext.tsx"],"sourcesContent":["import { reject } from \"lodash\"\nimport React, {\n createContext,\n useContext,\n useLayoutEffect,\n useReducer,\n} from \"react\"\nimport { useUpdateEffect } from \"../../../utils\"\nimport { INITIAL_ITEMS_TO_SHOW } from \"../../ShowMore\"\n\nexport interface Item {\n label: string\n value: string\n [key: string]: string | number | boolean\n}\n\n// In order to satisfy the Relay compilers readonly list types. This is in\n// support for passing different kinds of item types as props, like aggregations\nexport type Items = ReadonlyArray<Item>\n\nexport interface FilterSelectChangeState {\n items: FilterSelectContextProps[\"items\"]\n filteredItems: FilterSelectContextProps[\"filteredItems\"]\n selectedItems: FilterSelectContextProps[\"selectedItems\"]\n query: FilterSelectContextProps[\"query\"]\n}\n\ninterface FilterSelectContextProps {\n items: Items\n filteredItems: Items\n initialItemsToShow: number\n isFiltered: boolean\n multiselect: boolean\n onChange: (state: FilterSelectChangeState) => void\n order: [string[], Array<\"asc\" | \"desc\">] // See: https://lodash.com/docs/4.17.15#orderBy\n placeholder: string\n query: string\n renderItemLabel?: (item: any) => string\n selectedItems: Items\n toggleSelectedItem: (item: Item) => void\n setQuery: (query: string) => void\n setSelectedItems: (items: Items) => void\n}\n\nexport type FilterSelectState = Pick<\n FilterSelectContextProps,\n | \"filteredItems\"\n | \"initialItemsToShow\"\n | \"items\"\n | \"isFiltered\"\n | \"multiselect\"\n | \"onChange\"\n | \"order\"\n | \"placeholder\"\n | \"renderItemLabel\"\n | \"query\"\n | \"selectedItems\"\n>\n\ntype Action =\n | { type: \"SET_QUERY\"; payload: { query: string } }\n | { type: \"TOGGLE_SELECTED_ITEM\"; payload: { item: Item } }\n | { type: \"SET_SELECTED_ITEMS\"; payload: { items: Items } }\n\nconst filterSelectReducer = (state: FilterSelectState, action: Action) => {\n switch (action.type) {\n case \"SET_QUERY\": {\n const { query } = action.payload\n\n if (query === \"\") {\n return {\n ...state,\n query,\n isFiltered: false,\n filteredItems: [],\n }\n }\n\n const filteredItems = state.items.filter(({ label: name }) => {\n return name.toLowerCase().includes(query.toLowerCase())\n })\n\n return {\n ...state,\n query,\n isFiltered: true,\n filteredItems,\n }\n }\n\n case \"TOGGLE_SELECTED_ITEM\": {\n const isFound = !!state.selectedItems.find(\n (item) => item.value === action.payload.item.value\n )\n\n let selectedItems\n if (isFound) {\n selectedItems = reject(state.selectedItems, {\n value: action.payload.item.value,\n })\n } else {\n selectedItems = state.multiselect\n ? [...state.selectedItems, action.payload.item]\n : [action.payload.item]\n }\n\n return {\n ...state,\n selectedItems,\n }\n }\n\n case \"SET_SELECTED_ITEMS\": {\n const { items } = action.payload\n\n return {\n ...state,\n selectedItems: items,\n }\n }\n }\n}\n\nconst initialState: FilterSelectState = {\n filteredItems: [],\n initialItemsToShow: INITIAL_ITEMS_TO_SHOW,\n isFiltered: false,\n items: [],\n multiselect: true,\n onChange: (x) => x,\n order: [[\"label\"], [\"asc\"]],\n placeholder: \"\",\n query: \"\",\n renderItemLabel: undefined,\n selectedItems: [],\n}\n\nconst FilterSelectContext = createContext<FilterSelectContextProps>({} as any)\n\nexport const FilterSelectContextProvider: React.FC<\n Partial<FilterSelectState>\n> = ({ children, ...props }) => {\n const [state, dispatch] = useReducer(filterSelectReducer, {\n ...initialState,\n ...props,\n })\n\n const contextValue = {\n ...state,\n\n toggleSelectedItem: (item) => {\n dispatch({\n type: \"TOGGLE_SELECTED_ITEM\",\n payload: { item },\n })\n },\n setQuery: (query) => {\n dispatch({\n type: \"SET_QUERY\",\n payload: { query },\n })\n },\n setSelectedItems: (items) => {\n dispatch({\n type: \"SET_SELECTED_ITEMS\",\n payload: {\n items,\n },\n })\n },\n }\n\n useUpdateEffect(() => {\n if (props.selectedItems) {\n contextValue.setSelectedItems(props.selectedItems)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.selectedItems?.length])\n\n useLayoutEffect(() => {\n if (props.query?.length) {\n contextValue.setQuery(props.query)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <FilterSelectContext.Provider value={contextValue}>\n {children}\n </FilterSelectContext.Provider>\n )\n}\n\nexport const useFilterSelectContext = () => {\n return useContext(FilterSelectContext)\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterSelectContext.js","names":["_lodash","require","_react","_interopRequireWildcard","_utils","_ShowMore","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","length","err","return","Array","isArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","n","toString","slice","name","from","test","iter","len","arr2","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","filterSelectReducer","state","action","type","query","payload","isFiltered","filteredItems","items","_ref","label","toLowerCase","includes","isFound","selectedItems","find","item","reject","multiselect","concat","initialState","initialItemsToShow","INITIAL_ITEMS_TO_SHOW","onChange","x","order","placeholder","renderItemLabel","FilterSelectContext","createContext","FilterSelectContextProvider","_ref2","_props$selectedItems","children","props","_useReducer","useReducer","_useReducer2","dispatch","contextValue","toggleSelectedItem","setQuery","setSelectedItems","useUpdateEffect","useLayoutEffect","_props$query","createElement","Provider","exports","displayName","useFilterSelectContext","useContext"],"sources":["../../../../src/elements/FilterSelect/Components/FilterSelectContext.tsx"],"sourcesContent":["import { reject } from \"lodash\"\nimport React, {\n createContext,\n useContext,\n useLayoutEffect,\n useReducer,\n} from \"react\"\nimport { useUpdateEffect } from \"../../../utils\"\nimport { INITIAL_ITEMS_TO_SHOW } from \"../../ShowMore\"\n\nexport interface Item {\n label: string\n value: string\n [key: string]: string | number | boolean\n}\n\n// In order to satisfy the Relay compilers readonly list types. This is in\n// support for passing different kinds of item types as props, like aggregations\nexport type Items = ReadonlyArray<Item>\n\nexport interface FilterSelectChangeState {\n items: FilterSelectContextProps[\"items\"]\n filteredItems: FilterSelectContextProps[\"filteredItems\"]\n selectedItems: FilterSelectContextProps[\"selectedItems\"]\n query: FilterSelectContextProps[\"query\"]\n}\n\ninterface FilterSelectContextProps {\n items: Items\n filteredItems: Items\n initialItemsToShow: number\n isFiltered: boolean\n multiselect: boolean\n onChange: (state: FilterSelectChangeState) => void\n order: [string[], Array<\"asc\" | \"desc\">] // See: https://lodash.com/docs/4.17.15#orderBy\n placeholder: string\n query: string\n renderItemLabel?: (item: any) => string\n selectedItems: Items\n toggleSelectedItem: (item: Item) => void\n setQuery: (query: string) => void\n setSelectedItems: (items: Items) => void\n}\n\nexport type FilterSelectState = Pick<\n FilterSelectContextProps,\n | \"filteredItems\"\n | \"initialItemsToShow\"\n | \"items\"\n | \"isFiltered\"\n | \"multiselect\"\n | \"onChange\"\n | \"order\"\n | \"placeholder\"\n | \"renderItemLabel\"\n | \"query\"\n | \"selectedItems\"\n>\n\ntype Action =\n | { type: \"SET_QUERY\"; payload: { query: string } }\n | { type: \"TOGGLE_SELECTED_ITEM\"; payload: { item: Item } }\n | { type: \"SET_SELECTED_ITEMS\"; payload: { items: Items } }\n\nconst filterSelectReducer = (state: FilterSelectState, action: Action) => {\n switch (action.type) {\n case \"SET_QUERY\": {\n const { query } = action.payload\n\n if (query === \"\") {\n return {\n ...state,\n query,\n isFiltered: false,\n filteredItems: [],\n }\n }\n\n const filteredItems = state.items.filter(({ label: name }) => {\n return name.toLowerCase().includes(query.toLowerCase())\n })\n\n return {\n ...state,\n query,\n isFiltered: true,\n filteredItems,\n }\n }\n\n case \"TOGGLE_SELECTED_ITEM\": {\n const isFound = !!state.selectedItems.find(\n (item) => item.value === action.payload.item.value\n )\n\n let selectedItems\n if (isFound) {\n selectedItems = reject(state.selectedItems, {\n value: action.payload.item.value,\n })\n } else {\n selectedItems = state.multiselect\n ? [...state.selectedItems, action.payload.item]\n : [action.payload.item]\n }\n\n return {\n ...state,\n selectedItems,\n }\n }\n\n case \"SET_SELECTED_ITEMS\": {\n const { items } = action.payload\n\n return {\n ...state,\n selectedItems: items,\n }\n }\n }\n}\n\nconst initialState: FilterSelectState = {\n filteredItems: [],\n initialItemsToShow: INITIAL_ITEMS_TO_SHOW,\n isFiltered: false,\n items: [],\n multiselect: true,\n onChange: (x) => x,\n order: [[\"label\"], [\"asc\"]],\n placeholder: \"\",\n query: \"\",\n renderItemLabel: undefined,\n selectedItems: [],\n}\n\nconst FilterSelectContext = createContext<FilterSelectContextProps>({} as any)\n\nexport const FilterSelectContextProvider: React.FC<\n Partial<FilterSelectState>\n> = ({ children, ...props }) => {\n const [state, dispatch] = useReducer(filterSelectReducer, {\n ...initialState,\n ...props,\n })\n\n const contextValue = {\n ...state,\n\n toggleSelectedItem: (item) => {\n dispatch({\n type: \"TOGGLE_SELECTED_ITEM\",\n payload: { item },\n })\n },\n setQuery: (query) => {\n dispatch({\n type: \"SET_QUERY\",\n payload: { query },\n })\n },\n setSelectedItems: (items) => {\n dispatch({\n type: \"SET_SELECTED_ITEMS\",\n payload: {\n items,\n },\n })\n },\n }\n\n useUpdateEffect(() => {\n if (props.selectedItems) {\n contextValue.setSelectedItems(props.selectedItems)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.selectedItems?.length])\n\n useLayoutEffect(() => {\n if (props.query?.length) {\n contextValue.setQuery(props.query)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <FilterSelectContext.Provider value={contextValue}>\n {children}\n </FilterSelectContext.Provider>\n )\n}\n\nexport const useFilterSelectContext = () => {\n return useContext(FilterSelectContext)\n}\n"],"mappings":"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"}
@@ -6,8 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.usePortal = void 0;
7
7
  var _react = require("react");
8
8
  var _reactDom = require("react-dom");
9
+ var _useDidMount = require("./useDidMount");
9
10
  var usePortal = function usePortal() {
10
11
  var appendEl = (0, _react.useRef)(null);
12
+ var isMounted = (0, _useDidMount.useDidMount)();
11
13
  (0, _react.useEffect)(function () {
12
14
  var _appendEl$current;
13
15
  var el = (_appendEl$current = appendEl.current) !== null && _appendEl$current !== void 0 ? _appendEl$current : document.createElement("div");
@@ -23,13 +25,13 @@ var usePortal = function usePortal() {
23
25
  }, []);
24
26
  var createPortal = (0, _react.useCallback)(function (children) {
25
27
  var _appendEl$current2;
26
- if (typeof window === "undefined") return null;
28
+ if (!isMounted) return null;
27
29
 
28
30
  // May execute before effect runs and appendEl is set
29
31
  var el = (_appendEl$current2 = appendEl.current) !== null && _appendEl$current2 !== void 0 ? _appendEl$current2 : document.createElement("div");
30
32
  appendEl.current = el;
31
33
  return /*#__PURE__*/(0, _reactDom.createPortal)(children, el);
32
- }, []);
34
+ }, [isMounted]);
33
35
  return {
34
36
  createPortal: createPortal
35
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"usePortal.js","names":["_react","require","_reactDom","usePortal","appendEl","useRef","useEffect","_appendEl$current","el","current","document","createElement","body","appendChild","removeChild","e","createPortal","useCallback","children","_appendEl$current2","window","__createPortal__","exports"],"sources":["../../src/utils/usePortal.ts"],"sourcesContent":["import React, { useEffect, useRef, useCallback } from \"react\"\nimport { createPortal as __createPortal__ } from \"react-dom\"\n\nexport const usePortal = () => {\n const appendEl = useRef<HTMLDivElement | null>(null)\n\n useEffect(() => {\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n document.body.appendChild(el)\n\n return () => {\n try {\n document.body.removeChild(el)\n } catch (e) {\n // Ignore\n }\n }\n }, [])\n\n const createPortal = useCallback(\n (children: React.ReactNode): React.ReactPortal | null => {\n if (typeof window === \"undefined\") return null\n\n // May execute before effect runs and appendEl is set\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n return __createPortal__(children, el)\n },\n []\n )\n\n return { createPortal }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEO,IAAME,SAAS,GAAG,SAAZA,SAASA,CAAA,EAAS;EAC7B,IAAMC,QAAQ,GAAG,IAAAC,aAAM,EAAwB,IAAI,CAAC;EAEpD,IAAAC,gBAAS,EAAC,YAAM;IAAA,IAAAC,iBAAA;IACd,IAAMC,EAAE,IAAAD,iBAAA,GAAGH,QAAQ,CAACK,OAAO,cAAAF,iBAAA,cAAAA,iBAAA,GAAIG,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DP,QAAQ,CAACK,OAAO,GAAGD,EAAE;IAErBE,QAAQ,CAACE,IAAI,CAACC,WAAW,CAACL,EAAE,CAAC;IAE7B,OAAO,YAAM;MACX,IAAI;QACFE,QAAQ,CAACE,IAAI,CAACE,WAAW,CAACN,EAAE,CAAC;MAC/B,CAAC,CAAC,OAAOO,CAAC,EAAE;QACV;MAAA;IAEJ,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,YAAY,GAAG,IAAAC,kBAAW,EAC9B,UAACC,QAAyB,EAA+B;IAAA,IAAAC,kBAAA;IACvD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAO,IAAI;;IAE9C;IACA,IAAMZ,EAAE,IAAAW,kBAAA,GAAGf,QAAQ,CAACK,OAAO,cAAAU,kBAAA,cAAAA,kBAAA,GAAIT,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DP,QAAQ,CAACK,OAAO,GAAGD,EAAE;IAErB,oBAAO,IAAAa,sBAAgB,EAACH,QAAQ,EAAEV,EAAE,CAAC;EACvC,CAAC,EACD,EAAE,CACH;EAED,OAAO;IAAEQ,YAAY,EAAZA;EAAa,CAAC;AACzB,CAAC;AAAAM,OAAA,CAAAnB,SAAA,GAAAA,SAAA"}
1
+ {"version":3,"file":"usePortal.js","names":["_react","require","_reactDom","_useDidMount","usePortal","appendEl","useRef","isMounted","useDidMount","useEffect","_appendEl$current","el","current","document","createElement","body","appendChild","removeChild","e","createPortal","useCallback","children","_appendEl$current2","__createPortal__","exports"],"sources":["../../src/utils/usePortal.ts"],"sourcesContent":["import React, { useEffect, useRef, useCallback } from \"react\"\nimport { createPortal as __createPortal__ } from \"react-dom\"\nimport { useDidMount } from \"./useDidMount\"\n\nexport const usePortal = () => {\n const appendEl = useRef<HTMLDivElement | null>(null)\n\n const isMounted = useDidMount()\n\n useEffect(() => {\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n document.body.appendChild(el)\n\n return () => {\n try {\n document.body.removeChild(el)\n } catch (e) {\n // Ignore\n }\n }\n }, [])\n\n const createPortal = useCallback(\n (children: React.ReactNode): React.ReactPortal | null => {\n if (!isMounted) return null\n\n // May execute before effect runs and appendEl is set\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n return __createPortal__(children, el)\n },\n [isMounted]\n )\n\n return { createPortal }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAEO,IAAMG,SAAS,GAAG,SAAZA,SAASA,CAAA,EAAS;EAC7B,IAAMC,QAAQ,GAAG,IAAAC,aAAM,EAAwB,IAAI,CAAC;EAEpD,IAAMC,SAAS,GAAG,IAAAC,wBAAW,GAAE;EAE/B,IAAAC,gBAAS,EAAC,YAAM;IAAA,IAAAC,iBAAA;IACd,IAAMC,EAAE,IAAAD,iBAAA,GAAGL,QAAQ,CAACO,OAAO,cAAAF,iBAAA,cAAAA,iBAAA,GAAIG,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DT,QAAQ,CAACO,OAAO,GAAGD,EAAE;IAErBE,QAAQ,CAACE,IAAI,CAACC,WAAW,CAACL,EAAE,CAAC;IAE7B,OAAO,YAAM;MACX,IAAI;QACFE,QAAQ,CAACE,IAAI,CAACE,WAAW,CAACN,EAAE,CAAC;MAC/B,CAAC,CAAC,OAAOO,CAAC,EAAE;QACV;MAAA;IAEJ,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,YAAY,GAAG,IAAAC,kBAAW,EAC9B,UAACC,QAAyB,EAA+B;IAAA,IAAAC,kBAAA;IACvD,IAAI,CAACf,SAAS,EAAE,OAAO,IAAI;;IAE3B;IACA,IAAMI,EAAE,IAAAW,kBAAA,GAAGjB,QAAQ,CAACO,OAAO,cAAAU,kBAAA,cAAAA,kBAAA,GAAIT,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DT,QAAQ,CAACO,OAAO,GAAGD,EAAE;IAErB,oBAAO,IAAAY,sBAAgB,EAACF,QAAQ,EAAEV,EAAE,CAAC;EACvC,CAAC,EACD,CAACJ,SAAS,CAAC,CACZ;EAED,OAAO;IAAEY,YAAY,EAAZA;EAAa,CAAC;AACzB,CAAC;AAAAK,OAAA,CAAApB,SAAA,GAAAA,SAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artsy/palette",
3
- "version": "37.2.2",
3
+ "version": "37.2.3",
4
4
  "description": "Design system library for react components",
5
5
  "main": "dist/index.js",
6
6
  "publishConfig": {
@@ -44,7 +44,7 @@
44
44
  "styled-components": "^4"
45
45
  },
46
46
  "devDependencies": {
47
- "@artsy/auto-config": "1.1.0",
47
+ "@artsy/auto-config": "1.2.0",
48
48
  "@babel/cli": "7.12.16",
49
49
  "@babel/core": "7.12.16",
50
50
  "@babel/plugin-proposal-class-properties": "7.12.13",
@@ -182,5 +182,5 @@
182
182
  "url": "http://localhost"
183
183
  }
184
184
  },
185
- "gitHead": "1045d04482907931769dd5488c2f16e8f5786937"
185
+ "gitHead": "7d85a4d1603379f85ff9bfd8cbc5817fcda96f52"
186
186
  }