rules.ts 1.3 KB

12345678910111213141516171819202122232425
  1. import type { Rule, RuleContext } from 'unocss'
  2. import type { Theme } from 'unocss/preset-mini'
  3. import { parseColor } from '@unocss/preset-mini'
  4. export const rules = [
  5. [/^f-(.*)$/, ([, body]: string[], { theme }: RuleContext<Theme>) => {
  6. const color = parseColor(body, theme)
  7. if (color?.cssColor?.type === 'rgb' && color.cssColor.components) {
  8. return {
  9. '--fastlane-c-context': `${color.cssColor.components.join(',')}`,
  10. }
  11. }
  12. }],
  13. // ['p-safe', { padding: 'env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)' }],
  14. // ['pt-safe', { 'padding-top': 'env(safe-area-inset-top)' }],
  15. // ['pb-safe', { 'padding-bottom': 'env(safe-area-inset-bottom)' }],
  16. // ['pl-safe', { 'padding-left': 'env(safe-area-inset-left)' }],
  17. // ['pr-safe', { 'padding-right': 'env(safe-area-inset-right)' }],
  18. // ['m-safe', { margin: 'env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)' }],
  19. // ['mt-safe', { 'margin-top': 'env(safe-area-inset-top)' }],
  20. // ['mb-safe', { 'margin-bottom': 'env(safe-area-inset-bottom)' }],
  21. // ['ml-safe', { 'margin-left': 'env(safe-area-inset-left)' }],
  22. // ['mr-safe', { 'margin-right': 'env(safe-area-inset-right)' }],
  23. ] as Rule<Theme>[]