FirebaseExtended / firestoreodm-flutter

BSD 3-Clause "New" or "Revised" License
36 stars 11 forks source link

Allow spaces in collection names #31

Open BrunoRoemers opened 3 months ago

BrunoRoemers commented 3 months ago

Expected Behavior

ODM can handle spaces in collection ids. The official restrictions on collection ids are documented here: https://firebase.google.com/docs/firestore/quotas#limits

Actual Behavior

ODM refuses to generate code when a collection id containing a space is passed to @Collection().

Relevant LOCs: https://github.com/FirebaseExtended/firestoreodm-flutter/blob/main/packages/cloud_firestore_odm_generator/lib/src/collection_data.dart#L341

Unfortunately we have a few collections with spaces in their names, which blocks us from fully adopting the Cloud Firestore ODM.

Hacky Workaround

  1. Temporarily remove the space of the collection name; i.e. @Collection('hello world') becomes @Collection('helloworld')
  2. Run code generator (works)
  3. Edit the generated file; add the space again

This is a maintenance nightmare though.

rrousselGit commented 3 months ago

Sure. Fancy making a PR?