open-feature-flagd 0.2.1

The official flagd provider for OpenFeature.
Documentation
{
  "flags": {
    "fractional-flag": {
      "state": "ENABLED",
      "variants": {
        "clubs": "clubs",
        "diamonds": "diamonds",
        "hearts": "hearts",
        "spades": "spades",
        "wild": "wild"
      },
      "defaultVariant": "wild",
      "targeting": {
        "fractional": [
          {"cat": [
            { "var": "$flagd.flagKey" },
            { "var": "user.name" }
          ]},
          [ "clubs", 25 ],
          [ "diamonds", 25 ],
          [ "hearts", 25 ],
          [ "spades", 25 ]
        ]
      }
    },
    "fractional-flag-shorthand": {
      "state": "ENABLED",
      "variants": {
        "heads": "heads",
        "tails": "tails",
        "draw": "draw"
      },
      "defaultVariant": "draw",
      "targeting": {
        "fractional": [
          [ "heads" ],
          [ "tails", 1 ]
        ]
      }
    },
    "fractional-flag-A-shared-seed": {
      "state": "ENABLED",
      "variants": {
        "clubs": "clubs",
        "diamonds": "diamonds",
        "hearts": "hearts",
        "spades": "spades",
        "wild": "wild"
      },
      "defaultVariant": "wild",
      "targeting": {
        "fractional": [
          { "cat": [
            "shared-seed",
            { "var": "user.name" }
          ]},
          [ "clubs", 25 ],
          [ "diamonds", 25 ],
          [ "hearts", 25 ],
          [ "spades", 25 ]
        ]
      }
    },
    "fractional-flag-B-shared-seed": {
      "state": "ENABLED",
      "variants": {
        "clubs": "ace-of-clubs",
        "diamonds": "ace-of-diamonds",
        "hearts": "ace-of-hearts",
        "spades": "ace-of-spades",
        "wild": "wild"
      },
      "defaultVariant": "wild",
      "targeting": {
        "fractional": [
          { "cat": [
            "shared-seed",
            { "var": "user.name" }
          ]},
          [ "clubs", 25 ],
          [ "diamonds", 25 ],
          [ "hearts", 25 ],
          [ "spades", 25 ]
        ]
      }
    },
    "starts-ends-flag": {
      "state": "ENABLED",
      "variants": {
        "prefix": "prefix",
        "postfix": "postfix",
        "none": "none"
      },
      "defaultVariant": "none",
      "targeting": {
        "if": [
          {
            "starts_with": [{"var": "id"}, "abc"]
          },
          "prefix", {
            "if": [
              {
                "ends_with": [{"var": "id"}, "xyz"]
              },
              "postfix", {
                "if": [
                  {
                    "ends_with": [{"var": "id"}, 3]
                  },
                  "fail", "none"
                ]
              }
            ]
          }
        ]
      }
    },
    "equal-greater-lesser-version-flag": {
      "state": "ENABLED",
      "variants": {
        "equal": "equal",
        "greater": "greater",
        "lesser": "lesser",
        "none": "none"
      },
      "defaultVariant": "none",
      "targeting": {
        "if": [
          {
            "sem_ver": [{"var": "version"}, "=", "2.0.0"]
          },
          "equal", {
            "if": [
              {
                "sem_ver": [{"var": "version"}, ">", "2.0.0"]
              },
              "greater", {
                "if": [
                  {
                    "sem_ver": [{"var": "version"}, "<", "2.0.0"]
                  },
                  "lesser", {
                    "if": [
                      {
                        "sem_ver": [{"var": "version"}, "=", "2.0.0.0"]
                      },
                      "fail", "none"
                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "major-minor-version-flag": {
      "state": "ENABLED",
      "variants": {
        "minor": "minor",
        "major": "major",
        "none": "none"
      },
      "defaultVariant": "none",
      "targeting": {
        "if": [
          {
            "sem_ver": [{"var": "version"}, "~", "3.0.0"]
          },
          "minor", {
            "if": [
              {
                "sem_ver": [{"var": "version"}, "^", "3.0.0"]
              },
              "major", "none"
            ]
          }
        ]
      }
    }
  }
}