Packages

Any JavaScript library in a Phoenix LiveView page: a small adapter per library, and Xenia handles props, events, commands, cleanup on navigation, form fields and app-wide values like the theme. Plus routes, layouts and persistent parts from folders.

Current section

Files

Jump to
xenia package.json
Raw

package.json

{
  "name": "xenia",
  "type": "module",
  "private": true,
  "main": "./priv/static/xenia.esm.js",
  "module": "./priv/static/xenia.esm.js",
  "types": "./priv/types/xenia.d.ts",
  "exports": {
    ".": {
      "types": "./priv/types/xenia.d.ts",
      "default": "./priv/static/xenia.esm.js"
    },
    "./chartjs": {
      "types": "./priv/types/chartjs.d.ts",
      "default": "./priv/static/xenia-chartjs.esm.js"
    },
    "./d3": {
      "types": "./priv/types/d3.d.ts",
      "default": "./priv/static/xenia-d3.esm.js"
    },
    "./flatpickr": {
      "types": "./priv/types/flatpickr.d.ts",
      "default": "./priv/static/xenia-flatpickr.esm.js"
    },
    "./fullcalendar": {
      "types": "./priv/types/fullcalendar.d.ts",
      "default": "./priv/static/xenia-fullcalendar.esm.js"
    },
    "./leaflet": {
      "types": "./priv/types/leaflet.d.ts",
      "default": "./priv/static/xenia-leaflet.esm.js"
    },
    "./monaco": {
      "types": "./priv/types/monaco.d.ts",
      "default": "./priv/static/xenia-monaco.esm.js"
    },
    "./monaco-diff": {
      "types": "./priv/types/monaco-diff.d.ts",
      "default": "./priv/static/xenia-monaco-diff.esm.js"
    },
    "./shoelace-rating": {
      "types": "./priv/types/shoelace-rating.d.ts",
      "default": "./priv/static/xenia-shoelace-rating.esm.js"
    },
    "./sortablejs": {
      "types": "./priv/types/sortablejs.d.ts",
      "default": "./priv/static/xenia-sortablejs.esm.js"
    },
    "./tabulator": {
      "types": "./priv/types/tabulator.d.ts",
      "default": "./priv/static/xenia-tabulator.esm.js"
    },
    "./tiptap": {
      "types": "./priv/types/tiptap.d.ts",
      "default": "./priv/static/xenia-tiptap.esm.js"
    },
    "./tom-select": {
      "types": "./priv/types/tom-select.d.ts",
      "default": "./priv/static/xenia-tom-select.esm.js"
    },
    "./uppy": {
      "types": "./priv/types/uppy.d.ts",
      "default": "./priv/static/xenia-uppy.esm.js"
    },
    "./wavesurfer": {
      "types": "./priv/types/wavesurfer.d.ts",
      "default": "./priv/static/xenia-wavesurfer.esm.js"
    },
    "./wavesurfer-multitrack": {
      "types": "./priv/types/wavesurfer-multitrack.d.ts",
      "default": "./priv/static/xenia-wavesurfer-multitrack.esm.js"
    },
    "./xterm": {
      "types": "./priv/types/xterm.d.ts",
      "default": "./priv/static/xenia-xterm.esm.js"
    }
  },
  "peerDependencies": {
    "@fullcalendar/core": "^6.1.0",
    "@shoelace-style/shoelace": "^2.0.0",
    "@tiptap/core": "^3.0.0",
    "@uppy/core": "^6.0.0",
    "@xterm/xterm": "^6.0.0",
    "chart.js": "^4.4.0",
    "d3": "^7.0.0",
    "flatpickr": "^4.6.0",
    "leaflet": "^1.9.0",
    "monaco-editor": "^0.57.0",
    "sortablejs": "^1.15.0",
    "tabulator-tables": "^6.0.0",
    "tom-select": "^2.0.0",
    "wavesurfer-multitrack": "^0.4.0",
    "wavesurfer.js": "^7.0.0"
  },
  "peerDependenciesMeta": {
    "@fullcalendar/core": {
      "optional": true
    },
    "@shoelace-style/shoelace": {
      "optional": true
    },
    "@tiptap/core": {
      "optional": true
    },
    "@uppy/core": {
      "optional": true
    },
    "@xterm/xterm": {
      "optional": true
    },
    "chart.js": {
      "optional": true
    },
    "d3": {
      "optional": true
    },
    "flatpickr": {
      "optional": true
    },
    "leaflet": {
      "optional": true
    },
    "monaco-editor": {
      "optional": true
    },
    "sortablejs": {
      "optional": true
    },
    "tabulator-tables": {
      "optional": true
    },
    "tom-select": {
      "optional": true
    },
    "wavesurfer-multitrack": {
      "optional": true
    },
    "wavesurfer.js": {
      "optional": true
    }
  },
  "devDependencies": {
    "jsdom": "29.1.1",
    "typescript": "7.0.2"
  },
  "scripts": {
    "test": "node --test test/js/*.js",
    "types": "tsc -p test/types"
  }
}