2121
2222
2323const db = require ( './DB' ) ;
24- const randomString = require ( '../utils/randomstring' ) ;
24+ import randomString from '../utils/randomstring' ;
2525
2626
2727/**
2828 * checks if the id pattern matches a read-only pad id
2929 * @param {String } id the pad's id
3030 * @return {Boolean } true if the id is readonly
3131 */
32- exports . isReadOnlyId = ( id :string ) => id . startsWith ( 'r.' ) ;
32+ const isReadOnlyId = ( id :string ) => id . startsWith ( 'r.' ) ;
3333
3434/**
3535 * returns a read only id for a pad
3636 * @param {String } padId the id of the pad
3737 * @return {String } the read only id
3838 */
39- exports . getReadOnlyId = async ( padId :string ) => {
39+ const getReadOnlyId = async ( padId :string ) => {
4040 // check if there is a pad2readonly entry
4141 let readOnlyId = await db . get ( `pad2readonly:${ padId } ` ) ;
4242
@@ -57,19 +57,29 @@ exports.getReadOnlyId = async (padId:string) => {
5757 * @param {String } readOnlyId read only id
5858 * @return {String } the padId
5959 */
60- exports . getPadId = async ( readOnlyId :string ) => await db . get ( `readonly2pad:${ readOnlyId } ` ) ;
60+ const getPadId = async ( readOnlyId :string ) => await db . get ( `readonly2pad:${ readOnlyId } ` ) ;
6161
6262/**
6363 * returns the padId and readonlyPadId in an object for any id
6464 * @param {String } id read only id or real pad id
6565 * @return {Object } an object with the padId and readonlyPadId
6666 */
67- exports . getIds = async ( id :string ) => {
68- const readonly = exports . isReadOnlyId ( id ) ;
67+ const getIds = async ( id :string ) => {
68+ const readonly = isReadOnlyId ( id ) ;
6969
7070 // Might be null, if this is an unknown read-only id
71- const readOnlyPadId = readonly ? id : await exports . getReadOnlyId ( id ) ;
72- const padId = readonly ? await exports . getPadId ( id ) : id ;
71+ const readOnlyPadId = readonly ? id : await getReadOnlyId ( id ) ;
72+ const padId = readonly ? await getPadId ( id ) : id ;
7373
7474 return { readOnlyPadId, padId, readonly} ;
7575} ;
76+
77+ export default {
78+ isReadOnlyId,
79+ getReadOnlyId,
80+ getPadId,
81+ getIds,
82+ // Export for testing purposes
83+ __getReadOnlyId : getReadOnlyId , // eslint-disable-line no-underscore-dangle
84+ __getPadId : getPadId , // eslint-disable-line no-underscore-dangle
85+ }
0 commit comments